摄像头编码能力测试方案
背景
- 随着项目开发的多样化,不同的项目需要使用不同平台的摄像头来采集和传输视频信号,或者也有相同项目,需要使用不同平台适配的情况。
- 摄像头的编码能力会影响视频的质量和效率,因此需要对不同平台的摄像头进行编码能力的测试和评估。
- 编码能力的测试和评估需要考虑多个方面,包括编码参数、编码效率、编码质量、编码稳定性等。
- 编码质量的评估需要使用客观的算法,来模拟人眼的主观感受,并给出客观的评分。
测试方案:
- 编码参数的选择:为了公平地比较不同平台的编码能力,需要使用相同的编码参数。方案选择使用H.264编码格式,1440p分辨率,20fps帧率,2Mbps码率,CRF=23质量。这些参数是比较常用的视频编码参数,可以适用于多种场景和需求。
- 视频内容的选择:为了反映不同平台的编码效果,需要选择一些具有代表性的视频内容,例如,静态的风景,动态的人物,复杂的纹理等。本文选择使用以下四种视频内容:(内容来自xiph.org)
- Big Buck Bunny:一部3D动画短片,具有丰富的颜色和细节,以及多样的动作和场景。
- Crowd Run:一段拍摄人群奔跑的视频,具有高速的运动和大量的细节。
- Park Joy:一段拍摄公园里的的视频,具有中等的运动和颜色。有大量移动的树叶和阴影等细节。
- Old Town Cross:一段拍摄老城区的十字路口的视频,具有低速的运动和暗淡的颜色。
- 测试时长的选择:为了保证测试的准确性和可重复性,需要确定每种视频内容的测试时长。本文选择使用10秒的测试时长,这样可以覆盖视频内容的主要特征,同时也可以控制测试的时间和数据量。
- 本方案使用VMAF测试工具,它是由Netflix开发的一种客观的全参考视频质量指标,可以根据人类视觉模型和机器学习方法,预测视频质量的主观感受。VMAF的分数范围从0到100,0表示最差的视频质量,100表示最佳的视频质量。
参考
测试样例
- 基于x86本地测试,使用FFMPEG对图像进行编码。
1 |
|
生成图像截图:
原始视频:
1 |
|
生成评分:
可见在-qp 50情况下,编码后视频平均分为mean="23.912806"分。分数较低。重新修改qp值为30(提高质量),重复以上步骤:
生成图像截图:
生成评分:
可见在-qp 30情况下,评分达到mean=“97.287654”,已经基本接近原始视频水平。同时编码后视频大小有明显变化。
此外,需要特别关注min="87.711983"最低分指标所在的视频帧在人眼实际观测下的质量。因为从心理上来说,人们可能更容易发现质量明显较低的图像。