专利名称:一种视频帧率控制方法及装置的制作方法
技术领域:
本发明涉及视频处理领域,尤其涉及视频的帧率控制方法及装置。
背景技术:
视频信号为人们带来了视觉上的直观感受,比如网上电视系统,视频 监控等系统在人们的日常生活中随处可见。这些互联网上的视频应用一个 很重要的特点就是带宽受限,如何在有限带宽下保证视频信号的连续性是 一个很重要的课题。帧率控制方法是解决此类问题的一种常用的方法。特 别是在视频监控领域,帧率控制方法不仅可以减少视频信号的带宽占用, 并且可以减少视频信号的存贮量。例如,视频在采集时帧率是不变的,但 在视频编码或转码系统中,为了节省编码或转码后的码流大小,从而节省 有限的带宽资源,都需要动态的调节帧率的大小,也就是通过改变系统的
帧率信息frameRate来减少单位时间内处理视频帧数量,从而减少处理的 数据量。而现有技术中对于帧率的控制方案都没有考虑使放行的视频帧具 有最大相关性。
发明内容
本发明要解决的主要技术问题是,提供一种视频帧率控制方法及装 置,提高放行的视频帧的相关性。
为解决上述技术问题,本发明提供一种视频帧率控制方法,包括
A、 获取视频信号的帧率;
B、 获取视频信号的制式;
C、 选择与所述制式相对应的过滤器;
D、 在所述过滤器中确定与所述帧率对应的过滤器因子;
E、 接收一帧视频图像;
F、 根据所述过滤器因子确定是否输出当前接收的视频图像帧。 本发明还提供一种视频帧率控制装置,其特征在于包括-帧率获取单元,用于获取视频信号的帧率; 制式获取单元,用于获取视频信号的制式; 过滤器选择单元,用于选择与所述制式相对应的过滤器; 过滤器因子确定单元,用于在所述过滤器中确定与所述帧率对应的过 滤器因子;
接收单元,用于接收一帧视频图像;
帧率调节单元,用于根据所述过滤器因子确定是否输出当前接收的视 频图像帧。
本发明的有益效果是本发明根据视频信号的制式设定合适的过滤 器,根据帧率确定过滤器因子,从而使放行的视频图像帧之间具有较好的 相关性,提高了视频图像的连续性。
图1为本发明一种实施例的结构示意图; 图2为本发明一种实施例的流程图; 图3为本发明另一种实施例的流程图。
具体实施例方式
下面通过具体实施方式
结合附图对本发明作进一步详细说明。 常见的电视制式有NTSC和PAL,不同的制式,视频采集时有不同的
采样率,例如,采用PAL制时采样率为25帧/秒,采用NTSC制时,采样
率为30帧/秒。
根据视频设备的具体条件,可设定视频设备处理视频信号时的帧率, 该帧率通常为低帧率。所谓低帧率是指低于满帧率的情况,例如,采用PAL 制式时,帧率小于25帧/s;当采用NTSC制式时,帧率小于30帧/s都可 以称为低帧率。当视频设备为低帧率时,即需要考虑过滤掉某些图像帧, 即进行帧率控制。
请参考图1,在本发明一种实施例中,视频帧率控制装置包括帧率获 取单元11、制式获取单元12、过滤器选择单元13、过滤器因子确定单元 14、接收单元15和帧率调节单元17。帧率获取单元11用于获取视频信号 的帧率,即获取视频设备本身设定的帧率,可通过读取系统的设定来获得。制式获取单元12用于获取视频信号的制式,即获取由视频设备的硬件所决 定的视频制式,视频制式通常有NTSC制和PAL制。过滤器选择单元13与 制式获取单元12相连,用于选择与所述制式相对应的过滤器。过滤器包括 若干过滤器因子,所述过滤器因子的数量大于或等于所述制式的半帧率。 所述每个过滤器因子中包括M位标记位,其中M大于或等于所述制式的满 帧率。过滤器因子确定单元14分别与过滤器选择单元13和帧率获取单元 ll相连,用于在所述过滤器中确定与所述帧率对应的过滤器因子。接收单 元15用于接收视频图像帧。帧率调节单元17分别与过滤器因子确定单元 14和接收单元15相连,用于根据所述过滤器因子确定是否输出当前接收 的视频图像帧。其中,所述过滤器因子确定单元14用于判断所述帧率是否小于或等 于所述制式的半帧率,如果是则根据所述帧率来选择相关的滤波器因子; 否则根据对称性原则选取相关的滤波因子。在另一实施例中,视频帧率控制装置还包括计数单元16,计数单元 16用于在接收视频图像之前将图像帧统计索引置0,并在接收单元每接收 一帧视频图像后将图像帧统计索引加1。帧率调节单元17根据图像帧统计 索引的值确定所述过滤器因子中的对应位,根据所述对应位的标记确定是 否输出当前接收的视频图像,然后判断图像帧统计索引是否大于或等于所 述制式的满帧率,如果是,则控制计数单元将图像帧统计索引置为O。基于以上装置,视频帧率控制方法的一种实施例如图2所示,包括以 下步骤步骤Sll,获取视频信号的帧率,该帧率可根据视频设备的具体情况 进行设定。步骤S12,获取视频信号的制式,通常为NTSC制或PAL制。 步骤S13,将图像帧统计索引置0,然后执行步骤S14。 步骤S14,选择与步骤S12中获得的制式相对应的过滤器,然后执行 步骤S15。该过滤器的作用是滤掉一些图像帧,从而降低帧率。过滤器包 括若干过滤器因子,所述过滤器因子的数量大于或等于所述制式的半帧 率,每个过滤器因子中包括M位标记位,其中M大于或等于所述制式的满 帧率,每个图像帧对应过滤器因子中的一个标记位,根据标记位的状态确 定该图像帧是输出还是滤掉(即丢弃)。对于采用NTSC制的,其采样率为 30帧/秒,因此NTSC制的满帧率为30帧,半帧率为15帧。在一种实施例中,NTSC制对应的过滤器包括16个过滤器因子,每个过滤器因子包括30 位标记位,因NTSC制的采样率是30帧/秒,因此每个图像帧对应一个位 标记,每个位标记用于表示所对应的图像帧是输出还是滤掉。对于采用PAL 制的,对于采用PAL制的,其采样率为25帧/秒,因此PAL制的满帧率为 25帧,半帧率为12帧。在一种实施例中,其对应的过滤器包括13个过滤 器因子,每个过滤器因子包括25位标记位,因PAL制的采样率是25帧/ 秒,因此每个图像帧对应一个位标记,每个位标记用于表示所对应的图像 帧是输出还是滤掉。例如,位标记为"1",表示该位标记对应的图像帧是 输出;位标记为"0",表示该位标记对应的图像帧是滤掉。反之亦可。步骤S15,在所述过滤器中确定与所述帧率对应的过滤器因子。根据 步骤Sll中检测的帧率在过滤器中査找出与帧率对应的过滤器因子,对应 的过滤器因子可以是序号与帧率相同的过滤器因子。在一种具体实施例 中,如果过滤器中过滤器因子的数量与半帧率的数值相同或稍大些,则可 以先判断所述帧率是否小于或等于所述制式的半帧率,如果是则根据所述 帧率来选择相关的滤波器因子;否则根据对称性原则选取相关的滤波因 子。所述对称性原则是在所述过滤器中查找与满帧率减去帧率后的差值 对应的过滤器因子。然后执行步骤S16。步骤S16,接收一帧视频图像,并将图像帧统计索引加1,然后执行 步骤S17。步骤S17,判断是否输出当前接收的视频图像,如果是则输出当前接 收的视频图像进行下一步处理,例如编码、转码或显示。如果确定不输出 当前接收的视频图像,则将该帧图像丢弃。在一种具体实例中,判断是否 输出图像帧的方法是根据图像帧统计索引的值确定所述过滤器因子中的 对应位;根据所述对应位的标记确定是否输出当前接收的视频图像。然后 执行步骤S18。步骤S18,判断图像帧统计索引的值是否大于或等于满帧率,如果是, 则执行步骤S19,如果图像帧统计索引的值是否小于满帧率,则转向执行 步骤S16,继续处理下一帧图像。步骤S19,将图像帧统计索引置为O,使图像帧统计索引重新计数。 上述步骤中,步骤Sll、步骤S12和步骤S13之间的顺序可相互调换,仍然能达到本实施例的效果。下面以NTSC制和PAL制为例说明本发明的一种具体实施例,其流程 图如图3所示。步骤S21,获取视频信号的帧率frameRate。步骤S22,置图像帧统计索引nFramelndex 二 0。步骤S23,获取视频信号的制式videoSystem,然后执行步骤S24。步骤S24,接收一帧视频图像,将图像帧统计索引nFramelndex加l,然后执行步骤S25。步骤S25,根据视频信号的制式videoSystem(NTSC或PAL)选择相应的执行程序,如果是NTSC制,则执行步骤S2511,如果是PAL制,则执行步骤S2521。在步骤S2511,视频信号制式为NTSC,则确定过滤器为FrameNFilter, 然后执行步骤S2512。在本实施例的一种具体实例中,过滤器FrameNFilter的对应值可以为const unsigned int FrameNFilter[16] = { 0x00000000, 〃 0 〃1 〃2 〃3 〃4 〃5 〃6 〃7. 〃8 〃90x00008001 0x00100401 0x00408081 0x01041041 0x02108421 0x04222111 0x04488911 0x04892249 0x09249249 0x12925249 0xl294A52900 0000 0000 0000 1000 0000 0000 0001 00 0000 0001 0000 0000 0100 0000 000100 0001 0000 0100 0001 0000 0100 0001 00 0010 0001 0000 1000 0100 0010 000100 0100 0100 1000 1000 1001 0001 0001 00 0100 1000 1001 0010 0010 0100 1001 〃 10國00 1001 0010 0100 1001 0010 0100 1001 〃 11 - 01 0010 1001 0010 0101 0010 0100 1001 〃 12 - 01 0010 1001 0100 1010 0101 0010 1001 0x0A54AA55, 〃 13 - 00 1010 0101 0100 1010 1010 0101 0101 0xl52AA555, 〃 14 - 01 0101 0010 1010 1010 0101 0101 0101 0x15555555 // 15 - 01 0101 0101 0101 0101 0101 0101即该过滤器具有16个过滤器因子,每一行表示一个过滤器因子,每 一行中,"〃"前面的是用十六进制表示的过滤器因子,"〃"后面的注释 是前面十六进制数用二进制表示的过滤器因子。每个过滤器因子具有30 位,分别用"0"或"1"作为位标识,每个位标识表示其对应的图像帧是 否输出,例如"0"表示过滤掉其对应的图像帧。"1"表示输出其对应的 图像帧。反之也可以。步骤S2512,判断nFramelndex是否大于等于30帧,如果是则执行步 骤S2513,否则执行步骤S2514。步骤S2513,置nFramelndex为0,然后执行步骤S2514。步骤S2514,判断图像的帧率frameRate是否为小于等于15帧,如果 是则执行步骤S2515,否则执行步骤S2516。步骤S2515,根据帧率frameRate来选择相关的过滤器因子factor 为FrameNFilter[frameRate],根据过滤器因子来判断当前帧是否输出。 具体判断方法为判断表达式(l)是否为真(true)或假(false)值。真值就 是放行帧,假值就是可以过滤掉的帧,然后执行步骤S26。((FrameA/F//fer Oi^awe/"cfec + +)) &0x00000001), (1)步骤S2516,当视频帧率的设置为大于15帧而小于30帧时,系统可 以根据对称性原则选取相关的过滤器因子FrameNFilter[30 -frameRate],同理,根据过滤器因子来判断当前帧是否输出。具体判断动 作为判断表达式(2),是否为真(true)或假(false)值。真值就是放行帧, 假值就是可以过滤掉的帧,然后执行步骤S26。((尸rameA^^er[30 — ("Frame/"^foc++)) & 0x00000001) , (2)例如,设置的视频帧率为10,则根据步骤S2515,与该帧率对应的过 滤器因子为过滤器的第10行(即第10个因子),如果当前图像帧的图像 帧统计索引等于7,则与当前图像帧对应的是第10个因子的第7位,其位 标识是"l",则输出当前图像帧。如果设置的视频帧率为18,则根据步骤 S2516,与该帧率对应的过滤器因子为过滤器的第12行(即第12个因子), 如果当前图像帧的图像帧统计索引等于9,则与当前图像帧对应的是第12 个因子的第9位,其位标识是"0",则过滤掉当前图像帧。步骤S2521,视频信号制式为PAL,则确定过滤器为FramePFilter,然后执行步骤S2522。在本实施例的一种具体实例中,过滤器FramePFilter 的对应值可以为const unsigned int FramePFilter[13] = {0x00000000, 〃 00x00000001, 〃1OxOOOO謂l, 〃20x00010101, 〃30x00401041, 〃40x00108421, 〃50x00111111, 〃60x00224489, 〃 70x00249249, 〃 80x00492925, 〃90x009294A5, 〃 100x00000001, 〃11-0x00555555 〃12 -即该过滤器具有13个过滤器因子,每一行表示一个过滤器因子,每 一行中,"〃"前面的是用十六进制表示的过滤器因子,"〃"后面的注释 是前面十六进制数用二进制表示的过滤器因子。每个过滤器因子具有25 位,分别用"0"或"1"作为位标识,每个位标识表示其对应的图像帧是 否输出,例如"0"表示过滤掉其对应的图像帧。"1"表示输出其对应的 图像帧。反之也可以。步骤S2522,假如nFramelndex大于等于25帧,如果是则执行步骤 S2523,否则执行步骤S2524。步骤S2523,置nFrameIndex为0,然后执行步骤S2524。步骤S2524,判断视频图像的帧率是否小于等于12帧,如果是则执行 步骤S2525,否则执行步骤S2526。步骤S2525,如果视频图像的帧率设置为小于等于12帧,则根据帧率 来选择相关的过滤器因子FramePFilter[frameRate],根据过滤器因子来-0 0000 0000 0001 0000 0000 0001 -0 0000 0001 0000 0001 0000 0001 -0 0000 0100 0001 0000 0100 0001 -0 0001 0000 1000 0100 0010 0001 -0 0001 0001 0001 0001 0001 0001-0 0010 0100 1001 0010 0100 1001 -0 0100 1001 0010 1001 0010 0101 -0 1001 0010 1001 0100 1010 0101 ■ 0 0100 1010 1010 0101 0101 0101 0 0101 0101 0101 0101 0101 0101判断当前帧是否输出。具体判断方法为判断表达式(3)是否为真(true)或假(false)值。表达式(3)真值就是放行帧,假值就是可以过滤掉的帧,然后执行步骤S26。((Frame尸Fz7&r[^Ywnei c^e] ("i^Ywie/"cfec + +)) &0;c00000001) , (3)步骤S2526,假如视频的设置为大于12帧时,系统可以根据对称性原则选取相关的滤波因子FramePFilter [25 - frameRate],同理,根据滤波因子来判断当前帧是否输出。具体判断方法为判断表达式(4)是否为真(true)或假(false)值。表达式(4)真值就是放行帧,假值就是可以过滤掉的帧,然后执行步骤S26。((Frawe尸F说er[25 —々flme及a&] ("Frawe/"cfec + +》& 0;c00000001) (^)步骤S26,设置是否放行标记discardFlag,然后执行步骤S27。 步骤S27,根据标记对当前帧进行相关处理后跳转到S24,处理下一 帧图像。根据NTSC和PAL两种电视广播制式和所设置的帧率的大小建立两种 不同的帧率过滤器FrameNFilter和FramePFilter,过滤器的放行帧标记 为1或0。过滤器的选择原则是当视频信号输入制式X和帧率N确定后, 选择最佳过滤器FrameXFilter和其对应的过滤因子FrameXFilter [N](其 中X对应PAL制式或NTSC制式,N代表帧率),使得视频信号在低帧率的 情况下,尽量保持视频图像的连贯性,提高了视频的连续性。以上内容是结合具体的实施方式对本发明所作的进一步详细说明,不 能认定本发明的具体实施只局限于这些说明。对于本发明所属技术领域的 普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干简单 推演或替换,都应当视为属于本发明的保护范围。
权利要求
1.一种视频帧率控制方法,其特征在于包括A、获取视频信号的帧率;B、获取视频信号的制式;C、选择与所述制式相对应的过滤器;D、在所述过滤器中确定与所述帧率对应的过滤器因子;E、接收一帧视频图像;F、根据所述过滤器因子确定是否输出当前接收的视频图像帧。
2. 如权利要求l所述的方法,其特征在于,循环所述步骤E和F, 直到停止接收视频图像。
3. 如权利要求1所述的方法,其特征在于,所述过滤器包括若干过 滤器因子,所述过滤器因子的数量大于或等于所述制式的半帧率;所述每 个过滤器因子中包括M位标记位,其中M大于或等于所述制式的满帧率。
4. 如权利要求1至3中任一项所述的方法,其特征在于,所述步骤 D包括判断所述帧率是否小于或等于所述制式的半帧率,如果是则根据 所述帧率来选择相关的滤波器因子;否则根据对称性原则选取相关的滤波 因子。
5. 如权利要求4所述的方法,其特征在于,在所述步骤E之前还包 括将图像帧统计索引置O的步骤,且在每接收一帧视频图像后,将图像帧 统计索引加l;所述步骤F包括-根据图像帧统计索弓I的值确定所述过滤器因子中的对应位;根据所述 对应位的标记确定是否输出当前接收的视频图像帧;在步骤F之后还包括判断图像帧统计索引是否大于或等于所述制式的满帧率,如果是,则置图像帧统计索引为o。
6. 如权利要求5所述的方法,其特征在于,当制式是NTSC制时, 所述制式的满帧率为30,所述制式的半帧率为15;当制式是PAL制时, 所述制式的满帧率为25,所述制式的半帧率为12。
7. —种视频帧率控制装置,其特征在于包括帧率获取单元,用于获取视频信号的帧率;制式获取单元,用于获取视频信号的制式; 过滤器选择单元,用于选择与所述制式相对应的过滤器;过滤器因子确定单元,用于在所述过滤器中确定与所述帧率对应的过滤器因子;接收单元,用于接收一帧视频图像;帧率调节单元,用于根据所述过滤器因子确定是否输出当前接收的视 频图像帧。
8. 如权利要求7所述的装置,其特征在于所述过滤器包括若干过 滤器因子,所述过滤器因子的数量大于或等于所述制式的半帧率;所述每 个过滤器因子中包括M位标记位,其中M大于或等于所述制式的满帧率。
9. 如权利要求7或8所述的装置,其特征在于所述过滤器因子确 定单元用于判断所述帧率是否小于或等于所述制式的半帧率,如果是则根 据所述帧率来选择相关的滤波器因子;否则根据对称性原则选取相关的滤 波因子。
10. 如权利要求9所述的装置,其特征在于,还包括 计数单元,用于在接收视频图像之前将图像帧统计索引置0,并在接收单元每接收一帧视频图像后将图像帧统计索引加1;所述帧率调节单元还根据图像帧统计索引的值确定所述过滤器因子 中的对应位;根据所述对应位的标记确定是否输出当前接收的视频图像 帧,然后判断图像帧统计索引是否大于或等于所述制式的满帧率,如果是, 则控制计数单元将图像帧统计索引置为0。
全文摘要
本发明公开了一种视频帧率控制方法及装置,所述方法包括A.获取视频信号的帧率;B.获取视频信号的制式;C.选择与所述制式相对应的过滤器;D.在所述过滤器中确定与所述帧率对应的过滤器因子;E.接收一帧视频图像;F.根据所述过滤器因子确定是否输出当前接收的视频图像帧。本发明根据视频信号的制式设定合适的过滤器,根据帧率确定过滤器因子,从而使放行的视频图像帧之间具有较好的相关性,提高了视频图像的连续性。
文档编号H04N7/24GK101626500SQ200910109100
公开日2010年1月13日 申请日期2009年7月31日 优先权日2009年7月31日
发明者袁誉乐, 勇 赵 申请人:北京大学深圳研究生院