一种快速定位编码图像的方法

文档序号:7946692阅读:372来源:国知局
专利名称:一种快速定位编码图像的方法
技术领域
本发明涉及图像/视频编解码技术,具体地说,涉及对编码图像实现快速定位的方法。
背景技术
纵观数字电视、新一代移动通信、宽带网络通信、家庭消费电子等高技术产业群,其共性技术均集中在以音视频为主要内容的多媒体信息处理技术,特别是数据压缩技术上。高效的视频编解码技术是实现高质量、低成本多媒体数据存储与传输的关键。目前常用的编码方法有预测编码方法、正交变换编码方法、向量量化编码方法等,这些方法都是基于信号处理理论的,通常称为第一代编码技术。现在的图像编码国际标准都是基于这种编码理论的,采用基于块匹配的运动补偿、离散余弦变换和量化相结合的编码方法。典型的有国际标准化组织/国际电工技术委员会第一联合技术组(ISO/IECJTC1)推出的MPEG-1,MPEG-2和MPEG-4等国际标准,以及国际电信联盟(ITU-T)提出的H.26x系列推荐。这些视频编码标准在工业界已经得到了广泛应用。
上述视频编码标准均采用混合视频编码(Hybrid Video Coding)策略,视频编码系统通常包括预测、变换、量化和信息熵编码四个主要模块。预测模块的主要功能是利用已经编码并重建的图像对当前要编码的图像进行预测(帧间预测),或者利用图像中已经编码并重建的图像块(或宏块)对当前要编码的图像块(或宏块)进行预测(帧内预测);变换模块的主要功能是将输入的图像块变换到另外一个空间,使输入信号的能量尽可能地集中在低频变换系数上,进而降低图像块内元素之间的相关性,有利于压缩;量化模块的主要功能是将变换的系数映射到一个有利于编码的有限元素集上;信息熵编码模块的主要功能是根据统计规律,将量化后的变换系数用变长码表示。而视频解码系统则包含与之相似的模块,将输入的码流通过熵解码、反量化、反变换等过程重建解码图像。
在对每一帧图像进行编码时,可以分为帧内(I帧)编码、预测(P帧)编码和双向预测(B帧)编码等情况,相应的形成I类型、P类型和B类型图片。一般来说,I帧、P帧和B帧编码是穿插进行的,相应的编码图片类型为I、B、P三种类型的组合,如典型的IBBP格式。由于B类型的图片必须依赖于I、P类型的图片,因此在解码过程中必须对B帧的后向参考图片解码后,才能对B图片进行解码,这样的话会带来如下的问题一、如果图像传输时按照显示的顺序来传输,则在解码端需要先对每一个B帧的数据分析后,才能正确定位下一参考图片的开始位置;而在对其后向参考图片解码后再对B图片本身进行解码时,还必须重新分析一遍,这样使得解码的效率降低。二、在需要对某一图片的起始位置进行定位时,如快进/快退,则必须分析每一个图片的数据,不能直接跳过,这样降低了定位的速度。

发明内容
本发明所要解决的技术问题在于提供一种快速定位编码图像的方法,可对编码图像进行快速定位,提高解码效率。
本发明所述快速定位编码图像的方法,在编码图像的图像头中添加带有编码图像数据长度的信息,在解码端解析获得本帧编码图像数据的长度,对当前位置按照上述图像数据长度进行偏移,获得相邻帧编码图像的起始码位置。
所述编码图像数据的长度信息包含图像起始码,比特流长度标识,比特流长度和功能表示位;所述图像起始码用于表示一帧编码图像数据的开始;所述比特流长度标识用于表示当前数据流中是否有长度信息;所述比特流长度是24位无符号整数,表示从图像起始码后第一个字节开始,到本帧图像比特流最后一个字节的长度;所述功能表示位是防止码流中出现起始码竞争的比特。
所述在解码端解析获得本帧编码图像数据的长度进一步包括在解码端对图像头中的图像起始码进行解码,然后解析比特流长度标识,若比特流长度标识等于0,则对后面的语法元素进行解码;若比特流长度标识等于1,则解码比特流长度,获得本帧编码图像数据的长度。
本发明通过新增编码图像数据长度信息,可以在解码、编辑、快进/快退等应用中快速地定位每一帧编码图像的起始位置,无需在接收编码图像和进行解码时对B帧图像进行两次分析,提高了解码效率;同时可通过该长度信息进行指针重定位等快速访问操作。


图1是本发明的流程示意图。
具体实施例方式
下面结合附图和实施例,对本发明的技术方案做进一步的详细描述。
如图1所示,为实现快速定位每一帧编码图像的起始位置,需添加编码图像数据的长度信息。本发明采用在编码图像的图像头中添加长度信息的方式。当传输编码图像时,需要在已编码的图像数据上加上图像头数据,与图像数据一起传输到解码端。在图像头数据中,包含有数据长度标识和数据长度等信息。
下面给出一个具体的实例,用picture_header()表示图像头实体,包括图像起始码picture_start_code,比特流长度标识stream_length_flag和比特流长度stream_length,其中图像起始码picture_start_code用于表示一帧编码图像数据的开始。比特流长度标识stream_length_flag用于表示当前数据流中是否有长度信息,当其值为1时表示比特流中带有长度信息;当值为0时表示比特流中没有长度信息。比特流长度stream_length是24位无符号整数,表示从图像起始码后第一个字节开始,到本帧图像比特流最后一个字节的长度,以字节为单位。
带有图像数据长度信息的编码数据传输到解码端后,对图像头进行解码。当解码了图像头中的图像起始码picture_start_code后,解析比特流长度标识stream_length_flag,若比特流长度标识stream_length_flag等于0,则对后面的语法元素进行解码,若等于1,则解码比特流长度stream_length,得到本帧编码图像数据的长度。这样,通过对当前图像位置,可假定为起始码后第一字节,向后偏移比特流长度stream_length,即可定位下一帧编码图像的起始码位置。
对于快进/快退的情况,如果每一帧编码图像的比特流长度都已知,则在当前位置加上或减去相关帧编码图像的比特流长度,即可快速定位所需的编码图像的起始码位置。
最后所应说明的是,以上实施例仅用以说明本发明的技术方案而非限制,尽管参照较佳实施例对本发明进行了详细说明,本领域的普通技术人员应当理解,可以对本发明的技术方案进行修改或者等同替换,而不脱离本发明技术方案的精神和范围,其均应涵盖在本发明的权利要求范围当中。
权利要求
1.一种快速定位编码图像的方法,其特征在于,在编码图像的图像头中添加带有编码图像数据长度的信息,在解码端解析获得本帧编码图像数据的长度,对当前位置按照上述图像数据长度进行偏移,获得相邻帧编码图像的起始码位置。
2.根据权利要求1所述的快速定位编码图像的方法,其特征在于,所述编码图像数据的长度信息包含图像起始码,比特流长度标识和比特流长度;所述图像起始码用于表示一帧编码图像数据的开始;所述比特流长度标识用于表示当前数据流中是否有长度信息;所述比特流长度是24位无符号整数,表示从图像起始码后第一个字节开始,到本帧图像比特流最后一个字节的长度。
3.根据权利要求1或2所述的快速定位编码图像的方法,其特征在于,所述在解码端解析获得本帧编码图像数据的长度进一步包括在解码端对图像头中的图像起始码进行解码,然后解析比特流长度标识,若比特流长度标识等于0,则对后面的语法元素进行解码;若比特流长度标识等于1,则解码比特流长度,获得本帧编码图像数据的长度。
全文摘要
本发明提供了一种快速定位编码图像的方法,应用于图像/视频编解码技术,包括以下步骤在编码图像的图像头中添加带有编码图像数据长度的信息,在解码端解析获得本帧编码图像数据的长度,对当前位置按照上述图像数据长度进行偏移,获得相邻帧编码图像的起始码位置。本发明通过新增编码图像数据长度信息,可以在解码、编辑、快进/快退等应用中快速地定位每一帧编码图像的起始位置,无需在接收编码图像和进行解码时对B帧图像进行两次分析,提高了解码效率;同时可通过该长度信息进行指针重定位等快速访问操作。
文档编号H04N7/50GK1595993SQ03157078
公开日2005年3月16日 申请日期2003年9月12日 优先权日2003年9月12日
发明者吕岩, 高文, 马思伟, 何芸, 虞露, 楼剑 申请人:中国科学院计算技术研究所
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1