CN104486629B - H.265视频编码中变换与反变换的快速实施方法 - Google Patents
H.265视频编码中变换与反变换的快速实施方法 Download PDFInfo
- Publication number
- CN104486629B CN104486629B CN201410783840.XA CN201410783840A CN104486629B CN 104486629 B CN104486629 B CN 104486629B CN 201410783840 A CN201410783840 A CN 201410783840A CN 104486629 B CN104486629 B CN 104486629B
- Authority
- CN
- China
- Prior art keywords
- data
- matrix
- coefficient
- parallel
- transposition
- 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.)
- Active
Links
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本发明公开了一种H.265视频编码中变换与反变换的快速实施方法,源数据正变换A1),将系数矩阵T转置得到T’,将源数据X左乘于转置后的系数矩阵T’,得到中间结果XT’;A2),将中间结果XT’右乘于系数矩阵T,得到变换域数据Y=TXT’;变换域数据反变换,B1),将系数矩阵T转置得到T’,将变换域数据Y右乘于转置后的系数矩阵T’,得到中间结果T’Y;B2),将中间结果T’Y左乘于系数矩阵T,得到源数据X=T’YT。本发明将数据级并行与系数级并行相结合的SIMD实施方法,避免运算过程中所需的两次转置,降低了运算的复杂度,提升了执行效率,具有良好的应用前景。
Description
技术领域
本发明涉及一种H.265视频编码中变换与反变换的快速实施方法,属于视频编码技术领域。
背景技术
网络视频是互联网最主要的应用之一,高清视频将是广电领域的必然走向,移动视频目前的发展态势也呈现出井喷之势。可以预见,视频应用在今后若干年都将是数字多媒体领域的最大热点。
由于网络带宽、延时等因素的限制,视频应用中面临的首要难点就是视频编解码问题,视频编解码系统是视频应用领域的核心,它决定着媒体服务的质量,它直接影响网络带宽需求、用户体验质量、解码设备需求、直播延迟等关键问题。因此高效的视频编解码系统一直是广电、互联网视频、视频协作厂商等竞相追逐的重点对象。H.265视频编码是国际标准化组织MPEG和ITU-TVCEG继H.264之后联合制定的新一代视频编码标准。H.265沿用了前代视频编码标准所惯用的基于块的预测变换混合编码框架,并且在预测、变换、熵编码、环路滤波等核心模块进行了一系列重要的创新和改进,如更加灵活的四叉树编码结构,更加复杂和精确的帧内和帧间预测方法、更加先进的环路滤波技术,使得压缩性能相比H.264提升了一倍。
H.265视频编码标准的有效地提高了视频压缩性能,但是,同时也为视频编码过程带来了更多的计算负担,新的编码工具集为编码过程提供了更多的选择,要达到最优编码性能,需要在这个工具集中寻找最优组合,这个搜索过程的复杂度是相当高的。最显著地,H.265相比H.264编码和预测块的划分形式更加灵活,它首先把编码的基本单位抽象为编码单元CU、预测单元PU和变换单元TU三个层次,从64x64到4x4,每一层CU都可以支持2Nx2N,NxN,2NxN,Nx2N四种对称PU划分方式和和2Nx0.5U,2Nx0.5D,0.5Lx2N,0.5Rx2N四种非对称PU划分方式。理论上,编码器要获得最优编码性能需要通过递归遍历的方式检查所有可能的CU和PU划分组合,这个过程的运算复杂度是极高的。根据测试结果,HM参考编码器(H.265标准的参考软件)的编码速度是视频序列时间长度的数百倍到数千倍之间。但是,在实时视频通信应用领域,例如视频会议、视频直播、视频电话等场合,需要对视频进行实时编码,对所有编码模式和工具做遍历择优的做法是极不现实的。
上述介绍可知,H.265视频编码在4x4,8x8的基础上增加16x16,32x32大小的变换,使变换/反变换的运算复杂度大幅提升,采用X86或者ARM处理器提供的单指令多数据指令集(single instruction multi-data,SIMD),常规的做法是对多个数据做数据级的并行处理,以提高速度,数据级数据并行处理要求数据矩阵右乘于系数矩阵,不可避免地需要伴随两次矩阵的转置运算,正变换是在两次矩阵相乘之前对数据各做一次转置,反变换是在两次矩阵相乘之后对数据各做一次转置,具体介绍如下,
正变换的运算如下,Y=TXT’,’表示转置运算符,采用数据级并行,首先对输入X转置得到X’,右乘于系数矩阵得到中间结果TX’,然后对中间结果转置得到(TX’)’=XT’,再右乘于系数矩阵得到Y=TXT’;
反变换的运算如下:X=T’YT,采用数据级并行,首先计算第一次矩阵相乘T’Y,对结果转置得到(T’Y)’=Y’T,将其右乘于T’做第二次矩阵相乘得到T’Y’T,再转置得到最终结果(T’Y’T)’=T’YT。
对于众多数据的变换,转置本身的复杂度相当可观,如何有效地实施加快变换运算的速度,是当前急需解决的问题。
发明内容
本发明的目的克服现有的H.265视频编码的变换运算的高复杂度,运算时间长的问题。本发明的H.265视频编码中变换与反变换的快速实施方法,将数据级并行与系数级并行相结合的SIMD实施方法,避免运算过程中所需的两次转置,有效地降低了变换/反变换运算的复杂度,提升了执行效率,且不影响计算处理的精确度,具有良好的应用前景。
为了达到上述目的,本发明所采用的技术方案是:
一种H.265视频编码中变换与反变换的快速实施方法,其特征在于:通过系数级并行与数据级并行结合的方式执行变换与反变换,
源数据正变换包括以下步骤,
步骤(A1),将系数矩阵T转置得到T’,将源数据X左乘于转置后的系数矩阵T’,采用系数级并行,执行第一次矩阵相乘,得到中间结果XT’;
步骤(A2),将中间结果XT’右乘于系数矩阵T,采用数据级并行,执行第二次矩阵相乘,得到变换域数据Y=TXT’;
变换域数据反变换包括以下步骤,
步骤(B1),将系数矩阵T转置得到T’,将变换域数据Y右乘于转置后的系数矩阵T’,采用数据级并行,执行第一次矩阵相乘,得到中间结果T’Y;
步骤(B2),将中间结果T’Y左乘于系数矩阵T,采用系数级并行,执行第二次矩阵相乘,得到源数据X=T’YT。
前述的一种H.265视频编码中变换与反变换的快速实施方法,其特征在于:在步骤(A1)、步骤(B2)左乘于转置后的系数矩阵T’或左乘于系数矩阵T时,每一行数据做一次并行处理,每次得到一行处理结果。
前述的一种H.265视频编码中变换与反变换的快速实施方法,其特征在于:在步骤(A2)、步骤(B1)右乘于系数矩阵T或右乘于转置后的系数矩阵T’时,在不同数据行之间做并行处理,同时得到多行处理结果。
前述的一种H.265视频编码中变换与反变换的快速实施方法,其特征在于:在步骤(A1)、步骤(B1)中第一次矩阵相乘中,对于4x4,8x8,16x16,32x32矩阵变换时,各矩阵元素多右移1,2,3,4位;在步骤(A2)、步骤(B2)中第二次矩阵相乘中,对于4x4,8x8,16x16,32x32矩阵变换时,各矩阵元素少右移1,2,3,4位。
前述的一种H.265视频编码中变换与反变换的快速实施方法,其特征在于:步骤(A1)、步骤(B2)所述系数级并行表示为数据矩阵左乘于系数矩阵,同一行数据对应不同的系数,但同一行系数对应相同数据,并行在同一数据行内部展开。
前述的一种H.265视频编码中变换与反变换的快速实施方法,其特征在于:步骤(A2)、步骤(B1)所述数据级并行表示为数据矩阵右乘于系数矩阵,同一行数据对应相同的系数。
本发明的有益效果是:本发明的H.265视频编码中变换与反变换的快速实施方法,将数据级并行与系数级并行相结合的SIMD实施方法,避免运算过程中所需的两次转置,有效地降低了变换/反变换运算的复杂度,提升了执行效率,且不影响计算处理的精确度,具有良好的应用前景。
附图说明
图1是本发明的H.265视频编码中变换与反变换的快速实施方法的流程图。
具体实施方式
下面将结合说明书附图,以下实施例仅用于更加清楚地说明本发明的技术方案,而不能以此来限制本发明的保护范围。
本发明的H.265视频编码中变换与反变换的快速实施方法,将数据级并行与系数级并行相结合的SIMD实施方法,避免运算过程中所需的两次转置,有效地降低了变换/反变换运算的复杂度,提升了执行效率,且不影响计算处理的精确度,具体包括以下步骤,
源数据正变换包括以下步骤,
步骤(A1),将系数矩阵T转置得到T’,将源数据X左乘于转置后的系数矩阵T’,采用系数级并行,执行第一次矩阵相乘,得到中间结果XT’;
步骤(A2),将中间结果XT’右乘于系数矩阵T,采用数据级并行,执行第二次矩阵相乘,得到变换域数据Y=TXT’;
变换域数据反变换包括以下步骤,
步骤(B1),将系数矩阵T转置得到T’,将变换域数据Y右乘于转置后的系数矩阵T’,采用数据级并行,执行第一次矩阵相乘,得到中间结果T’Y;
步骤(B2),将中间结果T’Y左乘于系数矩阵T,采用系数级并行,执行第二次矩阵相乘,得到源数据X=T’YT。
其中,在步骤(A1)、步骤(B2)左乘于转置后的系数矩阵T’或左乘于系数矩阵T时,每一行数据做一次并行处理,每次得到一行处理结果,在步骤(A2)、步骤(B1)右乘于系数矩阵T或右乘于转置后的系数矩阵T’时,在不同数据行之间做并行处理,同时得到多行处理结果,采用数据级并行与系数级并行结合的方式,其中,步骤(A1)、步骤(B2)系数级并行表示为数据矩阵左乘于系数矩阵,同一行数据对应不同的系数,但同一行系数对应相同数据,并行在同一数据行内部展开;步骤(A2)、步骤(B1)所述数据级并行表示为数据矩阵右乘于系数矩阵,同一行数据对应相同的系数,数据级并行在正变换的第二次矩阵相乘以及反变换的第一次矩阵相乘时执行,实施数据级并行时,数据矩阵右乘于系数矩阵,同一行数据对应相同的系数。以DCT8x8的odd部分为例,
y1i=t10*o07i+t11*o16i+t12*o25i+t13*o34i
y3i=t30*o07i+t31*o16i+t32*o25i+t33*o34i
y5i=t50*o07i+t51*o16i+t52*o25i+t53*o34i
y7i=t70*o07i+t71*o16i+t72*o25i+t73*o34i
在ARM体系结构下,采用并行乘法和乘加指令,并行计算如下:
{t10*o070,t10*o071,t10*o072,t10*o073}
+
{t30*o070,t30*o071,t30*o072,t30*o073}
在x86体系结构下,采用pmaddwd并行乘加指令,并行计算如下:
{t10*o070+t11*o160,t10*o071+t11*o161,t10*o072+t11*o162,t10*o073+t11*o163}
实施系数级并行时,数据矩阵左乘于系数矩阵,同一行数据对应不同的系数,但同一行系数对应相同数据。并行在同一数据行内部展开。
在ARM体系结构下,采用并行乘法和乘加指令,并行计算如下:
{t10*o070,t30*o070,t50*o070,t70*o070}
+
{t11*o160,t31*o160,t51*o160,t71*o160}
在x86体系结构下,采用pmaddwd并行乘加指令,并行计算如下:
{t10*o070+t11*o160,t30*o070+t31*o160,t50*o070+t51*o160,t70*o070+t71*o160}。
为保证步骤(A2)、步骤(B2)的矩阵乘法能够实施16位整数乘法操作,对步骤(A1)、步骤(B1)中第一次矩阵相乘各元素的右移位数,采用与H.265参考软件HM不同的精度,具体实施为在步骤(A1)、步骤(B1)中第一次矩阵相乘中,对于4x4,8x8,16x16,32x32矩阵变换时,各矩阵元素多右移1,2,3,4位或更多;在步骤(A2)、步骤(B2)中第二次矩阵相乘中,对于4x4,8x8,16x16,32x32矩阵变换时,各矩阵元素少右移1,2,3,4位或更多。
以上显示和描述了本发明的基本原理、主要特征及优点。本行业的技术人员应该了解,本发明不受上述实施例的限制,上述实施例和说明书中描述的只是说明本发明的原理,在不脱离本发明精神和范围的前提下,本发明还会有各种变化和改进,这些变化和改进都落入要求保护的本发明范围内。本发明要求保护范围由所附的权利要求书及其等效物界定。
Claims (4)
1.一种H.265视频编码中变换与反变换的快速实施方法,其特征在于:通过系数级并行与数据级并行结合的方式执行变换与反变换,
源数据正变换包括以下步骤,
步骤(A1),将系数矩阵T转置得到T’, 将源数据X左乘于转置后的系数矩阵T’, 采用系数级并行,执行第一次矩阵相乘,得到中间结果XT’;
步骤(A2),将中间结果XT’右乘于系数矩阵T,采用数据级并行,执行第二次矩阵相乘,得到变换域数据Y = TXT’ ;
变换域数据反变换包括以下步骤,
步骤(B1),将系数矩阵T转置得到T’, 将变换域数据Y右乘于转置后的系数矩阵T’,采用数据级并行,执行第一次矩阵相乘,得到中间结果T’Y;
步骤(B2),将中间结果T’Y左乘于系数矩阵T,采用系数级并行,执行第二次矩阵相乘,得到源数据X = T’YT;
在步骤(A1)、步骤(B2)左乘于转置后的系数矩阵T’或左乘于系数矩阵T时,每一行数据做一次并行处理,每次得到一行处理结果;
在步骤(A2)、步骤(B1)右乘于系数矩阵T或右乘于转置后的系数矩阵T’ 时,在不同数据行之间做并行处理,同时得到多行处理结果。
2.根据权利要求1所述的一种H.265视频编码中变换与反变换的快速实施方法,其特征在于:在步骤(A1)、步骤(B1)中第一次矩阵相乘中,对于4x4,8x8,16x16,32x32矩阵变换时,各矩阵元素多右移1,2,3或4位;在步骤(A2)、步骤(B2)中第二次矩阵相乘中,对于4x4,8x8,16x16,32x32矩阵变换时,各矩阵元素少右移1,2,3或4位。
3.根据权利要求1所述的一种H.265视频编码中变换与反变换的快速实施方法,其特征在于:步骤(A1)、步骤(B2)所述系数级并行表示为数据矩阵左乘于系数矩阵,同一行数据对应不同的系数,但同一行系数对应相同数据,并行在同一数据行内部展开。
4.根据权利要求1所述的一种H.265视频编码中变换与反变换的快速实施方法,其特征在于:步骤(A2)、步骤(B1)所述数据级并行表示为数据矩阵右乘于系数矩阵,同一行数据对应相同的系数。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410783840.XA CN104486629B (zh) | 2014-12-16 | 2014-12-16 | H.265视频编码中变换与反变换的快速实施方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410783840.XA CN104486629B (zh) | 2014-12-16 | 2014-12-16 | H.265视频编码中变换与反变换的快速实施方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104486629A CN104486629A (zh) | 2015-04-01 |
CN104486629B true CN104486629B (zh) | 2017-10-20 |
Family
ID=52761121
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410783840.XA Active CN104486629B (zh) | 2014-12-16 | 2014-12-16 | H.265视频编码中变换与反变换的快速实施方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104486629B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1879419A (zh) * | 2004-09-28 | 2006-12-13 | 华为技术有限公司 | 一种视频图像编码方法 |
CN101848392A (zh) * | 2010-05-07 | 2010-09-29 | 北京大学深圳研究生院 | 一种视频编解码装置及其整数变换和反变换的方法 |
US7873812B1 (en) * | 2004-04-05 | 2011-01-18 | Tibet MIMAR | Method and system for efficient matrix multiplication in a SIMD processor architecture |
CN102137261A (zh) * | 2011-04-20 | 2011-07-27 | 深圳市融创天下科技发展有限公司 | 一种视频编码16x16整数变换方法 |
CN102227135A (zh) * | 2011-04-20 | 2011-10-26 | 深圳市融创天下科技发展有限公司 | 一种视频编码8x8整数变换方法 |
-
2014
- 2014-12-16 CN CN201410783840.XA patent/CN104486629B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7873812B1 (en) * | 2004-04-05 | 2011-01-18 | Tibet MIMAR | Method and system for efficient matrix multiplication in a SIMD processor architecture |
CN1879419A (zh) * | 2004-09-28 | 2006-12-13 | 华为技术有限公司 | 一种视频图像编码方法 |
CN101848392A (zh) * | 2010-05-07 | 2010-09-29 | 北京大学深圳研究生院 | 一种视频编解码装置及其整数变换和反变换的方法 |
CN102137261A (zh) * | 2011-04-20 | 2011-07-27 | 深圳市融创天下科技发展有限公司 | 一种视频编码16x16整数变换方法 |
CN102227135A (zh) * | 2011-04-20 | 2011-10-26 | 深圳市融创天下科技发展有限公司 | 一种视频编码8x8整数变换方法 |
Non-Patent Citations (2)
Title |
---|
一种AVS整数变换的快速算法;肖有平等;《西南科技大学学报》;20080331;第23卷(第1期);第31-34、65页 * |
一种并行结构的二维正/逆整数变换处理器;刘凌志等;《上海交通大学学报》;20041231;第38卷(第12期);第2048-2051页 * |
Also Published As
Publication number | Publication date |
---|---|
CN104486629A (zh) | 2015-04-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101672456B1 (ko) | 저복잡도 주파수 변환을 이용한 비디오 부호화 방법과 그 장치, 및 비디오 복호화 방법과 그 장치 | |
CN104885467B (zh) | 用于下一代视频编码的内容自适应参数变换 | |
CN104205834B (zh) | 用于对每个空间子区域进行视频解码的方法 | |
CN105325004B (zh) | 基于用信号传输样点自适应偏移参数的视频编码方法和设备以及视频解码方法和设备 | |
CN108605142A (zh) | 用于视频译码的多遍不可分开的变换 | |
KR101362696B1 (ko) | 하이브리드 아키텍쳐가 적용된 신호 변환 장치, 신호 변환 방법 및 기록매체 | |
CN105578207A (zh) | 一种视频帧率转换方法及装置 | |
JP2014509108A (ja) | メディアデータコーディングのための32点変換 | |
TW201301902A (zh) | 類型六及七的離散餘弦及正弦轉換之快速計算 | |
TW201325247A (zh) | 在視訊解碼的反量化及逆轉換期間實現資料修剪的逆轉換方法及設備 | |
WO2015103088A1 (en) | Recursive block partitioning | |
CN108810536A (zh) | 图像编码设备 | |
CN109672895A (zh) | 一种hevc帧内预测方法及系统 | |
JP6065613B2 (ja) | 動画像符号化装置 | |
CN101083769B (zh) | 处理n比特视频数据的编/解码器和编/解码方法 | |
JP2013162395A (ja) | 画像符号化方法、画像符号化装置及び画像符号化プログラム | |
CN105453566B (zh) | 数据编码及数据解码 | |
CN104486629B (zh) | H.265视频编码中变换与反变换的快速实施方法 | |
CN105100799A (zh) | 一种减少hevc编码器中帧内编码时延的方法 | |
CN115442617A (zh) | 一种基于视频编码的视频处理方法和装置 | |
Joshi et al. | VLSI architecture of high speed SAD for high efficiency video coding (HEVC) encoder | |
CN105227959A (zh) | 用于视频编码的多编码点混编流水方法及其装置 | |
CN104486630B (zh) | H.265视频编码中sao模式下偏移量的统计方法 | |
CN104602026B (zh) | 一种适用于hevc标准下编码器中全复用的重建环路结构 | |
CN108900842B (zh) | Y数据压缩处理方法、装置、设备及WebP压缩系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C41 | Transfer of patent application or patent right or utility model | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20161125 Address after: Room 33, No. 100000 Beijing city Haidian District Xiaoying road 3F02 Applicant after: Beijing Jinshanyun Net Technology Co., Ltd. Address before: 210000 Gulou District Nanjing Jiangsu Stone City No. 69 3-302 Applicant before: NANJING QIANYI VIDEO INFORMATION TECHNOLOGY CO., LTD. |
|
GR01 | Patent grant | ||
GR01 | Patent grant |