开发者社区> jerry.yin> 正文

【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必须都采用融合相邻块(左或上)的参数。否则如果亮度和色度没同时采用某相邻块的参数,则是非融合模式。

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
HEVC算法和体系结构:预测编码之帧内预测
<p><br></p> <h1 style="text-align:center">预测编码之帧内预测(Intra-Picture Prediction)</h1> <p><br></p> <p>        预测编码(Prediction Coding)是视频编码的核心技术之一,指利用已编码的一个或几个样本值,根据某种模型或方法,对当前的样本值进行预测,并对样本真实值和预测值之间
5695 0
HEVC算法和体系结构:预测编码之帧间预测
<p style="text-align:center"><br></p> <h1 style="text-align:center">预测编码之帧间预测(Inter-Picture Prediction)</h1> <p> </p> <p>        帧间预测是指利用视频时间域相关性,使用临近已编码图像像素预测当前图像的像素,以达到有效去除视频时域冗余的目的。由于视频序列通常包
2923 0
【HEVC学习与研究】44、HEVC量化系数的解析——反量化过程
【同其他模块一样,HEVC标准文档中只实现了反量化过程,量化过程交由编码器实现。这样可使得编码器采用如自适应量化AQ、率失真优化量化RDOQ等更优的量化方法。
1953 0
【HEVC学习与研究】43、HEVC变换编码的实现
【变换和量化是整个视频编码技术系列中理论性和研究性较强的一部分,本文暂时不去研究变换的原理、推导过程等,只是调试一下在参考代码中对预测残差进行变换的实现过程。
1441 0
【HEVC学习与研究】41、HEVC帧内编码的原理和实现(中)
3、像素块的帧内预测 为了有效地预测多种不同种类的内容,HEVC支持多种不同的预测方法。角度预测可以模拟多种不同方向的结构,而平面和DC模式适用于平滑和渐变区域。
1108 0
【HEVC学习与研究】39、HEVC帧内编码的原理和实现(上)
【前面N篇博文都讲了一些HEVC帧内预测的代码结构和简单的方法,但是尚未对整体的算法和实现做一个比较完整的描述。本篇借助参考文献《High Efficiency Video Coding (HEVC) -- Algorithms and Architectures》的相关章节的阅读笔记,对HEVC的帧内预测算法做一个比较完整的阐述。
1123 0
【HEVC学习与研究】36、对帧内预测参考数据进行滤波处理
在帧内预测的过程中,获取临近的Prediction Unit的边缘数据作为当前PU的参考数据。数据获取完成后,并不一定会直接使用这些数据进行预测,而可能会先将这些预测数据进行一次滤波操作。
854 0
【HEVC学习与研究】35、帧内预测参考数据的获取和滤波处理
帧内预测的参考像素值的获取在标准文档的8.4.4.2.2中指明。 举例说明,当前demo中,我们用来单步调试的第一个CU为64×64像素大小,那么参考像素由两部分组成,一部分包含2×64+1=129个,另一部分包含2×64=128个像素。
872 0
【HEVC学习与研究】33、编码一个CU(帧内部分)2:帧内预测各种模式的实现
HEVC中一共定义了35中帧内编码预测模式,编号分别以0-34定义。其中模式0定义为平面模式(INTRA_PLANAR),模式1定义为均值模式(INTRA_DC),模式2~34定义为角度预测模式(INTRA_ANGULAR2~INTRA_ANGULAR34),分别代表了不同的角度。
792 0
+关注
jerry.yin
毕业于上海大学通信与信息工程学院,从事流媒体和视频编解码的研究与开发工作; 研究领域包括视频编解码标准、视频处理和流媒体技术、移动互联网技术等。
文章
问答
文章排行榜
最热
最新
相关电子书
更多
基于神经网络的语言合成
立即下载
深度学习论文实现:空间变换网络-第一部分
立即下载
十亿级视频播放技术优化揭秘
立即下载