例如,我可以给出以下视频格式之一:
400
411
420
422
444
选择每一种视频格式会显示不同的视频序列PSNR值。或者有什么方法可以确定我输入的YUV视频序列的YUV视频数据格式?
发布于 2017-03-20 19:57:50
Y- PSNR :您可以简单地提取原始图像和参考图像的Y分量,并计算每个图像/视频帧的Y值。
对于视频:您需要计算所有估计的PSNR值的平均值。
发布于 2017-03-20 21:58:19
根据维基百科,PSNR是针对每个通道的颜色空间。
另外,对于彩色图像,图像被转换成不同的颜色空间,并针对该颜色空间的每个通道(例如,YCbCr或HSL )报告PSNR。
请参阅:ratio
为了计算视频的PSNR,必须有源视频,以及经过某种处理阶段后的相同视频。
PSNR最常用于测量有损压缩编解码器的重建质量)。
如果色次采样(例如将YUV 444转换成YUV 420)是有损压缩管道的一部分,建议在PSNR计算中包括次采样。
注意:没有严格的答案,这取决于你需要测量什么。
示例:
假设输入视频是YUV 444,H.264编解码器是从有损压缩中使用的,并假定预处理阶段是将YUV 444转换为YUV 420。
视频压缩:YUV444 --> YUV420 --> H264 Encoder。
您需要反转流程,然后计算PSNR。
视频重建:H264 Decoder --> YUV420 --> YUV444。
现在以YUV 444格式输入视频,以YUV 444格式重构视频,应用PSNR计算这两个视频。
确定输入YUV视频的YUV视频数据格式:
我建议使用ffprobe工具。
您可以从这里下载它:https://ffmpeg.org/download.html (选择“静态链接”)。
我在这里找到了解决方案:https://trac.ffmpeg.org/wiki/FFprobeTips。
您可以使用以下示例:
ffprobe -v error -show_entries stream=pix_fmt -of default=noprint_wrappers=1:nokey=1 input.mp4https://stackoverflow.com/questions/42910425
复制相似问题