【HEVC学习与研究】45、HEVC的自适应采样点补偿SAO

简介: 1、SAO的意义 在图像中像素值剧烈变化的边界区,经过编码-解码重建之后通常会出现波纹状的失真现象,这种失真称作振铃效应。振铃效应产生的根本原因在于边界区高频分量在编码过程中丢失。

1、SAO的意义


在图像中像素值剧烈变化的边界区,经过编码-解码重建之后通常会出现波纹状的失真现象,这种失真称作振铃效应。振铃效应产生的根本原因在于边界区高频分量在编码过程中丢失。为了减少高频分量的损失,同时不降低编码的效率,HEVC引入了SAO技术,从像素域入手对振铃区域进行补偿。


2、基本原理


SAO对重建图像在deblocking之后操作,操作对象为重建完成的一帧,以一个CTB为一个基本单位。SAO所采用的方式主要有三类:边界补偿(BO)、边带补偿(EO)和参数融合(Merge)。


(1)边带补偿:

带状补偿将像素值强度等级划分为若干个条带,每个条带内的像素拥有相同的补偿值。进行补偿时根据重构像素点所处的条带,选择相应的带状补偿值进行补偿。


(2)边界补偿:

边界补偿通过比较当前像素和相邻像素的大小对当前像素分类。相邻像素的位置分为四种模式:水平、垂直、左上、右上:



针对这四种方向,在任意模式下当前像素c按照与a和b的关系划分为以下5类之一:

分类 条件
1 c<a && c<b
2 c<a或b && c==b或a
3 c>a或b && c==b或a
4 c>a && c>b
0 其他

在以上5种情况中,分类5的情况不做补偿,其他4中分类均对像素c进行补偿。在一个CTB中补充分类的像素可以采用不同的补偿值,但相同分类的像素必须采用相同的补偿值。


(3)参数融合

参数融合模式表示某一个CTB,其SAO的参数可以直接使用某个相邻CTB的参数,只需要指定是哪个相邻块(左方还是上方)。

需注意,在参数融合模式下,一个CTB的亮度CTB和色度CTB必须都采用融合相邻块(左或上)的参数。否则如果亮度和色度没同时采用某相邻块的参数,则是非融合模式。

目录
相关文章
|
2月前
|
机器学习/深度学习
YOLOv5改进 | 注意力篇 | ACmix自注意力与卷积混合模型(提高FPS+检测效率)
YOLOv5改进 | 注意力篇 | ACmix自注意力与卷积混合模型(提高FPS+检测效率)
45 0
|
存储 机器学习/深度学习 传感器
【语音处理】基于自适应差分脉冲编码调制(ADPCM)的实现研究附Matlab代码
【语音处理】基于自适应差分脉冲编码调制(ADPCM)的实现研究附Matlab代码
|
编解码 索引
h.264直接预测
直接预测是B帧上一种独有的预测方式,其中直接预测又分为两种模式: 时域直接模式(temporal direct)、空域直接模式(spatial direct)。 在分析这两种模式之前,有一个前提概念需要了解:共同位置4x4子宏块分割块(co-located 4x4 sub-macroblock partitions),下面简称为co-located。
726 0
|
编解码
【H.264/AVC视频编解码技术详解】十五、H.264的变换编码(二):H.264整数变换和量化的实现
《H.264/AVC视频编解码技术详解》视频教程已经在“CSDN学院”上线,视频中详述了H.264的背景、标准协议和实现,并通过一个实战工程的形式对H.
2237 0
|
编解码 算法 索引
【H.264/AVC视频编解码技术详解】十三、熵编码算法(4):H.264使用CAVLC解析宏块的残差数据
《H.264/AVC视频编解码技术详解》视频教程已经在“CSDN学院”上线,视频中详述了H.264的背景、标准协议和实现,并通过一个实战工程的形式对H.
1747 0
|
编解码 算法
【H.264/AVC视频编解码技术详解】十三、熵编码算法(3):CAVLC原理
《H.264/AVC视频编解码技术详解》视频教程已经在“CSDN学院”上线,视频中详述了H.264的背景、标准协议和实现,并通过一个实战工程的形式对H.
1578 0
|
编解码 算法
【H.264/AVC视频编解码技术详解】八、 熵编码算法(2):H.264中的熵编码基本方法、指数哥伦布编码
《H.264/AVC视频编解码技术详解》视频教程已经在“CSDN学院”上线,视频中详述了H.264的背景、标准协议和实现,并通过一个实战工程的形式对H.
1507 0
|
编解码 算法 机器学习/深度学习
HEVC算法和体系结构:预测编码之帧内预测
<p><br></p> <h1 style="text-align:center">预测编码之帧内预测(Intra-Picture Prediction)</h1> <p><br></p> <p>        预测编码(Prediction Coding)是视频编码的核心技术之一,指利用已编码的一个或几个样本值,根据某种模型或方法,对当前的样本值进行预测,并对样本真实值和预测值之间
5797 0