CN1852434A - Avs/h.264色度插值的硬件实现方法及其装置 - Google Patents
Avs/h.264色度插值的硬件实现方法及其装置 Download PDFInfo
- Publication number
- CN1852434A CN1852434A CN 200610026681 CN200610026681A CN1852434A CN 1852434 A CN1852434 A CN 1852434A CN 200610026681 CN200610026681 CN 200610026681 CN 200610026681 A CN200610026681 A CN 200610026681A CN 1852434 A CN1852434 A CN 1852434A
- Authority
- CN
- China
- Prior art keywords
- avs
- interpolation
- processing unit
- basic processing
- chroma
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Landscapes
- Complex Calculations (AREA)
Abstract
本发明涉及一种数字视频编解码技术领域的AVS/H.264色度插值的硬件实现方法及其装置。其硬件由基本运算单元和数据流控制单元组成。其中,基本运算单元完成由式P=(8-k)×M+k×N所表示的工作;数据流控制单元通过对基本运算单元进行反复调用完成由式R=(8-dy)×((8-dx)×A+dx×B)+dy×((8-dx)×C+dx×D)所表示的工作,然后将R舍入为8比特输出数据,完成整个插值过程。本发明提供的硬件实现方法和装置,利用乘法之间的相关性,使用简单的数据选择和加法操作实现了复杂的乘加运算,从而有效地节省了资源。
Description
技术领域
本发明涉及一种数字视频编解码技术领域的方法及其装置,具体是一种AVS/H.264色度插值的硬件实现方法及其装置。
背景技术
AVS(数字音视频编解码技术标准)是由AVS工作组制定的一种多媒体信源编码标准。该技术标准的视频部分于2006年2月22日被颁布为中华人民共和国国家标准,标准号GB/T 20090.2-2006,于2006年3月1日起实施。H.264是由国际电信联盟(ITU)和国际标准化组织(ISO)于2003年5月共同发布的新一代视频压缩编解码标准。它目前已经得到了业界的广泛支持,不仅出现在了不同的行业应用中,而且也涉及各个国家、各个组织。AVS和H.264具有相似的技术特点,两者均采用了分数精度的运动矢量进行运动估计和运动补偿。运动估计和运动补偿旨在消除视频数据帧与帧之间的时间冗余,从而达到视频数据压缩的目的。由于在实际情况下,画面运动的距离可以具有无限精度,整数精度的运动矢量已无法满足日益增长的对视频质量的要求,因此,有必要采用分数精度的运动矢量来提高图像质量。在AVS和H.264中,亮度信息的运动矢量具有1/4像素的精度;相应地,色度信息运动矢量的精度达到1/8像素。对于色度信息,两种标准规定的分数样本生成方法也是相同的,即通过对相邻整数样本做双线性插值来得到分数样本值。分数样本插值在提高图像质量的同时,也大大增加了计算的复杂度。如果直接使用标准给出的公式进行插值计算,那么每计算一个色度分数样本都需要用到8次乘法和4次加法,其代价是非常高昂的。因此有必要寻找一种比较简单的运算方法来替代复杂的乘加运算,从而达到节省资源的目的。
经对现有技术文献的检索发现,胡力等人在“H.264中1/4精度像素插值算法的一种硬件实现架构”(《电视技术》2005年第10期)中提出了一种H.264色度插值架构。在该架构中,通过对双线性插值公式进行数学变换,达到了减少乘加运算数量和计算单元复用的效果。但是,该架构采用的方法仍然包含较多的冗余成分,没有充分利用到各个乘法间的相关性,因而并不是最优化的。
发明内容
本发明针对现有技术的不足,提供一种AVS/H.264色度插值的硬件实现方法及其装置。本发明要解决的技术问题是,寻找一种比较简单的方法来实现AVS/H.264色度插值中复杂的乘加运算,从而达到节省资源的目的。
本发明是通过以下技术方案实现的:
本发明提供了一种AVS/H.264色度插值的硬件实现方法,包括如下步骤:
第一步输入数据A、B、C、D、dy和dx,其中A、B、C和D为8比特无符号数,dy和dx为3比特无符号数,令变量M=A,N=B,k=dx,各步骤中所用的运算符号与表达式的含义罗列如下:
P[n]:取变量P的第n个2进制位,
a?b:c:当a为1时,运算结果为b,当a为0时,运算结果为c,
A<<n:将A左移n个二进制位,
A>>n:将A右移n个二进制位;
以上未罗列的其他运算均为普通整数运算;
第二步计算T0=k[0]?N:M,T1=k[1]?N:M,T2=k[2]?N:M;
第三步计算P=M+T0+T1<<1+T2<<2;
第四步令变量L1=P;
第五步令变量M=C,N=D,k=dx,重复第二步和第三步,得到新的P,并令L2=P;
第六步令变量M=L1,N=L2,k=dy,重复第二步和第三步,得到新的P;
第七步令R=(P+32)>>6,便完成了一个样本的色度插值,R为8比特输出数据。
在上述方案中,第二步和第三步完成了由式P=(8-k)×M+k×N所表示的工作,利用两个乘法之间的相关性,使用简单的数据选择和加法操作实现了复杂的乘加运算。
为了解决上述技术问题,本发明还提供了一种AVS/H.264色度插值装置,包括n个基本运算单元和1个数据流控制单元,其中:
参数n表示并行计算的色度样本个数;
基本运算单元,使用数据选择器和加法器完成了由式P=(8-k)×M+k×N所表示的工作,其中M、N和k来自数据流控制单元,P送回数据流控制单元;
数据流控制单元,使系统在两个状态间反复切换,在第一状态中,将输入数据分别送入n个基本运算单元,使k=dx,并取回n个中间运算结果,在第二状态中,将最近两次经历第一状态而得到的2n个中间运算结果送入n个基本运算单元,使k=dy,并取回n个R,从而使R=(8-dy)×((8-dx)×A+dx×B)+dy×((8-dx)×C+dx×D),然后将n个R舍入为8比特输出数据完成了插值过程。
在上述方案中,并行计算的色度样本的个数即参数n,是可变的,从而可以调整具体实现时所使用的硬件资源的数量。
由上可知,本发明的提供的硬件实现方法和装置,利用AVS/H.264色度插值中乘法之间的相关性,使用简单的数据选择和加法操作实现了复杂的乘加运算,从而有效地节省了资源。
特别地,将本方案与胡力等人的论文中的方案进行比较,能够发现,为了实现由式P=(8-k)×M+k×N所表示的运算,胡力等人的方案中需要使用6组11比特的二路选择器和5个加法器;而在本方案中,只使用了3组11比特的二路选择器和3个加法器,所占资源是前者的一半略多。因此,使用本方案所能节省的资源是相当可观的。
附图说明
图1是AVS/H.264色度分数样本插值的位置示意图;
图2是色度插值装置的总体结构图,以n=2(并行计算的样本数为2)的情况为例;
图3是基本运算单元的内部结构图。
具体实现方式
在AVS和H.264种,色度分数样本插值的方法是相同的,即通过对与目标位置相邻的4个整数样本进行双线性滤波来计算目标位置的样本值。参阅图1,设未经舍入的目标位置样本值为R,其分数坐标为(dy,dx),与之相邻的四个整数样本为A、B、C和D,那么就有如下的对应关系
R=(8-dy)×(8-dx)×A+(8-dy)×dx×B+dy×(8-dx)×C+dy×dx×D
对该式进行数学变换后可得到
R=(8-dy)×((8-dx)×A+dx×B)+dy×((8-dx)×C+dx×D)
如果规定一个三元函数
f(M,N,k)=(8-k)×M+k×N
那么就有
R=f(f(A,B,dx),f(C,D,dx),dy)
可见,通过反复调用函数f(M,N,k),可以简化整个计算过程。本发明的重点在于进一步优化该函数的实现方法,使用简单的选择和加法操作实现复杂的乘加运算。由于k的范围在0到7,是一个3比特无符号数,可以将它表示为{k[2],k[1],k[0]},其中k[n]表示k的第n比特,就有
其中运算符号与表达式含义罗列如下:
<<:表示左移;
a?b:c:表示当a为1时,结果取b,当a为0时,结果取c。
以上的推导表明,AVS/H.264色度插值中的乘法之间具有相关性;利用这种相关性,可以使用简单的选择、移位和加法操作实现整个插值过程。而确定位数的移位在硬件实现时几乎不占用资源。
参阅图2,本发明提供的一种基于AVS/H.264的色度插值算法的硬件实现,由n个基本运算单元和1个数据流控制单元组成。图2中是n=2的情况,当n=1或n>2时,只需要对图2中的结构做简单的精简或扩展即可。
基本运算单元。如图3所示,基本运算单元由3组二路选择器和3个加法器构成。M和N为11比特输入数据,P为14比特输出数据。3组二路选择器根据3比特输入参数k对M和N进行选择,输出中间变量T0=k[0]?N:M,T1=k[1]?N:M,T2=k[2]?N:M。三个加法器将3个中间变量以及M相加后作为14比特输出P。至此完成了以下操作
f(M,N,k)=(k[2]?N:M)<<2+(k[1]?N:M)<<1+k[0]?N:M+M
=(8-k)×M+k×N
数据流控制单元。其输入信号包括:时钟信号、块输入起始信号、坐标参数(dy,dx)以及n+1个处于同一行并相邻的整数位置色度样本,其中输入样本表示为{In,In-1,...I0},其输出为n个插值完毕的分数位置色度样本。该单元每2个时钟周期进行一次数据输入,每个时钟周期改变一次系统的状态(共2个状态)。在第一状态中,使k=dx,并将输入数据分别送入n个基本运算单元,其中,第m个基本运算单元的输入数据M、N分别为Im+1和Im(0<m<=n-1),然后取回n个中间运算结果。在第二状态中,将最近两次经历第一状态而得到的2n个中间运算结果送入n个基本运算单元,使k=dy,并取回n个R=P,从而使R=(8-dy)×((8-dx)×A+dx×B)+dy×((8-dx)×C+dx×D),然后将n个R舍入为8比特输出数据完成了插值过程。
Claims (4)
1、一种AVS/H.264色度插值的硬件实现方法,其特征在于,包括如下步骤:
第一步输入数据A、B、C、D、dy和dx,其中A、B、C和D为8比特无符号数,dy和dx为3比特无符号数,令变量M=A,N=B,k=dx,各步骤中所用的运算符号与表达式的含义罗列如下:
P[n]:取变量P的第n个2进制位,
a?b:c:当a为1时,结果为b,当a为0时,结果为c,
A<<n:将A左移n个二进制位,
A>>n:将A右移n个二进制位;
第二步计算T0=k[0]?N:M,T1=k[1]?N:M,T2=k[2]?N:M;
第三步计算P=M+T0+T1<<1+T2<<2;
第四步令变量L1=P;
第五步令变量M=C,N=D,k=dx,重复第二步和第三步,得到新的P,并令L2=P;
第六步令变量M=L1,N=L2,k=dy,重复第二步和第三步,得到新的P;
第七步令R=(P+32)>>6,便完成了一个样本的色度插值,R为8比特输出数据。
2、如权利要求1所述的一种AVS/H.264色度插值的硬件实现方法,其特征是,第二步和第三步完成了由式P=(8-k)×M+k×N所表示的工作,利用两个乘法之间的相关性,使用简单的数据选择和加法操作实现了复杂的乘加运算。
3、一种AVS/H.264色度插值装置,其特征在于,包括n个基本运算单元和1个数据流控制单元,其中:
参数n表示并行计算的色度样本个数;
基本运算单元,使用数据选择器和加法器完成了由式P=(8-k)×M+k×N所表示的工作,其中M、N和k来自数据流控制单元,P送回数据流控制单元;
数据流控制单元,使系统在两个状态间反复切换,在第一状态中,将输入数据分别送入n个基本运算单元,使k=dx,并取回n个中间运算结果,在第二状态中,将最近两次经历第一状态而得到的2n个中间运算结果送入n个基本运算单元,使k=dy,并取回n个R,从而使R=(8-dy)×((8-dx)×A+dx×B)+dy×((8-dx)×C+dx×D),然后将n个R舍入为8比特输出数据完成了插值过程。
4、如权利要求2所述的一种AVS/H.264色度插值装置,其特征是,并行计算的色度样本的个数即参数n,是可变的,从而调整具体实现时所使用的硬件资源的数量。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2006100266814A CN100384253C (zh) | 2006-05-18 | 2006-05-18 | Avs/h.264色度插值的硬件实现方法及其装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNB2006100266814A CN100384253C (zh) | 2006-05-18 | 2006-05-18 | Avs/h.264色度插值的硬件实现方法及其装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1852434A true CN1852434A (zh) | 2006-10-25 |
CN100384253C CN100384253C (zh) | 2008-04-23 |
Family
ID=37133901
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNB2006100266814A Expired - Fee Related CN100384253C (zh) | 2006-05-18 | 2006-05-18 | Avs/h.264色度插值的硬件实现方法及其装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN100384253C (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102026005A (zh) * | 2010-12-23 | 2011-04-20 | 芯原微电子(北京)有限公司 | 用于h.264色度内插计算的操作方法 |
CN102497549A (zh) * | 2011-12-02 | 2012-06-13 | 北京瀚景锦河科技有限公司 | 一种基于选择器的双线性插值方法和装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100216672B1 (ko) * | 1996-12-30 | 1999-09-01 | 김영환 | 칼라 필터 어레이 및 그 신호 처리 회로 |
-
2006
- 2006-05-18 CN CNB2006100266814A patent/CN100384253C/zh not_active Expired - Fee Related
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102026005A (zh) * | 2010-12-23 | 2011-04-20 | 芯原微电子(北京)有限公司 | 用于h.264色度内插计算的操作方法 |
CN102026005B (zh) * | 2010-12-23 | 2012-11-07 | 芯原微电子(北京)有限公司 | 用于h.264色度内插计算的操作方法 |
CN102497549A (zh) * | 2011-12-02 | 2012-06-13 | 北京瀚景锦河科技有限公司 | 一种基于选择器的双线性插值方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN100384253C (zh) | 2008-04-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1320824C (zh) | 双向预测块的预测方法 | |
CN1071526C (zh) | 图象数据的自适应可变长度编码和译码方法 | |
CN1132430C (zh) | 多重编码装置 | |
CN1767655A (zh) | 一种多视点视频图像视差估计的方法 | |
CN1883204A (zh) | 视频编码方法和设备 | |
CN101090493A (zh) | 活动图像编码/解码方法和设备 | |
CN1232125C (zh) | 通过参考离散余弦变换系数来估计运动的方法及其装置 | |
CN1235483A (zh) | 预测滤波器 | |
CN1299511C (zh) | 具有选择性运动补偿的可缩放mpeg-2视频译码器 | |
CN1103531C (zh) | 用基于块的重排编码技术编码视频信号的目标区域的设备 | |
CN1852434A (zh) | Avs/h.264色度插值的硬件实现方法及其装置 | |
CN1946178A (zh) | 一种用于运动估计的vlsi装置及运动估计的方法 | |
CN1297146C (zh) | 视频编码方法 | |
CN102801982B (zh) | 一种应用于视频压缩且基于块积分的快速运动估计方法 | |
CN1428051A (zh) | 用于可调整计算复杂度的视频及静止图像解码的近似离散余弦反变换 | |
CN1941903A (zh) | 一种实现多码流同时输出的转码系统及方法 | |
CN101742320B (zh) | 图像处理方法 | |
CN100394797C (zh) | 基于avs运动补偿的亮度插值器的vlsi实现方法 | |
CN102340659A (zh) | 一种基于avs的并行的模式决策装置和方法 | |
CN101035282A (zh) | 基于块内降采样的avs-m视频编码快速运动估计方法 | |
CN1184819C (zh) | 一种图象的平滑显示方法 | |
CN1174632C (zh) | 用于减少信号退化的方法 | |
CN1949878A (zh) | 在译码器上实施转换领域的舍入方法及其视讯译码器 | |
JP2013042385A (ja) | 画像符号化装置及び画像復号装置 | |
CN1186939C (zh) | 一种基于多级流水线结构的实时1/4插值方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20080423 Termination date: 20170518 |