[发明专利]基于H.264/AVC中CABAC的并行编码实现电路及编码方法有效
申请号: | 201010291264.9 | 申请日: | 2010-09-25 |
公开(公告)号: | CN101951516A | 公开(公告)日: | 2011-01-19 |
发明(设计)人: | 刘振宇;汪东升 | 申请(专利权)人: | 清华大学 |
主分类号: | H04N7/26 | 分类号: | H04N7/26;H04N7/30 |
代理公司: | 北京路浩知识产权代理有限公司 11002 | 代理人: | 王莹 |
地址: | 100084 北京市海*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 264 avc cabac 并行 编码 实现 电路 方法 | ||
技术领域
本发明涉及视频编码领域,尤其涉及一种基于H.264/AVC中CABAC的并行编码实现电路及编码方法。
背景技术
H.264/AVC的Main Profile(主要类)采用基于上下文的自适应二进制算术编码(Context-based Adaptive Binary Arithmetic Coding,CABAC)。试验表明,与基于上下文的可变长编码算法(Context-Adaptive Variable-Length Coding,CAVLC)比较,在相同的码率下,采用CABAC可将图像质量提高0.3-0.6dB。在高清应用场景下,CABAC编码算法的不足在于吞吐率低。
CABAC的处理框图如图1所示,第一步,对不具备二元特性的语义元素进行二元化处理,而对于具备二元统计特性的语义元素则直接输出到编码处理单元;第二步,根据二元化处理的输出比特流中的每一比特的概率分布特点,进行自适应二进制算术编码。具体来说,对于具有基于上下文概率分布特点的比特采用标准模式编码,相反,对具有均匀概率分布的比特采用旁路模式编码。采用标准模式编码的比特,首先在上下文模型中获取上下文信息,这包括其概率索引值pStateIdx[5:0]和大概率符号值valMPS,之后根据当前被编码比特的值更新相应的上下文模型。pStateIdx[5:0]和valMPS以及当前被编码比特的值binVal被输入到标准模式编码引擎,用于更新编码区间R[8:0]和编码下限L[9:0],R[8:0]表示编码区间为9比特信号,最高位编号为8,最低位编号为0,其它具有相同形式的变量采用上述表示方法定义。通过对更新后的编码区间R[8:0]和编码下限L[9:0]进行归一化操作,产生原始字节序列载荷码流RBSP。标准模式编码的处理流程参见参考文献1(T.Wiegand,G.Sullivan,and A.Luthra,“Draft itu-trecommendation and final draft international standard of joint videospecification(ITUT rec.H.264-ISO/IEC 14496-10AVC),”May 2003.JVT-G050r1)中图9-7所示。与标准模式编码不同,旁路模式编码采用固定上下文信息,不需要查找和更新上下文模型。
实现H.264/AVC标准CABAC算法存在如下困难:
1、运算粒度小:H.264/AVC标准中归一化操作以及输出码流的产生流程可参见上述从参考文献1中图9-8、9-9以及9-10,其中归一化运算粒度是以一比特为单位。
2、对每一个比特的归一化处理过程中,对编码区间和编码下限的归一化操作和输出比特的产生紧密耦合。如R′表示归一化编码区间的初始值,那么需要次循环完成其归一化操作以及产生相应的输出码流,其中为向下取整操作。由于归一化过程中要解决进位传播问题,H.264/AVC协议中引入Outstan dingBits变量(OB)。如果OB不等于0,输出码流产生单元需要多个周期操作,这种情况会进一步降低CABAC编码引擎的效率。
3、对语义元素二元化处理的输出是非定长编码,部分语义元素编码后为单比特输出,此特性对于实现具有大于1的恒定编码速率的编码引擎带来了困难,因此需要对二元化引擎与算术编码引擎进行吞吐率均衡处理。
发明内容
(一)要解决的技术问题
针对现有技术中存在的缺陷和不足,本发明的目的是提供一种用于H.264/AVC视频编码协议的具有2比特每周期的恒定吞吐率的CABAC编码实现电路及编码方法,其一,使得二元化引擎与归一化引擎及RBSP码流生成引擎的处理速度相匹配;其二,解决各级处理引擎间的吞吐率不均衡问题并避免流水线停滞;其三,解决CABAC算法中编码区间和编码下限归一化与码流产生过程的相关性所引发的计算瓶颈问题。
(二)技术方案
为解决上述技术问题,本发明提供了一种基于H.264/AVC中CABAC的并行编码实现电路,包括第一级流水线,为用于执行并行归一化运算的二元化引擎;第二级流水线,为用于执行每周期两比特的上下文读取及更新操作的上下文模型引擎;第三级流水线,为用于执行每周期两比特的归一化操作的并行归一化引擎;以及第四级流水线,为用于产生原始字节序列载荷RBSP输出码流的RBSP码流生成引擎;其中,所述二元化引擎与上下文模型引擎段间以3写2读先入先出队列连接;并行归一化引擎与RBSP码流生成引擎段间以2写1读先入先出队列连接。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于清华大学,未经清华大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201010291264.9/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种低码率情形下的数字电视图像修正系统及修正方法
- 下一篇:网络摄像机