CN105306945B - 一种监控视频的可伸缩浓缩编码方法和装置 - Google Patents
一种监控视频的可伸缩浓缩编码方法和装置 Download PDFInfo
- Publication number
- CN105306945B CN105306945B CN201410328538.5A CN201410328538A CN105306945B CN 105306945 B CN105306945 B CN 105306945B CN 201410328538 A CN201410328538 A CN 201410328538A CN 105306945 B CN105306945 B CN 105306945B
- Authority
- CN
- China
- Prior art keywords
- frame
- coding
- video
- concentration
- monitor video
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本发明关于一种监控视频的可伸缩浓缩编码方法,包括以下步骤:对待编码的监控视频进行分析,获得待编码的监控视频的每帧中运动对象的区域信息和映射信息;确定待编码的监控视频中各帧的不同区域所对应的编码优先级,将需要在浓缩视频中显示的区域作为编码优先级高的区域,将不需要在浓缩视频中显示的区域作为编码优先级低的区域;对各帧中优先级高的区域进行基本层编码,获得基本层码流;基于ROI的时域可伸缩编码,对各帧中优先级低的区域进行增强层编码,获得增强层码流;复合编码后的基本层码流和增强层码流,生成可伸缩码流,完成编码。借由本发明,不仅能够实现对监控视频的灵活有效的编码,还能够提高原始监控视频和浓缩视频的存储效率。
Description
技术领域
本发明涉及监控视频编码领域,特别是涉及一种监控视频的可伸缩浓缩编码方法和装置。
背景技术
随着科技的发展,监控视频的应用越来越普遍,监控视频的相关技术也越来越丰富,例如可伸缩浓缩浏览技术、基于ROI(ROI,即region of interest,感兴趣区域))的时域可伸缩编码技术等。
在监控视频的可伸缩编码领域,传统的可伸缩编码技术包括时域可伸缩编码技术、空域可伸缩编码技术和质量可伸缩编码技术。具体的,借由时域可伸缩编码技术,用户可以根据网络带宽的大小、终端解码器的计算能力等来获得不同帧率的视频流。通常,时域可伸缩编码技术中包含两个类别的码流:时域基本层码流和时域增强层码流,前者包含基本帧率,后者包含增强层与基本层视频的残差。解码端收到基本层码流后,可以解码出一个低帧率的视频序列,而当网络带宽大于某个阈值的时候,用户可以收到增强层码流,和基本层码流一起解码,获得更高帧率的视频序列。另外,基本层的编码采用基本层的帧来预测参考,采用I帧或P帧编码类型;增强层由B帧构成,最高层B帧不作其它帧的参考帧。当带宽减小时,可以任意对时域增强层B帧进行丢弃,并不会影响基本层的正确解码,且一个增强层由于使用前一个基本层作为参考帧,不会因为前面增强层的丢失而影响解码。但是,这种时域可伸缩编码技术没有打破帧的框架,只能针对整帧进行时域增强,不能针对感兴趣区域优化帧率调整。
ROI是指某一帧或某一序列中最为观看者所关注的区域。不同于传统的帧级时域可伸缩编码技术,基于ROI的时域可伸缩编码技术不再以整帧作为时域可伸缩编码的最小单位,而是以ROI前景以及非ROI背景作为时域可伸缩的编码单位。以两层码流结构为例,基本层标记为第0层,增强层标记为第1层。传统的帧级时域可伸缩编码技术,会在增强层中对中间插入的帧进行整帧编码,而在基于ROI的时域可伸缩编码技术中,只在增强层中对ROI区域进行编码,背景部分都可以跳过;而在解码端,基本层可以解码出背景信息,增强层的背景信息直接用基本层的背景信息所替代。在这种编解码结构中,由于在时域层次上降低了背景部分的资源占用,所以在同等码率限制下,可以传输更多的ROI时域增强层,提高解码序列的视觉连贯性。
此外,实现ROI的标记是进行基于ROI的视频编码的基础,为了能够既实现ROI的灵活标记又能够和现有的视频编码框架与标准兼容,研究人员常采用基于灵活宏块顺序FMO(FMO,即Flexible Macroblock Ordering)的ROI标记方法。FMO最初是作为一种容错方法在H.264视频编码标准提案中提出(参考文献:“Advanced Video Coding For GenericAudiovisual Services,”ITU-T Recommendation H.264/AVC(2005)),FMO通过定义6种固定的模板和1种自定义模板,实现了将一帧中不同位置的宏块按空间位置关系划分到不同的片组中去,每个片组独立解码,不同片的宏块不能用于自身片中做预测参考,不同的片组被包含在不同的NAL(Network Abstract Layer)单元中,从而减弱了相同片宏块之间的空间相关性,增强了不同片宏块之间的空间相关性,增加了解码端错误掩盖时可以使用的信息量,提高了错误隐藏的有效性。具体的,利用FMO的功能,对于给定的视频序列,将感兴趣区域作为前景部分,划分为独立的片组,而背景作为剩下的片组。由于各个片组相互独立,所以能够方便的丢弃背景区域信息并实现ROI区域的重点编码,这在面向安防监控的视频编码应用中尤为方便、有效。
为了满足监控视频快速浏览的需求,A.Rav-Acha等人提出了视频浓缩的处理方案(参看A.Rav-Acha,Y.Pritch,and S.Peleg,“Making a Long Video Short:Dynamic VideoSynopsis”,CVPR,2006),通过视频分析将运动对象序列提取到数据库,需要观看时再根据用户需要生成相应长度的浓缩视频。这种方法虽然在一定程度上满足了监控视频快速浏览的需求,但是这种将原始监控视频和浓缩视频分别存储的方式存储效率较低,会加大存储负担,增加监控系统的运营成本,且用户只能浏览固定需求的浓缩视频。
针对现有的监控视频可伸缩编码与快速浏览方法的分析可知,其存在以下的缺点:一方面,因为没有灵活、有效的监控视频存储和浏览方法做支持,用户基于原有的浓缩视频浏览方案,每次只能浏览几个固定内容的浓缩视频;另一方面,现有的可伸缩编码方法无法直接兼容于视频浓缩方法,使得原始监控视频和浓缩视频只能使用独立的方式分别进行存储,而同时存储原始监控视频和浓缩视频的存储效率较低。
所以,亟需一种新的监控视频的可伸缩浓缩编码方法来对上述问题进行改善。
发明内容
本发明的目的在于提供一种监控视频的可伸缩浓缩编码方法和装置,不仅能够实现对监控视频的灵活、有效的编码,还能够提高原始监控视频和浓缩视频的存储效率。
本发明的目的是采用以下技术方案来实现的。本发明提供一种监控视频的可伸缩浓缩编码方法,其包括以下步骤:S1,对待编码的监控视频进行分析,获得待编码的监控视频的每帧中运动对象的区域信息和映射信息;S2,确定待编码的监控视频中各帧的不同区域所对应的编码优先级,将需要在浓缩视频中显示的区域作为编码优先级高的区域,将不需要在浓缩视频中显示的区域作为编码优先级低的区域;S3,对各帧中优先级高的区域进行基本层编码,获得基本层码流;S4,基于ROI的时域可伸缩编码,对各帧中优先级低的区域进行增强层编码,获得增强层码流;以及S5,复合编码后的基本层码流和增强层码流,生成可伸缩码流,完成编码。
本发明的目的还可采用以下技术措施进一步实现。
前述的监控视频的可伸缩浓缩编码方法,其中在步骤S3和S4中,采用IBBP编码方案中的I-slice、P-slice和B-slice条带类型,将映射到浓缩视频中的运动对象及其背景编码为I-slice条带类型或P-slice条带类型,同时将不需要映射到浓缩视频中的运动对象及其背景编码为B-slice条带类型。
前述的监控视频的可伸缩浓缩编码方法,其中在增强层编码时,将不需要映射到浓缩视频中的运动对象和背景编码为不同的条带。
前述的监控视频的可伸缩浓缩编码方法,其中在编码帧间编码帧的时候,针对一帧中不同区域的内容优先级不同的情况,使用一种帧类型P/B帧,对该帧视频进行编码,即当一帧中的前景和背景有的映射有的不映射时,映射的前景和背景用P-slice条带类型进行编码,不映射的前景和背景用B-slice条带类型进行编码。
前述的监控视频的可伸缩浓缩编码方法,其在编码中,I帧、P帧和P/B帧中的I-slice和P-slice的编码信息放入基本层码流,而B帧和P/B帧中的B-slice的编码信息放入增强层码流。
前述的监控视频的可伸缩浓缩编码方法,其中该基于ROI的时域可伸缩编码采用基于灵活宏块顺序的ROI标记方法,标记感兴趣区域的块划分信息。
前述的监控视频的可伸缩浓缩编码方法,其中在步骤S2,S3和S4中,还包括生成对象标志位的过程,并将对象标志位写入相应的基本层码流或增强层码流对应的参数集中,以完成编码。
前述的监控视频的可伸缩浓缩编码方法,其中上述待编码的监控视频是已存储的待重新编码的监控视频,或是在线缓存的待编码监控视频。
前述的监控视频的可伸缩浓缩编码方法,其中在带宽或存储条件有限的情况下,该基本层码流独立进行传输、存储和解码,从而获得浓缩视频;而当同时传输、存储和解码增强层码流后,才能获得原始监控视频。
本发明的目的是采用以下技术方案来实现的。本发明还提供一种监控视频的可伸缩浓缩编码装置,其包括视频分析模块、优先级设置模块、基本层编码模块、增强层编码模块、对象标志位模块和码流复合模块;其中,该视频分析模块与优先级设置模块和对象标志位模块连接,该优先级设置模块分别与基本层编码模块和增强层编码模块连接,该基本层编码模块和增强层编码模块同时与对象标志位模块和码流复合模块连接,该对象标志位模块还与码流复合模块连接。
本发明的目的还可采用以下技术措施进一步实现。
前述的监控视频的可伸缩浓缩编码装置,其中在编码帧间编码帧的时候,针对一帧中不同区域的内容优先级不同的情况,即当一帧中的前景和背景有的映射有的不映射时,该基本层编码模块和增强层编码模块采用P/B帧的编码方法。
前述的监控视频的可伸缩浓缩编码装置,其中该视频分析模块包括在线浓缩分析模块,该在线浓缩分析模块可对监控视频进行实时在线分析和缓存。
前述的监控视频的可伸缩浓缩编码装置,其中在带宽或存储条件有限的情况下,该基本层编码模块中的基本层码流独立进行传输、存储和解码,从而获得浓缩视频;而当同时传输、存储和解码增强层编码模块中的增强层码流后,才能获得原始监控视频。
借由上述技术方案,本发明的监控视频的可伸缩浓缩编码方法和装置至少具有下列优点及有益效果:
(1)在本发明的监控视频的可伸缩浓缩编码方法和装置中,涉及的待编码的监控视频可以是已存储的监控视频,也可以是在线缓存的监控视频,不仅能够实现对监控视频的灵活、有效的编码,还能够提高原始将监控视频和浓缩视频分开存储的存储方案的存储效率。
(2)本发明的监控视频的可伸缩浓缩编码方法和装置,在可伸缩浓缩浏览技术和基于ROI的时域可伸缩编码技术等核心技术的支撑下,采用IBBP编码方案中的I-slice、P-slice和B-slice条带类型,还使用一种帧类型P/B帧,有效提高存储效率和编码效率。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其他目的、特征和优点能够更明显易懂,以下特举较佳实施例,并配合附图,详细说明如下。
附图说明
图1:为本发明的监控视频的可伸缩浓缩编码方法的方框图。
图2:为基于视频浓缩的监控视频可伸缩编码的结构图。
图3:为基于视频浓缩的监控视频可伸缩码流的结构图。
图4:为本发明的监控视频的可伸缩浓缩编码装置的方框图。
【主要元件符号说明】
1:视频分析模块 2:优先级设置模块
3:基本层编码模块 4:增强层编码模块
5:对象标志位模块 6:码流复合模块
7:在线视频浓缩模块 8:时序约束模块
具体实施方式
为更进一步阐述本发明为达成预定发明目的所采取的技术手段及功效,以下结合附图及较佳实施例,对依据本发明提出的一种监控视频的可伸缩浓缩编码方法和装置的具体实施方式、结构、特征及其功效,详细说明如后。
针对原始监控视频和浓缩视频在独立存储时的效率低,且不利于监控视频的灵活存储与高效浏览的问题,本发明在可伸缩浓缩浏览技术和基于ROI的时域可伸缩编码技术等核心技术的支撑下,提出一种监控视频的可伸缩浓缩编码方法,通过对原始监控视频的浓缩分析将原始监控视频划分为基本层与增强层,以实现原始与浓缩视频的可伸缩编码。
参阅图1所示,为本发明的监控视频的可伸缩浓缩编码方法的方框图。具体的,本发明的监控视频的可伸缩浓缩编码方法包括以下步骤:
S1,对待编码的监控视频进行分析;
首先,通过对待编码的监控视频进行背景建模、运动对象提取和运动对象跟踪等,完成进行监控视频编码前的底层视频分析工作,获得运动对象的区域信息;然后,使用基于可变保真度的视频浓缩技术对待编码的监控视频进一步进行高层视频分析,通过计算代价函数,确定当前帧中的运动对象是否在浓缩视频中显示以及显示时该运动对象在浓缩视频中的位置,获得运动对象的映射信息。简单来说,借由对待编码的监控视频的分析,获得待编码的监控视频的每帧中运动对象的区域信息和映射信息。
具体的,上述的视频分析过程可以是,基于从各帧中提取出的运动对象,形成运动对象序列(运动对象在时空间的三维表达),并引入三个代价函数:a.运动区域损失代价Ea,度量浓缩视频中运动区域的丢失程度;b.运动区域遮挡代价Ec,度量运动区域之间的遮挡程度;c.运动序列的时间一致性代价Et,度量运动序列的时间关系与原始视频中运动对象序列的时间关系的差异程度,随后为各个代价函数设置不同的权重系数ω1、ω2和ω3,将三个代价函数线性组合成总的能量函数:E(M)=ω1Ea(M)+ω2Ec(M)+ω3Et(M),其中M表示所有运动对象序列在浓缩视频的映射关系的集合,即各个运动对象在浓缩视频中的起始和结束位置,然后通过使用模拟退火算法(Simulated Annealing),根据能量函数E(M)的计算值对映射关系集进行优化,待算法处理完后得到最终的映射关系集合Mbest(详细过程可参看A.Rav-Acha,Y.Pritch,and S.Peleg,“Making a Long Video Short:Dynamic VideoSynopsis”,CVPR,2006),并根据映射关系集Mbest中的各个运动对象在原始视频和浓缩视频中的对应关系,形成运动对象的映射标志位,映射标志位用来表示运动对象从原始视频映射到浓缩视频时在浓缩视频中的帧号。
运动对象的区域信息涉及运动对象在原始监控视频中的出现区域,并可以包括运动对象的纹理、颜色、形状及运动轨迹等。而运动对象的映射信息主要涉及原始监控视频和浓缩视频之间运动对象的对应映射关系,以便于后续处理。
其中,该步骤S1还包括对浓缩视频中运动对象出现的时间顺序进行约束,让浓缩视频中的运动对象的出现顺序和原始视频中的运动对象保持一致,从而保证了可以进行实时分析、实时编码和实时解码,且实时解码的时延低。主要原因在于,浓缩视频中运动对象出现的时间顺序和原始监控视频中运动对象的出现顺序可能会不一样,即浓缩视频初始帧中可能会出现原始监控视频末尾的运动对象,这给浓缩视频的随机播放带来了困难。为了尽可能提高浓缩视频解码和播放的实时性,本发明在编码过程中,在视频浓缩的目标函数中加入了运动对象序列起始时间相对关系的约束项。假设运动对象序列Si在浓缩视频中的起始帧号为Fi,设定在运动对象序列Si之后出现的运动对象Sj的起始帧号Fj满足如下不等式(代价函数)约束:
max{F1,……,Fi}-Fj≤δ (1)
其中,max{F1,……,Fi}表示前i个运动对象在浓缩视频中的最大起始帧号;δ表示顺序打乱的容忍度。本发明中,δ可设置成小于等于5。
为了能够更好地理解上述不等式约束带来的影响,假设从第一个运动对象序列开始,其在浓缩视频中的起始帧号为F1,那么在不等式(1)的约束下,第二个运动对象序列的起始帧号范围为:
F2∈[max{0,F1-δ},N] (2)
其中N表示浓缩视频的总帧数。在得到了前两个运动对象序列的起始帧号之后,第三个运动对象序列的起始帧号的可行域为:
F3∈[max{0,max(F1,F2)-δ},N] (3)
以此类推,新输入的第k+1个运动对象序列的起始帧号始终被约束在浓缩视频的后续运动对象序列的起始帧的范围内,即:
由(4)式可知,在原始监控视频中出现的前后两个运动对象,在浓缩视频中的时序关系总能够通过约束条件进行维持。
这种约束带来的好处主要有两个方面:①和传统时间代价约束条件相比,上述代价函数明确设定了新输入的运动对象序列和已经保存的运动对象序列之间的时序关系,能够得到时序关系更加稳定的浓缩视频,同时,这种约束条件很适合在线视频浓缩,而这恰恰也是原在线视频浓缩方法中没有考虑的;②由于引入了时序约束,浏览指定的浓缩视频帧时,只需要分析可能映射到该帧的前若干个运动对象序列,因此浓缩视频在解码端能够使用较少的缓存区就可以实现实时浏览,同时,调整δ也可以对浓缩视频在解码时所需的缓存区大小进行调节。
S2,确定待编码的监控视频中各帧的不同区域所对应的编码优先级;
详细来说,在S2中,根据上述分析得到的运动对象的区域信息和映射信息,确定待编码的监控视频中各帧的不同区域所对应的编码优先级,主要是基于运动对象的区域信息确定视频编码中的ROI区域,以及基于运动对象的映射信息判断各帧中不同区域是否需要在浓缩视频中进行显示。这里,将需要在浓缩视频中显示的区域作为编码优先级高的区域,将不需要在浓缩视频中显示的区域作为编码优先级低的区域。同时,利用基于灵活宏块顺序的ROI标记方法,将运动对象区域信息的像素级标记,转化为宏块级标记,以便后续对不同优先级的宏块进行不同方式的编码。
S3,对各帧中优先级高的区域进行基本层编码;
首先,将待编码的监控视频的各帧中优先级高的区域,按IBBP编码方案(具体参考文献:Schwarz,Heiko,Detlev Marpe,and Thomas Wiegand."Overview of the scalablevideo coding extension of the H.264/AVC standard."Circuits and Systems forVideo Technology,IEEE Transactions on17.9(2007):1103-1120.)中的I-slice、P-slice条带类型,编码到基本层码流;然后,分析这些优先级高的区域所对应的基本层码流,得到块划分信息,并和运动对象的区域信息一起生成对象区域标志位,再结合由运动对象的映射信息获得的对象映射标志位,一起组成对象标志位;最后,将对象标志位写入基本层码流对应的参数集中,具体的,PPS(PPS,即Picture Parameter Set,图像参数集)的扩展参数集中,完成基本层编码。
S4,基于ROI的时域可伸缩编码,对各帧中优先级低的区域进行增强层编码;
当对待编码的监控视频完成基本层编码后,继续使用基于ROI的时域可伸缩编码技术,进行增强层编码。同样的,首先,按照IBBP编码方案中的B-slice条带类型,对各帧中优先级低的区域进行编码,将不需要映射到浓缩视频中的运动对象编码为B1条带写入增强层码流;然后,分析增强层码流,得到块划分信息,并和运动对象的区域信息一起生成对象区域标志位,再结合由运动对象的映射信息获得的对象映射标志位,一起组成对象标志位;最后,将对象标志位写入增强层码流对应的参数集中,具体的,PPS的扩展参数集中,完成增强层编码。
其中,在带宽或存储条件有限的情况下,该基本层码流独立进行传输、存储和解码,从而获得浓缩视频;而当同时传输、存储和解码增强层码流后,才能获得原始监控视频。另外,使用上述方法,解码出的基本层码流或增强层码流,还可以基于运动对象标志位,实现监控视频的可伸缩浓缩浏览(具体可参见授权专利,专利申请号201110346398)。
具体的,上述的基本层编码和增强层编码涉及两种情况,下面对其进行详细介绍:
(1)原始监控视频中,每帧仅有一个运动对象
这种情况下,编码方案比较简单:当前帧中如果存在需要映射到浓缩视频的前景对象,则将该帧作为优先级较高的关键帧,编码到基本层码流中,否则将该帧编码为优先级较低的增强层。
参见图2所示,是基于视频浓缩的监控视频可伸缩编码的结构图。在编码时,首先,直接基于运动对象(1、2、3……M)的区域信息确定视频编码中的ROI区域,基于运动对象的映射信息确定各区域在视频编码中的条带类型。而条带类型的编码方案为:将映射到浓缩视频中的运动对象及其背景编码为I/P条带;同时将不需要映射到浓缩视频中的运动对象及其背景编码为B条带,其中,前景区域(即运动对象)和背景区域编码为不同的条带,如:前景部分编码为B1条带,背景部分编码为B2条带。然后,基于以上条带编码方案对原始监控视频进行基于ROI的时域可伸缩编码,因为原始监控视频中,一帧只有一个前景对象,且一帧中前景和背景的编码条带类型相同,所以这里的基于ROI的时域可伸缩编码就退化为了普通的帧级时域可伸缩编码。最后,对记录运动对象区域信息的对象区域标志位和记录运动对象映射信息的对象映射标志位进行编码后,组合为对象标志位,并写入可伸缩视频码流,生成含有对象标志位的可伸缩码流,具体可参见图3,为基于视频浓缩的监控视频可伸缩码流的结构图。
从图2可以看出,基本层存储和传输的是编码映射到浓缩视频中的前景的码流,以及和前景划分为不同条带进行编码的对应背景码流。增强层存储和传输的是不映射到浓缩视频中的前景和背景对应的码流。之所以把前景和背景划分为不同的条带,原因有二:一是,解码端在重建可伸缩浓缩视频的时候,随着伸缩级数的增加,可能需要将原来不映射到浓缩视频中的对象调整为映射,而将前景和背景划分成不同的条带独立编码,有利于解码端对前景快速独立解码,减少可伸缩浓缩视频重建时的解码负担;二是,将前景对象划分为独立的条带编码,可以更好的支持基于对象的视频检索、信息挖掘等上层应用,让可伸缩码流有更好的数据可用性。
(2)真实监控视频中,每帧有多个运动对象
相对于每帧仅有一个运动对象的浓缩视频编码方案,在编码帧间编码帧的时候,针对一帧中不同区域的内容优先级不同,在此提出了支持多对象的可伸缩浓缩编码方法,与之前主要不同之处在于,对一帧中的不同前景对象以及前景对象所对应的背景区域的编码条带类型进行了进一步的区分。主要表现在两个方面:①对于一帧中有多个运动对象的情况,将需要映射到浓缩视频中的对象编码为I/P条带写入基本层码流,对于不需要映射到浓缩视频中的对象编码为B1条带写入增强层码流;②通过使用主背景选择算法(具体可参考文献:Feng,Shikun,et al."Online principal background selection for videosynopsis."Pattern Recognition(ICPR),201020th International Conferenceon.IEEE,2010.),确定需要在生成浓缩视频时使用的背景区域,将这些背景区域编码为I/P条带写入基本层码流,对于不需要在浓缩视频中使用的背景区域,按B2条带类型进行编码,并写入增强层码流。
值得说明的是,在本发明提出的编码方案中,每个GOP中的首帧的编码类型仍然设定为I帧,即第一帧中的前景或背景均按I-slice条带类型编码,并默认这些前景和背景信息会在浓缩视频中使用。对于GOP中的其他帧,在P-frame(即P帧)和B-frame(即B帧)的基础上,针对一帧中需要划分为多种类型的条带的情况,使用了一种帧类型P/B帧,对该帧视频进行编码,即当一帧中的前景和背景有的映射有的不映射时,映射的前景和背景用P-slice条带类型进行编码,不映射的前景和背景用B-slice条带类型进行编码。这样,当一帧中均为需要映射到浓缩视频中的前景和背景时,就将该帧按P-frame编码;当一帧中均为不需要映射到浓缩视频中的前景和背景时,就将该帧按B-frame编码;当一帧中的前景和背景有的映射有的不映射时,按P/B-frame(即P/B帧)对其进行编码。详细的,在编码中,I帧、P帧和P/B帧中的I-slice和P-slice的编码信息放入基本层码流,而B帧和P/B帧中的B-slice的编码信息放入增强层码流。
具体来说,P/B帧中包含有P条带和B条带两种不同类型的条带,即P/B帧要编码多次才能完成编码。该P/B帧既有P帧的性质,又有B帧的性质:该P/B帧中的P条带,会按IBBP编码方案中P帧的顺序,先于B帧进行编码;该P/B帧中的B条带,会按IBBP编码方案中B帧的顺序,后于和该帧最近的下一个P帧或P/B帧进行编码,且下一个P帧或P/B帧中必须要有与该B条带属于同一对象的P条带已先于该B条带编码完毕。这样,该P/B帧和传统的P帧、B帧一样,在编码时仍然以帧为单位进行待编码数据的输入,但是在实际编码过程中,仅对当前发挥作用的区域按照对应的条带类型进行编码,并不对整帧进行编码。当需要未编码完的P/B帧作为参考帧进行预测编码时,只有P/B帧的已编码区域的重建参与预测编码,未编码的区域不作为参考帧区域使用。
S5,复合编码后的基本层码流和增强层码流,生成可伸缩码流,完成编码。
另外,在本发明中,涉及的待编码的监控视频可以是已存储的待重新编码监控视频,也可以是在线缓存的待编码监控视频,这样本发明成为基于在线浓缩的监控视频的可伸缩浓缩编码方法。如果已存储的监控视频需要重新编码,则需要先解码或者部分解码。
在线视频浓缩的生成方法,相比原有的视频浓缩生成方法最大的区别在于,设计了分二级缓存的运动对象队列池,用以缓存提取出的运动对象队列,分别为时域长度为N帧的一级缓存,和时域长度为无穷大的二级缓存(通常取决于内存大小)。在监控视频的实时处理中,该方法将提取出的运动对象队列陆续补充到缓存中去,如果队列的长度超过了一级缓存的长度,那么就将该运动对象队列的后续部分放入二级缓存。当一级缓存已经填充到可以进行浓缩视频显示时,即可将一级缓存中的浓缩视频导出后进行在线显示,然后将二级缓存中的前N帧填充到一级缓存腾出的空间中,以此类推直到没有新的监控视频序列再继续输入。
在线视频浓缩还有一个技术特点就是,可以实时地在线决定原始视频中每一帧的各个运动对象区域是否映射到浓缩视频中,即是否在浓缩视频中显示。对于需要在浓缩视频中显示的运动对象区域才会被填充到缓存中去,不需要显示的运动对象区域则直接丢弃。在考虑某一个运动对象区域是否映射,以及映射到浓缩视频的哪一帧中时,主要是基于遮挡代价的计算、贪婪算法(具体参见现有文献:Feng,Shikun,et al."Online content-aware video condensation."Computer Vision and Pattern Recognition(CVPR),2012IEEE Conference on.IEEE,2012.)等。
在基于在线浓缩的监控视频的可伸缩浓缩编码方法中,当编码完缓存视频中目前可编码的所有视频后,将编码后的基本层码流和增强层码流进行码流复合,一起写入可伸缩码流,并将编码端图像缓存中已编码的帧从缓存中清除,继续编码后续输入的视频。通过重复以上步骤,直到分析并编码完所有的输入视频,即可在在线视频分析的基础上,实现任意长度视频的在线视频编码。
对应的,参阅图4所示,本发明还提出一种监控视频的可伸缩浓缩编码装置,包括视频分析模块1、优先级设置模块2、基本层编码模块3、增强层编码模块4、对象标志位模块5和码流复合模块6。其中,该视频分析模块1与优先级设置模块2和对象标志位模块5连接,该优先级设置模块2分别与基本层编码模块3和增强层编码模块4连接,该基本层编码模块3和增强层编码模块4同时与对象标志位模块5和码流复合模块6连接,该对象标志位模块还与码流复合模块连接。
具体的,该视频分析模块1用于分析待编码的监控视频,包括底层视频分析和高层视频分析,获得待编码的监控视频每帧中运动对象的区域信息和映射信息。该优先级设置模块2根据上述分析得到的运动对象的区域信息和映射信息,确定待编码的监控视频中各帧的不同区域所对应的编码优先级,即判断各帧中不同区域是否需要在浓缩视频中进行显示。这里,将需要在浓缩视频中显示的区域作为编码优先级高的区域,将不需要在浓缩视频中显示的区域作为编码优先级低的区域。
该基本层编码模块3和增强层编码模块4分别进行针对不同优先级区域的编码。该基本层编码模块3对各帧中优先级高的区域,按IBBP编码方案中的I-slice、P-slice条带类型,编码到基本层码流。该增强层编码模块4按照IBBP编码方案中的B-slice类型,对各帧中优先级低的区域进行编码,将不需要映射到浓缩视频中的运动对象编码为B1条带写入增强层码流。值得说明的是,针对一帧中需要划分为多种条带类型的情况,即当一帧中的前景和背景有的映射有的不映射时,该基本层编码模块和增强层编码模块采用P/B-frame的编码方法。其中,在带宽或存储条件有限的情况下,该基本层编码模块中的基本层码流独立进行传输、存储和解码,从而获得浓缩视频;而当同时传输、存储和解码增强层编码模块中的增强层码流后,才能获得原始监控视频。另外,解码出的基本层码流或增强层码流,还可以基于运动对象标志位,实现监控视频的可伸缩浓缩浏览(具体可参见授权专利,专利申请号201110346398)。
该对象标志位模块5融合运动对象的区域信息和基本层码流的块划分信息生成对象区域标志位,再由运动对象的映射信息获得对象映射标志位,一起组成对象标志位,并写入基本层码流对应的参数集中,并输出到码流复合模块6。同时该对象标志位模块5还会融合运动对象的区域信息和增强层码流的块划分信息生成对象区域标志位,再由运动对象的映射信息获得对象映射标志位,一起组成对象标志位,并写入增强层码流对应的参数集中,并输出到码流复合模块6。该码流复合模块6复合编码后的基本层码流和增强层码流,生成可伸缩码流,完成编码。
其中,本发明的视频分析模块1包括在线浓缩分析模块7(图未示),该在线浓缩分析模块7对监控视频进行实时在线分析和缓存,以利于后续的编码,同时当编码完缓存视频中目前可编码的所有视频后,又及时更新缓存后续输入的视频,直到编码完全。
另外,本发明的视频分析模块1还包括时序约束模块8(图未示),用于对浓缩视频进行处理,保证在原始监控视频中出现的前后两个运动对象,在浓缩视频中的时序关系总能够通过约束条件进行维持,得到时序关系更加稳定的浓缩视频。且借由时序约束模块8,更容易实现基于在线浓缩的监控视频的可伸缩浓缩编码方法。
总的来说,相较于传统的监控视频的可伸缩浓缩编码方法,本发明的监控视频的可伸缩浓缩编码方法和装置,不仅能够实现对监控视频的灵活、有效的编码,还能够提高原始监控视频和浓缩视频的存储效率,即在监控视频的存储和浏览的灵活性方面都有明显的增强效果。
以上所述,仅是本发明的较佳实施例而已,并非对本发明作任何形式上的限制,虽然本发明已以较佳实施例揭露如上,然而并非用以限定本发明,任何熟悉本专业的技术人员,在不脱离本发明技术方案范围内,当可利用上述揭示的技术内容作出些许更动或修饰为等同变化的等效实施例,但凡是未脱离本发明技术方案的内容,依据本发明的技术实质对以上实施例所作的任何简单修改、等同变化与修饰,均仍属于本发明技术方案的范围内。
Claims (18)
1.一种监控视频的可伸缩浓缩编码方法,其特征在于,包括以下步骤:
S1,对待编码的监控视频进行分析,获得待编码的监控视频的每帧中运动对象的区域信息和映射信息;
S2,确定待编码的监控视频中各帧的不同区域所对应的编码优先级,将需要在浓缩视频中显示的区域作为编码优先级高的区域,将不需要在浓缩视频中显示的区域作为编码优先级低的区域;
S3,对各帧中优先级高的区域进行基本层编码,获得基本层码流;
S4,基于ROI的时域可伸缩编码,对各帧中优先级低的区域进行增强层编码,获得增强层码流;以及
S5,复合编码后的基本层码流和增强层码流,生成可伸缩码流,完成编码。
2.根据权利要求1所述的监控视频的可伸缩浓缩编码方法,其特征在于,在步骤S3和S4中,采用IBBP编码方案中的I-slice、P-slice和B-slice条带类型,将映射到浓缩视频中的运动对象及其背景编码为I-slice条带类型或P-slice条带类型,同时将不需要映射到浓缩视频中的运动对象及其背景编码为B-slice条带类型。
3.根据权利要求2所述的监控视频的可伸缩浓缩编码方法,其特征在于,在增强层编码时,将不需要映射到浓缩视频中的运动对象和背景编码为不同的条带。
4.根据权利要求2所述的监控视频的可伸缩浓缩编码方法,其特征在于,在编码帧间编码帧的时候,针对一帧中不同区域的内容优先级不同的情况,使用一种帧类型P/B帧,对该帧视频进行编码,即当一帧中的前景和背景有的映射有的不映射时,映射的前景和背景用P-slice条带类型进行编码,不映射的前景和背景用B-slice条带类型进行编码。
5.根据权利要求4所述的监控视频的可伸缩浓缩编码方法,其特征在于,在编码中,I帧、P帧和P/B帧中的I-slice和P-slice的编码信息放入基本层码流,而B帧和P/B帧中的B-slice的编码信息放入增强层码流。
6.根据权利要求1所述的监控视频的可伸缩浓缩编码方法,其特征在于,该基于ROI的时域可伸缩编码采用基于灵活宏块顺序的ROI标记方法,标记感兴趣区域的块划分信息。
7.根据权利要求1所述的监控视频的可伸缩浓缩编码方法,其特征在于,在步骤S2,S3和S4中,还包括生成对象标志位的过程,并将对象标志位写入相应的基本层码流或增强层码流对应的参数集中,以完成编码。
8.根据权利要求1所述的监控视频的可伸缩浓缩编码方法,其特征在于,上述待编码的监控视频是已存储的待重新编码的监控视频,或是在线缓存的待编码监控视频。
9.根据权利要求1-8中任一所述的监控视频的可伸缩浓缩编码方法,其特征在于,在带宽或存储条件有限的情况下,该基本层码流独立进行传输、存储和解码,从而获得浓缩视频;而当同时传输、存储和解码增强层码流后,才能获得原始监控视频。
10.一种监控视频的可伸缩浓缩编码装置,其特征在于,所述装置包括:
第一获取模块,用于对待编码的监控视频进行分析,获得待编码的监控视频的每帧中运动对象的区域信息和映射信息;
确定模块,用于确定待编码的监控视频中各帧的不同区域所对应的编码优先级,将需要在浓缩视频中显示的区域作为编码优先级高的区域,将不需要在浓缩视频中显示的区域作为编码优先级低的区域;
第二获取模块,用于对各帧中优先级高的区域进行基本层编码,获得基本层码流;
第三获取模块,用于基于ROI的时域可伸缩编码,对各帧中优先级低的区域进行增强层编码,获得增强层码流;以及
生成模块,用于复合编码后的基本层码流和增强层码流,生成可伸缩码流,完成编码。
11.根据权利要求10所述的监控视频的可伸缩浓缩编码装置,其特征在于,所述第二获取模块、所述第三获取模块分别通过以下方式获得基本层码流、增强层码流:采用IBBP编码方案中的I-slice、P-slice和B-slice条带类型,将映射到浓缩视频中的运动对象及其背景编码为I-slice条带类型或P-slice条带类型,同时将不需要映射到浓缩视频中的运动对象及其背景编码为B-slice条带类型。
12.根据权利要求11所述的监控视频的可伸缩浓缩编码装置,其特征在于,所述第三获取模块具体用于在增强层编码时,将不需要映射到浓缩视频中的运动对象和背景编码为不同的条带。
13.根据权利要求11所述的监控视频的可伸缩浓缩编码装置,其特征在于,所述第三获取模块具体用于在编码帧间编码帧的时候,针对一帧中不同区域的内容优先级不同的情况,使用一种帧类型P/B帧,对该帧视频进行编码,即当一帧中的前景和背景有的映射有的不映射时,映射的前景和背景用P-slice条带类型进行编码,不映射的前景和背景用B-slice条带类型进行编码。
14.根据权利要求13所述的监控视频的可伸缩浓缩编码装置,其特征在于,所述第三获取模块还用于在码编中,I帧、P帧和P/B帧中的I-slice和P-slice的编码信息放入基本层码流,而B帧和P/B帧中的B-slice的编码信息放入增强层码流。
15.根据权利要求10所述的监控视频的可伸缩浓缩编码装置,其特征在于,所述第三获取模块具体用于基于ROI的时域可伸缩编码采用基于灵活宏块顺序的ROI标记方法,标记感兴趣区域的块划分信息。
16.根据权利要求10所述的监控视频的可伸缩浓缩编码装置,其特征在于,所述生成模块具体用于生成对象标志位的过程,并将对象标志位写入相应的基本层码流或增强层码流对应的参数集中,以完成编码。
17.根据权利要求10所述的监控视频的可伸缩浓缩编码装置,其特征在于,上述待编码的监控视频是已存储的待重新编码的监控视频,或是在线缓存的待编码监控视频。
18.根据权利要求10-17中任一所述的监控视频的可伸缩浓缩编码装置,其特征在于:
所述第二获取模块,用于在带宽或存储条件有限的情况下,该基本层码流独立进行传输、存储和解码,从而获得浓缩视频;
所述第三获取模块,用于当同时传输、存储和解码增强层码流后,才能获得原始监控视频。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410328538.5A CN105306945B (zh) | 2014-07-10 | 2014-07-10 | 一种监控视频的可伸缩浓缩编码方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410328538.5A CN105306945B (zh) | 2014-07-10 | 2014-07-10 | 一种监控视频的可伸缩浓缩编码方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN105306945A CN105306945A (zh) | 2016-02-03 |
CN105306945B true CN105306945B (zh) | 2019-03-01 |
Family
ID=55203620
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410328538.5A Active CN105306945B (zh) | 2014-07-10 | 2014-07-10 | 一种监控视频的可伸缩浓缩编码方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105306945B (zh) |
Families Citing this family (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105898313A (zh) * | 2014-12-15 | 2016-08-24 | 江南大学 | 一种新的基于视频大纲的监控视频可伸缩编码技术 |
CN107295360B (zh) * | 2016-04-13 | 2020-08-18 | 成都鼎桥通信技术有限公司 | 视频传输方法及装置 |
CN106060553A (zh) * | 2016-07-26 | 2016-10-26 | 公安部第研究所 | 基于感兴趣区域的时域可分级编码装置及其方法 |
CN107770511A (zh) * | 2016-08-15 | 2018-03-06 | 中国移动通信集团山东有限公司 | 一种多视点视频的编解码方法、装置和相关设备 |
CN106303538B (zh) * | 2016-08-16 | 2021-04-13 | 中星技术股份有限公司 | 一种支持多源数据融合的视频分级编码方法及装置 |
CN106210727B (zh) * | 2016-08-16 | 2020-05-22 | 广东中星电子有限公司 | 基于神经网络处理器阵列的视频分级码流编码方法和系统 |
CN106303527B (zh) * | 2016-08-16 | 2020-10-09 | 广东中星电子有限公司 | 时分复用神经网络处理器的视频分级码流编码方法和系统 |
CN108076345A (zh) * | 2016-11-09 | 2018-05-25 | 阿里巴巴集团控股有限公司 | 多视角视频帧的编码方法、传输方法、装置、计算机 |
CN109168023B (zh) * | 2018-08-06 | 2021-02-12 | 南京邮电大学 | 一种可伸缩视频流的缓存方法 |
CN109218655A (zh) * | 2018-11-13 | 2019-01-15 | 宁波启拓电子设备有限公司 | 无纸化多媒体会议方法、无纸化多媒体会议系统 |
CN110062235B (zh) * | 2019-04-08 | 2023-02-17 | 上海大学 | 背景帧生成及更新方法、系统、装置及介质 |
CN110225341B (zh) * | 2019-06-03 | 2020-08-28 | 中国科学技术大学 | 一种任务驱动的码流结构化图像编码方法 |
CN111464811A (zh) * | 2020-04-09 | 2020-07-28 | 西安万像电子科技有限公司 | 图像的处理方法、装置和系统 |
CN113079375B (zh) * | 2021-06-03 | 2022-03-08 | 浙江智慧视频安防创新中心有限公司 | 基于相关度比较确定视频编解码优先顺序的方法及装置 |
CN113489983B (zh) * | 2021-06-11 | 2024-07-16 | 浙江智慧视频安防创新中心有限公司 | 一种基于相关度比较确定分块编码参数的方法及装置 |
CN113473138B (zh) * | 2021-06-30 | 2024-04-05 | 杭州海康威视数字技术股份有限公司 | 视频帧编码方法、装置、电子设备及存储介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102081671A (zh) * | 2011-01-25 | 2011-06-01 | 北京中星微电子有限公司 | 一种视频可伸缩文件的生成方法及装置 |
CN102375816A (zh) * | 2010-08-10 | 2012-03-14 | 中国科学院自动化研究所 | 一种在线视频浓缩装置、系统及方法 |
CN102395029A (zh) * | 2011-11-05 | 2012-03-28 | 江苏物联网研究发展中心 | 一种支持视频可伸缩浏览的视频编解码方法和装置 |
CN103096185A (zh) * | 2012-12-30 | 2013-05-08 | 信帧电子技术(北京)有限公司 | 一种视频摘要生成方法和装置 |
CN103210651A (zh) * | 2010-11-15 | 2013-07-17 | 华为技术有限公司 | 用于视频概要的方法和系统 |
CN103227963A (zh) * | 2013-03-20 | 2013-07-31 | 西交利物浦大学 | 基于视频运动目标检测和跟踪的静态监控视频摘要方法 |
CN103826125A (zh) * | 2014-01-20 | 2014-05-28 | 北京创鑫汇智科技发展有限责任公司 | 用于已压缩监控视频的浓缩分析方法和装置 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101146926B1 (ko) * | 2006-12-20 | 2012-05-22 | 엘지전자 주식회사 | 이동 단말기에서 비디오의 대표 영상 제공 방법 |
US9602849B2 (en) * | 2010-09-17 | 2017-03-21 | Futurewei Technologies, Inc. | Method and apparatus for scrub preview services |
-
2014
- 2014-07-10 CN CN201410328538.5A patent/CN105306945B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102375816A (zh) * | 2010-08-10 | 2012-03-14 | 中国科学院自动化研究所 | 一种在线视频浓缩装置、系统及方法 |
CN103210651A (zh) * | 2010-11-15 | 2013-07-17 | 华为技术有限公司 | 用于视频概要的方法和系统 |
CN102081671A (zh) * | 2011-01-25 | 2011-06-01 | 北京中星微电子有限公司 | 一种视频可伸缩文件的生成方法及装置 |
CN102395029A (zh) * | 2011-11-05 | 2012-03-28 | 江苏物联网研究发展中心 | 一种支持视频可伸缩浏览的视频编解码方法和装置 |
CN103096185A (zh) * | 2012-12-30 | 2013-05-08 | 信帧电子技术(北京)有限公司 | 一种视频摘要生成方法和装置 |
CN103227963A (zh) * | 2013-03-20 | 2013-07-31 | 西交利物浦大学 | 基于视频运动目标检测和跟踪的静态监控视频摘要方法 |
CN103826125A (zh) * | 2014-01-20 | 2014-05-28 | 北京创鑫汇智科技发展有限责任公司 | 用于已压缩监控视频的浓缩分析方法和装置 |
Non-Patent Citations (3)
Title |
---|
"Surveillance video synopsis in the compressed domain for fast video browsing";Shi-zheng Wang等;《J.Vis.Commun.Image R.》;20131014;全文 |
"一种支持监控视频可伸缩快速浏览的区域信息编码方法";黄志伟等;《小型微型计算机系统》;20131130;全文 |
"监控视频的可伸缩编码与快速浏览技术研究";王师峥;《中国科学院机构知识库服务网格》;20130901;第9-120页 |
Also Published As
Publication number | Publication date |
---|---|
CN105306945A (zh) | 2016-02-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105306945B (zh) | 一种监控视频的可伸缩浓缩编码方法和装置 | |
Duan et al. | Video coding for machines: A paradigm of collaborative compression and intelligent analytics | |
WO2020037965A1 (zh) | 一种用于视频预测的多运动流深度卷积网络模型方法 | |
CN102067601B (zh) | 视频编码和解码中模板匹配预测(tmp)的方法和装置 | |
TWI375469B (en) | A method and apparatus for decoding/encoding a video signal | |
CN102395029B (zh) | 一种支持视频可伸缩浏览的视频编解码方法和装置 | |
CN110024393A (zh) | 用于视频译码的低复杂度符号预测 | |
CN105426883B (zh) | 视频分类快速识别的方法及装置 | |
US9883200B2 (en) | Method of acquiring neighboring disparity vectors for multi-texture and multi-depth video | |
CN107113432A (zh) | 用于并行视频编码的码率控制 | |
CN104506863A (zh) | 用于对运动矢量进行解码的设备 | |
EP2382786A1 (en) | Multiple-candidate motion estimation with advanced spatial filtering of differential motion vectors | |
CN104869422A (zh) | 用于对运动矢量进行编码和解码的方法和设备 | |
CN110062239B (zh) | 一种用于视频编码的参考帧选择方法及装置 | |
CN103002283A (zh) | 多视角分布式视频压缩的边信息生成方法 | |
CN108989802A (zh) | 一种利用帧间关系的hevc视频流的质量估计方法及系统 | |
CN101291436B (zh) | 视频编/解码方法和视频编/解码装置 | |
CN108769696A (zh) | 一种基于Fisher判别式的DVC-HEVC视频转码方法 | |
CN109274972A (zh) | 包括置信度水平和混合内容信息的补充增强信息 | |
CN106791828A (zh) | 基于机器学习的高性能视频转码方法及其转码器 | |
CN106131573B (zh) | 一种hevc空间分辨率转码方法 | |
CN116918329A (zh) | 一种视频帧的压缩和视频帧的解压缩方法及装置 | |
CN110677644A (zh) | 一种视频编码、解码方法及视频编码帧内预测器 | |
Yang et al. | Facial image compression via neural image manifold compression | |
CN100373952C (zh) | 一种基于mpeg-4的视频对象快速运动估值方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |