CN109819250A - 一种多核全组合方式的变换方法和系统 - Google Patents
一种多核全组合方式的变换方法和系统 Download PDFInfo
- Publication number
- CN109819250A CN109819250A CN201910036847.8A CN201910036847A CN109819250A CN 109819250 A CN109819250 A CN 109819250A CN 201910036847 A CN201910036847 A CN 201910036847A CN 109819250 A CN109819250 A CN 109819250A
- Authority
- CN
- China
- Prior art keywords
- mode
- rate distortion
- residual block
- distortion costs
- obtains
- 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
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本申请公开了一种多核全组合方式的变换方法和系统,包括:获取视频的帧,并对帧进行划分,得到编码单元;根据帧的类型,确定对编码单元亮度块的预测类型和预测模式;对所述亮度块进行预测计算,得到与此亮度块的各预测模式对应的各残差块;对各所述残差块依次进行率失真优化计算,对比并同时更新当前最优率失真代价,保存最小的率失真代价及其对应的预测模式和变换方式;将所述变换方式对应的索引写入编码码流。所述方法包括两种计算和三种后期处理方式。通过对变换方式进行前期筛选,减少后期计算量,提升计算速度。使用多种变换核对残差块的水平和竖直方向分别进行变换,提高一次变换的效果,省略二次变换的过程,从而提升整体的计算速度。
Description
技术领域
本申请涉及数字信号处理领域,尤其涉及一种多核全组合方式的变换方法和系统。
背景技术
在数字视频编码领域,大框架上分为预测、变换量化、熵编码、环路滤波几个模块。其中的变换部分,用DCT2变换核进行变换一直以来被人们认为是最合适的变换方式。但是,DCT2是一种理想的变换方式(KLT,Karhunen-Loeve Transform)变换近似,适合对残差系数分布均匀的残差块做变换,不代表DCT2变换对所有的残差块都适合。在离散空间的小尺寸残差块变换上面,因为信号分布的随机性很强,残差块内系数不可能都均匀分布,某些残差块具有特殊的有规律可循的变换特性,则其更适合其他的变换方式。
DST7变换核对一类特殊的向量,即信号方差随向量位置从左到右逐渐增大,具有很好的能量聚集效果。编解码端引入DST7变换对残差块做水平和竖直方向的变换,就可以使信号方差在右下角更大的块具有很好的能量聚集效果。DCT8变换核具有与DST7变换核相反的性质,就是对信号方差随向量位置从左到右逐渐减小的向量具有很好的能量聚集效果。但是,DST7变换核和DCT8变换核只对这两类特殊向量有很好的能量聚集效果。
综上所述,上述每种变换核都有其优缺点,适用范围均有所局限,因此需要提供一种适用范围更广,性能更强的变换技术。
发明内容
为解决以上问题,本申请提出了一种多核全组合方式的变换方法和系统。
一方面,本申请提出一种多核全组合方式的变换方法,包括:
获取视频的帧,并对帧进行划分,得到编码单元;
根据帧的类型,确定对编码单元亮度块的预测类型和预测模式;
对所述亮度块进行预测计算,得到与此亮度块的各预测模式对应的各残差块;
对各所述残差块依次进行率失真优化计算,得到多个最优率失真代价;
比较所述各最优率失真代价,选择最小的率失真代价对应的预测模式和变换方式;
将所述变换方式对应的索引写入编码码流。
优选地,所述索引用于分别标记水平和竖直两个方向上使用的变换核。
优选地,所述对各所述残差块依次进行率失真优化计算,得到多个最优率失真代价,包括:
对残差块进行第一计算,得到对此残差块的多种最优变换方式;
对残差块进行第二计算,得到此残差块的量化系数矩阵;
判断量化系数矩阵和预测模式,确定后期处理方式并处理,得到最优率失真代价。
优选地,所述对残差块进行第一计算,得到对此残差块的多种最优变换方式,包括:
对残差块使用不同的变换方式进行变换,得到对应于不同变换方式的各变换系数矩阵;
分别对各变换系数矩阵求绝对值和,得到对应于各变换方式的变换值;
选取所述变换值中最小变换值的一定阈值范围内的所有变换值,根据选取的各变换值确定对应的各变换方式,作为各所述最优变换方式;
所述最优变换方式还包括不同索引长度中的最小变换值所对应的变换方式。
优选地,所述对残差块进行第二计算,得到此残差块的量化系数矩阵,包括:
对残差块使用DCT2变换,得到变换系数矩阵;
对所述变换系数矩阵进行量化熵编码,得到量化系数矩阵。
优选地,所述判断量化系数矩阵和预测模式,确定后期处理方式并处理,得到最优率失真代价,包括:
若所述量化系数矩阵为全零块,则对此量化系数矩阵使用第一后期处理方式;
若所述残差块使用的预测模式为帧间预测模式,且所述量化系数矩阵为非全零块,则对此残差块使用第二后期处理方式;
若所述残差块使用的预测模式为帧内预测模式,且所述量化系数矩阵为非全零块,则对此残差块使用第三后期处理方式。
优选地,所述第一后期处理方式包括:对此量化系数矩阵进行率失真计算,得到此残差块的率失真代价,保存此率失真代价及其对应的变换方式。
优选地,所述第二后期处理方式包括:
使用此残差块在第一计算中得到各所述最优变换方式的各变换系数矩阵分别进行量化熵编码,得到对应于各所述最优变换方式的各量化系数矩阵;
对所述各量化系数矩阵进行率失真计算,得到各率失真代价;
比较所述各率失真代价,保存最小的率失真代价及其对应的变换方式。
优选地,所述第三后期处理方式包括:
若在第二后期处理方式中,没有保存过同一亮度块的其他帧内预测模式的最小率失真代价,则对此残差块使用第二后期处理方式;
若在第二后期处理方式中,保存过同一亮度块的其他帧内预测模式的最小率失真代价,则对所述量化系数矩阵进行率失真计算,得到对比率失真代价,若所述对比率失真代价与所述最小率失真代价的差值在一定范围内,则对此对比率失真代价对应的残差块进行第二后期处理方式,比较新保存的帧内预测模式的最小率失真代价与之前保存的帧内预测模式的最小率失真代价,保存并更新较小的最小率失真代价及其对应的变换模式和帧内预测模式;
若在第二后期处理方式中,保存过同一亮度块的其他帧内预测模式的最小率失真代价,则对所述量化系数矩阵进行率失真计算,得到对比率失真代价,若所述对比率失真代价与所述最小率失真代价的差值在一定范围外,则不对此残差块进任何处理。
第二方面,本申请提出一种多核全组合方式的变换系统,包括:依次相连接的帧处理模块、预测模块、率失真优化计算模块、比较模块和编码模块;
所述帧处理模块用于获取视频的帧,对帧进行划分得到编码单元,并将所述编码单元传输至预测模块进行处理;
所述预测模块用于根据帧的类型,确定对亮度块的预测类型和预测模式,对所述亮度块进行预测计算,得到与此亮度块的各预测模式对应的各残差块;
所述率失真优化计算模块用于对各所述残差块依次进行率失真优化计算,得到多个最优率失真代价;
所述比较模块用于比较所述各最优率失真代价,选择最小的率失真代价对应的预测模式和变换方式;
所述编码模块用于将所述变换方式对应的索引序号写入编码码流。
本申请的优点在于:
本申请的方法采用多核全组合的方式,使用多种变换核对残差块的水平和竖直方向分别进行变换,具有适用范围更广,性能更强的特点;通过对各预测模式以及各变换方式进行率失真优化计算(第一计算),选择多个最佳变换方式,在后续计算和处理中直接使用各最佳变换方式以及在第一计算中保存的数据,能够有效减少计算量,提升计算速度,缩短编码时间。并且每个编码单元通过使用少量几个bit的索引规定了水平和竖直方向变换使用变换核的索引表示,节省标识字符长度。通过不同的计算和多种处理方式有效提高了计算速度。通过使用多种变换核对残差块的水平和竖直方向分别进行变换,能够优选的提高一次变换的效果,省略二次变换的过程,减少计算过程和计算量,从而提升整体的计算速度。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选事实方案的目的,而并不认为是对本申请的限制。而且在整个附图中,用同样的参考符号表示相同的部件。在附图中:
图1是本申请提供的一种多核全组合方式的变换方法的步骤示意图;
图2是本申请提供的一种多核全组合方式的变换方法的求绝对值和的示意图;
图3是本申请提供的一种多核全组合方式的变换方法的多核全组合的索引表示示意图;
图4是本申请提供的一种多核全组合方式的变换系统的示意图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施方式。虽然附图中显示了本公开的示例性实施方式,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施方式所限制。相反,提供这些实施方式是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
根据本申请的实施方式,提出一种多核全组合方式的变换方法,如图1所示,包括:
获取视频的帧,并对帧进行划分,得到编码单元;
根据帧的类型,确定对编码单元亮度块的预测模式和预测种类;
对所述亮度块进行预测计算,得到与此亮度块的各预测种类对应的各残差块;
对各所述残差块依次进行率失真优化(RDO,Rate Distortion Optimization)计算,得到多个最优率失真代价(RDcost,Rate Distortion Cost);
比较所述各最优率失真代价,选择最小的率失真代价对应的预测模式和变换方式;
将所述变换方式对应的索引(index)写入编码码流。
通过率失真优化计算的过程,从多种变换方式中决定具体使用的变换方式。通过计算率失真代价,从多种不同的变换方式中选择率失真代价最小的,即最好的变换方式。同时还要将相应的索引写入码流,以供解码时确定反变换使用的变换核。
所述索引用于分别标记水平和竖直两个方向上使用的变换核。
所述预测模式包括帧内预测模式和帧间预测模式。
所述帧内预测模式,以AVS2视频编码标准为例包括:DC模式、Plane模式、Bilinear模式和角度模式等。
所述对各所述残差块依次进行率失真优化计算,得到多个最优率失真代价,包括:
对残差块进行第一计算,得到对此残差块的多种最优变换方式;
对残差块进行第二计算,得到此残差块的量化系数矩阵;
判断量化系数矩阵和预测模式,确定后期处理方式并处理,得到最优率失真代价。
所述对残差块进行第一计算,得到对此残差块的多种最优变换方式,包括:
对残差块使用不同的变换方式(多核变换方式)进行水平和竖直方向上的变换,得到对应于不同变换方式的各变换系数矩阵;
分别对各变换系数矩阵求绝对值和,得到对应于各变换方式的变换值;
选取所述变换值中最小变换值的一定阈值范围内的所有变换值,根据选取的各变换值确定对应的各变换方式,作为各所述最优变换方式;
所述最优变换方式还包括不同索引长度中的最小变换值所对应的变换方式。
如图2所示,在做量化熵编码之前,分别对各变换系数矩阵求绝对值和(L1和),得到对应于各变换方式的变换值(SAMTD值,Sum of Absolute Multi-core TransformedDifference)。选取最小变换值一定阈值范围内的各变换值所对应的各变换方式进行后续率失真优化计算过程。所述阈值范围可以设定,优选为1.15。图2中,i表示第几行,i=1表示第一行,j表示第几列,j=1表示第一列。
所述第一计算得到的所有计算结果都进行保存,方便在后面的计算和处理时进行调用。
在对亮度块进行帧内和/或帧间预测计算之后的残差块进行变换的过程中,加入多核全组合方式的变换(FCMT,Fully Combination Multi-core Transform)。所述多核全组合方式的变换的使用范围是从4x4到64x64大小的残差块,并且只对亮度分量做。
如图3所示,由于需要决定对水平和竖直两个方向上使用何种变换核,在这里通过引入2-4bit的索引来表示。前1-2bit控制水平方向上的变换核选择,后1-2bit控制竖直方向上的变换核选择。以使用DCT2,DST7和DCT8三种变换核为例,其表示方式可以为,0:DCT2,10:DST7,11:DCT8。此索引能够直观的表示水平和竖直方向上不同的变换组合方式。所述变换核的组合排序优选地,按照信号变换的能量聚集程度的效果进行排序。
以使用DCT2、DST7、DCT8和DST1四种变换核为例,其表示方式可以为,0:DCT2,10:DST7,110:DCT8,111:DST1。
所述选取的各变换值还包括不同索引位数所对应的各变换方式中的至少一个最小变换值。因为不同变换方式的索引表示长度不同,所以在计算中要将不同索引表示长度的集中的变换方式中变换值最小的一种变换方式也加入到后续的率失真优化计算过程中进行决策。
所述对残差块进行第二计算,得到此残差块的量化系数矩阵,包括:
对残差块使用DCT2变换,得到变换系数矩阵;
对所述变换系数矩阵进行量化熵编码,得到量化系数矩阵。
所述DCT2变换为水平和竖直方向都进行DCT2变换的变换方式。
所述判断量化系数矩阵和预测模式,确定后期处理方式并处理,得到最优率失真代价,包括:
若所述量化系数矩阵为全零块,则对此量化系数矩阵使用第一后期处理方式;
若所述残差块使用的预测模式为帧间预测模式,且所述量化系数矩阵为非全零块,则对此残差块使用第二后期处理方式;
若所述残差块使用的预测模式为帧内预测模式,且所述量化系数矩阵为非全零块,则对此残差块使用第三后期处理方式。
在所述量化系数矩阵为全零块的情况下,即认为当前残差块编码为全零块的操作已经能达到率失真较好的权衡了。全零块判断对DCT2有比较好的判断作用,所以全零快判断优选地,只对经过DCT2变换方式后进行量化熵编码得到的量化系数矩阵使用。
所述第一后期处理方式包括:对此量化系数矩阵进行率失真计算,得到此残差块的率失真代价,保存此率失真代价及其对应的变换方式。
所述第一后期处理方式的结果保存方式为更新保存,即只保存一个帧内预测模式的率失真代价及其对应的变换方式和一个帧间预测模式的率失真代价及其对应的变换方式。
以帧内预测模式为例,若当后面计算得到的帧内预测模式的率失真代价优于之前所保存的帧内预测模式的率失真代价,则对此帧内预测模式的率失真代价及其对应的变换方式进行更新保存,即删除之前所保存的帧内模式的率失真代价及其对应的变换方式。
所述率失真计算包括码率计算和失真度计算等。
所述第一后期处理方式的应用范围包括:经过帧内预测模式和/或帧间预测模式处理后得到的所有残差块。
所述第二后期处理方式包括:
使用此残差块在第一计算中得到各所述最优变换方式的各变换系数矩阵分别进行量化熵编码,得到对应于各所述最优变换方式的各量化系数矩阵;
对所述各量化系数矩阵进行率失真计算,得到各率失真代价;
比较所述各率失真代价,保存最小的率失真代价及其对应的变换方式。
所述变换系数矩阵的选择通过设置确定。
所述第三后期处理方式包括:
若在第二后期处理方式中,没有保存过同一亮度块的其他帧内预测模式的最小率失真代价,则对此残差块使用第二后期处理方式;
若在第二后期处理方式中,保存过同一亮度块的其他帧内预测模式的最小率失真代价,则对所述量化系数矩阵进行率失真计算,得到对比率失真代价,若所述对比率失真代价与所述最小率失真代价的差值在一定范围内,则对此对比率失真代价对应的残差块进行第二后期处理方式,比较新保存的帧内预测模式的最小率失真代价与之前保存的帧内预测模式的最小率失真代价,保存并更新较小的最小率失真代价及其对应的变换模式和帧内预测模式;
若在第二后期处理方式中,保存过同一亮度块的其他帧内预测模式的最小率失真代价,则对所述量化系数矩阵进行率失真计算,得到对比率失真代价,若所述对比率失真代价与所述最小率失真代价的差值在一定范围外,则不再对此残差块进任何处理,跳过对此残差块的其他所有变计算。即,如果一种帧内预测模式使用DCT2变换,并做完量化熵编码之后,得到的率失真代价大于当前(之前保存过的同一亮度块使用其他帧内预测模式的)最小率失真代价的一定范围,则认为其他多核全组合方式的变换方式也不能带来更小的率失真代价,跳过所有多核全组合方式的变换计算以及之后的计算。
所述范围的取值与编码单元的宽和高有关。将编码单元的宽和高的乘积对2取log(对数),所述范围的取值与这个值线性相关。公式如下:
范围的取值(Threshold)对应到不同的尺寸对数值为12时,范围的取值为1.1;尺寸对数值为11时,范围的取值优选为1.15;尺寸对数值为10时,范围的取值为1.2;尺寸对数值为4时,范围的取值为1.5。因为大块残差的分布相对要均匀一些,所以范围的取值可以设置小一些,尽量跳过多一些的变换方式;而小块残差由于分布比较不均,其范围的取值可以设置大一些,尽量保证更多的变换参与到率失真优化计算的选择中。
所述编码单元包括:原始像素块(包含亮度色度分量)、预测值块和残差块。
所述率失真优化计算包括上述所有计算步骤(第一计算和第二计算)与所有后期处理方式(第一后期处理方式,第二后期处理方式和第三后期处理方式)。
所述第三后期处理方式用于使用不同的帧内预测模式计算后的各残差块。
以对一个亮度块进行6种预测计算,得到6个残差块,并对此6个残差块使用DCT2,DST7和DCT8三种变换核为例。
如图3所示,三种变换核按照水平、竖直方向的排序方式进行组合,共得到3种索引长度以及9种变换的组合方式。其中索引长度为2的变换方式有1种,索引长度为3的变换方式有4种,索引长度为4的变换方式有4种。
取此亮度块的第一预测模式计算出的第一残差块进行第一计算。对所述第一残差块分别进行9种变换的计算(多核全组合方式的变换计算),得到与此9种变换方式对应的9个变换系数矩阵。对此9个变换系数矩阵求绝对值和(L1和),得到对应于9种变换方式的9个变换值。设阈值选择为1.15,为一个固定值。选取其中最小的变换值,并结合此阈值,确定最小变换值的阈值范围为此最小变换值乘1.15,选取此阈值范围内的各变换值所对应的各变换方式。
若选取的各变换方式中,有一种或多种索引长度中的变换方式没有涉及,则选择没涉及的各索引长度中的各最小变换值对应的变换方式加入至此前根据阈值范围所选择的各变换值所对应的各变换方式中。
假设9个变换值中,DCT2变换(水平和竖直方向都进行DCT2变换的变换方式)的变换值最小,且其他8个变换值不在阈值范围内,则根据阈值范围所选择的变换值对应的变换方式只有索引长度为2的DCT2一种变换方式,而索引长度为3的变换方式以及索引长度为4的变换方式没有入选。所以,需要在索引长度为3的4种变换方式中,根据变换值,选择最小变换值对应的1种变换方式增加至选择中;在索引长度为4的4种变换方式中,根据变换值,选择最小变换值对应的1种变换方式增加至选择中。所以,经过第一计算后,对第一残差块选择出的优选变换方式一共有3种。
对第一残差块进行第二计算。对第一残差块进行DCT2变换,或者直接取用第一计算中得到的第一残差块的DCT2变换的变换系数矩阵进行量化熵编码,得到量化系数矩阵。
若此量化系数矩阵为全零块,则跳过第一残差块的其他8种变换方式的后续率失真优化计算。对此量化系数矩阵进行率失真计算,得到率失真代价,并保存此率失真代价及其对应的变换模式。此率失真代价为此残差块的最优率失真代价。此处理方式为所述第一后期处理方式,所述第一后期处理方式的使用范围包括:经过帧间预测模式处理后得到的残差块和经过帧内预测模式处理后得到的残差块。所述第一后期处理方式能够分别保存一个帧内预测模式和一个帧间预测模式的率失真代价及其对应的变换模式。
若所述第一残差块为使用帧间预测模式处理后得到的残差块,且此量化系数矩阵为非全零块,则对此残差块进行多核全组合方式的变换,即直接取用第一计算中得到的第一残差块的3种优选变换方式的3个变换系数矩阵,进行量化熵编码,得到3个量化系数矩阵,对3个量化系数矩阵分别进行率失真计算,得到3个对应各变换方式的率失真代价。对所述3个率失真代价进行比较,选择最小的率失真代价及其对应的变换方式进行保存。此最小率失真代价为此残差块的最优率失真代价。
若所述第一残差块为使用帧内预测模式处理后得到的残差块,且此量化系数矩阵为非全零块,并且,在此第一残差块之前,没有同一亮度块的其他帧内预测模式处理后得到的残差块的最小的率失真代价被保存过,则对所述第一残差块使用第二后期处理方式。即对此残差块进行多核全组合方式的变换,直接取用第一计算中得到的第一残差块的3种优选变换方式的3个变换系数矩阵,进行量化熵编码,得到3个量化系数矩阵,对3个量化系数矩阵分别进行率失真计算,得到3个对应各变换方式的率失真代价。对所述3个率失真代价进行比较,选择最小的率失真代价及其对应的变换方式进行保存。此最小率失真代价为此残差块的最优率失真代价。
取此亮度块的第二预测模式计算出的第二残差块进行第一计算,即对所述第二残差块分别进行9种变换的计算,得到与此9种变换方式对应的9个变换系数矩阵。对此9个变换系数矩阵求绝对值和(L1和),得到对应于9种变换方式的9个变换值。设阈值选择为1.15,为一个固定值。选取其中最小的变换值,并结合此阈值,确定最小变换值的阈值范围为此最小变换值乘1.15,选取此阈值范围内的各变换值所对应的各变换方式。
若选取的各变换方式中,有一种或多种索引长度中的变换方式没有涉及,则选择没涉及的各索引长度中的各最小变换值对应的变换方式加入至此前根据阈值范围所选择的各变换值所对应的各变换方式中。
假设9个变换值中,DCT2变换(水平和竖直方向都进行DCT2变换的变换方式)的变换值最小,且其他8个变换值不在阈值范围内,则根据阈值范围所选择的变换值对应的变换方式只有索引长度为2位的DCT2一种变换方式,而索引长度为3的变换方式以及索引长度为4的变换方式没有入选。所以,需要在索引长度为3的4种变换方式中,根据变换值,选择最小变换值对应的1种变换方式增加至选择中;在索引长度为4的4种变换方式中,根据变换值,选择最小变换值对应的1种变换方式增加至选择中。所以,经过第一计算后,对第二残差块选择出的变换方式一共有3种。
对第二残差块进行第二计算,即对第二残差块进行DCT2变换,或者直接取用第一计算中得到的第一残差块的DCT2变换的变换系数矩阵进行量化熵编码,得到量化系数矩阵。
若此第二残差块为使用帧内预测模式处理后得到的残差块,且此第二残差块的DCT2变换得到的变换系数矩阵经过量化熵编码后得到的量化系数矩阵为非全零块,且在第二残差块之前,已经保存了同为帧内预测模式处理后得到的第一残差块的最小失真代价及其对应的变换方式,则对第二残差块的所述量化系数矩阵进行率失真计算,得到对比率失真代价,比较所述对比率失真代价和最小率失真代价(之前所保存的第一残差块的最小率失真代价)。
若所述对比率失真代价与所述最小率失真代价的差值在一定范围内,则对使用此第二残差块在第一计算中选择出来的其他2种变换方式的变换系数矩阵分别进行量化熵编码和率失真计算,得到另外两个率失真代价。
若此2种(一共3种)率失真代价中,有一个变换方式的率失真代价小于第一残差块的最小率失真代价,则认为此预测模式的此变换方式优于之前保存的那种预测模式的最优变换方式,则对新的最小率失真代价及变换方式和预测模式进行更新保存,即删除之前保存的第一残差块的最小率失真代价及其对应的变换方式(排除了前一种预测模式),保存第二残差块的最小率失真代价及其对应的变换方式。此最小率失真代价为此残差块(第二残差块)的最优率失真代价。
若此2种(一共三种)率失真代价中,没有任何一种变换方式的率失真代价小于第一残差块的最小率失真代价,则不对此残差块的任何率失真代价以及变换方式进行保存,并等待下一种预测模式的残差块进入计算。
若所述对比率失真代价(第二残差的DCT2变换的率失真代价)与所述最小率失真代价(之前所保存的第一残差块的最小率失真代价)的差值在一定范围外,则直接跳过此种预测模式,即不对此残差块进行后续任何计算,并等待下一种预测模式的残差块进入计算。
对上述同一个亮度块的6个残差块进行完率失真优化计算(所有的计算和后期处理方式)后,对保存的所有最优率失真代价进行比较,选择最小的率失真代价及其对应的变换方式和残差块(预测模式)作为此亮度块最终的预测模式和变换方式。
根据本申请的实施方式,还提出一种多核全组合方式的变换系统,如图4所示,包括:依次相连接的帧处理模块、预测模块、率失真计算模块、比较模块和编码模块;
所述帧处理模块用于获取视频的帧,对帧进行划分得到编码单元,并将所述编码单元传输至预测模块进行处理;
所述预测模块用于根据帧的类型,确定对编码单元亮度块的预测类型和预测模式,对所述亮度块进行预测计算,得到与此亮度块的各预测模式对应的各残差块;
所述率失真计算模块用于对各所述残差块依次进行率失真优化计算,得到多个最优率失真代价;
所述比较模块用于比较所述各最优率失真代价,选择最小的率失真代价对应的预测模式和变换方式;
所述编码模块用于将所述变换方式对应的索引序号写入编码码流。
本申请的方法中,采用多核全组合的方式,使用多种变换核对残差块的水平和竖直方向分别进行变换,具有适用范围更广,性能更强的特点;通过对各预测模式以及各变换方式进行率失真优化计算(第一计算),选择多个最佳变换方式,在后续计算和处理中直接使用各最佳变换方式以及在第一计算中保存的数据,能够有效减少计算量,提升计算速度,缩短编码时间。并且每个编码单元通过使用少量几个bit的索引规定了水平和竖直方向变换使用变换核的索引表示,节省标识字符长度。通过不同的计算和多种处理方式有效提高了计算速度。通过使用多种变换核对残差块的水平和竖直方向分别进行变换,能够优选的提高一次变换的效果,省略二次变换的过程,减少计算过程和计算量,从而提升整体的计算速度。
以上所述,仅为本申请较佳的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
Claims (10)
1.一种多核全组合方式的变换方法,其特征在于,包括:
获取视频的帧,并对帧进行划分,得到编码单元;
根据帧的类型,确定对编码单元亮度块的预测类型和预测模式;
对所述亮度块进行预测计算,得到与此亮度块的各预测模式对应的各残差块;
对各所述残差块依次进行率失真优化计算,得到多个最优率失真代价;
比较所述各最优率失真代价,选择最小的率失真代价对应的预测模式和变换方式;
将所述变换方式对应的索引写入编码码流。
2.如权利要求1所述的一种多核全组合方式的变换方法,其特征在于,所述索引用于分别标记水平和竖直两个方向上使用的变换核。
3.如权利要求1所述的一种多核全组合方式的变换方法,其特征在于,所述对各所述残差块依次进行率失真优化计算,得到多个最优率失真代价,包括:
对残差块进行第一计算,得到对此残差块的多种最优变换方式;
对残差块进行第二计算,得到此残差块的量化系数矩阵;
判断量化系数矩阵和预测模式,确定后期处理方式并处理,得到最优率失真代价。
4.如权利要求3所述的一种多核全组合方式的变换方法,其特征在于,所述对残差块进行第一计算,得到对此残差块的多种最优变换方式,包括:
对残差块使用不同的变换方式进行变换,得到对应于不同变换方式的各变换系数矩阵;
分别对各变换系数矩阵求绝对值和,得到对应于各变换方式的变换值;
选取所述变换值中最小变换值的一定阈值范围内的所有变换值,根据选取的各变换值确定对应的各变换方式,作为各所述最优变换方式;
所述最优变换方式还包括不同索引长度中的最小变换值所对应的变换方式。
5.如权利要求3所述的一种多核全组合方式的变换方法,其特征在于,所述对残差块进行第二计算,得到此残差块的量化系数矩阵,包括:
对残差块使用DCT2变换,得到变换系数矩阵;
对所述变换系数矩阵进行量化熵编码,得到量化系数矩阵。
6.如权利要求3所述的一种多核全组合方式的变换方法,其特征在于,所述判断量化系数矩阵和预测模式,确定后期处理方式并处理,得到最优率失真代价,包括:
若所述量化系数矩阵为全零块,则对此量化系数矩阵使用第一后期处理方式;
若所述残差块使用的预测模式为帧间预测模式,且所述量化系数矩阵为非全零块,则对此残差块使用第二后期处理方式;
若所述残差块使用的预测模式为帧内预测模式,且所述量化系数矩阵为非全零块,则对此残差块使用第三后期处理方式。
7.如权利要求6所述的一种多核全组合方式的变换方法,其特征在于,所述第一后期处理方式包括:对此量化系数矩阵进行率失真计算,得到此残差块的率失真代价,保存此率失真代价及其对应的变换方式。
8.如权利要求6所述的一种多核全组合方式的变换方法,其特征在于,所述第二后期处理方式包括:
使用此残差块在第一计算中得到各所述最优变换方式的各变换系数矩阵分别进行量化熵编码,得到对应于各所述最优变换方式的各量化系数矩阵;
对所述各量化系数矩阵进行率失真计算,得到各率失真代价;
比较所述各率失真代价,保存最小的率失真代价及其对应的变换方式。
9.如权利要求6所述的一种多核全组合方式的变换方法,其特征在于,所述第三后期处理方式包括:
若在第二后期处理方式中,没有保存过同一亮度块的其他帧内预测模式的最小率失真代价,则对此残差块使用第二后期处理方式;
若在第二后期处理方式中,保存过同一亮度块的其他帧内预测模式的最小率失真代价,则对所述量化系数矩阵进行率失真计算,得到对比率失真代价,若所述对比率失真代价与所述最小率失真代价的差值在一定范围内,则对此对比率失真代价对应的残差块进行第二后期处理方式,比较新保存的帧内预测模式的最小率失真代价与之前保存的帧内预测模式的最小率失真代价,保存并更新较小的最小率失真代价及其对应的变换模式和帧内预测模式;
若在第二后期处理方式中,保存过同一亮度块的其他帧内预测模式的最小率失真代价,则对所述量化系数矩阵进行率失真计算,得到对比率失真代价,若所述对比率失真代价与所述最小率失真代价的差值在一定范围外,则不对此残差块进任何处理。
10.一种多核全组合方式的变换系统,其特征在于,包括:依次相连接的帧处理模块、预测模块、率失真优化计算模块、比较模块和编码模块;
所述帧处理模块用于获取视频的帧,对帧进行划分得到编码单元,并将所述编码单元传输至预测模块进行处理;
所述预测模块用于根据帧的类型,确定对亮度块的预测类型和预测模式,对所述亮度块进行预测计算,得到与此亮度块的各预测模式对应的各残差块;
所述率失真优化计算模块用于对各所述残差块依次进行率失真优化计算,得到多个最优率失真代价;
所述比较模块用于比较所述各最优率失真代价,选择最小的率失真代价对应的预测模式和变换方式;
所述编码模块用于将所述变换方式对应的索引序号写入编码码流。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910036847.8A CN109819250B (zh) | 2019-01-15 | 2019-01-15 | 一种多核全组合方式的变换方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910036847.8A CN109819250B (zh) | 2019-01-15 | 2019-01-15 | 一种多核全组合方式的变换方法和系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109819250A true CN109819250A (zh) | 2019-05-28 |
CN109819250B CN109819250B (zh) | 2020-09-25 |
Family
ID=66604288
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910036847.8A Active CN109819250B (zh) | 2019-01-15 | 2019-01-15 | 一种多核全组合方式的变换方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109819250B (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110636313A (zh) * | 2019-09-18 | 2019-12-31 | 浙江大华技术股份有限公司 | 变换、二次变换矩阵训练方法、编码器及相关装置 |
CN114007080A (zh) * | 2019-12-03 | 2022-02-01 | 杭州海康威视数字技术股份有限公司 | 一种编码、解码方法、装置及其设备 |
CN114339230A (zh) * | 2022-03-03 | 2022-04-12 | 杭州未名信科科技有限公司 | 用于视频编码的变换核选择方法、装置、存储介质及终端 |
WO2022117114A1 (en) * | 2020-12-06 | 2022-06-09 | Zhejiang Dahua Technology Co., Ltd. | Systems and methods for transformation based on an intra block copy (ibc) mode |
CN114827629A (zh) * | 2019-08-23 | 2022-07-29 | 杭州海康威视数字技术股份有限公司 | 编码方法、解码方法、装置及机器可读存储介质 |
CN115118976A (zh) * | 2022-06-22 | 2022-09-27 | 安谋科技(中国)有限公司 | 一种图像编码方法、可读介质及其电子设备 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102045560A (zh) * | 2009-10-23 | 2011-05-04 | 华为技术有限公司 | 一种视频编解码方法及设备 |
US20130016777A1 (en) * | 2011-07-12 | 2013-01-17 | Futurewei Technologies, Inc. | Pixel-Based Intra Prediction for Coding in HEVC |
CN103096053A (zh) * | 2011-11-04 | 2013-05-08 | 华为技术有限公司 | 一种变换模式的编解码方法和装置 |
CN103596004A (zh) * | 2013-11-19 | 2014-02-19 | 北京邮电大学 | Hevc中基于数学统计和分类训练的帧内预测方法及装置 |
CN104067622A (zh) * | 2011-10-18 | 2014-09-24 | 株式会社Kt | 图像编码方法、图像解码方法、图像编码器及图像解码器 |
US20180249179A1 (en) * | 2017-02-28 | 2018-08-30 | Google Inc. | Transform Kernel Selection and Entropy Coding |
WO2019009584A1 (ko) * | 2017-07-04 | 2019-01-10 | 삼성전자 주식회사 | 다중 코어 변환에 의한 비디오 복호화 방법 및 장치, 다중 코어 변환에 의한 비디오 부호화 방법 및 장치 |
-
2019
- 2019-01-15 CN CN201910036847.8A patent/CN109819250B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102045560A (zh) * | 2009-10-23 | 2011-05-04 | 华为技术有限公司 | 一种视频编解码方法及设备 |
US20130016777A1 (en) * | 2011-07-12 | 2013-01-17 | Futurewei Technologies, Inc. | Pixel-Based Intra Prediction for Coding in HEVC |
CN104067622A (zh) * | 2011-10-18 | 2014-09-24 | 株式会社Kt | 图像编码方法、图像解码方法、图像编码器及图像解码器 |
CN103096053A (zh) * | 2011-11-04 | 2013-05-08 | 华为技术有限公司 | 一种变换模式的编解码方法和装置 |
CN103596004A (zh) * | 2013-11-19 | 2014-02-19 | 北京邮电大学 | Hevc中基于数学统计和分类训练的帧内预测方法及装置 |
US20180249179A1 (en) * | 2017-02-28 | 2018-08-30 | Google Inc. | Transform Kernel Selection and Entropy Coding |
CN110268715A (zh) * | 2017-02-28 | 2019-09-20 | 谷歌有限责任公司 | 变换核选择与熵编译 |
WO2019009584A1 (ko) * | 2017-07-04 | 2019-01-10 | 삼성전자 주식회사 | 다중 코어 변환에 의한 비디오 복호화 방법 및 장치, 다중 코어 변환에 의한 비디오 부호화 방법 및 장치 |
Non-Patent Citations (2)
Title |
---|
JUANTING FAN,ET AL.: "Adaptive boundary dependent transform optimization for HEVC", 《2015 PICTURE CODING SYMPOSIUM (PCS)》 * |
毛敏: "帧内视频编码及率失真优化算法研究", 《中国优秀硕士学位论文全文数据库》 * |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114827629A (zh) * | 2019-08-23 | 2022-07-29 | 杭州海康威视数字技术股份有限公司 | 编码方法、解码方法、装置及机器可读存储介质 |
CN114827629B (zh) * | 2019-08-23 | 2024-02-27 | 杭州海康威视数字技术股份有限公司 | 编码方法、解码方法、装置及机器可读存储介质 |
CN110636313A (zh) * | 2019-09-18 | 2019-12-31 | 浙江大华技术股份有限公司 | 变换、二次变换矩阵训练方法、编码器及相关装置 |
CN114007080A (zh) * | 2019-12-03 | 2022-02-01 | 杭州海康威视数字技术股份有限公司 | 一种编码、解码方法、装置及其设备 |
CN114007080B (zh) * | 2019-12-03 | 2022-12-23 | 杭州海康威视数字技术股份有限公司 | 一种编码、解码方法、装置及其设备 |
WO2022117114A1 (en) * | 2020-12-06 | 2022-06-09 | Zhejiang Dahua Technology Co., Ltd. | Systems and methods for transformation based on an intra block copy (ibc) mode |
CN114339230A (zh) * | 2022-03-03 | 2022-04-12 | 杭州未名信科科技有限公司 | 用于视频编码的变换核选择方法、装置、存储介质及终端 |
CN115118976A (zh) * | 2022-06-22 | 2022-09-27 | 安谋科技(中国)有限公司 | 一种图像编码方法、可读介质及其电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN109819250B (zh) | 2020-09-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109819250A (zh) | 一种多核全组合方式的变换方法和系统 | |
CN103024383B (zh) | 一种基于hevc框架的帧内无损压缩编码方法 | |
RU2632170C2 (ru) | Устройство кодирования движущихся изображений, устройство декодирования движущихся изображений, способ кодирования движущихся изображений и способ декодирования движущихся изображений | |
JP5065404B2 (ja) | イントラ符号化選択によるビデオ符号化 | |
WO2018010492A1 (zh) | 视频编码中帧内预测模式的快速决策方法 | |
CN104883578B (zh) | 对帧内预测模式进行解码的方法 | |
CN103650496B (zh) | 用于在hevc中编码的基于像素的帧内预测 | |
CN101971631B (zh) | 自适应帧内模式选择 | |
CN1809161B (zh) | 对编码视频数据选择编码类型和预测模式 | |
CN108184115A (zh) | Hevc帧内cu划分和pu预测模式选择方法及系统 | |
CN106961606A (zh) | 基于纹理划分特征的hevc帧内编码模式选择方法 | |
CN104796705B (zh) | 一种基于ssim的hevc视频编码率失真优化与码率控制算法 | |
CN103517069A (zh) | 一种基于纹理分析的hevc帧内预测快速模式选择方法 | |
CN102932642B (zh) | 一种帧间编码快速模式选择方法 | |
KR20190072450A (ko) | 분산 처리 환경에서의 학습 파라미터의 압축 및 전송을 제공하는 방법 및 장치 | |
CN106028047B (zh) | 一种基于Hadamard变换的帧内预测的快速模式选择和PU划分的方法 | |
CN103597835B (zh) | 影像编码方法、装置、影像解码方法、装置 | |
CN103414895A (zh) | 一种适用于hevc标准的编码器帧内预测装置及方法 | |
CN108712647A (zh) | 一种用于hevc的cu划分方法 | |
CN110024386A (zh) | 用于对图像进行编码/解码的方法和设备、用于存储比特流的记录介质 | |
Santamaria et al. | Estimation of rate control parameters for video coding using CNN | |
CN104333755B (zh) | HEVC中B帧的基于SKIP/Merge RD Cost的CU提前终止方法 | |
Brand et al. | Intra frame prediction for video coding using a conditional autoencoder approach | |
CN103596003A (zh) | 高性能视频编码的帧间预测快速模式选择方法 | |
CN114040211A (zh) | 一种基于avs3的帧内预测快速决策方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |