[发明专利]一种视频编解码方法及系统有效
申请号: | 201210018330.4 | 申请日: | 2012-01-19 |
公开(公告)号: | CN103220507B | 公开(公告)日: | 2018-04-20 |
发明(设计)人: | 梁立伟;王宁 | 申请(专利权)人: | 中兴通讯股份有限公司 |
主分类号: | H04N19/129 | 分类号: | H04N19/129;H04N19/573 |
代理公司: | 北京派特恩知识产权代理有限公司11270 | 代理人: | 张颖玲,程立民 |
地址: | 518057 广东省深圳市南山*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 视频 解码 方法 系统 | ||
技术领域
本发明涉及通信领域的网络电视技术,尤其涉及一种视频编解码方法及系统。
背景技术
目前,高级视频编码标准中都包含帧间预测功能。帧间预测是利用相邻帧的重建图像来预测当前帧,以更好的消除图像之间的时间冗余。如图1所示,帧间预测中分为前向预测P帧和双向预测B帧。在参考帧中搜索与当前帧编码单元(编码单元可以是HEVC标准中的编码单元(CU,Coding Unit)或最大编码单元(LCU,Large Coding Unit),也可以是H.264等标准中的宏模块(MB,MacroBlock)或宏模块对(MBP,MacroBlock Pair))最接近的一个编码单元,该编码单元作为当前编码单元的预测值,只需要把预测残差和运动矢量进行编码,即可在解码端重构出当前编码单元。如图2所示,编码单元按照光栅扫描的顺序依次进行编码,直到整帧图像处理完成。
由于当前帧中的每一个编码单元进行编码时,都需要在参考帧中进行运动搜索,所以要对参考帧进行多次访问。如果每次都从片外同步动态随机存储器(SDRAM,Synchronous Dynamic Random Access Memory)中访问参考帧,那读取参考帧的延时就会非常大,通常在芯片中都会加入一个片上的RAM来作为缓冲,计算单元只需要访问片上RAM中的数据,这样速度就会提高很多。同时相邻块之间可以复用已经读取到片上RAM中的数据,这样就进一步节省了带宽,如图3所示,其中的横向数据和纵向数据都可以充分复用。
但是,图像的宽度增大时,例如4K*2K的视频每行是4KB亮度分量,如果纵向搜索范围为256,则至少需要4K*512=2MB的内存,会严重增大芯片的面积和成本。所以现有芯片中一般只采用横向复用的方式,如图4所示,使用一个搜索窗进行参考帧的数据搬移。同一行编码单元可以复用片内参考帧数据,在编码下一行时,就必须重新加载参考帧,这就导致了纵向复用的缺失,存在很多的重复读取。图5为使用条带(Slice)进行划分时的情况,区域参考帧的数据搬移的策略与图4类似。
以4K*2K的视频为例,如果编码单元的大小为64,在搜索范围为整像素256时,P帧单参考帧时每行编码单元亮度分量至少需要加载(256*2+64)*3840=2211840B,整幅图象亮度分量需要2211840B*34=75.2MB,是单帧亮度分量的9倍,60fps时亮度分量带宽就是75.2*60=4.5GB,B帧则翻倍为9GB,多参考B帧则需要更多。如果再考虑上色度分量,特别是在YUV4:4:4模式时,带宽还要增加。而目前DDR3-160064bit的理论带宽只有12GB,实际带宽不到10GB,显然会造出性能的瓶颈。如何能降低外存带宽占用,提高芯片的性能就是需要解决的问题。
发明内容
有鉴于此,本发明的主要目的在于提供一种视频编解码方法及系统,能够提高视频编码运动搜索中的参考帧的复用率,降低外存带宽占用,从而提高视频编解码芯片的性能。
为达到上述目的,本发明的技术方案是这样实现的:
本发明提供一种视频编码方法,包括:
将当前编码图像或编码图像Tile划分为一个或多个编码单元组(GOC);
在每个GOC内部,按照之字型(ZigZag)扫描顺序对每个编码单元进行编码;
将GOC中包含的编码单元行数或编码单元列数写入码流。
上述方法中,该方法还包括:完成当前编码图像或编码图像Tile的编码过程中,需要进行Slice划分时,将GOC按照ZigZag边界进行划分或按照矩形边界进行划分。
上述方法中,所述将当前编码图像或编码图像Tile划分为一个或多个GOC为:
将当前编码图像或编码图像Tile以编码单元行或编码单元列为单位进行划分,其中N个编码单元行或N个编码单元列为一个GOC,不满N个编码单元行或N个编码单元列的也记为一个GOC;
其中,所述N为大于1且小于等于当前编码图像或编码图像Tile的实际编码单元行数或实际编码单元列数的正整数。
上述方法中,所述在每个GOC内部,按照ZigZag扫描顺序对每个编码单元进行编码为:
在每个GOC内部,按照ZigZag扫描顺序对编码单元进行编码,在不满N个编码单元行或不满N个编码单元列的GOC内部,按照ZigZag扫描顺序对编码单元进行编码,在只有1个编码单元行或只有1个编码单元列的GOC内部,按照光栅扫描顺序对编码单元进行编码;
当前编码图像或编码图像Tile中划分的多个GOC之间按照光栅扫描顺序进行编码。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中兴通讯股份有限公司,未经中兴通讯股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210018330.4/2.html,转载请声明来源钻瓜专利网。
- 上一篇:基于曲轴加速的燃料识别
- 下一篇:夹钳式电烙铁及使用其焊接的方法