0
点赞
收藏
分享

微信扫一扫

win64 使用 ffmpeg 计算视频 PSNR 和 SSIM


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,显示如下即为安装成功

win64 使用 ffmpeg 计算视频 PSNR 和 SSIM_windows

计算 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 -

win64 使用 ffmpeg 计算视频 PSNR 和 SSIM_windows_02


举报

相关推荐

0 条评论