<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[Dillon2015的博客]]></title><description><![CDATA[记录流年的落叶]]></description><link>https://blog.youkuaiyun.com/Dillon2015</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; Dillon2015]]></copyright><item><title><![CDATA[基于神经网络的视频编码NNVC（1）：帧内预测]]></title><link>https://blog.youkuaiyun.com/Dillon2015/article/details/145306559</link><guid>https://blog.youkuaiyun.com/Dillon2015/article/details/145306559</guid><author>Dillon2015</author><pubDate>Fri, 24 Jan 2025 22:19:50 +0800</pubDate><description><![CDATA[在H.266/VVC发布后，基于传统编码框架提升压缩率越来越难，随着深度学习的发展，研究人员开始尝试将神经网络引入编码器。为此，JVET工作组在2020年成立AHG11小组来专门进行基于神经网络的视频编码的研究。为了方便研究，工作组基于VTM-11.0开发了参考软件NNVC，包含了编码器、解码器、训练、推理等相关代码。目前NNVC中集成了的神经网络相关的模块主要是loop filter、帧内预测、超分辨率等。]]></description><category></category></item><item><title><![CDATA[AV1帧间预测（二）：运动补偿]]></title><link>https://blog.youkuaiyun.com/Dillon2015/article/details/140809685</link><guid>https://blog.youkuaiyun.com/Dillon2015/article/details/140809685</guid><author>Dillon2015</author><pubDate>Tue, 30 Jul 2024 23:50:27 +0800</pubDate><description><![CDATA[仿射运动只对8x8及以上的块才能使用，对于大于8x8的块首先将其划分为8x8子块，对每个8x8子块的中心坐标通过平移运动因子(h13,h23)计算在参考图像中对应的坐标，如同4中当前块中心(x0,y0)在参考图像中对应的坐标为(x1,y1)，块中其他像素(x,y)以(x1,y1)为中心进行旋转和缩放得到仿射变换后的坐标(x',y')，对于8x8的块插值，首先利用15x15区域内的像素使用水平插值生成15x8的​中间结果，然后在中间结果上使用垂直插值生成8x8块。三种滤波器对应的半像素插值的滤波系数如下，]]></description><category></category></item><item><title><![CDATA[AV1：帧间预测（一）参考帧管理]]></title><link>https://blog.youkuaiyun.com/Dillon2015/article/details/139784557</link><guid>https://blog.youkuaiyun.com/Dillon2015/article/details/139784557</guid><author>Dillon2015</author><pubDate>Tue, 18 Jun 2024 21:55:10 +0800</pubDate><description><![CDATA[那ref_frame_idx[LAST_FRAME]=5 就表示DPB 下标为5的位置上存在的帧(ref_frame_map[5])就是当前帧的LAST_FRAME。ref_frame_idx的值有2种传输方式，当frame_refs_short_signaling=0的时候，所有的参考值都是显示传递的，也就是直接通过码流读取到的，当frame_refs_short_signaling=1的时候，只有last_frame_idx和gold_fame_idx是显示传递的，其他参考值则是通过计算得到的。]]></description><category></category></item><item><title><![CDATA[AV1：帧内预测（二）]]></title><link>https://blog.youkuaiyun.com/Dillon2015/article/details/137726751</link><guid>https://blog.youkuaiyun.com/Dillon2015/article/details/137726751</guid><author>Dillon2015</author><pubDate>Tue, 16 Apr 2024 21:43:11 +0800</pubDate><description><![CDATA[其中blkWh =w+h，d是角度差值，如果pAngle90且haveLeft=1，d=abs(pAngle-180)。2 * h : h ) - 1 )防止超出图像下边界。如果上方和左侧相邻像素都有效，AboveRow[ -1 ]=CurrFrame[ plane ][ y-1 ][ x-1 ]。否则，如果上方相邻像素有效AboveRow[ -1 ]=CurrFrame[ plane ][ y-1 ][ x ]。]]></description><category></category></item><item><title><![CDATA[AV1：帧内预测（一）]]></title><link>https://blog.youkuaiyun.com/Dillon2015/article/details/136857523</link><guid>https://blog.youkuaiyun.com/Dillon2015/article/details/136857523</guid><author>Dillon2015</author><pubDate>Tue, 19 Mar 2024 22:28:38 +0800</pubDate><description><![CDATA[CfL过程如图4，首先对于420或422视频格式需要将重建的亮度分量下采样到和色度同样的大小，然后需要去除亮度中的DC信息只保留AC信息，其中DC信息即亮度像素的均值，将亮度重建值减去它们的均值即可得到对应的AC信息。对于RIP模式，如图3(a)它首先将块划分为互不重叠的4x2块，然后依次计算每个4x2块的预测值，当前4x2块的预测值可用作其他4x2块做参考。RIP是AV1中新提出的帧内预测模式，它的预测不仅利用了当前块相邻行/列的信息，还利用了块内部的像素信息。：包含U和V的alpha的符号信息。]]></description><category></category></item><item><title><![CDATA[AV1：编码块划分]]></title><link>https://blog.youkuaiyun.com/Dillon2015/article/details/136599487</link><guid>https://blog.youkuaiyun.com/Dillon2015/article/details/136599487</guid><author>Dillon2015</author><pubDate>Tue, 12 Mar 2024 22:42:49 +0800</pubDate><description><![CDATA[除PARTITION_NONE外，AV1支持的9种划分模式具体如图2，可以分为三类，第一类4子块划分包括PARTITION_SPLIT, PARTITION_VERT_4, PARTITION_HORZ_4，第二类3子块划分（T-Shape）包括PARTITION_HORZ_A, PARTITION_HORZ_B, PARTITION_VERT_A, PARTITION_HORZ_B ，第三类2子块划分包括PARTITION_HORZ, PARTITION_VERT。AV1支持10种划分模式，]]></description><category></category></item><item><title><![CDATA[DCC2023：解码端帧内色度模式生成]]></title><link>https://blog.youkuaiyun.com/Dillon2015/article/details/135143235</link><guid>https://blog.youkuaiyun.com/Dillon2015/article/details/135143235</guid><author>Dillon2015</author><pubDate>Tue, 16 Jan 2024 21:27:09 +0800</pubDate><description><![CDATA[所以色度分量能使用的角度模式只能来自DM或默认模式之一，使得色度不能像亮度一样灵活的选择最合适的预测角度。VVC支持67种帧内预测模式（DC模式、Planar模式和65种角度模式），如果对每个CU的帧内模式编码的话会消耗大量比特，因此ECM中提出了基于梯度的解码端亮度帧内模式生成（Decoder-side Intra Mode Dervation，使用DIMD时需要使用当前块相邻的亮度像素生成2个角度模式，然后根据2个角度模式和planar模式分别生成预测块，最后将3个预测块加权得到最终的亮度预测块。]]></description><category></category></item><item><title><![CDATA[DCC2023:基于梯度线性模型的帧内色度预测]]></title><link>https://blog.youkuaiyun.com/Dillon2015/article/details/135139693</link><guid>https://blog.youkuaiyun.com/Dillon2015/article/details/135139693</guid><author>Dillon2015</author><pubDate>Thu, 21 Dec 2023 20:29:09 +0800</pubDate><description><![CDATA[对于YUV420格式的视频，需要先将亮度分量使用低通滤波器下采样到和色度分量同样的分辨率，然后使用线性模型计算色度的预测值。表1是2-parmeter GLM的实验结果，表2是3-parmeter GLM的实验结果，对比表1和表2可以发现3-parmeter GLM在屏幕内容上表现更好。CCLM计算模型参数使用1行/列重建像素，为了增加模型的鲁棒性，3-parmeter GLM在计算模型参数时使用6行/列重建像素。2参数GLM和CCLM的结构一样，唯一的区别是使用的下采样滤波器不同。]]></description><category></category></item><item><title><![CDATA[AVS3：双向梯度修正BGC]]></title><link>https://blog.youkuaiyun.com/Dillon2015/article/details/133386044</link><guid>https://blog.youkuaiyun.com/Dillon2015/article/details/133386044</guid><author>Dillon2015</author><pubDate>Tue, 07 Nov 2023 22:53:29 +0800</pubDate><description><![CDATA[其中，BigFlag和BigIdx为码流中传输的两个语法元素。BigFlag表示是否进行修正，BigIdx表示修正的方向，k表示修正强度，固定为3。如果当前CU为skip或direct模式，则BigFlag和BigIdx与其他运动信息一起从相邻块中获取或者从历史信息运动矢量列表中获取，不需要在码流中传输。双向梯度修正（Bi-directional Gradient Correction，BGC）是利用双向参考块间的差值对预测值进行修正的技术。（2）仅对像素数大于等于256的CU使用；]]></description><category></category></item><item><title><![CDATA[AVS3：双向光流BIO]]></title><link>https://blog.youkuaiyun.com/Dillon2015/article/details/133385351</link><guid>https://blog.youkuaiyun.com/Dillon2015/article/details/133385351</guid><author>Dillon2015</author><pubDate>Tue, 24 Oct 2023 21:40:20 +0800</pubDate><description><![CDATA[为了降低复杂度，认为每个簇（cluster）内所有像素有相同的运动矢量，而使用比簇更大的窗（window）可以提高计算得到的运动矢量的准确度。在BIO中，簇的尺寸为4x4，窗的尺寸是6x6,即4x4的簇的运动矢量 是根据以簇为中心窗进行计算得到的。传统的双向预测对两个已重建的块进行加权平均得到当前块的预测值，其中两个已编码的块一个来自于前向参考帧，另一个来自于后向参考帧。通过补偿小的像素区域的位移，BIO可以使用更大的块来编码从而节省码率，达到像素级预测的效果。前向参考帧和后向参考帧分别在当前帧的两侧。]]></description><category></category></item><item><title><![CDATA[AVS3：DMVR]]></title><link>https://blog.youkuaiyun.com/Dillon2015/article/details/133380249</link><guid>https://blog.youkuaiyun.com/Dillon2015/article/details/133380249</guid><author>Dillon2015</author><pubDate>Tue, 10 Oct 2023 22:31:58 +0800</pubDate><description><![CDATA[在双向预测中根据mv0和mv1分别从L0和L1的参考帧中获取预测块，但是需要拷贝的预测块尺寸为(W+7)*(H+7)作为搜索区域，其中W和H分别是块的宽和高。亚像素位置的计算使用整数位置最优位置、其左侧、其右侧、其上方、其下方共五处的模板匹配失真值，估计整数位置最优位置附近的二次失真平面，计算得到失真平面中失真最小的位置作为亚像素位置。对于每个子块，以初始mv0和mv1所对应的位置为中心，开始寻找周围[-2，2]范围内21个位置中前向和后向预测块之间SAD最小的位置。当前块为双向预测块；]]></description><category></category></item><item><title><![CDATA[AVS3变换：PBT、ST和SBT]]></title><link>https://blog.youkuaiyun.com/Dillon2015/article/details/132570157</link><guid>https://blog.youkuaiyun.com/Dillon2015/article/details/132570157</guid><author>Dillon2015</author><pubDate>Tue, 29 Aug 2023 21:05:41 +0800</pubDate><description><![CDATA[AVS3中非0残差子块的大小和位置有8种选择（在码流中传输这些信息），非0残差子块的变换按照子块的位置自适应选择DCT8/DST7变换作为水平变换和垂直变换。每个子块使用不同的变换类型，下表是每个子块对应的水平和垂直变换，1) SBT-V-1型：子块的宽为残差块的宽的1/2，高为残差块的高。2) SBT-V-2型：子块的宽为残差块的宽的1/4，高为残差块的高。3) SBT-H-1型：子块的高为残差块的高的1/2，宽为残差块的宽。4) SBT-H-2型：子块的高为残差块的高的1/4，宽为残差块的宽。]]></description><category></category></item><item><title><![CDATA[AVS3：跨多通道预测PMC]]></title><link>https://blog.youkuaiyun.com/Dillon2015/article/details/132071812</link><guid>https://blog.youkuaiyun.com/Dillon2015/article/details/132071812</guid><author>Dillon2015</author><pubDate>Tue, 08 Aug 2023 22:00:11 +0800</pubDate><description><![CDATA[跨通道预测技术用于去除不同通道间的冗余信息，TSCPM可以去除Y-Cb、Y-Cr通道间的冗余，然而却忽略了Cb-Cr间的冗余，而Cb-Cr间有时却有很强的相关性，因此提出了PMC（Preiction with Multicross Component），PMC利用Y和Cb来预测Cr。首先，图像头传输一个标志位，如果图像头标志位等于0，那么本图像的k为1或2；然后每个使用PMC模式的CU再传输一个标志位，从本图像的两个k值中确定一个。PMC中Cb的预测和TSCPM中一样，Cr的预测需要使用Y和Cb，如图2。]]></description><category></category></item><item><title><![CDATA[AVS3：角度加权预测AWP]]></title><link>https://blog.youkuaiyun.com/Dillon2015/article/details/131483624</link><guid>https://blog.youkuaiyun.com/Dillon2015/article/details/131483624</guid><author>Dillon2015</author><pubDate>Tue, 04 Jul 2023 23:39:13 +0800</pubDate><description><![CDATA[最终预测块由2个预测块加权得到，其中Fp(i,j)是坐标(i,j)处的最终预测值，M(i,j)第一个预测块在坐标(i,j)处的预测值，N(i,j)第二个预测块在坐标(i,j)处的预测值，Pw(i,j)是坐标(i,j)处的权重值。角度加权模式支持的最小块尺寸为8，最大块尺寸为64，共支持8种角度，这8种角度的斜率绝对值共五种，分别是{水平，垂直，1，2，1/2}，每个角度支持7种参考权重配置，因此对于每个块而言，角度加权模式的模式数共有56种模式。AWP共支持8种角度，如图4，这8种角度的斜率绝对值共五种，]]></description><category></category></item><item><title><![CDATA[AVS3：跨分量预测TSCPM]]></title><link>https://blog.youkuaiyun.com/Dillon2015/article/details/131076925</link><guid>https://blog.youkuaiyun.com/Dillon2015/article/details/131076925</guid><author>Dillon2015</author><pubDate>Tue, 06 Jun 2023 21:53:17 +0800</pubDate><description><![CDATA[1. 如果当前块的正上侧和正左侧像素均可用，则2个像素点从上侧选择，另外2个像素点从左侧选择(0,-1),(W-max(1,r),-1),(-1,0),(-1,H-max(1,r))。H、W是宽高，r是长宽比。AVS3的TSCPM仅用于intra模式中，类似于VVC中的CCLM。3. 如果当前块只有左侧像素可用，则4个像素点均从正左侧选择，选择的位置为高度的：0/4，1/4，2/4，3/4。2. 如果当前块只有上侧可用，则4个像素点均从正上侧选择，选择的位置宽度为：0/4，1/4，2/4，3/4。]]></description><category></category></item><item><title><![CDATA[视频编码测试平台CodecWar]]></title><link>https://blog.youkuaiyun.com/Dillon2015/article/details/130715134</link><guid>https://blog.youkuaiyun.com/Dillon2015/article/details/130715134</guid><author>Dillon2015</author><pubDate>Tue, 16 May 2023 22:07:16 +0800</pubDate><description><![CDATA[​在视频编码的研究和开发中，我们经常需要对编码器的性能进行比较，一般的做法是构建一个数据集，然后将两个编码器在同一个配置上（LD,RA,AI等）使用不同参数（CQP下一般为4个QP值）编码，然后收集编码结果（码率、PSNR等），最后计算BD-Rate从而评价编码器性能。比如我要对比HEVC和AVS3在LD配置下的性能，平台上已经有了两个编码器在一些公共测试集上的数据，我们可以直接比较，平台支持最多同时比较5个编码器。费用主要和计算量有关。其中最主要的是目前还不支持上传自己的编码器，只能用平台提供的编码器。]]></description><category></category></item><item><title><![CDATA[AVS3：对称运动矢量差SMVD]]></title><link>https://blog.youkuaiyun.com/Dillon2015/article/details/130566692</link><guid>https://blog.youkuaiyun.com/Dillon2015/article/details/130566692</guid><author>Dillon2015</author><pubDate>Tue, 09 May 2023 21:34:29 +0800</pubDate><description><![CDATA[若当前编码块采用帧间双向预测，并且第一个前向参考帧（记为POC_list0）、第一个后向参考帧（记为POC_list1）和当前帧（记为POC_Cur）满足镜像关系（即满足公式：POC_Cur – POC_list0 = POC_list1 – POC_Cur），则通过传输一个标识符（symmetric mode flag）指示是否采用SMVD模式。对于帧间预测来说，当视频内容较简单时编码残差的比特数可能会较少而编码运动信息的比特数占比可能会变高，此时编码运动信息的码率成为了压缩率的​瓶颈。]]></description><category></category></item><item><title><![CDATA[AVS3:高级运动向量表达UMVE]]></title><link>https://blog.youkuaiyun.com/Dillon2015/article/details/129758756</link><guid>https://blog.youkuaiyun.com/Dillon2015/article/details/129758756</guid><author>Dillon2015</author><pubDate>Tue, 28 Mar 2023 22:08:28 +0800</pubDate><description><![CDATA[如图1所示，UMVE首先在已生成的候选中选择起始点，然后选择一个偏移方向，在这个方向上按一定距离偏移。UMVE的可选的起始点有2个，偏移方向有4个（上下左右），偏移距离五选一或八选一，由图像头中标识位决定，如下表所示。所以有2x4x5=40或2x4x8=64个候选项。两个起始点从已生成的候选集中选取，候选集由空域相邻块MV块构成，若不足两个则添加时域MV，若还是不足两个则用零向量填充。其中空域候选MV按F、G、C、A、D的顺序获取，如图2所示。UMVE是在已生成的运动候选基础上做偏移从而得到更优的候选集。]]></description><category></category></item><item><title><![CDATA[AVS3中的ESAO]]></title><link>https://blog.youkuaiyun.com/Dillon2015/article/details/129474244</link><guid>https://blog.youkuaiyun.com/Dillon2015/article/details/129474244</guid><author>Dillon2015</author><pubDate>Tue, 14 Mar 2023 22:48:40 +0800</pubDate><description><![CDATA[ESAO是在整帧的层面是对所有像素进行分类，然后对每一类像素分别传输一个偏移量进行偏移补偿，偏移量在[-7,7]之间。若周围像素比较当前像素大则cl自加1，若周围像素比较当前像素小则cl自减1。若周围像素比较当前像素大则cl自加1，若周围像素比较当前像素小则cl不变。c2的分类方法类似于SAO的边带补偿的分类方法，将像素按像素值等间隔的分为c2类，c2的大小由编码器决定，c1类的分类方法是将当前像素和相邻8个像素分别比较，分类模板如图1，色度只采用上面c2的分类方法，然后通过查表得到最终类别，]]></description><category></category></item><item><title><![CDATA[AVS3中ECCSAO]]></title><link>https://blog.youkuaiyun.com/Dillon2015/article/details/129149863</link><guid>https://blog.youkuaiyun.com/Dillon2015/article/details/129149863</guid><author>Dillon2015</author><pubDate>Tue, 21 Feb 2023 21:39:26 +0800</pubDate><description><![CDATA[CCSAO的目的在于减少色度的失真，首先将色度像素根据其对应的亮度重建像素进行分类，然后对不同类别生成对应的offset，然后对每个类别的色度像素补偿对应的offset。Fig.6是主观效果对比，(a)(b)是原始图像的Cr分量，(c)(d)是不开ECCSAO，可以看见很多细节都模糊或者丢失了，(e)(f)是开启ECCSAO后的效果可以看见纹理保留的更多。，通过不同通道间的预测来去除通道间的冗余以提升编码效率。根据公式（1）对色度像素分类，其中rl是重建的亮度像素，M是总类别数最大为16，I是对应的分类。]]></description><category></category></item></channel></rss>