公开/公告号CN105392013A
专利类型发明专利
公开/公告日2016-03-09
原文格式PDF
申请/专利权人 福州瑞芯微电子股份有限公司;
申请/专利号CN201510979702.3
发明设计人 黄镜灵;
申请日2015-12-24
分类号H04N19/61(20140101);H04N19/124(20140101);H04N19/122(20140101);H04N19/107(20140101);H04N19/59(20140101);H04N19/587(20140101);
代理机构福州市鼓楼区京华专利事务所(普通合伙);
代理人宋连梅
地址 350000 福建省福州市鼓楼区软件大道89号18号楼
入库时间 2023-12-18 14:35:31
法律状态公告日
法律状态信息
法律状态
2018-07-17
授权
授权
2016-04-06
实质审查的生效 IPC(主分类):H04N19/61 申请日:20151224
实质审查的生效
2016-03-09
公开
公开
技术领域
本发明涉及视频编码技术领域,尤其涉及一种H.264编码的变换量化与反量化反变换处理方法与系统。
背景技术
H.264标准是联合视频组(JVT,JointVideoTeam)提出的一种高性能数字视频编解码标准,其最大优势在于具有很高的压缩率,在同等图像质量的条件下,H.264压缩比可以达到MPEG-4的2倍,之所以能有如此高的压缩比,主要是因为H.264包含了一系列新的特征,比如多帧参考、变块尺寸运动补偿,还有高精度的亚像素运动补偿、去块效应滤波器等,但传统的H.264编码器在设计上仍存在吞吐率不高、计算速度慢等问题,由于只考虑了4×4块的处理,不能兼容8×8的变换,且不能整体实现包括DCT变换、量化及图像重构的整个过程,存在资源的浪费。
发明内容
本发明要解决的技术问题之一,在于提供一种H.264编码的变换量化与反量化反变换处理系统,减轻数据反馈链路和时序链路的复杂度,提高整体编码器架构的性能。
本发明要解决的技术问题之一是这样实现的:一种H.264编码的变换量化与反量化反变换处理系统,包括仲裁模块、变换量化模块、反量化反变换模块和后处理模块,所述变换量化模块分别与仲裁模块和反量化反变换模块连接,所述反量化反变换模块与后处理模块连接;
所述仲裁模块,用于接收并存储帧间预测像素和帧内预测像素,并将帧间预测像素或者帧内预测像素与当前编码图像的原始像素相减得到的残差输出给变换量化模块;
所述变换量化模块,用于处理所述帧间预测像素和帧内预测像素,并将处理得到的量化残差传给反量化反变换模块处理,所述变换量化模块包括并行处理的两个4×4变换量化模块和一个8×8变换量化模块,所述4×4变换量化模块用于对帧间或帧内的4×4块数据进行变换与量化、对帧间或者帧内色度2x2哈达玛变换与量化以及对帧内16x16亮度的4x4哈达玛变换与量化,所述8×8变换量化模块用于对帧间和帧内的8×8块数据进行变换和量化;
所述反量化反变换模块,用于处理反哈达玛以及反量化反变换操作,计算重构数据和代价值并将重构数据和代价值输出,所述反量化反变换模块包括与变换量化模块对应的两个4×4反量化反变换模块和一个8×8反量化反变换模块,所述4×4反量化反变换模块用于对4×4变换量化模块发送来的数据进行处理,所述8×8反量化反变换模块用于对8×8变换量化模块发送的数据进行处理;
所述后处理模块,用于指对预测出来的像素进行重构滤波处理。
进一步的,所述变换量化模块的两所述4×4变换量化模块分别为第一4×4变换量化模块和第二4×4变换量化模块;
所述第一4×4变换量化模块用于处理帧间相关的亮度4x4块、色度4x4块和2x2的哈达玛变换,所述第二4×4变换量化模块用于处理帧内相关的亮度4x4块、色度4x4块和4x4的哈达玛变换。
进一步的,所述反量化反变换模块的两所述4×4反量化反变换模块分别为第一4×4反量化反变换模块和第二4×4反量化反变换模块;
所述第一4×4反量化反变换模块与第一4×4变换量化模块连接,所述第二4×4反量化反变换模块与第二4×4变换量化模块连接;
所述第一4×4反量化反变换模块用于处理第一4×4变换量化模块传来的数据;
所述第二4×4反量化反变换模块用于处理第二4×4变换量化模块传来的数据。
进一步的,所述仲裁模块根据后级的并行处理的三个变换量化模块,将帧间预测像素和帧内预测像素分成格式模式统一输出。
进一步的,所述系统还包括总体控制模块,用于控制变换量化模块的硬件级流水操作、处理帧级和宏块参数、控制宏块使能信号的发起以及产生量化参数。
进一步的,所述系统还包括量化反量化参数解析模块,所述量化反量化参数解析模块分别与变换量化模块和反量化反变换模块连接,用于对变换量化模块和反量化反变换模块处理所需的参数进行解析,包括对qp值的定点化操作和产生量化反量化系数。
本发明要解决的技术问题之二,在于提供一种H.264编码的变换量化与反量化反变换处理方法,减轻数据反馈链路和时序链路的复杂度,提高整体编码器架构的性能。
本发明要解决的技术问题之二是这样实现的:一种H.264编码的变换量化与反量化反变换处理方法,需提供仲裁模块、变换量化模块、反量化反变换模块和后处理模块,所述方法包括如下步骤:
步骤1、仲裁模块接收并存储帧间预测像素和帧内预测像素,并将帧间预测像素或者帧内预测像素与当前编码图像的原始像素相减得到的残差输出给变换量化模块;
步骤2、所述变换量化模块采用并行处理的三个变换量化模块对所述帧间预测像素和帧内预测像素进行处理,所述三个变换量化模块包括两个4×4变换量化模块和一个8×8变换量化模块,所述4×4变换量化模块用于对帧间或帧内的4×4块数据进行变换与量化、对帧间或者帧内色度2x2哈达玛变换与量化以及对帧内16x16亮度的4x4哈达玛变换与量化,所述8×8变换量化模块对帧间和帧内的8×8块数据进行的变换和量化;
步骤3、所述变换量化模块将处理得到的量化残差传给反量化反变换模块处理;
步骤4、所述反量化反变换模块采用与变换量化模块对应的两个4×4反量化反变换模块和一个8×8反量化反变换模块对接收到的量化残差进行反哈达玛以及反量化反变换操作,所述4×4反量化反变换模块对4×4变换量化模块发送来的数据进行处理,所述8×8反量化反变换模块对8×8变换量化模块发送的数据进行处理;
步骤5、所述反量化反变换模块计算重构数据和代价值,并将重构数据和代价值输出。
进一步的,所述变换量化模块的两所述4×4变换量化模块分别为第一4×4变换量化模块和第二4×4变换量化模块;
所述第一4×4变换量化模块处理帧间相关的亮度4x4块、色度4x4块和2x2的哈达玛变换;
所述第二4×4变换量化模块处理帧内相关的亮度4x4块、色度4x4块和4x4的哈达玛变换。
进一步的,所述反量化反变换模块的两所述4×4反量化反变换模块分别为第一4×4反量化反变换模块和第二4×4反量化反变换模块;
所述第一4×4反量化反变换模块处理第一4×4变换量化模块传来的数据;
所述第二4×4反量化反变换模块处理第二4×4变换量化模块传来的数据。
进一步的,所述仲裁模块根据后级的并行处理的三个变换量化模块,将帧间预测像素和帧内预测像素分成格式模式统一输出。
进一步的,所述方法还包括:通过一总体控制模块控制变换量化模块的硬件级流水操作、处理帧级和宏块参数、控制宏块使能信号的发起以及产生量化参数。
进一步的,所述方法还包括对变换量化模块和反量化反变换模块处理所需的参数进行解析,包括对qp值的定点化操作和产生量化反量化系数。
本发明具有如下优点:通过设计并行处理的2个4×4的变换量化模块与一个8×8变换量化模块,其中,4×4变换量化模块的计算能力为1个时钟处理4×4所有像素点,8×8变换量化模块的计算能力为1个时钟处理8个像素点,反量化反变换模块与变换量化模块相对应,其计算能力也一致,将待处理数据分散到这三套并行处理机制中进行处理,减轻数据反馈链路和时序链路的复杂度,提高整体编码器架构的性能。
附图说明
下面参照附图结合实施例对本发明作进一步的说明。
图1为本发明一种H.264编码的变换量化与反量化反变换处理系统框图。
图2为本发明变换量化模块的操作架构图。
图3为本发明参数解析处理框图。
图4为本发明变换量化模块内部处理框图。
图5为本发明反量化反变换处理框图。
图6为本发明一种H.264编码的变换量化与反量化反变换处理方法流程图。
具体实施方式
如图1至图5所示,一种H.264编码的变换量化与反量化反变换处理系统,包括仲裁模块、变换量化模块、反量化反变换模块和后处理模块,所述变换量化模块分别与仲裁模块和反量化反变换模块连接,所述反量化反变换模块与后处理模块连接;
所述仲裁模块,用于接收并存储帧间预测像素和帧内预测像素,并将帧间预测像素或者帧内预测像素与当前编码图像的原始像素相减得到的残差输出给变换量化模块,所述仲裁模块根据后级的并行处理的三个变换量化模块,将帧间预测像素和帧内预测像素分成格式模式统一输出,比如定义一规则:把帧间亮度8×8块、帧间亮度16×16块、帧间色度2×2、帧间色度4×4块以及帧间色度8×8块数据输出给第一4×4变换量化模块处理;把帧内亮度4×4块、帧内亮度16×16块、帧内色度8×8块以及帧间亮度4×4块输出给第二4×4变换量化模块处理;把帧间亮度8×8块、帧间亮度16×16块、帧内亮度8×8块输出给8×8变换量化模块处理;
所述变换量化模块,用于处理所述帧间预测像素和帧内预测像素,并将处理得到的量化残差传给反量化反变换模块处理,所述变换量化模块包括并行处理的两个4×4变换量化模块和一个8×8变换量化模块,所述4×4变换量化模块用于对帧间或帧内的4×4块数据进行变换与量化、对帧间或者帧内色度2x2哈达玛变换与量化以及对帧内16x16亮度的4x4哈达玛变换与量化,所述8×8变换量化模块用于对帧间和帧内的8×8块数据进行的变换和量化,其中,所述变换量化模块的两所述4×4变换量化模块分别为第一4×4变换量化模块和第二4×4变换量化模块;
所述第一4×4变换量化模块用于处理帧间相关的亮度4x4块、色度4x4块和2x2的哈达玛变换,所述第二4×4变换量化模块用于处理帧内相关的亮度4x4块、色度4x4块和4x4的哈达玛变换;
所述反量化反变换模块,用于处理反哈达玛以及反量化反变换操作,并提前两个时钟向仲裁模块发起读取预测像素请求,并将自身处理得到的残差数据与仲裁模块反馈的预测像素求和得到重构数据输出,再提前1个时钟向仲裁模块发起读取原始像素请求,将仲裁模块反馈的原始像素与计算得到的重构像素求差算出代价值输出,所述反量化反变换模块包括与变换量化模块对应的两个4×4反量化反变换模块和一个8×8反量化反变换模块,所述反量化反变换模块的两所述4×4反量化反变换模块分别为第一4×4反量化反变换模块和第二4×4反量化反变换模块;所述第一4×4反量化反变换模块与第一4×4变换量化模块连接,所述第二4×4反量化反变换模块与第二4×4变换量化模块连接;所述第一4×4反量化反变换模块用于处理第一4×4变换量化模块传来的数据;所述第二4×4反量化反变换模块用于处理第二4×4变换量化模块传来的数据,所述8×8反量化反变换模块用于对8×8变换量化模块发送的数据进行处理;
所述后处理模块,用于指对预测出来的像素进行重构滤波处理。
所述系统还包括总体控制模块,用于控制变换量化模块的硬件级流水操作、处理帧级和宏块参数、控制宏块使能信号的发起以及产生量化参数。
所述系统还包括量化反量化参数解析模块,所述量化反量化参数解析模块分别与变换量化模块和反量化反变换模块连接,用于对变换量化模块和反量化反变换模块处理所需的参数进行解析,包括对qp值的定点化操作和产生量化反量化系数;
由于硬件无法直接将qp值进行除6操作,需要做定点化操作,且定点化公式为:qp/6≈qp*43/256,即将qp值先乘以一个数后在右移一个位数,得到除6取整的效果,qp值的范围在0~51范围内,除6操作,得到9个定点,满足qp/6的硬件可实现等效处理方法能准确落在这9个定点中,而且要求硬件资源最省,如下表1所示:
表1
量化反量化系数产生主要根据qp参数以及亮度色度分量查表2(quant4_scale[6][3])和表3(quant8_scale[6][6])获取参数,最终还原像素点的值,具体根据以下公式获得:
quant8_mf_lu[k]=H264E_SHIFT(h264e_quant8_scale[q%6][k],q/6)
quant4_mf_ch[i_list][k]=mf=264E_SHIFT(h264e_quant4_scale[q%6][k],q/6-1)。
表2
表3
如图6所示,一种H.264编码的变换量化与反量化反变换处理方法,需提供仲裁模块、变换量化模块、反量化反变换模块和后处理模块,所述方法包括如下步骤:
步骤61、仲裁模块接收并存储帧间预测像素和帧内预测像素,并将帧间预测像素或者帧内预测像素与当前编码图像的原始像素相减得到的残差输出给变换量化模块,所述仲裁模块根据后级的并行处理的三个变换量化模块,将帧间预测像素和帧内预测像素分成格式模式统一输出,比如定义一规则:把帧间亮度8×8块、帧间亮度16×16块、帧间色度2×2、帧间色度4×4块以及帧间色度8×8块数据输出给第一4×4变换量化模块处理;把帧内亮度4×4块、帧内亮度16×16块、帧内色度8×8块以及帧间亮度4×4块输出给第二4×4变换量化模块处理;把帧间亮度8×8块、帧间亮度16×16块、帧内亮度8×8块输出给8×8变换量化模块处理;
步骤62、所述变换量化模块采用并行处理的三个变换量化模块对所述帧间预测像素和帧内预测像素进行处理,所述三个变换量化模块包括两个4×4变换量化模块和一个8×8变换量化模块,所述4×4变换量化模块用于对帧间或帧内的4×4块数据进行变换与量化、对帧间或者帧内色度2x2哈达玛变换与量化以及对帧内16x16亮度的4x4哈达玛变换与量化,所述8×8变换量化模块对帧间和帧内的8×8块数据进行的变换和量化,其中,所述变换量化模块的两所述4×4变换量化模块分别为第一4×4变换量化模块和第二4×4变换量化模块;所述第一4×4变换量化模块处理帧间相关的亮度4x4块、色度4x4块和2x2的哈达玛变换,所述第二4×4变换量化模块用于处理帧内相关的亮度4x4块、色度4x4块和4x4的哈达玛变换;
步骤63、所述变换量化模块将处理得到的量化残差传给反量化反变换模块处理;
步骤64、所述反量化反变换模块采用与变换量化模块对应的两个4×4反量化反变换模块和一个8×8反量化反变换模块对接收到的量化残差进行反哈达玛以及反量化反变换操作,并提前两个时钟向仲裁模块发起读取预测像素请求,并将自身处理得到的残差数据与仲裁模块反馈的预测像素求和得到重构数据输出,再提前1个时钟向仲裁模块发起读取原始像素请求,将仲裁模块反馈的原始像素与计算得到的重构像素求差算出代价值输出,所述4×4反量化反变换模块对4×4变换量化模块发送来的数据进行处理,所述反量化反变换模块的两所述4×4反量化反变换模块分别为第一4×4反量化反变换模块和第二4×4反量化反变换模块;所述第一4×4反量化反变换模块处理第一4×4变换量化模块传来的数据;所述第二4×4反量化反变换模块处理第二4×4变换量化模块传来的数据,所述8×8反量化反变换模块对8×8变换量化模块发送的数据进行处理;
步骤65、所述反量化反变换模块计算重构数据和代价值,并将重构数据和代价值输出。
所述方法还包括:通过一总体控制模块控制变换量化模块的硬件级流水操作、处理帧级和宏块参数、控制宏块使能信号的发起以及产生量化参数。
所述方法还包括对变换量化模块和反量化反变换模块处理所需的参数进行解析,包括对qp值的定点化操作和产生量化反量化系数;
由于硬件无法直接将qp值进行除6操作,需要做定点化操作,且定点化公式为:qp/6≈qp*43/256,即将qp值先乘以一个数后在右移一个位数,得到除6取整的效果,qp值的范围在0~51范围内,除6操作,得到9个定点,满足qp/6的硬件可实现等效处理方法能准确落在这9个定点中,而且要求硬件资源最省,如下表1所示:
表1
量化反量化系数产生主要根据qp参数以及亮度色度分量查表2(quant4_scale[6][3])和表3(quant8_scale[6][6])获取参数,最终还原像素点的值,具体根据以下公式获得:
quant8_mf_lu[k]=H264E_SHIFT(h264e_quant8_scale[q%6][k],q/6)
quant4_mf_ch[i_list][k]=mf=264E_SHIFT(h264e_quant4_scale[q%6][k],q/6-1)。
表2
表3
虽然以上描述了本发明的具体实施方式,但是熟悉本技术领域的技术人员应当理解,我们所描述的具体的实施例只是说明性的,而不是用于对本发明的范围的限定,熟悉本领域的技术人员在依照本发明的精神所作的等效的修饰以及变化,都应当涵盖在本发明的权利要求所保护的范围内。
机译: 联合余弦变换和量化装置以及联合逆量化和反余弦变换装置
机译: 离散余弦变换的量化逼近与量化方法,离散余弦变换的量化逼近与量化方法;进一步的编码和解码器
机译: 离散余弦变换的量化逼近与量化方法,离散余弦变换的量化逼近与量化方法;进一步的编码和解码器