帧率控制方法及装置转让专利

申请号 : CN200710178408.8

文献号 : CN101159862B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 冯备战游明琦艾国

申请人 : 北京中星微电子有限公司

摘要 :

本发明公开了一种帧率控制方法及装置,根据预先设定的丢帧处理参数,从接收到的视频帧中选择出需要丢弃的视频帧;将所述需要丢弃的视频帧丢弃掉,输出未丢弃的视频帧。通过丢帧进行帧率的控制,将无法被及时处理的视频帧丢弃掉,而不是等待能够处理时再进行处理,无需缓存大量视频帧,因此不会产生很大的处理延迟,且处理延时不会累积。另外,本发明实施例的帧率控制方法及装置,无需对接收到的视频帧进行修改,因此资源的消耗很小,处理过程简单,控制灵活,实现容易。

权利要求 :

1.一种帧率控制方法,其特征是,该方法包括:

预先设定表示一个丢帧操作所需参考的帧的数量的丢帧循环个数和表示一个丢帧操作需要丢掉的帧的数量的丢帧个数;

对接收到的视频帧进行相似性比较,根据比较得到的视频帧的相似性量,从与所述丢帧循环个数相同数量的视频帧中,选择出与所述丢帧个数相同数量的,相似性量最大的视频帧,作为需要丢弃的视频帧;

将所述需要丢弃的视频帧丢弃掉,输出未丢弃的视频帧。

2.如权利要求1所述的帧率控制方法,其特征是,所述对接收到的视频帧进行相似性比较,包括:将所述接收到的每一个视频帧与其前一帧进行相似性比较,得到所述视频帧的相似性量。

3.如权利要求2所述的帧率控制方法,其特征是,所述将接收到的每一个视频帧与其前一帧进行相似性比较之前,进一步包括:判断接收到的所述视频帧是否是接收到的第一个视频帧,如是,则将该第一个视频帧的相似性量设置为所述相似性量的取值范围内的最小值,否则,执行所述将接收到的每一个视频帧与其前一帧进行相似性比较的步骤。

4.如权利要求1所述的帧率控制方法,其特征是,所述对接收到的视频帧进行相似性比较,包括:将所述接收到的每一个视频帧与其后一帧进行相似性比较,得到所述视频帧的相似性量。

5.如权利要求4所述的帧率控制方法,其特征是,所述将所述接收到的每一个视频帧与其后一帧进行相似性比较之前,进一步包括:判断接收到的所述视频帧是否是接收到的最后一个视频帧,如是,则将该最后一个视频帧的相似性量设置为所述相似性量的取值范围内的最大值,否则,执行所述将接收到的每一个视频帧与其后一帧进行相似性比较的步骤。

6.一种帧率控制装置,其特征是,该装置包括:

输入模块,用于接收视频帧;

丢帧控制模块,用于接收输入模块发送的视频帧,根据预先设定的表示一个丢帧操作所需参考的帧的数量的丢帧循环个数和表示一个丢帧操作需要丢掉的帧的数量的丢帧个数,从接收到的视频帧中选择出相似性量最大的视频帧,作为需要丢弃的视频帧;将所述需要丢弃的视频帧丢弃掉,输出未丢弃的视频帧。

其中,所述丢帧控制模块具体包括:

相似性比较单元,用于接收输入模块发送的视频帧,对接收到的视频帧进行相似性比较,得到的视频帧的相似性量;

丢帧选择单元,用于接收相似性比较单元发送的视频帧的相似性量,根据所述视频帧的相似性量,从与所述丢帧循环个数相同数量的视频帧中,选择出与所述丢帧个数相同数量的需要丢弃的视频帧;

丢帧处理单元,用于将丢帧选择单元选择出的需要丢弃的视频帧丢弃掉,输出未丢弃的视频帧。

7.如权利要求6所述的帧率控制装置,其特征是,所述相似性比较单元,包括将所述接收到的每一个视频帧与其前一帧进行相似性比较,得到所述视频帧的相似性量,如果所述视频帧是接收到的第一个视频帧,则将该第一个视频帧的相似性量设置为所述相似性量的取值范围内的最小值的模块。

8.如权利要求6所述的帧率控制装置,其特征是,所述相似性比较单元,包括将所述接收到的每一个视频帧与其后一帧进行相似性比较,得到所述视频帧的相似性量,如果所述视频帧是接收到的最后一个视频帧,则将该最后一个视频帧的相似性量设置为所述相似性量的取值范围内的最大值的模块。

说明书 :

帧率控制方法及装置

技术领域

[0001] 本发明涉及视频处理领域,特别涉及帧率控制方法及装置。

背景技术

[0002] 目前,在视频处理过程中,比如对视频内容进行采集、压缩、编解码或显示时,受处理能力的限制,很多情况下都需要对接收到的视频内容进行帧率控制,通过减少帧率,从而减少处理视频内容所需的处理能力,以适应处理能力的限制,避免因处理能力不足而造成的问题。比如在视频采集时,一般需要将采集到的视频图像进行压缩保存,因为采集时的帧率是不变的,一般是每秒30帧,但是采集的视频图像的分辨率是可变的,如果采集320X240的图像,那么压缩的处理能力足够将采集的30帧图像全部压缩完成,但是如果采集800X600的图像,很可能处理能力是不够的,无法做到将采集的30帧图像在正常时间内压缩完毕,这时就需要在对采集到的视频图像进行压缩前将帧率减少,将压缩所需的处理能力控制在实际处理能力限制之内,才能使视频采集和压缩的过程正常进行。
[0003] 现有对帧率的控制一般是采用在视频帧的帧内或帧间插入空白的方法。在帧内或帧间插入空白,虽然减少了帧率,满足了处理能力要求,但是这种方法需要将不能及时处理的视频帧缓存下来,等待能够被处理时再处理,因此会产生较大的处理延迟。且需要处理的帧总数是没有改变的,因此随着时间的增加,处理延迟会不断的积累,延迟将越来越大,一个视频帧从接收到经过帧率控制后输出,可能会延迟很长时间。当积累的未处理的视频帧达到一定数量,延迟达到一定程度时,还可能会造成缓存溢出等严重错误,使系统崩溃;另外,这种帧率控制方法需要生成空白插入帧间或帧内,具体的空白插入位置、生成空白的大小等参数都需要根据实际情况计算生成,且在帧内插入空白还需要对帧进行修改,因此需要消耗较大的处理能力资源,且处理比较复杂。

发明内容

[0004] 本发明实施例提供一种帧率控制方法,产生的处理延迟较小,且不会产生处理延迟的积累。
[0005] 本发明实施例提供一种帧率控制装置,产生的处理延迟较小,且不会产生处理延迟的积累。
[0006] 为达到上述目的,本发明的技术方案具体是这样实现的:
[0007] 一种帧率控制方法,该方法包括:
[0008] 预先设定表示一个丢帧操作所需参考的帧的数量的丢帧循环个数和表示一个丢帧操作需要丢掉的帧的数量的丢帧个数;
[0009] 对接收到的视频帧进行相似性比较,根据比较得到的视频帧的相似性量,根据预先设定的丢帧处理参数,从与所述丢帧循环个数相同数量的视频帧中,选择出与所述丢帧个数相同数量的,相似性量最大的视频帧,作为需要丢弃的视频帧;
[0010] 将所述需要丢弃的视频帧丢弃掉,输出未丢弃的视频帧。
[0011] 一种帧率控制装置,该装置包括:
[0012] 输入模块,用于接收视频帧;
[0013] 丢帧控制模块,用于接收输入模块发送的视频帧,根据预先设定的表示一个丢帧操作所需参考的帧的数量的丢帧循环个数和表示一个丢帧操作需要丢掉的帧的数量的丢帧个数,从接收到的视频帧中选择出,相似性量最大的视频帧,作为需要丢弃的视频帧;将所述需要丢弃的视频帧丢弃掉,输出未丢弃的视频帧。
[0014] 其中,所述丢帧控制模块具体包括:
[0015] 相似性比较单元,用于接收输入模块发送的视频帧,对接收到的视频帧进行相似性比较,得到的视频帧的相似性量;
[0016] 丢帧选择单元,用于接收相似性比较单元发送的视频帧的相似性量,根据所述视频帧的相似性量,从与所述丢帧循环个数相同数量的视频帧中,选择出与所述丢帧个数相同数量的需要丢弃的视频帧;
[0017] 丢帧处理单元,用于将丢帧选择单元选择出的需要丢弃的视频帧丢弃掉,输出未丢弃的视频帧。
[0018] 由上述的技术方案可见,本发明实施例的这种根据预先设定的丢帧处理参数,从接收到的视频帧中选择出需要丢弃的视频帧;将所述需要丢弃的视频帧丢弃掉,输出未丢弃的视频帧的帧率控制方法和装置,通过丢帧进行帧率的控制,将无法被及时处理的视频帧丢弃掉,而不是等待能够处理时再进行处理,无需缓存大量视频帧,因此不会产生很大的处理延迟,且处理延时不会累积。另外,本发明实施例的帧率控制方法及装置,无需生成空白帧,或者对帧进行修改,因此资源的消耗很小,处理过程简单,控制灵活,实现容易。

附图说明

[0019] 图1为本发明实施例的帧率控制装置的示例性结构图;
[0020] 图2为本发明实施例图1所示装置中丢帧控制模块的一个结构示意图;
[0021] 图3为本发明实施例图1所示装置中丢帧控制模块的又一个结构示意图;
[0022] 图4为本发明实施例的帧率控制方法的总体示例性流程图;
[0023] 图5为本发明实施例的帧率控制方法的具体流程图。

具体实施方式

[0024] 为使本发明的目的、技术方案及优点更加清楚明白,以下参照附图并举实施例,对本发明进一步详细说明。
[0025] 本发明实施例主要是利用对接收到的视频帧进行分析,按照分析的结果对接收到的视频帧进行丢弃处理,以达到帧率控制的目的。通过丢帧的方法进行帧率控制,可以灵活的对帧率进行处理,且保证处理的实时性,控制操作简单,通用性好,消耗资源少。
[0026] 下面,将详细介绍本发明实施例的帧率控制装置的具体结构;
[0027] 图1为本发明实施例的帧率控制装置的示例性结构图。
[0028] 如图1所示,本发明实施例的帧率控制装置包括:输入模块101和丢帧控制模块102。
[0029] 其中,输入模块101用于接收视频帧,并将接收到的视频帧向丢帧控制模块102输出。
[0030] 丢帧控制模块102用于接收输入模块101输出的视频帧,根据预先设定的丢帧处理参数,从接收到的视频帧中选择出需要丢弃的视频帧;将所述需要丢弃的视频帧丢弃掉,输出未丢弃的视频帧。
[0031] 其中预先设定的丢帧处理参数可以是:表示一个丢帧操作所需参考的帧的数量的丢帧循环个数和表示一个丢帧操作需要丢掉的帧的数量的丢帧个数,则丢帧控制模块102用于根据预先设置的丢帧循环个数和丢帧个数从接收到的视频帧中选择出需要丢弃的视频帧。
[0032] 具体来说,所述丢帧控制模块102的具体结构可如图2所示,包括:相似性比较单元201、丢帧选择单元202和丢帧处理单元203。
[0033] 其中,相似性比较单元201用于接收输入模块101发送的视频帧,对接收到的视频帧进行相似性比较,得到的视频帧的相似性量。
[0034] 丢帧选择单元202用于接收相似性比较单元201发送的视频帧的相似性量,根据所述视频帧的相似性量,从与所述丢帧循环个数相同数量的视频帧中,选择出与所述丢帧个数相同数量的需要丢弃的视频帧。
[0035] 丢帧处理单元203用于将丢帧选择单元202选择出的需要丢弃的视频帧丢弃掉,输出未丢弃的视频帧。
[0036] 其中,相似性比较单元201可以是将所述接收到的每一个视频帧与其前一帧进行相似性比较,得到所述视频帧的相似性量,如果所述视频帧是接收到的第一个视频帧,则将该第一个视频帧的相似性量设置为所述相似性量的取值范围内的最小值。当然也可以设定第一帧固定不丢弃。
[0037] 或者,相似性比较单元201也可以将所述接收到的每一个视频帧与其后一帧进行相似性比较,得到所述视频帧的相似性量,如果所述视频帧是接收到的最后一个视频帧,则将该最后一个视频帧的相似性量设置为所述相似性量的取值范围内的最大值。当然,也可以设定最后一帧固定丢弃。
[0038] 当然,相似性比较还可以是隔帧比较,这里不再赘述。
[0039] 另外,丢帧选择单元202可以是从与所述丢帧循环个数相同数量的视频帧中,选择与所述丢帧个数相同数量的,相似性量最大的视频帧,作为需要丢弃的视频帧。
[0040] 选择相似性量大的视频帧作为需要丢弃的视频帧,是为了在丢帧时尽量保证视频图像的连贯性,不至于出现视频图像的跳跃现象,减少丢帧后视频图像的质量下降的问题。
[0041] 当然,以上对丢帧的处理是优选的实施例,还可以采用随机丢帧或固定丢帧的方法进行帧率控制,如果采用随机丢帧的方法进行帧率控制,那么所述丢帧控制模块的具体结构可如图3所示,包括:随机丢帧单元301和丢帧处理单元302。
[0042] 其中,随机丢帧单元301用于接收输入模块101发送的视频帧,根据预先设置的丢帧循环个数和丢帧个数,从接收到的与所述丢帧循环个数相同数量的视频帧中随机选择出与所述丢帧个数相同数量的需要的丢弃的视频帧。
[0043] 丢帧处理单元302用于将接收到的视频帧中需要丢弃的视频帧丢弃掉,输出未丢弃的视频帧。
[0044] 采用固定丢帧的方法进行帧率控制的方法类似,只需选择固定位置的视频帧进行丢弃即可,这里不再赘述。
[0045] 上面介绍了本发明实施例的帧率控制装置,下面将详细介绍本发明实施例的帧率控制方法。
[0046] 图4为本发明实施例的帧率控制方法的总体示例性流程图。如图4所示,该流程具体包括如下步骤:
[0047] 步骤401,根据预先设定的丢帧处理参数,从接收到的视频帧中选择出需要丢弃的视频帧。
[0048] 预先设定的丢帧处理参数可以包括表示一个丢帧操作所需参考的帧的数量的丢帧循环个数和表示一个丢帧操作需要丢掉的帧的数量的丢帧个数。根据预先设定的丢帧处理参数,从接收到的视频帧中选择出需要丢弃的视频帧,就是根据预先设置的丢帧循环个数和丢帧个数从接收到的视频帧中选择出需要丢弃的视频帧。
[0049] 比如设置丢帧循环个数为7,丢帧个数为3,就表示一次丢帧操作要从接收到的7个视频帧中选择出3个视频帧为需要丢弃的视频帧。如果丢帧个数设置为0,则表示不需要丢帧,无须进行选择的操作。当然,把丢帧循环个数设置为0,也可以表示不需要丢帧。另外,还可以用保留帧的个数,作为丢帧参数,将丢帧循环个数减去保留帧的个数,即可表示需要丢掉的帧的个数。丢帧处理参数的设置方式可以很多,只要是能够表示出在多少个视频帧中丢弃多少个视频帧就可以。
[0050] 步骤402,将需要丢弃的视频帧丢弃掉,输出未丢弃的视频帧。
[0051] 将步骤401中选择出的3个需要丢弃的视频帧丢弃掉,将剩下的4帧输出,达到控制帧率的目的,例如原来是每秒28帧,那么经过丢帧的处理后,将会变成每秒16帧,如果设置丢帧循环个数为4,丢帧个数为2,则处理后的帧率将变为每秒14帧。
[0052] 以上步骤401中,根据预先设置的丢帧循环个数和丢帧个数从接收到的视频帧中选择出需要丢弃的视频帧的具体方法是:
[0053] 对接收到的视频帧进行相似性比较,根据比较得到的视频帧的相似性量,从与所述丢帧循环个数相同数量的视频帧中,选择出与所述丢帧个数相同数量的需要丢弃的视频帧。或者,采用随机选择的方式,随机选择出需要丢弃的视频帧。或者,采用固定丢帧的选择方式,比如丢帧循环个数设置为7,丢帧个数设置为3,那么固定丢帧的方法就是按照接收的先后顺序,固定将第2、4、6帧,作为需要丢弃的视频帧。
[0054] 其中,相似性比较的具体方法可以是:将收到的每一个视频帧与其前一帧进行相似性比较,得到所述视频帧的相似性量,如果所述视频帧是接收到的第一个视频帧,则将该第一个视频帧的相似性量设置为所述相似性量的取值范围内的最小值。当然,也可以设定第一帧固定不丢弃。其中,相似性量可以采用百分比的量化形式,取值范围是0%~100%,也可以采用数字或字母形式,具体量化方式和取值范围任意。
[0055] 或者,将所述接收到的每一个视频帧与其后一帧进行相似性比较,得到所述视频帧的相似性量。如果所述视频帧是接收到的最后一个视频帧,则将该最后一个视频帧的相似性量设置为所述相似性量的取值范围内的最大值。当然,也可以设定最后一帧固定丢弃。如果是与后面的帧进行相似性比较,那么,就无需对第一帧做单独的处理了。
[0056] 另外,从与所述丢帧循环个数相同数量的视频帧中,选择出与所述丢帧个数相同数量的需要丢弃的视频帧,是从与所述丢帧循环个数相同数量的视频帧中,选择与所述丢帧个数相同数量的,相似性量最大的视频帧,作为需要丢弃的视频帧。
[0057] 假设丢帧循环个数设置为7,丢帧个数设置为3,具体选择过程可以是:先将相似性比较得出的7个视频帧的相似性量进行排序,具体排序可以使用任意的排序方法进行排序,比如从大到小排序,将排在前3个的视频帧选择为需要丢弃的视频帧,如果从小到大排序,则将排在后3个的视频帧选择为需要丢弃的视频帧。
[0058] 选择相似性量大的视频帧作为需要丢弃的视频帧,是为了在丢帧时尽量保证视频图像的连贯性,不至于出现视频图像的跳跃现象,减少丢帧后视频图像质量下降的问题。
[0059] 举个具体的例子,比如丢帧循环个数设置为7,丢帧个数设置为3,在视频帧的相似性比较中,得到的视频帧的相似性量分别为:帧frame1为88%,frame2为79%,frame3为98%,frame4为96%,frame5为86%,frame6为93%,frame7为64%。
[0060] 根据相似性量排序,得到排序结果为:
[0061] frame3>frame4>frame6>frame 1>frame5>frame2>frame7。
[0062] 根据丢帧个数设置,将frame3、frame4、frame6选择为需要丢弃的视频帧;frame1、frame5、frame2、frame7被保留。
[0063] 如果比较出的视频帧的相似性量中,有两个或两个以上的视频帧的相似性量相同,则可以根据丢帧个数的设置,任意选择需要丢弃的视频帧,还以丢帧循环个数设置为7,丢帧个数设置为3为例,比如视频帧的相似性量如下:frame1为88%,frame2为88%,frame3为98%,frame4为96%,frame5为86%,frame6为73%,frame7为64%。
[0064] 那么排序的结果是frame3>frame4>frame 1=frame2>frame5>frame6>frame7。
[0065] 因为需要丢掉3帧,所以可以在frame1和frame2中任意选择一个作为需要丢弃的视频帧,另一个保留。
[0066] 下面举一个具体的例子,假设丢帧循环个数设置为7,丢帧个数设置为3,具体的帧率控制流程如图5所示,图5为本发明实施例的帧率控制方法的具体流程图。
[0067] 步骤501,判断预先设置的丢帧个数是否为0。
[0068] 如果设置的丢帧个数为0,则不进行操作,直接结束,如果不是0,则进入丢帧的选择流程,执行步骤502。
[0069] 步骤502,接收视频帧。
[0070] 步骤503,判断接收到的视频帧是否是所有接收到的视频帧中的第一帧,若是,则执行步骤505,否则执行步骤504。
[0071] 步骤504,将接收到的视频帧和其前一帧进行相似性比较,得到该帧的相似性量。
[0072] 步骤505,设置视频帧的相似性量为0%。
[0073] 步骤506,按照相似性量的大小,对接收到的7个视频帧进行排序。
[0074] 步骤507,按照排序的结果,选择其中相似性量最大的3个视频帧作为需要丢弃的视频帧。
[0075] 步骤508,将选择出的需要丢弃的视频帧丢弃掉,结束流程。
[0076] 丢弃选择出的3个需要丢弃的视频帧,将保留的4个视频帧输出。
[0077] 以上步骤505中,相似性量采用了百分比的形式,不管相似性量采用什么量化形式,只要将该帧的相似性量设为采用的量化形式中可以取到的最小值即可。
[0078] 由上述的实施例可见,本发明的这种根据预先设定的丢帧处理参数,从接收到的视频帧中选择出需要丢弃的视频帧;将所述需要丢弃的视频帧丢弃掉,输出未丢弃的视频帧的帧率控制方法和装置,通过丢帧进行帧率的控制,将无法被及时处理的视频帧丢弃掉,而不是等待能够处理时再进行处理,无需缓存大量视频帧,因此不会产生很大的处理延迟,且处理延时不会累积。另外,本发明实施例的帧率控制方法及装置,无需对接收到的视频帧进行修改,因此资源的消耗很小,处理过程简单,控制灵活,实现容易。而且,通过相似性比较进行丢帧的选择,可以在很大程度上避免丢帧引起的视频图像质量下降的问题。
[0079] 所应理解的是,以上所述仅为本发明的较佳实施方式而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。