CN104486630B - H.265视频编码中sao模式下偏移量的统计方法 - Google Patents
H.265视频编码中sao模式下偏移量的统计方法 Download PDFInfo
- Publication number
- CN104486630B CN104486630B CN201410784585.0A CN201410784585A CN104486630B CN 104486630 B CN104486630 B CN 104486630B CN 201410784585 A CN201410784585 A CN 201410784585A CN 104486630 B CN104486630 B CN 104486630B
- Authority
- CN
- China
- Prior art keywords
- sum
- offset
- patterns
- pixel
- types
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Abstract
本发明公开了一种H.265视频编码中SA0模式下偏移量的统计方法,采用合并E0模式以及合并累积偏移量和数目的方法,在不增加额外复杂度的前提下,有效地减少寻址和在内存上读写累加操作的次数,提升了执行效率,具有良好的应用前景。
Description
技术领域
本发明涉及一种H.265视频编码中SAO模式下偏移量的统计方法,属于视频编码技术领域。
背景技术
网络视频是互联网最主要的应用之一,高清视频将是广电领域的必然走向,移动视频目前的发展态势也呈现出井喷之势。可以预见,视频应用在今后若干年都将是数字多媒体领域的最大热点。
由于网络带宽、延时等因素的限制,视频应用中面临的首要难点就是视频编解码问题,视频编解码系统是视频应用领域的核心,它决定着媒体服务的质量,它直接影响网络带宽需求、用户体验质量、解码设备需求、直播延迟等关键问题。因此高效的视频编解码系统一直是广电、互联网视频、视频协作厂商等竞相追逐的重点对象。H.265视频编码是国际标准化组织MPEG和ITU-T VCEG继H.264之后联合制定的新一代视频编码标准。H.265沿用了前代视频编码标准所惯用的基于块的预测变换混合编码框架,并且在预测、变换、熵编码、环路滤波等核心模块进行了一系列重要的创新和改进,如更加灵活的四叉树编码结构,更加复杂和精确的帧内和帧间预测方法、更加先进的环路滤波技术,使得压缩性能相比H.264提升了一倍。
H.265视频编码标准的有效地提高了视频压缩性能,但是,同时也为视频编码过程带来了更多的计算负担,新的编码工具集为编码过程提供了更多的选择,要达到最优编码性能,需要在这个工具集中寻找最优组合,这个搜索过程的复杂度是相当高的。最显著地,H.265相比H.264编码和预测块的划分形式更加灵活,它首先把编码的基本单位抽象为编码单元CU、预测单元PU和变换单元TU三个层次,从64x64到4x4,每一层编码单元CU都可以支持2Nx2N,NxN,2NxN,Nx2N四种对称PU划分方式和2Nx0.5U,2Nx0.5D,0.5Lx2N,0.5Rx2N四种非对称PU划分方式。理论上,编码器要获得最优编码性能需要通过递归遍历的方式检查所有可能的CU和PU划分组合,这个过程的运算复杂度是极高的,根据测试结果,HM参考编码器(H.265视频编码的参考软件)的编码速度是视频序列时间长度的数百倍到数千倍之间。但是,在实时视频通信应用领域,例如视频会议、视频直播、视频电话等场合,需要对视频进行实时编码,对所有编码模式和工具做遍历择优的做法是极不现实的。
H.265的SAO模式(Sample Adaptive Offset样本自适应偏移的缩写,一种视频编码中的应用)选择需要统计各候选模式(包括BO,EO0,EO1,EO2,EO3)的各不同类型(BO 32种,EO0~EO3各4种)的数目以及累积偏移量,统计运算需要逐像素进行,对不同类型的寻址操作限制了单指令多数据(SIMD)指令的使用,该统计运算的过程复杂,是整个SAO模式最为耗时的关键部分和瓶颈。
发明内容
本发明的目的克服现有的H.265的SAO模式,统计运算需要逐像素进行,对不同类型的寻址操作限制了单指令多数据(SIMD)指令的使用,该统计运算的过程复杂,是整个SAO模式最为耗时的关键部分和瓶颈的问题。本发明的H.265视频编码中SAO模式下偏移量的统计方法,合并EO模式,以及合并累积偏移量和数目的方法,在不增加额外复杂度的前提下,有效地减少寻址和在内存上读写累加操作的次数,提升了执行效率,具有良好的应用前景。
为了达到上述目的,本发明所采用的技术方案是:
一种H.265视频编码中SAO模式下偏移量的统计方法,其特征在于:将偏移量累加和数目累加合并运算,对编码树块(CTB,Coding tree block)进行一次遍历完成所有模式所有类型的统计,包括以下步骤,
步骤(1),在CTB遍历过程中,对于每个像素,计算原始像素与重建像素的偏移量offset,并依次计算各候选模式BO,EO0,EO1,EO2,EO3的子集中类型;
步骤(2),将步骤(1)计算的每个像素的偏移量offset和数目合并到一个整形变量offset_cnt,其中低12位为数目,高20位为累积偏移量,需要统计的是各个模式内各个类型的累积偏移量和数目;
步骤(3),对BO模式类型所包含的像素集合BO_class,将各像素的整形变量offset_cnt累加到该类型对应的累加和BO_sum;
步骤(4),对于EO0,EO1,EO2,EO3模式类型,将两个类型值合并,将3bit的模式类型,合并为6bit的合并EO模式,EO0和EO1合并为第一合并EO模式EO_01,EO2和EO3合并为第二合并EO模式EO_02;
步骤(5),将第一合并EO模式EO-01所包含的像素集合EO_01_class,将各像素的整形变量offset_cnt累加到该类型对应的累加和EO_01_sum;
步骤(6),将第二合并EO模式EO_02所包含的像素集合EO_02_class,将各像素的整形变量offset_cnt累加到该类型对应的累加和EO_02_sum;
步骤(7),完成CTB遍历后,对于BO_sum,截取低12位得到统计数目,截取高20位得到累积偏移量;
步骤(8),完成CTB遍历后,对于EO_01_sum、EO_02_sum,拆分得到EO0,EO1,EO2,EO3各模式对应的EO0_sum、EO1_sum、EO2_sum、EO3_sum;
步骤(9)分别对EO0_sum、EO1_sum、EO2_sum、EO3_sum取低12位得到统计数目,截取高20位得到累积偏移量。
前述的H.265视频编码中SAO模式下偏移量的统计方法,其特征在于:步骤(1)BO模式的类型值为0~31,通过将重建的像素值右移3位获得;各EO模式的类型值计算方法如下,EOclass=2+Sign(diff0)+Sign(diff1),其中,diff0和diff1为当前像素与相邻像素的差,class为0-3,Sign为Sign函数根据H.265标准定义执行,各EO模式的类型值对应的计算结果为0、1、3、4为有效类型值。
前述的H.265视频编码中SAO模式下偏移量的统计方法,其特征在于:步骤(8),完成CTB遍历后,对于EO_01_sum、EO_02_sum,拆分得到EO0,EO1,EO2,EO3各模式对应的EO0_sum、EO1_sum、EO2_sum、EO3_sum,计算过程为,
EO0_sum[i]=∑4 j=0EO_01_sum[8*j+i],i=0,1,3,4;
EO1_sum[i]=∑4 j=0EO_01_sum[8*i+j],i=0,1,3,4;
EO3_sum[i]=∑4 j=0EO_02_sum[8*j+i],i=0,1,3,4;
EO4_sum[i]=∑4 j=0EO_02_sum[8*i+j],i=0,1,3,4;
其中,j的含义对于每一种EO模式,与另一种EO模式进行了组合,其的每个类型值都在组合模式中对应5个类型值,j从0到4遍历组合类型中5个对应类型值。
本发明的有益效果是:本发明的H.265视频编码中SAO模式下偏移量的统计方法,合并EO模式,以及合并累积偏移量和数目的方法,在不增加额外复杂度的前提下,有效地减少寻址和在内存上读写累加操作的次数,提升了执行效率,具有良好的应用前景。
附图说明
图1是本发明的H.265视频编码中SAO模式下偏移量的统计方法的流程图。
具体实施方式
下面将结合说明书附图,以下实施例仅用于更加清楚地说明本发明的技术方案,而不能以此来限制本发明的保护范围。
本发明的H.265视频编码中SAO模式下偏移量的统计方法,合并EO模式,以及合并累积偏移量和数目的方法,在不增加额外复杂度的前提下,有效地减少寻址和在内存上读写累加操作的次数,提升了执行效率,具体包括以下步骤,
H.265视频编码中SAO模式下偏移量的统计方法,其特征在于:将偏移量累加和数目累加合并运算,对编码树块(CTB,Coding tree block)一次遍历完成所有模式所有类型的统计,包括以下步骤,
步骤(1),在CTB遍历过程中,对于每个像素,计算原始像素与重建像素的偏移量offset,并依次计算各候选模式BO,EO0,EO1,EO2,EO3子集中类型;BO的类型值为0~31,通过将重建像素值右移3位即可获得;各EO模式的类型值计算方法如下:EOclass=2+Sign(diff0)+Sign(diff1),其中diff0和diff1为当前像素与相邻像素的差,class为0-3,根据H.265标准定义执行,Sign函数的定义如下:各EO模式的类型值计算结果为0,1,3,4为有效类型值。
步骤(2),将步骤(1)计算的每个像素的偏移量offset和数目合并到一个整形变量offset_cnt,其中低12位为数目,高20位为累积偏移量,需要统计的是各个模式内的各个类型的累积偏移量和数目,对于一个像素而言,数目为1,因此只需将该像素的offset左移12位,再将最低位置1,offset_cnt=(offset<<12)|1;
步骤(3),对BO模式类型所包含的像素集合BO_class,将各像素的整形变量offset_cnt累加到该类型对应的累加和BO_sum;
步骤(4),对于EO0,EO1,EO2,EO3模式类型,将两个类型值合并,将3bit的模式类型,合并为6bit的合并EO模式,EO0和EO1合并为第一合并EO模式EO_01,EO2和EO3合并为第二合并EO模式EO_02;合并方式为位拼接,比如对于EO0的类型EO0_class和EO1的类型EO1_class拼接为第一合并EO模式EO_01:EO_01_class=(EO1_class<<3)|EO0_class;
步骤(5),将第一合并EO模式EO_01所包含的像素集合EO_01_class,将各像素的整形变量offset_cnt累加到该类型对应的累加和EO_01_sum;
步骤(6),将第二合并EO模式EO_02所包含的像素集合EO_02_class,将各像素的整形变量offset_cnt累加到该类型对应的累加和EO_02_sum;
步骤(7),完成CTB遍历后,对于BO_sum,截取低12位得到统计数目,截取高20位得到累积偏移量;
步骤(8),完成CTB遍历后,对于EO_01_sum、EO_02_sum,拆分得到EO0,EO1,EO2,EO3各模式对应的EO0_sum、EO1_sum、EO2_sum、EO3_sum;
步骤(9)分别对EO0_sum、EO1_sum、EO2_sum、EO3_sum取低12位得到统计数目,截取高20位得到累积偏移量。
其中,步骤(8),完成CTB遍历后,对于EO_01_sum、EO_02_sum,拆分得到EO0,EO1,EO2,EO3各模式对应的EO0_sum、EO1_sum、EO2_sum、EO3_sum,计算过程为,
EO0_sum[i]=∑4 j=0EO_01_sum[8*j+i],i=0,1,3,4;
EO1_sum[i]=∑4 j=0EO_01_sum[8*i+j],i=0,1,3,4;
EO3_sum[i]=∑4 j=0EO_02_sum[8*j+i],i=0,1,3,4;
EO4_sum[i]=∑4 j=0EO_02_sum[8*i+j],i=0,1,3,4;
其中,j的含义对于每一种EO模式,与另一种EO模式进行了组合,其的每个类型值都在组合模式中对应5个类型值,j从0到4遍历组合类型中5个对应类型值,以EO0模式为例,它的类型值0分别与EO1的类型值0~4都进行了组合,因此EO_01组合类型值中值为0,8,16,24,32的累加和都应计入EO0中类型值为0的累加和,以此类推;而EO1的类型值拼接在高3位,因此EO_01组合类型值中值为0,1,2,3,4的累加和都应计入EO1中类型值为0的累加和,以此类推,该计算过程的意义如下:对于EO0,EO1,EO2,EO3每一种EO模式分别为0,1,3,4为有效类型值,因此只需将0,1,3,4类型值对应的累加和从合并模式累加和中拆分出来,在EO0和EO1组成合并模式时,EO0的类型值拼接在低3位,EO_01组合类型值中值为0,8,16,24,32的累加和都应计入EO0中类型值为0的累加和,以此类推;而EO1的类型值拼接在高3位,因此,EO_01组合类型值中值为0,1,2,3,4的累加和都应计入EO1中类型值为0的累加和,以此类推,计算出EO2_sum、EO3_sum。
以上显示和描述了本发明的基本原理、主要特征及优点。本行业的技术人员应该了解,本发明不受上述实施例的限制,上述实施例和说明书中描述的只是说明本发明的原理,在不脱离本发明精神和范围的前提下,本发明还会有各种变化和改进,这些变化和改进都落入要求保护的本发明范围内。本发明要求保护范围由所附的权利要求书及其等效物界定。
Claims (2)
1.H.265视频编码中SAO模式下偏移量的统计方法,其特征在于:将偏移量累加和数目累加合并运算,对编码树块进行一次遍历完成所有模式所有类型的统计,包括以下步骤,
步骤(1),在CTB遍历过程中,对于每个像素,计算原始像素与重建像素的偏移量offset,并依次计算各候选模式BO,EO0, EO1,EO2,EO3的子集中类型;
步骤(2),将步骤(1)计算的每个像素的偏移量offset和数目合并到一个整形变量offset_cnt,其中低12位为数目,高20位为累积偏移量,需要统计的是各个模式内各个类型的累积偏移量和数目;
步骤(3),对BO模式类型所包含的像素集合BO_class,将各像素的整形变量offset_cnt累加到该类型对应的累加和BO_sum;
步骤(4),对于EO0, EO1,EO2,EO3模式类型,将两个类型值合并,将3bit的模式类型,合并为6bit的合并EO模式,EO0和EO1合并为第一合并EO模式EO_01,EO2和EO3合并为第二合并EO模式EO_02;
步骤(5),对第一合并EO模式EO_01所包含的像素集合EO_01_class,将各像素的整形变量offset_cnt累加到该类型对应的累加和EO_01_sum;
步骤(6),对第二合并EO模式EO_02所包含的像素集合EO_02_class,将各像素的整形变量offset_cnt累加到该类型对应的累加和EO_02_sum;
步骤(7),完成CTB遍历后,对于BO_sum,截取低12位得到数目,截取高20位得到累积偏移量;
步骤(8),完成CTB遍历后,对于EO_01_sum、EO_02_sum,拆分得到EO0, EO1,EO2,EO3各模式对应的EO0_sum、EO1_sum、EO2_sum、EO3_sum;
步骤(9)分别对EO0_sum、EO1_sum、EO2_sum、EO3_sum取低12位得到数目,截取高20位得到累积偏移量;
其中,步骤(8),完成CTB遍历后,对于EO_01_sum、EO_02_sum,拆分得到EO0, EO1,EO2,EO3各模式对应的EO0_sum、EO1_sum、EO2_sum、EO3_sum,计算过程为,
EO0_sum[i] = ∑4 j=0EO_01_sum[8*j + i], i = 0,1,3,4;
EO1_sum[i] = ∑4 j=0EO_01_sum[8*i + j], i = 0,1,3,4;
EO3_sum[i] = ∑4 j=0EO_02_sum[8*j + i], i = 0,1,3,4;
EO4_sum[i] = ∑4 j=0EO_02_sum[8*i + j], i = 0,1,3,4;
其中,j的含义对于每一种EO模式,与另一种EO模式进行了组合,其的每个类型值都在组合模式中对应5个类型值,j从0到4遍历组合类型中5个对应类型值。
2.根据权利要求1所述的H.265视频编码中SAO模式下偏移量的统计方法,其特征在于:步骤(1)BO模式的类型值为0~31,通过将重建的像素值右移3位获得;各EO模式的类型值计算方法如下,EOclass = 2 + Sign(diff0) + Sign(diff1),其中,diff0和diff1为当前像素与相邻像素的差,class为0-3,Sign 为Sign函数根据H.265标准定义执行,各EO模式的类型值对应的计算结果为0、1、3、4为有效类型值。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410784585.0A CN104486630B (zh) | 2014-12-16 | 2014-12-16 | H.265视频编码中sao模式下偏移量的统计方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410784585.0A CN104486630B (zh) | 2014-12-16 | 2014-12-16 | H.265视频编码中sao模式下偏移量的统计方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104486630A CN104486630A (zh) | 2015-04-01 |
CN104486630B true CN104486630B (zh) | 2017-10-20 |
Family
ID=52761122
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410784585.0A Active CN104486630B (zh) | 2014-12-16 | 2014-12-16 | H.265视频编码中sao模式下偏移量的统计方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104486630B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019075638A1 (zh) * | 2017-10-17 | 2019-04-25 | 北京金山云网络技术有限公司 | 编码和解码方法、装置、编码器、解码器及存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103155557A (zh) * | 2010-10-05 | 2013-06-12 | 联发科技股份有限公司 | 基于分区基础的自适应环路滤波方法和装置 |
CN103518375A (zh) * | 2012-04-16 | 2014-01-15 | 联发科技股份有限公司 | 用于贯穿条带或图块边界环路滤波的方法及其装置 |
CN103535033A (zh) * | 2011-05-10 | 2014-01-22 | 高通股份有限公司 | 用于样本自适应偏移的偏移类型及系数信令方法 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2013070960A2 (en) * | 2011-11-08 | 2013-05-16 | General Instrument Corporation | Devices and methods for sample adaptive offset coding and/or signaling |
US9591331B2 (en) * | 2012-03-28 | 2017-03-07 | Qualcomm Incorporated | Merge signaling and loop filter on/off signaling |
-
2014
- 2014-12-16 CN CN201410784585.0A patent/CN104486630B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103155557A (zh) * | 2010-10-05 | 2013-06-12 | 联发科技股份有限公司 | 基于分区基础的自适应环路滤波方法和装置 |
CN103535033A (zh) * | 2011-05-10 | 2014-01-22 | 高通股份有限公司 | 用于样本自适应偏移的偏移类型及系数信令方法 |
CN103518375A (zh) * | 2012-04-16 | 2014-01-15 | 联发科技股份有限公司 | 用于贯穿条带或图块边界环路滤波的方法及其装置 |
Non-Patent Citations (2)
Title |
---|
《Improved Sample Adaptive Offset for HEVC》;Hong Zhang等;《Signal and Information Processing Association Annual Summit and Conference (APSIPA)》;20131101;第1-4页 * |
《Low Complexity SAO in HEVC Base on Class Combination, Pre-decision and Merge Separation》;Gaoxing Chen等;《Proceedings of the 19th International Conference on Digital Signal Processing》;20140823;第259-262页 * |
Also Published As
Publication number | Publication date |
---|---|
CN104486630A (zh) | 2015-04-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110235444A (zh) | 使用多条参考线的帧内预测 | |
CN104205829B (zh) | 合并信令及环路滤波器开/关信令 | |
CN103339939B (zh) | 具有自适应分接头大小的低复杂性内插滤波 | |
CN105393537B (zh) | 用于基于散列的块匹配的散列表构建和可用性检查 | |
KR101941955B1 (ko) | 재귀적 블록 파티셔닝 | |
CN103563381B (zh) | 对视频数据进行上下文自适应译码 | |
CN110024393A (zh) | 用于视频译码的低复杂度符号预测 | |
CN103688541B (zh) | 在视频译码中缓冲预测数据的设备和方法 | |
CN105493507B (zh) | 用于帧内块复制的残余预测 | |
JP2018533261A (ja) | 画像予測方法および装置 | |
CN109076230A (zh) | 二值化二次变换指数 | |
CN108141605A (zh) | 帧内块复制合并模式及不可用帧内块复制参考区域的填充 | |
CN110199522A (zh) | 处理用于图像块帧内预测的参考样本 | |
CN104205835B (zh) | 导出最末位置译码的上下文以供视频译码 | |
CN109361920B (zh) | 一种面向多场景的自适应决策树选择的帧间快速预测算法 | |
CN104683819A (zh) | 一种自适应环路滤波方法及装置 | |
CN110199524A (zh) | 噪声抑制滤波器 | |
CN107667528A (zh) | 用于视频编解码的自适应参考帧缓存的方法和系统 | |
TW201924339A (zh) | 藉由調適參數之漸進式修正之二位元算術寫碼 | |
CN113170210A (zh) | 视频编码和解码中的仿射模式信令 | |
CN106688234A (zh) | 具有改善的转置缓冲器的可缩放变换硬件架构 | |
CN106851298B (zh) | 一种高效视频编码方法及装置 | |
CN106658012A (zh) | 一种vp9解码器并行流水线任务划分方法 | |
CN104486630B (zh) | H.265视频编码中sao模式下偏移量的统计方法 | |
CN109587431A (zh) | 一种多路视频码流合并方法、装置、设备和存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C41 | Transfer of patent application or patent right or utility model | ||
TA01 | Transfer of patent application right |
Effective date of registration: 20161123 Address after: Room 33, No. 100000 Beijing city Haidian District Xiaoying road 3F02 Applicant after: Beijing Jinshanyun Net Technology Co., Ltd. Address before: 210000 Gulou District Nanjing Jiangsu Stone City No. 69 3-302 Applicant before: NANJING QIANYI VIDEO INFORMATION TECHNOLOGY CO., LTD. |
|
GR01 | Patent grant | ||
GR01 | Patent grant |