【笔记】H.265/HEVC 视频编码(五)——变换编码

图像变换编码是将空间域中像素形式描述的图像转换至变换域,以变换系数的形式加以表示,可使图像能量在空间域的分散分布转为在变换域的相对集中分布,已达到去除空间冗余的目的。H.264/AVC首次使用了整数DCT。H.265/HEVC沿用了整数DCT并进行了推广,还引入了DST。

一、离散余弦变换DCT

1、DCT原理

数学里共存在八种类型的DCT,在图像、音视频编码等多媒体信号处理领域,使用的是Ⅱ类DCT,其逆变换对应于Ⅲ类DCT。Ⅱ类DCT的一维形式如下:
在这里插入图片描述

其中,在这里插入图片描述

在图像、视频编码上主要使用二维DCT。
在这里插入图片描述

其中,在这里插入图片描述

其逆变换为在这里插入图片描述

DCT可以理解为(以二维88为例):将任一88像素块表示为64个基图像的加权和,其权值为对应位置的DCT系数。对于灰度值变化缓慢的像素块来说,经过DCT变换后绝大部分能量集中于左上角的低频系数中;若像素块包含较多细节纹理信息,则较多能量分散在高频区域。利用人眼对图像高频细节相对不敏感,可以对高能量的低频系数进行较为精细的量化和处理,对低能量的高频系数进行粗略的量化或掩盖,从而更好地压缩图像。

2、整数DCT

二维DCT可以分解为两个一维DCT,即先对像素块进行行(或列)做一维DCT,再对列(或行)做一维DCT。可将一维DCT写成矩阵相乘的形式:Y=AX,Y表示变换后的DCT系数矩阵,A表示变换矩阵,其中(4*4)
在这里插入图片描述

经过修正后矩阵A可写成
在这里插入图片描述

一维4*4整数DCT可写成以下矩阵形式:
在这里插入图片描述

同理,二维如下:在这里插入图片描述

整数DCT搜有的操作都是针对整型变量,避免了精度损失,也能够消除编解码器中方便换不匹配的问题。

3、H.265/HEVC中的整数DCT

H.265/HEVC使用了4种不同尺寸的整数DCT,为44、88、1616和3232。H.265/HEVC的4*4整数DCT公式为:
在这里插入图片描述

H.265/HEVC在整数DCT方面的改进主要变现在以下方面:
①采用了更多、更大尺寸的变换。
②H.265/HEVC中的整数DCT更接近于传统的浮点DCT。
③H.265/HEVC不同大小的变换形式较为统一。

二、离散正弦变换

与DCT相同,数学上共存在8种DST,H.265/HEVC使用的是ⅶ类DST,其二维形式为:
在这里插入图片描述

其中在这里插入图片描述

逆变换为:在这里插入图片描述

2、H.265/HEVC中的整数DST

H.265/HEVC标准规定,在帧内44模式亮度分量残差编码中使用44整数DST,而在帧内其他模式、帧间所有模式以及所有色差分量的残差编码中均使用整数DCT。一维变换写成:Y=BX,
在这里插入图片描述

经过处理,最终H.265/HEVC的4*4整数DST公式为:
在这里插入图片描述

三、哈达玛变换

沃尔什——哈达玛变换是广义傅里叶变换的一种,其变换矩阵Hm是一个2m*2m的矩阵。其递推定义为:
在这里插入图片描述

Hadamard矩阵由以下性质:
①矩阵元素都为±1,且特征值也包含±1。
②矩阵为正交、对称矩阵,hadamard变换为正交变换。
③矩阵奇数行(列)偶对称,偶数行(列)奇对称。
④hadamard变换满足帕斯瓦尔定力。
在H.264/AVC中,hadamard变换用于亮度分量帧内16*16模式DC系数以及色度分量DC系数的变换,进一步去除相关性。但在H.265/HEVC中未使用hadamard变换。
在图像、视频处理领域,hadamard变换常用于计算残差信号的SATD。SATD在一定程度上反映残差在频域中的大小,性能接近于DCT,且复杂度远小于DCT,因此SATD广泛应用与视频编码中的快速模式选择。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值