![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
HM
文章平均质量分 92
失去的都是人生
天道酬勤
展开
-
HEVC中CU、TU、PU划分和扫描方式简析
作者:66(转载请务必注明出处)在进一步看代码前,先了解一下图像划分方式:HEVC中,一帧图像分为多个slice,每个slice进行独立编解码。每个slice分为多个树形编码单元CTU,一个CTU分为一个亮度CTB和两个色度CTB,CTB大小有16、32、64(CTU同)。进一步再划分为CU编码单元、PU预测单元、TU变换单元,使得编码、预测、变换分离,处理的时候更灵活。它们的关系原创 2018-01-19 17:17:57 · 6443 阅读 · 1 评论 -
去方块滤波
推荐NB_vol关于量化部分的解析,代码思路非常清晰:http://blog.csdn.net/nb_vol_1/article/details/51191935自己又梳理了一遍,如下:环路后处理--去方块滤波: 环路后处理包括去方块滤波和样点自适应补偿。去方块滤波主要消除方块效应,SAO则是消除振铃效应。HEVC中,图形中各个块的量化变换独立进行,另外,运动补偿预测中,相邻开的预测值来自于不同图...原创 2018-03-03 15:13:35 · 1543 阅读 · 0 评论 -
量化代码解析
量化部分推荐博主:futl 的http://blog.csdn.net/ftlisdcr/article/details/52992867量化:残差信号经离散变换后往往具有很大的动态范围,因此,变换系数进行量化可以有效地减少信号取值空间,进而获得更好的压缩效果。也是视频编码产生失真的根本原因。量化器分标量量化器(Scalar Quantizer)和矢量量化器(Vector Quantizer),H...原创 2018-03-02 09:33:16 · 2976 阅读 · 3 评论 -
纠正一些之前的错误
推荐两个HEVC文章比较好的博主:NB_vol http://blog.csdn.net/nb_vol_1岳麓吹雪:http://blog.csdn.net/lin453701006/article/category/6449548在帧间预测时留下的一些疑问。1. 运动估计过程中的最初MV因为在Merge模式中没有MVD,不需要计算真正的MV,因此运动估计用的是AMVP给出的候选MV。MV类中是两...原创 2018-03-02 09:19:10 · 285 阅读 · 0 评论 -
帧间预测--运动估计代码分析
(转载请注明出处)HM10.0给出了两种预测算法:全搜索和TZSearch。其中TZSearch算法步骤入下:①由AMVP确定搜索起点即若干候选MV,选一个RDCost最小的作为起点。②以菱形模板或正方形模板进行搜索。③若上一步得到的最优步长为1,则再补充搜索最近的两个点。 若步长不是1,不用再搜索了。 若步长太长(大于某阈值),则以最优点为中心做全搜索。原创 2018-02-07 14:45:20 · 2401 阅读 · 1 评论 -
HEVC变换编码实现代码详解
作者:66有关变换模块 先推荐一个特别好的博主,可以参考他分析的HEVC,收获颇丰,感谢前辈。 推荐链接:http://blog.csdn.net/HEVC_CJL/article/category/1283611/3 经预测后的残差数据,在空域上是存在大量冗余的,包含较多的平坦区域和内容变化缓慢的区域,相邻的相近像素差距很小,经适当的变换,可以将空域的分散分布原创 2018-01-25 19:42:46 · 2379 阅读 · 4 评论 -
HEVC亮度分量帧内预测模式代码详解
作者:66(转载请注明出处)从我自身的学习历程来看,建议大家先把理论扎实了再去理解代码,代码里也有注释,与理论的地方一对应加上一点C编程基础很容易就能理解。我们先了解相关理论,此处可参考这一篇博文,基本和他推荐的书上大同小异,链接:http://blog.csdn.net/linpengbin/article/details/44158331,个别图片不好理解,但配文字足够了。按从原创 2018-01-24 18:19:26 · 3445 阅读 · 1 评论 -
HEVC帧内预测参考相邻帧代码解析
作者:66(转载请注明出处)参考链接:http://blog.csdn.net/hevc_cjl/article/details/8200793亮度分量的帧内预测涉及到的模块比较多,CU->PU的划分,参考像素的填充,哈达玛变换计算STAD(代替率失真),参考预测模式的选择,最佳模式的选择等。先了解相关的知识:1.CU->PU的划分,在帧内预测中,2Nx2N的CU有两种PU划分方式原创 2018-01-22 12:00:37 · 703 阅读 · 0 评论 -
HEVC帧内预测参考像素检测获取和滤波
作者:66(转载请注明出处)还是参考HEVC_CJL的博客,理论都清楚,跟着他的进度看代码,感谢前辈的分享,他的代码里没有强滤波过程,在此我稍加补充。原文链接:http://blog.csdn.net/hevc_cjl/article/category/1283611分析initAdiPattern函数,其中调用了之前的fillReferenceSample函数。initAdi原创 2018-01-19 18:15:33 · 1486 阅读 · 0 评论 -
HEVC帧内预测之参考像素的填充代码详析(一)
作者:66(转载请注明出处)fillReferenceSamples( )//填充参考像素值帧内预测用到的函数大概有十几个,先来看fillRerenceSamples( )。iNumIntraNeighbor标识参考像素可用块数,以iUnitSize块长为单位。分三种情况,1.像素全部可用,往相应位置填;2.像素部分可用,不可用的填默认值;3.像素不可用,全部填默认原创 2018-01-18 13:29:38 · 1293 阅读 · 0 评论 -
HEVC参考软件HM的使用
作者:66(转载请务必注明出处)学习HEVC的相关知识已经快一个月了,以前从来没有记笔记的习惯,现在自学,在理解和记忆上都比以前要迟钝许多,养成定期总结是非常有必要的。先把需要的工具准备好,HEVC(High Efficiency Video Coding高效视频编码标准)。由国际电信联盟ITU-T与国际标准化组织ISO/IEC于2013年合作共同发布,其相应的参考软件HM已经由0.1原创 2018-01-16 20:24:55 · 5451 阅读 · 1 评论 -
熵编码
熵编码部分看的:http://blog.csdn.net/nb_vol_1/article/details/71374859,因博主禁止转载,请点链接去看原博主文章,写的很清晰明了,学习后整理内容如下,方便以后查看。熵编码:消息发生的概率越小,携带的信息量就越大。确定的消息没有信息量,因为你已经知道要发生什么了。信息量定义:由以上性质可知,序列中依赖性越强,不确定性就越弱。二进制编码:变长编码给大...翻译 2018-03-14 11:59:13 · 1892 阅读 · 0 评论