[发明专利]用于视频编解码芯片中帧内预测的数据存储和交换方法有效
申请号: | 200610123658.7 | 申请日: | 2006-11-21 |
公开(公告)号: | CN101193305A | 公开(公告)日: | 2008-06-04 |
发明(设计)人: | 张婷 | 申请(专利权)人: | 安凯(广州)软件技术有限公司 |
主分类号: | H04N7/32 | 分类号: | H04N7/32;H04N9/77 |
代理公司: | 广州知友专利商标代理有限公司 | 代理人: | 宣国华 |
地址: | 510630广东省广州市天河*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 用于 视频 解码 芯片 中帧内 预测 数据 存储 交换 方法 | ||
技术领域
本发明涉及一种数据存储和交换方法,特别涉及用于视频编解码芯片中帧内预测的数据存储和交换方法。
背景技术
随着集成电路(IC)产业的高速发展,IC集成度的提高,使得视频编解码的芯片化得以实现。视频编解码的算法固定,因此芯片的设计围绕着如何能获得最小的芯片面积开销和最佳的芯片性能两个问题不断深入。好的解决方案能够优化芯片内、外部存储器的体系结构,达到节省芯片面积的目标;同时又能够优化芯片内、外部存储器的数据交换,提高芯片速度。
视频图像帧一般分为I帧、P帧、B帧三类基本帧。I帧只采用帧内预测方法,P帧可参考前面几帧图像进行帧间预测,而B帧则可以进行前、后向双向预测。由于视频编解码算法多是基于块的预测技术,因此图像帧被进行了块划分,一般以N×N的像素块为基本单位,N×N可以是16×16、8×8或4×4等,其中16×16的像素块一般称为一个宏块Mb(Macroblock)。以像素块为单位的预测包括了帧内块(I块)预测和帧间块(P块)两大类预测。I帧只包含I块,而P帧、B帧既可以包含I块也可以包含P块。另有一类特殊的块,允许编码器不经过预测和变换编码过程而直接把编码时的采样值传送到解码端,称为IPCM方式,这样的块简称IPCM块。
编码时对I块采用帧内预测技术,只需对像素块的预测值和原始值的差值进行编码,数据量小;解码时也只需利用码流中传输的差值和编码时所设定的参数重构像素块,充分利用相邻像素块的相关性,最大程度地减少空间冗余信息。无论编码还是解码中的帧内预测,均需利用当前块周围紧邻的块的像素值作为参考进行预测,所以每当预测当前块时,其紧邻块的相关像素值都需要提取出来作为参考。对于软件编解码器而言,所有数据都存储在内存中,由于无需考虑内存的开销和带宽的占用;但对于硬件编解码器,如何合理的安排帧内预测所需的数据信息的存储以及数据之间的交互,既能够节约芯片内部的存储空间,又能够优化与片外的数据交互,成为亟待解决的两个问题。
目前已有的解决方案主要是基于行缓冲的参考存储装置及方法,此方案是利用了视频解码芯片中有先进先出的行缓冲队列。参考存储方法包括处理器从行缓冲队列中取出预测当前编码元素所需的已保存在队列中的相邻元素值,进行空间预测,并得到新的元素解码值,将当前位置的元素值解码更新到行缓冲队列中步骤。如图1所示,帧内预测时,所取得的参考点是当前块最紧邻的左边一列和上边一行的解码像素值。详细步骤为:从行缓冲中取出左边一块和上边一块相邻像素点的解码像素值存于内部寄存器中进行预测;预测结束后,将该块中最下面一行解码像素值存于行缓冲中相应位置。
但是现有的方案是基于行缓冲的存储,解码是按照块的顺序一个一个从左向右进行,未考虑解码顺序并不一定是按照从左向右连续的块顺序进行的。事实上,在现有的视频编解码算法中,为了提高码流的抗干扰性能,均提出了片组的概念,属于同一片组的宏块空间位置并不一定是连续的,因此也一定可以不是相邻的。另一方面,现有方案对于块左上方的紧邻像素点的存储和使用却未能提供说明,而如果按照现有方案替换行缓冲装置中的对应像素值,则块左上方的紧邻像素点就无法保存,进而在下一次预测时不可获得而无法实现预测。
发明内容
本发明的目的在于提供一种用于视频编解码芯片中帧内预测的数据存储和交换方法,从而既能够节约芯片内部的存储空间,又能够优化与片外的数据交互。
本发明的目的可通过以下的技术措施来实现:一种用于视频编解码芯片中帧内预测的数据存储和交换方法,包括以下步骤:
(1)、初始化分别以亮度和色度方式记录存储的当前N×N像素块上方一图像行像素值、当前N×N像素块左方紧邻列像素值和当前N×N像素块左上方紧邻点像素值,此三组像素的亮度和色度值共六个数组作为当前像素块进行帧内预测时所需的参考像素:
(2)、处理当前一个帧内图像的像素块,即I块,从步骤(1)中的六个数组中对应取出预测当前I块所需要的像素值,按照指定的预测模式进行帧内预测,完成其帧内预测;
(3)、分别用当前像素块最右下角的像素点的值以及下边界行的像素值和右边界列的像素值替换(1)中六个数组中对应的点、行和列像素的值;
(4)、当一个I块处理完毕,退出当前I块,使数组更新;
(5)、把处理完的一个I块的所有像素值写入到片外的帧存中的对应位置,即所预测的I块位于一帧图像中的位置。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于安凯(广州)软件技术有限公司,未经安凯(广州)软件技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/200610123658.7/2.html,转载请声明来源钻瓜专利网。