CN104378636B - 一种视频图像编码方法及装置 - Google Patents
一种视频图像编码方法及装置 Download PDFInfo
- Publication number
- CN104378636B CN104378636B CN201410643565.1A CN201410643565A CN104378636B CN 104378636 B CN104378636 B CN 104378636B CN 201410643565 A CN201410643565 A CN 201410643565A CN 104378636 B CN104378636 B CN 104378636B
- Authority
- CN
- China
- Prior art keywords
- block
- sub
- level
- jnd
- macro
- 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.)
- Expired - Fee Related
Links
Abstract
本发明公开了一种视频图像编码方法及装置,用以解决现有技术中视频编码JND模型对视频图像进行编码时,生成的编码后的数据中包含视觉冗余信息,编码过程复杂度高,以及主观视频编码性能低的问题。本发明实施例中,通过对当前帧对应的视频图像进行有效的块分类,并在传统DCT域的像素级JND值中引入亮度调制因子,以获取DCT域像素级JND值,在获取宏块级QP偏移量的过程中,无须使用canny算子,从而降低了编码复杂度;并且,在对视频图像的编码过程中,考虑到人眼的视觉特性,在获取宏块级QP时加入块级视觉敏感度因子,从而进一步减少了对视频图像进行编码后生成的数据的视觉冗余信息,提高了主观视频编码性能。
Description
技术领域
本发明涉及视频数据处理领域,尤其涉及一种视频图像编码方法及装置。
背景技术
为了节约传输带宽和存储空间,以及支持数字电视广播、远程监控、数字视频点播、无线多媒体通信等应用,视频图像编码已经成为国内外研究和工业应用的热点之一。目前的视频图像编码标准所涉及的编码技术主要包括:帧内预测、帧间预测、变换、反变换、量化、反量化,以及熵编码等。
JND(Just Noticeable Distortion;恰可察觉失真模型)作为一种主观视觉编码模型,能够有效提高视频图像编码的效率和视频图像的质量,其原理为,由于人眼的各种屏蔽效应,人眼只能觉察超过某一阈值的噪声,该阈值即为人眼的恰可觉察失真,代表着图像中的视觉冗余度。JND模型常用来指导图像或视频的感知编码和处理,如预处理、自适应量化、码流控制、运动估计等。
现有的JND模型可以大致分为两类:第一类为像素域JND模型,其基本原理大多是通过表征亮度自适应效应和纹理掩蔽效应来建模,常作为计算JND阈值的快速方法来使用。第二类JND模型为变换域JND模型,该JND模型在变换域中进行计算,例如DCT(DiscreteCosine Transform;离散余弦变换)域、小波域等。由于大多数视频图像编码标准都是基于DCT域,因此基于DCT域的JND模型得到了很多研究者的关注。
目前,JND模型已经被广泛应用在混合视频编码技术领域,但现有的视频编码JND模型应用过程为逐个的像素级的滤波实现视频图像的编码压缩,而没有考虑到传统的视频编码时以块单元为单位,即期望的编码结果为比较均匀一致的压缩,从而避免像素级的滤波可能在编码块中引入许多人为产生的失真涨落;并且,对于现有的视频编码JND模型而言,在计算纹理复杂度时候会利用到canny算子,canny算子会增大模型的复杂度;此外,现有的主流视频编码在最佳模式使用的QP(Quantization Parameter;量化参数)并没有考虑到人眼的视觉特性,采用上述QP对视频图像进行编码后,将造成编码后的数据存在大量视觉冗余信息,且主观视频编码性能低。
综上所述,采用现有的视频编码JND模型以及应用方式对视频图像进行编码时,生成的编码后的数据中包含视觉冗余信息,编码过程复杂度高,以及主观视频编码性能低的问题。
发明内容
本发明实施例提供一种视频图像编码方法及装置,用以解决现有技术中视频编码JND模型对视频图像进行编码时,生成的编码后的数据中包含视觉冗余信息,编码过程复杂度高,以及主观视频编码性能低的问题。
本发明实施例提供的具体技术方案如下:
一种视频图像编码方法,包括:
获取视频图像序列中的当前帧;其中,所述当前帧的图像包括多个宏块,每一个宏块包含多个块,每一个块包含多个子块;
针对任意一宏块,分别根据所述任意一宏块中的每一个子块包含的所有像素值和所述每一个子块所在的块包含的所有像素值,生成所述每一个子块对应的直流系数和所述每一个子块所在的块对应的直流系数,并根据所述每一个子块对应的直流系数和所述每一个子块所在的块对应的直流系数,确定相应的亮度调制因子;并
根据获取到的亮度调制因子,获取每一个子块对应的DCT域像素级恰可察觉失真模型JND值;
根据获取的每一个子块对应的所述DCT域像素级JND值,以及所述每一个子块的能量分布特性因子,获取所述每一个块对应的块级JND值;
根据所述每一个块对应的块级JND值,计算所述宏块对应的宏块级量化参数QP和宏块级QP偏移量;
根据所述宏块级QP和宏块级QP偏移量,对所述当前帧进行编码。
一种视频图像编码装置,包括:
第一获取单元,用于获取视频图像序列中的当前帧;其中,所述当前帧的图像包括对应多个宏块,每一个宏块包含多个块,每一个块包含多个子块;
确定单元,用于针对任意一宏块,分别根据所述任意一宏块中的每一个子块包含的所有像素值和所述每一个子块所在的块包含的所有像素值,生成所述每一个子块对应的直流系数和所述每一个子块所在的块对应的直流系数,并根据所述每一个子块对应的直流系数和所述每一个子块所在的块对应的直流系数,确定相应的亮度调制因子;
第二获取单元,用于根据获取到的亮度调制因子,获取每一个子块对应的DCT域像素级恰可察觉失真模型JND值;
第三获取单元,用于根据获取的每一个子块对应的所述DCT域像素级JND值,以及所述每一个子块的能量分布特性因子,获取所述每一个块对应的块级JND值;
计算单元,用于根据所述每一个块对应的块级JND值,计算所述宏块对应的宏块级量化参数QP和宏块级QP偏移量;
编码单元,用于根据所述宏块级QP和宏块级QP偏移量,对所述当前帧进行编码。
本发明实施例中,针对视频图像序列中的当前帧,在对DCT域像素级JND值的计算过程中添加亮度调制因子;根据计算得到的DCT域像素级JND值,计算每一个块对应的块级JND值,并根据块级JND值获取宏块级QP偏移量;根据宏块级QP偏移量,对当前帧进行编码。采用本发明技术方案,通过对当前帧对应的视频图像进行有效的块分类,并在传统DCT域的像素级JND值中引入亮度调制因子,以获取DCT域像素级JND值,在获取宏块级QP偏移量的过程中,无须使用canny算子,从而降低了编码复杂度;并且,在对视频图像的编码过程中,考虑到人眼的视觉特性,在获取宏块级QP时加入块级视觉敏感度因子,从而进一步减少了对视频图像进行编码后生成的数据的视觉冗余信息,提高了主观视频编码性能。
附图说明
图1为本发明实施例中编码器的功能结构示意图;
图2为本发明实施例中视频图像编码流程图;
图3为本发明实施例中经典JPEG编码中DCT域4×4块分类方法示意图;
图4为本发明实施例中计算块级JND值的流程示意图;
图5(a)和图5(b)为本发明实施例中采用宏块级QP值对视频图像进行编码与参考模型对视频图像进行编码的主观视频编码性能对比示意图;
图6为本发明实施例中块级JND视频编码主观性能表;
图7为本发明实施例中视频图像编码装置结构示意图。
具体实施方式
为了解决现有技术中视频编码JND模型对视频图像进行编码时,生成的编码后的数据中包含视觉冗余信息,编码过程复杂度高,以及主观视频编码性能低的问题。本发明实施例中,通过对当前帧对应的视频图像进行有效的块分类,并在传统DCT域的像素级JND值中引入亮度调制因子,以获取DCT域像素级JND值,在获取宏块级QP偏移量的过程中,无须使用canny算子,从而降低了编码复杂度;并且,在对视频图像的编码过程中,考虑到人眼的视觉特性,在获取宏块级QP时加入块级视觉敏感度因子,从而进一步减少了对视频图像进行编码后生成的数据的视觉冗余信息,提高了主观视频编码性能。
参阅图1所示,为本发明实施例中编码器的功能结构示意图,在对视频图像编码过程中涉及以下步骤:帧内预测、帧间预测、变换、反变换、量化、反量化,以及熵编码等,在上述对视频图像编码过程中将涉及空域JND值、DCT域像素级JND值和块级JND值的计算,获取上述各个参量的技术手段为本发明实施例区别于现有技术的技术手段,此外,基于上述获取的各个参量,对视频图像进行量化和反量化所采用的技术手段同样为本发明实施例区别于现有技术的技术手段。
下面结合附图对本发明优选的实施方式进行详细说明。
参阅图2所示,本发明实施例中,对视频图像进行编码的详细流程为:
步骤200:获取视频图像序列中的当前帧。
本发明实施例中,接收输入的视频图像序列,该视频图像序列中包含多个帧,每一个帧对应一个视频图像。当获取视频图像序列中的一帧时,将该获取到的帧作为当前帧。其中,对当前帧对应的视频图像进行划分,生成多个宏块,且每一个宏块包含多个块,每一个块包含多个子块;因此,当前帧对应多个N3×N3宏块,每一个宏块中包含多个N2×N2块,每一个N2×N2块中包含多个N1×N1子块;例如,若当前帧对应的视频图像为1920×1080像素,则可以该视频图像进行划分,生成多个16×16的宏块,每一个16×16的宏块中包含4个8×8的块,以及每一个16×16的宏块中包含16个4×4的子块。
步骤210:针对任意一宏块,分别根据该任意一宏块中的每一个子块包含的所有像素值和每一个子块所在的块包含的所有像素值,生成每一个子块对应的直流系数和每一个子块所在的块对应的直流系数,并根据每一个子块对应的直流系数和每一个子块所在的块对应的直流系数,确定相应的亮度调制因子。
本发明实施例中,对每一个子块包含的所有像素值和该每一个子块所在的块包含的所有像素值进行DCT变换,生成相应的子块对应的直流系数和该子块所在的块对应的直流系数,其中,上述像素值包括灰度值、色度值描述像素点特性的值;获取每一个子块对应的直流系数和相应的子块所在的块对应的直流系数的比值;以调制参数为指数,计算该比值对应的指数值,将该指数值作为亮度调制因子;其中,每一个块对应一个亮度调制因子。
可选的,上述亮度调制因子满足如下公式:
其中,t为亮度调制因子;N1×N1为一个子块中包含的像素点的数量,N2×N2为一个块中包含的像素点的数量,C(n,0,0)N1×N1为对子块进行DCT变换后获取的一个N2×N2块中包含的每一个N1×N1子块的直流系数,C(0,0)N2×N2为对子块所在的块进行DCT变换后获取的一个N2×N2块的直流系数,n为当前帧对应的所有子块中任意一子块的编号,τ为调制参数,根据具体应用场景确定,可选的,针对AVS-JiZhun Profile平台,该调制参数取值为0.649。C(n,0,0)N1×N1和C(0,0)N2×N2均与像素点的能量值相关,且C(n,0,0)N1×N1为一个N3×N3宏块中N1×N1子块的平均亮度,C(0,0)N2×N2为一个N3×N3宏块中N2×N2块的平均亮度。
步骤220:根据获取到的亮度调制因子,获取每一个子块对应的DCT域像素级JND值。
本发明实施例中,针对每一个子块,均执行如下操作:根据获取到的亮度调制因子,计算该亮度调制因子以及传统基本空间敏感度阈值的乘积,将该乘积作为子块对应的基本空域敏感度阈值;根据当前帧对应的基本空域敏感度阈值,亮度自适应函数,以及对比掩蔽效应函数,获取子块对应的空域JND值;根据时域调制函数以及上述子块对应的空域JND值,获取每一个子块对应的DCT域像素级JND值。
可选的,基本空域敏感度阈值满足如下公式:
其中,Tbasic为基本空域敏感度阈值;T0为传统基本空域敏感度阈值;为亮度调制因子,根据公式一获取;N1为一个子块中一行或者一列包含的像素点的个数;N2为一个块中一行或者一列包含的像素点的个数。
上述传统基本空域敏感度阈值T0可以采用现有技术中的方法获取,可选的,该T0满足如下公式:
其中,s为空间集合效应;表示倾斜效应,r=0.6,φi,φj表示DCT归一化系数,表示DCT归一化系数的方向角,ωij表示子带的频率,参数a=1.33,b=0.11,c=0.005。
采用上述技术方案,在基本空域敏感度阈值中添加亮度调制因子,充分考虑到人眼的视觉特性,从而能够改善JND模型的合理性。
可选的,根据上述基本空域敏感度阈值,亮度自适应函数,以及对比掩蔽效应函数,获取子块对应的空域JND值,获取的子块对应的空域JND值满足如下公式:
JNDS(n,i,j)=Tbasic(n,i,j)·Flum(n)·Fcontrast(n,i,j) 公式四
其中,JNDS(n,i,j)为子块对应的空域JND值;Tbasic为基本空域敏感度阈值;Flum(n)为亮度自适应函数,反映亮度对视觉感知的影响,根据公式获取,为每一个子块的平均亮度值;Fconstrast(n,i,j)为对比掩蔽效应函数,对于Plane(平坦区域块)和Edge(边缘区域块)中的(i2+j2)≤4子带,Fconstrast(n,i,j)=ψ(n,i,j),ψ(n,i,j)根据公式获取,针对除上述两种情况外的其他情况,Fconstrast(n,i,j)根据公式获取。
由于Tbasic,Flum(n)和Fconstrast(n,i,j)均为与亮度自适应因素、对比敏感度因素以及DCT域子带频率特性相关的函数,因此,采用上述技术方案,获取的JNDS(n,i,j)值综合考虑上述亮度自适应因素、对比敏感度因素以及DCT域子带频率特性各种因素,有效减少了视频图像在编码过程的冗余信息,进一步提高了编码效率。
可选的,根据时域调制函数以及子块对应的空域JND值,获取每一个子块对应的DCT域像素级JND值;其中,DCT域像素级JND值满足如下公式:
JNDT(n,i,j)=JNDS(n,i,j)·FT(n,i,j)公式五
其中,JNDT(n,i,j)为DCT域像素级JND值;JNDS(n,i,j)为空域JND值,根据公式四获取;FT(n,i,j)为时域调制函数,根据公式获取,fs为空域频率,ft为时域频率;n为当前帧对应的所有子块中任意一子块的编号,i和j分别表示每一个子块中包含的每一个像素点的行号和列号。
步骤230:根据获取的每一个子块对应的DCT域像素级JND值,以及每一个子块的能量分布特性因子,获取每一个块对应的块级JND值。
本发明实施例中,在考虑对比度掩蔽效应的时候,视频图像的平滑和边缘区域的失真比纹理区的失真更容易被人眼察觉,基于此,根据块的类型计算对比敏感度因素,将块分成平坦区域,边缘区域和纹理区域三类。此外,经研究发现,视频图像的观察者更容易被图像的一个块或者区域吸引,而不是仅仅一个像素。在大多数的自然图像中,块级或者区域级的失真相比较某个像素点的失真更容易被人眼所察觉;并且,视频图像的观察者更容易被图像的高频区域内容吸引,且对于低频区域的失真更加敏感,如边缘和平坦区的噪声;人眼对于视频图像包含大量信息和能量的中频区域感兴趣比较低,对中频区域失真的敏感度也比较低。
基于上述研究成果,参考经典的JPEG(Joint photographic Experts Group;联合图像专家小组)2000编码对DCT域中块分类的方法,通过在当前N1×N1块中计算DCT域的低频L,中频M和高频H的频率能量分布特性,可以实现块分类(参阅图3所示),最终将当前N2×N2块确定为Plane(平坦区域块)、Edge(边缘区域块)和Texture(纹理区域块)之一,并对上述分类后的块进行Fconstrast(n,i,j)函数的计算,获取每个子块对应的DCT域像素级的JND阈值,以及将每个块内的DCT域像素级的JND和块内的能量特性综合考虑得到每幅图像块级的JND基本空域敏感度阈值,从而避免了采用canny算子进行块分类时,准确性较低和复杂度较高的问题。
可选的,根据获取的每一个子块对应的DCT域像素级JND值,获取每一个块对应的块级视觉敏感度因子,该块级视觉敏感度因子满足如下公式:
其中,Dblock为块级视觉敏感度因子;JNDT(n,i,j)为DCT域像素级JND值,根据公式五获取,n为当前帧对应的所有子块中任意一子块的编号,i和j分别表示每一个子块中包含的每一个像素点的行号和列号;|C(n,i,j)|2为子块的能量分布特性因子,反映当前块中每一个像素点的能量;M为每一个块中包含的子块的总数目;N为每一个子块中包含的像素点的总行数或者总列数;k为块的编号。Dblock越大,表示人眼对于块的失真度越不敏感,即对于该块能够去除更多的冗余信息,提高视频图像编码压缩效率,降低视觉失真。
可选的,根据每一个块对应的块级视觉敏感度因子,获取每一个块对应的块级JND值,具体包括:获取块级视觉敏感度因子的对数值;计算该块级视觉敏感度因子的对数值与块级控制参数的乘积,将该乘积作为块级JND值;其中,块级控制参数根据具体应用场景预先配置。
上述每一个块对应的块级JND值满足如下公式:
JNDblcok(k)=α·lnDblock(k) 公式七
其中,JNDblock(k)为块级JND值;k为块的编号;α为块级控制参数;Dblock为块级视觉敏感度因子,根据公式六获取。
步骤240:根据上述获取的每一个块对应的块级JND值,获取宏块对应的宏块级QP和宏块级QP偏移量。
本发明实施例中,根据每一个块对应的块级JND值,获取宏块对应的宏块级QP以及宏块级QP偏移量,具体包括:根据每一个块对应的JND值,获取每一个块对应的QP偏移量;计算每一个块对应的QP偏移量和原始QP的和值,将该和值作为每一个块对应的QP;根据每一个块对应的QP,获取宏块对应的宏块级QP;计算宏块级QP以及原始QP的差值,将该差值作为宏块级QP偏移量。
可选的,根据每一个块对应的JND值,获取每一个块对应的QP偏移量,可选的,针对任意一个块,QP JND满足如下公式:
QPJND=QP0+ΔQPJND 公式八
其中,QP JND为任意一个块对应的QP;QP0为原始QP,根据编码器预先配置获取;ΔQPJND为上述任意一个块对应的QP偏移量,该值可以通过如下公式获取:
ΔQPJND=Ceil(K·log2JNDblock) 公式九
其中,ΔQPJND为上述任意一个块对应的QP偏移量;Ceil(x)代表不超过x的最大整数,x=K·log2JNDblock;K表示上述任意一块对应的QP和QPstep的关系,且K与编码标准有关;QPstep为对应于QP的量化步长。
由于由量化产生的误差应该根据视觉特性需要满足如下限制:|eQP|=|C-Crec|≤JNDblock,其中,Crec表示重构的DCT系数;考虑最大的不可察觉失真,量化步长应该限制到块级的恰可察觉失真,因此,可选的,上述量化步长QPstep满足如下公式:
QPstep=2·JNDblock 公式十
其中,QPstep为对应于QP的量化步长;JNDblock为块级JND值。
可选的,宏块级QP满足如下公式:
其中,QPJND_MB为宏块级QP;B为一个宏块中包含的块的总数目;k为块的编号;QPJND(k)为块对应的QP,由公式八获取。
基于上述宏块级QP,生成的宏块级QP偏移量满足如下公式:
ΔQPJND_MB=QPJND_MB-QP0 公式十二
其中,QPJND_MB为宏块级QP,由公式十一获取;QP0为原始QP。
采用上述技术方案,采用上述JND模型能够进一步减少视频图像中的视觉冗余,有效提高视频编码性能。
步骤250:根据宏块级QP和宏块级QP偏移量,对上述当前帧进行编码。
本发明实施例中,获取的宏块级QP适用于MPEG-2,或者H.264,或者AVS等主流编码平台中。
基于上述技术方案,下面结合具体应用场景,参阅图4所示,以对一个视频图像进行划分后,生成多个8×8的块,且每一个块包含4个4×4的子块为例,在本发明实施例中,实验平台为AVS-JiZhun Profile平台,编码配置环境为GOP顺序设置为IBBPBBP…,长度为15,帧率为30帧每秒,采用四分之一分像素运动估计,搜索半径设置为16,RDO打开,设置QP为16,20,24,28;选择实验序列:采用4:2:0 YUV序列,包括CIF,,720P和1080P分辨率的序列:Football,Foreman,Optics,Sheriff,Life,Tennis;实验中设置参数N1,N2,N3,B,M,N,K,τ,α分别为4,8,16,4,4,4,4,0.649,0.15。基于上述应用场景,获取每一个块对应的JND值的过程包括:针对一个8×8的块,分别获取该块包含的4个4×4子块的DCT域像素级JND值,根据每一个4×4子块的DCT域像素级JND值获取上述8×8的块对应的块级JND值。
采用上述技术方案,通过基于AVS JiZhun Profile视频编码环境对本发明提供的视频编码JND模型进行性能测试,并与X.Y.K的JND模型进行比较,取得了良好的性能提高,其中本发明提供的视频编码JND模型对应的MS-SSIM仅降低0.3265%,信噪比(PSNR)降低1.43dB,主客观视频编码性能均比参考模型损失少,最终采用本发明提供的技术方案,在保证视觉没有明显损失的条件下能够使视频编码性能提高到24.5%。由此可见,由于考虑了块级JND值改善对视频图像编码而不是直接利用单独的DCT域像素级JND值进行滤波,可以更加均匀的隐藏失真“噪声”,进而能够提高主客观视频编码性能,对比结果如图5(a)、图5(b)和图6所示。
基于上述技术方案,参阅图7所示,本发明实施例提供一种视频图像编码装置,包括第一获取单元70,变换单元71,第二获取单元72,第三获取单元73,计算单元74,以及编码单元75,其中:
第一获取单元70,用于获取视频图像序列中的当前帧;其中,所述当前帧对应多个宏块,每一个所述宏块包含多个块,每一个所述块包含多个子块;
变换单元71,用于针对任意一宏块,分别对所述每一个子块包含的所有像素值和所述每一个子块所在的块包含的所有像素值进行离散余弦变换DCT变换,获取相应的亮度调制因子;
第二获取单元72,用于根据获取到的亮度调制因子,获取每一个子块对应的DCT域像素级JND值;
第三获取单元73,用于根据获取的每一个子块对应的所述DCT域像素级JND值,以及所述每一个子块的能量分布特性因子,获取所述每一个块对应的块级JND值;
计算单元74,用于根据所述每一个块对应的块级JND值,计算所述宏块对应的宏块级QP和宏块级QP偏移量;
编码单元75,用于根据所述宏块级QP和宏块级QP偏移量,对所述当前帧进行编码。
所述变换单元71,具体用于:针对每一个子块,均执行如下操作:对子块包含的所有像素值和所述子块所在的块包含的所有像素值进行DCT变换,生成所述子块对应的直流系数,以及所述子块所在的块对应的直流系数;根据所述子块对应的直流系数和所述子块所在的块对应的直流系数,确定亮度调制因子。
所述第二获取单元72,具体用于:针对每一个子块,均执行如下操作:计算所述亮度调制因子以及传统基本空域敏感度阈值的乘积,将所述乘积作为子块对应的基本空域敏感度阈值;根据所述子块对应的基本空域敏感度阈值,亮度自适应函数,以及对比掩蔽效应函数,获取所述子块对应的空域JND值;根据预先获取的时域调制函数以及所述子块对应的空域JND值,获取所述子块对应的DCT域像素级JND值。
所述第二获取单元72获取的基本空域敏感度阈值满足如下公式:其中,Tbasic为基本空域敏感度阈值;T0为传统基本空域敏感度阈值,由归一化系数和归一化系数的方向角确定;为亮度调制因子,N1×N1为一个子块中包含的像素点的数量,N2×N2为一个块中包含的像素点的数量,C(n,0,0)N1×N1为一个N2×N2块中包含的每一个N1×N1子块的直流系数,C(0,0)N2×N2为一个N2×N2块的直流系数,n为所述当前帧对应的所有子块中任意一子块的编号,τ为调制参数,根据具体应用场景确定。
所述第三获取单元73,具体用于:根据获取的每一个子块对应的DCT域像素级JND值,以及所述每一个子块的能量分布特性因子,获取每一个块对应的块级视觉敏感度因子;其中,所述块级视觉敏感度因子满足如下公式:其中,Dblock为块级视觉敏感度因子;JNDT(n,i,j)为DCT域像素级JND值,n为所述当前帧对应的所有子块中任意一子块的编号,i和j分别表示每一个子块中包含的每一个像素点的行号和列号;|C(n,i,j)|2为子块的能量分布特性因子;M为每一个块中包含的子块的总数目;N为每一个子块中包含的像素点的总行数或者总列数;k为块的编号;根据所述每一个块对应的块级视觉敏感度因子,获取所述每一个块对应的块级JND值。
所述第三获取单元73,具体用于:获取所述块级视觉敏感度因子的对数值;计算所述块级视觉敏感度因子的对数值与块级控制参数的乘积,将所述乘积作为所述块级JND值;其中,所述块级控制参数根据具体应用场景预先配置。
所述计算单元74,具体用于:根据每一个块对应的JND值,获取对应的QP偏移量;计算所述每一个块对应的QP偏移量和原始QP的和值,将所述和值作为所述每一个块对应的QP;其中,所述原始QP由编码器预先配置获取;根据所述每一个块对应的QP,获取所述块所在宏块对应的宏块级QP;计算所述宏块级QP以及所述原始QP的差值,将所述差值作为所述宏块级QP偏移量。
所述计算单元74计算得到的宏块级QP偏移量满足如下公式:ΔQPJND_MB=QPJND_MB-QP0其中,ΔQPJND_MB为宏块级QP偏移量;QPJND_MB为宏块级QP,由获取,B为一个宏块中包含的块的总数目,k为块的编号,QPJND(k)为块对应的QP;QP0为原始QP。
综上所述,获取视频图像序列中的当前帧;分别对上述每一个子块包含的所有像素值和每一个子块所在的块包含的所有像素值进行DCT变换,获取相应的亮度调制因子;根据获取到的亮度调制因子,获取每一个子块对应的DCT域像素级JND值;根据获取的每一个子块对应的DCT域像素级JND值,以及每一个子块的能量分布特性因子,获取每一个块对应的块级JND值;根据上述获取的每一个块对应的块级JND值,获取宏块对应的宏块级QP偏移量;根据宏块级QP偏移量,对上述当前帧进行编码。采用上述技术方案,通过对当前帧对应的视频图像进行有效的块分类,并在传统DCT域的像素级JND值中引入亮度调制因子,以获取DCT域像素级JND值,在获取宏块级QP偏移量的过程中,无须使用canny算子,从而降低了编码复杂度;并且,在对视频图像的编码过程中,考虑到人眼的视觉特性,在获取宏块级QP时加入块级视觉敏感度因子,从而进一步减少了对视频图像进行编码后生成的数据的视觉冗余信息,提高了主观视频编码性能。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明实施例进行各种改动和变型而不脱离本发明实施例的精神和范围。这样,倘若本发明实施例的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (16)
1.一种视频图像编码方法,其特征在于,包括:
获取视频图像序列中的当前帧;其中,所述当前帧的图像包括多个宏块,每一个宏块包含多个块,每一个块包含多个子块;
针对任意一宏块,分别根据所述任意一宏块中的每一个子块包含的所有像素值和所述每一个子块所在的块包含的所有像素值,生成所述每一个子块对应的直流系数和所述每一个子块所在的块对应的直流系数,并根据所述每一个子块对应的直流系数和所述每一个子块所在的块对应的直流系数,确定相应的亮度调制因子;并
根据获取到的亮度调制因子,获取每一个子块对应的DCT域像素级恰可察觉失真模型JND值;
根据获取的每一个子块对应的所述DCT域像素级JND值,以及所述每一个子块的能量分布特性因子,获取所述每一个块对应的块级JND值;
根据所述每一个块对应的块级JND值,计算所述宏块对应的宏块级量化参数QP和宏块级QP偏移量;
根据所述宏块级QP和宏块级QP偏移量,对所述当前帧进行编码。
2.如权利要求1所述的方法,其特征在于,针对每一个子块,分别根据该子块包含的所有像素值和该子块所在块包含的所有像素值,生成所述子块对应的直流系数和所述子块所在的块对应的直流系数,具体包括:
对子块包含的所有像素值和所述子块所在的块包含的所有像素值进行离散余弦变换DCT变换,生成所述子块对应的直流系数,以及所述子块所在的块对应的直流系数。
3.如权利要求2所述的方法,其特征在于,根据获取到的亮度调制因子,获取每一个子块对应的DCT域像素级JND值,具体包括:
针对每一个子块,均执行如下操作:
计算所述亮度调制因子以及传统基本空域敏感度阈值的乘积,将所述乘积作为子块对应的基本空域敏感度阈值;
根据所述子块对应的基本空域敏感度阈值,亮度自适应函数,以及对比掩蔽效应函数,获取所述子块对应的空域JND值;
根据预先获取的时域调制函数以及所述子块对应的空域JND值,获取所述子块对应的DCT域像素级JND值。
4.如权利要求3所述的方法,其特征在于,所述基本空域敏感度阈值满足如下公式:
其中,Tbasic为基本空域敏感度阈值;T0为传统基本空域敏感度阈值,由归一化系数和归一化系数的方向角确定;为亮度调制因子,N1×N1为一个子块中包含的像素点的数量,N2×N2为一个块中包含的像素点的数量,C(n,0,0)N1×N1为一个N2×N2块中包含的每一个N1×N1子块的直流系数,C(0,0)N2×N2为一个N2×N2块的直流系数,n为所述当前帧对应的所有子块中任意一子块的编号,τ为调制参数,根据具体应用场景确定。
5.如权利要求1所述的方法,其特征在于,根据获取的每一个子块对应的所述DCT域像素级JND值,以及所述每一个子块的能量分布特性因子,获取所述每一个块对应的块级JND值,具体包括:
根据获取的每一个子块对应的DCT域像素级JND值,以及所述每一个子块的能量分布特性因子,获取每一个块对应的块级视觉敏感度因子;其中,所述块级视觉敏感度因子满足如下公式:
其中,Dblock为块级视觉敏感度因子;JNDT(n,i,j)为DCT域像素级JND值,n为所述当前帧对应的所有子块中任意一子块的编号,i和j分别表示每一个子块中包含的每一个像素点的行号和列号;|C(n,i,j)|2为子块的能量分布特性因子;M为每一个块中包含的子块的总数目;N为每一个子块中包含的像素点的总行数或者总列数;k为块的编号;
根据所述每一个块对应的块级视觉敏感度因子,获取所述每一个块对应的块级JND值。
6.如权利要求5所述的方法,其特征在于,所述每一个块对应的块级JND值,满足如下公式:
JNDblcok(k)=α·lnDblock(k)
其中,JNDblock(k)为第k个块对应的块级JND值;k为块的编号;α为块级控制参数;Dblock为块级视觉敏感度因子。
7.如权利要求1-6任一项所述的方法,其特征在于,根据所述每一个块对应的块级JND值,计算所述宏块对应的宏块级QP和宏块级QP偏移量,具体包括:
根据每一个块对应的JND值,获取对应的QP偏移量;
计算所述每一个块对应的QP偏移量和原始QP的和值,将所述和值作为所述每一个块对应的QP;其中,所述原始QP由编码器预先配置获取;
根据所述每一个块对应的QP,获取所述块所在宏块对应的宏块级QP;
计算所述宏块级QP以及所述原始QP的差值,将所述差值作为所述宏块级QP偏移量。
8.如权利要求7所述的方法,其特征在于,所述宏块级QP偏移量满足如下公式:
△QPJND_MB=QPJND_MB-QP0
其中,△QPJND_MB为宏块级QP偏移量;QPJND_MB为宏块级QP,由获取,B为一个宏块中包含的块的总数目,k为块的编号,QPJND(k)为第k个块对应的QP;QP0为原始QP。
9.一种视频图像编码装置,其特征在于,包括:
第一获取单元,用于获取视频图像序列中的当前帧;其中,所述当前帧的图像包括对应多个宏块,每一个宏块包含多个块,每一个块包含多个子块;
确定单元,用于针对任意一宏块,分别根据所述任意一宏块中的每一个子块包含的所有像素值和所述每一个子块所在的块包含的所有像素值,生成所述每一个子块对应的直流系数和所述每一个子块所在的块对应的直流系数,并根据所述每一个子块对应的直流系数和所述每一个子块所在的块对应的直流系数,确定相应的亮度调制因子;
第二获取单元,用于根据获取到的亮度调制因子,获取每一个子块对应的DCT域像素级恰可察觉失真模型JND值;
第三获取单元,用于根据获取的每一个子块对应的所述DCT域像素级JND值,以及所述每一个子块的能量分布特性因子,获取所述每一个块对应的块级JND值;
计算单元,用于根据所述每一个块对应的块级JND值,计算所述宏块对应的宏块级量化参数QP和宏块级QP偏移量;
编码单元,用于根据所述宏块级QP和宏块级QP偏移量,对所述当前帧进行编码。
10.如权利要求9所述的装置,其特征在于,所述确定单元,具体用于:
针对每一个子块,均执行如下操作:对子块包含的所有像素值和所述子块所在的块包含的所有像素值进行离散余弦变换DCT变换,生成所述子块对应的直流系数,以及所述子块所在的块对应的直流系数。
11.如权利要求10所述的装置,其特征在于,所述第二获取单元,具体用于:
针对每一个子块,均执行如下操作:计算所述亮度调制因子以及传统基本空域敏感度阈值的乘积,将所述乘积作为子块对应的基本空域敏感度阈值;根据所述子块对应的基本空域敏感度阈值,亮度自适应函数,以及对比掩蔽效应函数,获取所述子块对应的空域JND值;根据预先获取的时域调制函数以及所述子块对应的空域JND值,获取所述子块对应的DCT域像素级JND值。
12.如权利要求11所述的装置,其特征在于,所述第二获取单元获取的基本空域敏感度阈值满足如下公式:
其中,Tbasic为基本空域敏感度阈值;T0为传统基本空域敏感度阈值,由归一化系数和归一化系数的方向角确定;为亮度调制因子,N1×N1为一个子块中包含的像素点的数量,N2×N2为一个块中包含的像素点的数量,C(n,0,0)N1×N1为一个N2×N2块中包含的每一个N1×N1子块的直流系数,C(0,0)N2×N2为一个N2×N2块的直流系数,n为所述当前帧对应的所有子块中任意一子块的编号,τ为调制参数,根据具体应用场景确定。
13.如权利要求9所述的装置,其特征在于,所述第三获取单元,具体用于:
根据获取的每一个子块对应的DCT域像素级JND值,以及所述每一个子块的能量分布特性因子,获取每一个块对应的块级视觉敏感度因子;其中,所述块级视觉敏感度因子满足如下公式:
其中,Dblock为块级视觉敏感度因子;JNDT(n,i,j)为DCT域像素级JND值,n为所述当前帧对应的所有子块中任意一子块的编号,i和j分别表示每一个子块中包含的每一个像素点的行号和列号;|C(n,i,j)|2为子块的能量分布特性因子;M为每一个块中包含的子块的总数目;N为每一个子块中包含的像素点的总行数或者总列数;k为块的编号;
根据所述每一个块对应的块级视觉敏感度因子,获取所述每一个块对应的块级JND值。
14.如权利要求13所述的装置,其特征在于,所述第三获取单元获取的每一个块对应的块级JND值,满足如下公式:
JNDblcok(k)=α·lnDblock(k)
其中,JNDblock(k)为第k个块对应的块级JND值;k为块的编号;α为块级控制参数;Dblock为块级视觉敏感度因子。
15.如权利要求9-14任一项所述的装置,其特征在于,所述计算单元,具体用于:
根据每一个块对应的JND值,获取对应的QP偏移量;计算所述每一个块对应的QP偏移量和原始QP的和值,将所述和值作为所述每一个块对应的QP;其中,所述原始QP由编码器预先配置获取;根据所述每一个块对应的QP,获取所述块所在宏块对应的宏块级QP;计算所述宏块级QP以及所述原始QP的差值,将所述差值作为所述宏块级QP偏移量。
16.如权利要求15所述的装置,其特征在于,所述计算单元计算得到的宏块级QP偏移量满足如下公式:
△QPJND_MB=QPJND_MB-QP0
其中,△QPJND_MB为宏块级QP偏移量;QPJND_MB为宏块级QP,由获取,B为一个宏块中包含的块的总数目,k为块的编号,QPJND(k)为第k个块对应的QP;QP0为原始QP。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410643565.1A CN104378636B (zh) | 2014-11-10 | 2014-11-10 | 一种视频图像编码方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410643565.1A CN104378636B (zh) | 2014-11-10 | 2014-11-10 | 一种视频图像编码方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104378636A CN104378636A (zh) | 2015-02-25 |
CN104378636B true CN104378636B (zh) | 2017-07-07 |
Family
ID=52557245
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410643565.1A Expired - Fee Related CN104378636B (zh) | 2014-11-10 | 2014-11-10 | 一种视频图像编码方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104378636B (zh) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104992419A (zh) * | 2015-07-08 | 2015-10-21 | 北京大学深圳研究生院 | 基于jnd因子的超像素高斯滤波预处理方法 |
EP3345395A1 (en) * | 2015-09-02 | 2018-07-11 | Thomson Licensing | Method and apparatus for quantization in video encoding and decoding |
CN107147912B (zh) * | 2017-05-04 | 2020-09-29 | 浙江大华技术股份有限公司 | 一种视频编码方法及装置 |
CN107241607B (zh) * | 2017-07-18 | 2020-06-16 | 厦门大学 | 一种基于多域jnd模型的视觉感知编码方法 |
CN117278749A (zh) | 2019-06-20 | 2023-12-22 | Lg电子株式会社 | 图像解码和编码方法、数据的发送方法及存储介质 |
CN112825557B (zh) * | 2019-11-20 | 2023-02-24 | 北京大学 | 一种针对于视频编码的自适应感知时空域量化方法 |
CN112584143B (zh) * | 2020-12-02 | 2022-09-06 | 浙江大华技术股份有限公司 | 一种视频编码方法、装置、系统及计算机可读存储介质 |
CN112584153B (zh) * | 2020-12-15 | 2022-07-01 | 深圳大学 | 基于恰可察觉失真模型的视频压缩方法及装置 |
CN112861852A (zh) * | 2021-01-19 | 2021-05-28 | 北京金山云网络技术有限公司 | 样本数据筛选方法、装置、电子设备及存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101621708A (zh) * | 2009-07-29 | 2010-01-06 | 武汉大学 | 基于dct域的彩色图像可觉察失真度计算方法 |
CN103051901A (zh) * | 2013-01-14 | 2013-04-17 | 北京华兴宏视技术发展有限公司 | 视频数据编码装置和视频数据编码方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9237343B2 (en) * | 2012-12-13 | 2016-01-12 | Mitsubishi Electric Research Laboratories, Inc. | Perceptually coding images and videos |
-
2014
- 2014-11-10 CN CN201410643565.1A patent/CN104378636B/zh not_active Expired - Fee Related
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101621708A (zh) * | 2009-07-29 | 2010-01-06 | 武汉大学 | 基于dct域的彩色图像可觉察失真度计算方法 |
CN103051901A (zh) * | 2013-01-14 | 2013-04-17 | 北京华兴宏视技术发展有限公司 | 视频数据编码装置和视频数据编码方法 |
Non-Patent Citations (1)
Title |
---|
基于JND的H.264编码模式选择算法;王晓;《电子科技大学学报》;20130131;第42卷(第1期);全文 * |
Also Published As
Publication number | Publication date |
---|---|
CN104378636A (zh) | 2015-02-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104378636B (zh) | 一种视频图像编码方法及装置 | |
CN107439012B (zh) | 用于环内转换的方法、装置和计算机可读存储介质 | |
De Simone et al. | A H. 264/AVC video database for the evaluation of quality metrics | |
CN104219525B (zh) | 基于显著性和最小可察觉失真的感知视频编码方法 | |
JP3743384B2 (ja) | 画像符号化装置及び方法、並びに画像復号装置及び方法 | |
Wan et al. | A novel just noticeable difference model via orientation regularity in DCT domain | |
US10469876B2 (en) | Non-local adaptive loop filter combining multiple denoising technologies and grouping image patches in parallel | |
CN107241607B (zh) | 一种基于多域jnd模型的视觉感知编码方法 | |
CN104994382B (zh) | 一种感知率失真的优化方法 | |
CN105635743A (zh) | 基于显著性检测和全变分的最小可察觉失真方法及系统 | |
Choi et al. | Video quality assessment accounting for temporal visual masking of local flicker | |
Zhang et al. | Reducing blocking artifacts in compressed images via transform-domain non-local coefficients estimation | |
DE102019218316A1 (de) | 3d-renderer-zu-videocodierer-pipeline für verbesserte visuelle qualität und geringe latenz | |
He et al. | Video quality assessment by compact representation of energy in 3D-DCT domain | |
CN111193931A (zh) | 一种视频数据的编码处理方法和计算机存储介质 | |
DE102019215911A1 (de) | Adaptive inhaltsquantisierung zur videocodierung | |
Yang et al. | Optimized-SSIM based quantization in optical remote sensing image compression | |
CN106664404A (zh) | 视频编码中的块分割方式处理方法和相关装置 | |
Song et al. | Efficient debanding filtering for inverse tone mapped high dynamic range videos | |
US8611434B2 (en) | Image processing method and apparatus, image processing program, and storage medium which stores the program | |
JP2004023288A (ja) | 動画像符号化のための前処理方式 | |
JP2004528791A (ja) | インターフレーム符号化方法および装置 | |
US8442338B2 (en) | Visually optimized quantization | |
Zhao et al. | Fast CU partition decision strategy based on human visual system perceptual quality | |
CN108521575B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20170707 Termination date: 20191110 |
|
CF01 | Termination of patent right due to non-payment of annual fee |