视频编码器效率评价标准:BDPSNR和BDBR

摘要

阅读完官方文档,在这里简单的总结一下。本文主要介绍两个评价标准BDPSNRBDBR(BD-bitrate)的计算过程。

正文

首先计算PSNR(peek signal-to-noise ratio)和bitrate

PSNR

峰值信噪比表示的是信号最大可能功率与噪声功率的比值。在视频图像领域,也就可以表示编码器编码过程中引入的失真。通常通过均方误差 ( M S E ) (MSE) (MSE) 来定义。假设两个 m m m x n n n 单色图像 I I I K K K,两者的均方误差为:

M S E = 1 m n ∑ i = 0 m − 1 ∑ j = 0 n − 1 [ I ( i , j ) − K ( i , j ) ] 2 MSE=\frac{1}{mn}\sum_{i=0}^{m-1}\sum_{j=0}^{n-1}[I(i,j)-K(i,j)]^2 MSE=mn1i=0m1j=0n1[I(i,j)K(i,j)]2

峰值信噪比定义为:

P S N R = 10 ∗ log ⁡ 10 ( M A X I 2 M S E ) PSNR =10*\log_{10}{(\frac{MAX_I^2}{MSE})} PSNR=10log10(MSEMAXI2)

其中 M A X I MAX_I MAXI表示像素的最大值, 8 b i t 8bit 8bit就为255, P S N R PSNR PSNR单位为 d B dB dB。对于YUV文件,一个道理,色度亮度一起计算。

当前得到的是一帧的PSNR,而整个视频的PSNR则为每一帧的算术平均值。

bitrate

码流比特率的计算较为简单,直接将码流的总比特数除以帧数得到平均值,然后再乘以fps,就是bitrate,单位为kbit/s

一个编码器的QP(quantization parameter)决定编码失真的程度,随着QP的变化,PSNRbitrate的值也随之改变。基于这三个值,可以得到一个以 b i t r a t e / P S N R bitrate/PSNR bitrate/PSNR为坐标系的曲线,该曲线就表示当前编码器的效率。

将两个编码器进行对比,也就可以直接观察两者的曲线。但在大多数情况下,曲线往往是交错在一起的,不同情况下效果是不同的。要得到两个编码器到底哪个好哪个坏,仅仅依靠观察是不行的,我们需要去量化两个曲线的差距,最终得到一个总的值,明确表示哪个编码器比较好,好到什么程度。最终得到的那个值就是BDPSNR或者BDBR。接下来就来看这两个值是如何计算的。

BDPSNR、BDBR

量化曲线。很简单,定积分除以积分区间,得到曲线的均值。两个曲线的均值相减,量化出两个曲线的差距,也可以说是间隔。具体的公式省略了。

但要算积分,首先要得到曲线的表达式。而要得到一个稳定的,不会出现什么乱七八糟的参数的表达式。需要对坐标系进行一些调整。这里直接给出调整后的坐标系,具体怎么调整的可以参考文档VCEG-M33

调整后的坐标系为 10 ∗ lg ⁡ ( b i t r a t e ) / P S N R 10*\lg(bitrate)/PSNR 10lg(bitrate)/PSNR表示 x / y x/y x/y轴。该坐标系下,表达式可以确定为一个三阶的多项式。

y = a + b ∗ x + c ∗ x 2 + d ∗ x 3 y =a +b*x+c*x^2+d*x^3 y=a+bx+cx2+dx3

该表达式有四个参数,需要四组xy值,就可以确定这四个参数。因此需要取四个QP值得到四组PSNR/bitrate,确定多项式。

当前有两条曲线,线上分别有四个点,取所有点中的最大最小x值,作为积分区间,计算曲线均值,相减得到BDPSNR,单位为dB

x / y x/y x/y轴的对应关系互换,也就是 P S N R / 10 ∗ lg ⁡ ( b i t r a t e ) PSNR/10*\lg(bitrate) PSNR/10lg(bitrate)表示 x / y x/y x/y轴,过程相同,相减得到BDBR,单位为%百分号。因为 log ⁡ ( a ) − log ⁡ ( b ) \log(a)-\log(b) log(a)log(b)得到的是 log ⁡ ( a b ) \log(\frac{a}{b}) log(ba),两个值相除,而不再是减。

总结

文字描述大致就是如此,参考文献中有几张图,可以帮助理解。这里体现一下对应关系:VCEG-L38介绍了PSNRbitrate的计算方法、VCEG-M33介绍了BDPSNRBDBR的计算方法、VCEG-AE07给出了Excel用以计算BDPSNRBDBR,以及Excel的使用方法。了解了计算过程,excel使用方法也非常好理解。VCEG-AE有一个系列,它们之间的区别不太清楚。

所有的文档在Google上都可以直接下载,不用到CSDN上面下。

参考文献

Document VCEG-L38
Title : Recommended Simulation Conditions for H.26L
https://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web&cd=1&ved=2ahUKEwjb3qHO5_fhAhVb4XMBHVMwBgUQFjAAegQIBRAC&url=https%3A%2F%2Fwww.itu.int%2Fwftp3%2Fav-arch%2Fvideo-site%2F0101_Eib%2FVCEG-L38.doc&usg=AOvVaw3S3714B_ppSlIytQOCgn9O

Document VCEG-M33
Title : Calculation of average PSNR differences between RD-curves
https://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web&cd=2&cad=rja&uact=8&ved=2ahUKEwjb3qHO5_fhAhVb4XMBHVMwBgUQFjABegQIAxAC&url=https%3A%2F%2Fwww.itu.int%2Fwftp3%2Fav-arch%2Fvideo-site%2F0104_Aus%2FVCEG-M33.doc&usg=AOvVaw28nfdGxLOuM9xOYxBLc5wA

Document VCEG-AE07
Title : An excel add-in for computing Bjontegaard metric and its evolution
https://www.itu.int/wftp3/av-arch/video-site/0701_Mar/

  • 21
    点赞
  • 58
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
H.265/HEVC(High Efficiency Video Coding)是视频编码的新标准,也是H.264/AVC(Advanced Video Coding)的后继者。H.265/HEVC的目标是提供比H.264/AVC更高的压缩性能,即可以在相同的视频质量下减小文件大小,或者在相同的文件大小下保持更高的视频质量。 H.265/HEVC通过引入一系列新的技术和算法来实现高效率视频编码。其中一项重要的改进是采用更高级的块划分和运动估计算法,以利用视频序列中的时空相关性。此外,H.265/HEVC还引入了新的预测模式、变换和量化方法,以更好地利用视频序列中的统计特性。通过这些改进,H.265/HEVC可以达到更高的编码效率,减小文件大小。 H.265/HEVC还支持更高的分辨率和更高的帧率。相比于H.264/AVC,H.265/HEVC可以编码更大尺寸的视频,以适应高清视频和超高清视频的需求。此外,H.265/HEVC还支持更高的帧率,可以编码更流畅的视频。 H.265/HEVC还有一些其他的扩展特性。例如,它可以支持更多的色彩空间和位深度,以提供更丰富和准确的颜色表现。它还支持有损和无损视频编码,以满足不同应用场景的需求。 总的来说,H.265/HEVC是一种具有高压缩性能和更好视频质量的视频编码标准。它在视频通信、视频点播和储存等领域有着广泛的应用前景,可以为用户提供更好的观看体验,并帮助节省带宽和存储空间。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值