首页> 中国专利> 一种基于H264/AVC视频的PSNR盲估计方法

一种基于H264/AVC视频的PSNR盲估计方法

摘要

本发明公开一种基于H264/AVC视频的PSNR盲估计方法,是分析H264/AVC视频编码特征而提出的参数估计方法,属于多媒体质量评价领域。本发明主要针对不同视频内容及H264/AVC视频的编码方式,分析了帧内预测与帧间预测对视频编码质量的影响,通过DCT系数分布特性计算PSNR值的算法,能够得到更加精确的PSNR估计值。本发明方法包括如下步骤:1)提取每一帧的DCT系数;2)提取每一帧的宏块信息;3)根据宏块信息对宏块进行分类;4)对分类后的宏块分别计算噪声并进一步得到PSNR估计值。本发明方法能大幅度提高H264/AVC视频的PSNR估计准确值,尤其在P帧与B帧方面。

著录项

  • 公开/公告号CN105681784A

    专利类型发明专利

  • 公开/公告日2016-06-15

    原文格式PDF

  • 申请/专利权人 中山大学;

    申请/专利号CN201610037960.4

  • 发明设计人 刘红梅;胡安强;陈一宇;黄继武;

    申请日2016-01-20

  • 分类号H04N17/00;

  • 代理机构广州粤高专利商标代理有限公司;

  • 代理人林丽明

  • 地址 510275 广东省广州市海珠区新港西路135号

  • 入库时间 2023-12-18 15:41:19

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2022-12-30

    未缴年费专利权终止 IPC(主分类):H04N17/00 专利号:ZL2016100379604 申请日:20160120 授权公告日:20180706

    专利权的终止

  • 2018-07-06

    授权

    授权

  • 2016-07-13

    实质审查的生效 IPC(主分类):H04N17/00 申请日:20160120

    实质审查的生效

  • 2016-06-15

    公开

    公开

说明书

技术领域

本发明涉及多媒体质量评价领域,具体涉及一种基于H264/AVC视频的PSNR 盲估计方法。

背景技术

随着数字信息处理技术的发展以及各种视频摄像设备的普及,数字视频越来 越多地出现在我们的生活里,逐步成为人们获取信息的重要途径。这给人们带来 方便与娱乐的同时,也带来了其他的一些问题。比如视频质量问题逐渐引起人们 的注意。很多时候人们是在线观看视频,因此很注重视频的质量与播放的流畅性。 视频质量的评估可以监控视频系统性能,同时实时进行反馈使系统调整参数达到 视频质量与播放流畅程度之间的平衡。PSNR是质量评价的重要参数,然而其计 算需要原始视频与编解码之后的视频,因此对其进行盲估计显得很有必要。由于 视频DCT系数满足一定特性,因此通过利用该特性以及相应的编码技术特性进行 比较精确的PSNR盲估计成为可能。

发明内容

本发明的目的是提出一种基于H264/AVC视频的PSNR盲估计方法,通过该方 法可以较准确的估计视频每帧的PSNR值。

为了实现上述目的,本发明的技术方案为:

一种基于H264/AVC视频的PSNR盲估计方法,具体步骤如下:

1)提取每一帧的DCT系数以及宏块信息;

2)根据宏块信息对宏块进行分类;

3)对分类后的宏块分别计算噪声并进一步得到PSNR估计值。

具体的各步骤的实现方式为:

步骤1)的实现方式为:利用H264/AVC的解码器JM对H264/AVC视频码流进 行解码,以宏块为单位提取DCT系数以及每个宏块的预测信息。

所述步骤2)根据宏块信息对宏块进行分类的实现方式为:根据宏块预测信 息对每一帧进行区域的划分,若该帧为I帧,则分为平坦区域与非平坦区域,若 该帧为P帧或者B帧,则分为帧内预测区域,SKIP区域,以及普通帧间预测区域。

具体是:若该帧为I帧,则将每个宏块通过滤波器,识别出每个宏块是否属 于平坦区域;滤波器是根据每个宏块及其相邻宏块的预测方式进行设计的,若该 宏块以及相邻的宏块中至少有一个宏块是采用帧内16×16预测方式,则该宏块属 于平坦区域;由此将该帧分成平坦区域与非平坦区域;若该帧为P帧或者B帧, 则根据宏块信息将所有宏块分为3类,第一类为帧内预测宏块,即采用帧内预测 方式的宏块,第二类为SKIP宏块,即采用SKIP预测方式的宏块,剩下的为第三 类,即普通的帧间预测宏块。

所述步骤3)对分类后的宏块分别计算噪声,并进一步得到PSNR估计值,对 帧内的不同区域分别进行噪声的估计,将每个区域的相加得到的总和作为该帧的 总的噪声,并进一步得到估计的PSNR。

具体是:

若该帧为I帧,则对于非平坦区域的DCT系数使用PSNR计算方法计算非平坦 区域的噪声,若量化因子小于20,则对平坦区域使用PSNR计算方法计算平坦区 域的噪声,并与非平坦区域的噪声相加作为总的噪声,否则仅使用非平坦区域的 噪声作为总的噪声;

若该帧为P帧或者B帧,则对于帧内预测区域以及普通帧间预测区域分别使 用PSNR计算方法进行计算,得到帧内预测区域的噪声以及普通帧间预测区域的 噪声,而对于SKIP预测宏块,如果SKIP预测宏块所占本帧总宏块的比例小于10%, 则使用SKIP预测宏块左边、上边或者右上边的宏块的噪声作为SKIP预测宏块的 噪声,其中优先级顺序为左边好于上边,上边好于右上边,否则,使用参考帧平 均像素噪声作为SKIP宏块每个像素点的噪声,并计算得到SKIP预测宏块的噪声, 将三者相加得到该帧总的噪声;

得到总的噪声后根据PSNR计算公式得到估计的PSNR值。

基于原始的PSNR计算方法做了改进,原始的PSNR计算方法如下:

PSNR的计算公式如下:

PSNR=10lg((2n-1)2MSE)

其中,(2n-1)2表示图像可能的最大的亮度值的平方,n表示每个亮度值所 占的比特数,MSE表示原始图像与编解码之后的图像之间的均方误差。

MSE的计算公式如下:

MSE=1a*bΣi=0aΣj=0b(Ydec(i,j)-Yori(i,j))2=1a*bszong2

其中,Yori表示原始图像,Ydec表示经过编码和解码后图像,a*b表示原始图 像的大小,szong表示原始图像与编解码之后图像之间的总误差。这是在像素域的 表示,一般的,在解码端不能得到原始视频图像Yori

此处选取DCT系数分布满足拉普拉斯分布,拉普拉斯分布的密度公式如下:

ρ(x)=12σe(-2|x|σ)

其中只有σ一个为未知参数,拉普拉斯分布以0为中心左右对称,σ越小, 分布越向中间集中,反之,分布越向两边扩散。在解码端可以得到量化后的DCT 系数,本发明利用量化后的DCT系数分布,可以计算出量化成0的DCT系数占所 有DCT系数的概率,而这个概率就应该等于拉普拉斯分布密度函数在量化成0的 区间内所做的积分,即

NzeroNtotal=-QstepQstep12σe(-2|x|σ)dx

其中,Nzero表示量化成0的DCT系数的个数,Ntotal表示这个频率中DCT系数 的个数,[-Qstep,Qstep]表示量化成0的区间,解这个积分方程我们便可以得到拉 普拉斯分布密度函数的未知参数如下:

σ=-2Qstepln(1-NzeroNtotal)

如上所示对于普通的DCT变换而言,假设输入信号为X,DCT变换后信号 变成T,经过量化和反量化过程信号变成T',最后经过反DCT变换后成为输出信 号Y。在H.264视频编码标准中,输入信号X经过整数DCT变换后信号变成W,

经过量化和反量化过程后信号变成W',再经过反DCT变换后成为输出信号Y。

根据前面介绍的H.264视频编码标准,T和W之间相差一个系数矩阵E,T'和W' 之间相差一个系数矩阵Ef,结果如下:

T=W*E

W'=T'*Ef

那么对于一个编码端的DCT系数W来说,经过量化和反量化的过程后,

W'=((|W|*MF+f)>>qbits)*MF'<<qbits'

其中,MF'为反量化的查表参数,qbits'为反量化的左移数。

所以这个DCT系数所对应的像素域域误差就可以表示为

e(W)=Y-X=T-T=WEf-W*E=((|W|*MF+1)>>qbits)*MF<<qbitsEf-W*E

所以可以得到这个频率的总误差为

s2(W)=ΣW=-+(num*ρ(W)*(e(W))2)

其中,num表示这个频率内DCT系数为W时的个数,ρ(W)表示拉普拉斯分 布密度函数。

进一步的,可以得到16个频率的总误差为

这样,得到了总的误差后,再结合MSE的计算公式和PSNR的计算公式就可 以求得PSNR的估计值了。

与现有技术相比,本发明的有益效果为:本发明分析了帧内预测与帧间预测 对视频编码质量的影响,通过对DCT系数分布特性以及宏块的分析,对宏块进行 分类,分别计算其误差进而求得总的误差后,能够得到更加精确的PSNR估计值。 本发明方法能大幅度提高H264/AVC视频的PSNR估计准确值,尤其在P帧与B帧 方面。

附图说明

图1是本发明的实现流程示意图。

图2是某帧视频图像的各频点处的DCT系数分布图。

图3是某帧具有大量平坦区域的视频图像。

图4是图3中非平坦区域的DCT系数分布情况。

图5是图3中平坦区域的DCT系数分布情况。

图6是某P帧图像中SKIP宏块中的一个4x4块以及该块的参考块的噪声情况。

图7-图10是改进前算法与改进后算法的效果比较。

具体实施方式

下面结合附图对该发明进行详细说明。

一种基于H264/AVC视频的PSNR盲估计方法过程如附图1所示,对于原始的 H264码流,在经过解码器进行解码时提取相关信息,之后再对提取得到的信息 进行处理最终得到估计的PSNR值。

本发明对基于H264/AVC视频的PSNR盲估计方法,其具体实施方式如下:

1)提取每一帧的DCT系数以及宏块信息;

是对于一个H264编码码流,采用H264/AVC的解码器JM对其进行解码,同时 以宏块为单位提取每个宏块的DCT系数,以及每个宏块的预测模式。

2)根据宏块信息对宏块进行分类;具体是:

若该帧为I帧,则将该帧划分为两个区域:平坦区域与非平坦区域。对于每 个宏块,首先通过相关宏块的预测模式对其进行分类。若待分类宏块采用帧内4x4 预测或者帧内8x8预测,则将其归为非平坦区域;若待分类宏块采用帧内16x16 预测,则考察其相邻宏块预测模式,若相邻宏块中存在至少一个宏块采用16x16 预测,则将该宏块归为平坦区域,否则归为非平坦区域。

若该帧为P帧或者B帧,则将该帧划分为三个区域:帧内预测区域,SKIP区 域以及普通帧间预测区域。对于每个宏块,若采用帧内预测模式则将其归为帧内 预测区域,若采用SKIP预测模式则将其归为SKIP区域,若采用其他预测模式则 将其归为普通帧间预测区域。

3)对分类后的宏块分别计算噪声并进一步得到PSNR估计值,具体是:

由于原始视频每个频点处的DCT系数集合满足拉普拉斯分布,因此对于每个 频点,可以通过量化后的零值DCT系数来估计该频点处DCT系数所满足的拉普拉 斯分布的参数,进而得到该拉普拉斯分布的概率密度函数,并利用信息论知识估 算噪声。

对于I帧,首先运用上述算法对非平坦区域进行噪声估计,若该帧的量化因 子大于20,则将非平坦区域的噪声作为该帧近似的总噪声,否则也对平坦区域的 噪声运用上述算法进行噪声估计,并将平坦区域的噪声与非平坦区域的噪声相加 作为整帧图像的总噪声。

对于P帧与B帧,首先对于帧内预测区域与普通帧间预测区域分别使用上述 算法进行噪声估计,对于SKIP区域的噪声,如果SKIP预测宏块所占本帧总宏块 的比例小于10%,则使用SKIP预测宏块左边、上边或者右上边的宏块的噪声作为 SKIP预测宏块的噪声,其中优先级顺序为左边好于上边,上边好于右上边,否 则,使用参考帧平均像素噪声作为SKIP宏块每个像素点的噪声,并计算得到SKIP 预测宏块的噪声,最后将帧内预测区域,SKIP区域,以及普通帧间预测区域的 噪声相加作为该帧图像的总噪声。

得到估计的噪声后,利用PSNR计算公式得到该帧图像的估计的PSNR值。

本发明方法的原理是:原始视频每个频点处的DCT系数满足拉普拉斯分布, 如图2所示,因此可以通过确定每个频点处的分布概率密度函数来确定每个频点 处的噪声,所有频点处的噪声之和为总的噪声。然而,由于H264/AVC中使用预 测编码的模块,因此需要先对提取得到的信息进行处理。对于I帧来说,实际上 不同区域的DCT系数满足不同的分布函数,特别是当图像中存在大片的平坦区域 的时候对最终计算的结果造成的影响较大,主要原因是平坦区域存在大量的零值 系数,使得平坦区域的系数分布与总体的分布情况存在较大差异,图3为一帧存 在大片平坦区域的图像,图4与图5分别为该图像非平坦区域与平坦区域的DCT 系数分布。而对于P帧与B帧来说,由于可同时存在帧内预测与帧间预测,因此 需要对两种预测方式分开进行计算。而对于帧间预测方式还存在一种特殊的形式 即SKIP宏块预测,采用该预测方式将不携带任何残差信息,然而并不代表噪声 为0,实际上SKIP宏块噪声与其参考块噪声相似,这个特点可用来估算SKIP宏块 的噪声,图6显示SKIP宏块中的4x4块与相应参考块的噪声。针对上述特性,我 们通过参考宏块的预测模式信息对算法进行了相应的改进,使得最终的结果更为 精确。

下面给出本发明方法的实验结果,图7,图8,图9,图10中黑色表示现有算 法效果,灰色表示本发明的效果,可见,对于I帧来说估计效果略有提升,而对 于P帧与B帧来说,估计效果则得到了大大的提高,说明改进后的算法有效地解 决了原始算法存在的一些问题。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号