ffmpeg 的安装
1、在 https://www.pcsoft.com.cn/down/36231?module=soft 可下载到 win 64 的版本,解压到自己的盘内,我解压到了 D:\ffmpeg-4.3.1-win64-static
2、右键单击 -我的电脑,属性->高级系统设置->系统环境变量->Path->新建输入自己的FFmpeg路径(我的是D:\ffmpeg-4.3.1-win64-static\bin)点击确定
3、打开cmd 输入ffmpeg,显示如下即为安装成功
计算 PSNR
现在要计算 rec.yuv 和 dec.yuv 的 psnr,则在视频所在目录下打开 cmd 输入
ffmpeg -pix_fmt yuv420p -s 1920x1080 -i rec.yuv -pix_fmt yuv420p -s 1920x1080 -i decs.yuv -lavfi psnr="stats_file=psnr.log" -f null -
use '-frame' to specify the number of frames to be cauculated, i.e.
ffmpeg -pix_fmt yuv420p -s 1920x1080 -i Kimono_1920x1080_24.yuv -pix_fmt yuv420p -s 1920x1080 -i Kimono22.yuv -frames 12 -lavfi psnr="stats_file=psnr.log" -f null -
其中视频文件可以是 .yuv 也可以是 .mp4,两个文件的分辨率要一致
-pix_fmt 指定 视频格式
-s 指定大小(不指定大小会显示 Picture size 0x0 is invalid xxx.yuv: Invalid argument)
如果把 psnr="stats_file=psnr.log" 换成 psnr 则不会输出 psnr.log 文件
以上命令输出逐帧比较的 psnr.log 文件并在控制台给出总的 psnr 情况
计算 SSIM
同样是计算当前目录下两个视频的 SSIM,命令如下,其中 352x288 是视频的 宽x高,两个文件的分辨率要一致
ffmpeg -s 352x288 -i rec.yuv -s 352x288 -i dec.yuv -lavfi ssim="stats_file=ssim.log" -f null -
可使用 VCEG-AE07.rar 内提供的 .xls 文件来计算BD-rate和BD-PSNR,具体使用方法详见 这里
版权声明:本文为dongmie1999原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。