关于几个图像质量评价参数的计算总结

图像质量的客观评价参数很多,计算方法多样,这里总结几个常用的测试及实现方法,以便大家测试开发时,参考使用。这里,都以单帧作为图像质量的测试输入。测试会使用到opencv及Python的一些库,如cv2, numpy as np,math等,这里不再详细说明。

1.如何处理图像得到SNR
在照片计算中,SNR的计算是使用图片的平均灰度作为Mean分子(信号)
分母为照片灰度的标准差(噪声)。SNR (dB) = 10 log10(S/N).
即先将图片RGB转化为GRAY,在灰度图情况下,作上述计算。
img_gray =cv2.cvtColor(img,cv2.COLOR_BGR2GRAY)
res =10*math.log10(np.mean(img_gray)/std_value)
备注:如果想得到PSNR,对于每个像素8bit的色彩深度,则直接将img_gray=255.

2.如何计算StepChart的阶数
方法一利用每一阶的Gray值,两两相减。(即Imatest的stepchart方法)
方法二利用信噪比SNR进行判断:SNR大于1,为第一个可分辨灰块;SNR持续增大,直到出现SNR首次衰减时,为最后一个可分辨块。算出可分辨比例。

3.Color Accuracy的数值获得
一是把RGB图片转化为L*a*b
DeltaC是a1,b1的平方和开方与a2,b2的平方和开方的差值,物理坐标上表示径向色差
DeltaE是L,a,b差值平方和开方
Deltaab是参照色和对比色a,b的坐标位置之差,物理上表示坐标平面上的颜色位置差异。
对比的是D50下的标准24色卡Lab值,见《ColorData-1p_EN》,对比得到DeltaCMean与DeltaEMean.
二是对于Color Shading是要透过diffuser去拍摄PND灯箱,对比边角位置与中心位置,使用其不同位置Lab,进行对比。得到DeltaC。

4.AWB accuracy
一种计算方法是采用灰卡19~24块(20~23块),理论上R=G=B.纯白R=G=B=1,纯黑R=B=G=0.实际上,不相等,因此计算白平衡误差。
注意,24色卡上不是纯黑和纯白。第22块为接近18%灰。
则饱和度S=[max(R,G,B)-min(R,G,B)]/min(R,G,B)
取几个色块的最大值。即为白平衡误差。
另外注意
RGB三通道转化为Gray一个通道。
RGB转Lab,即使R=B=G,但a!=b

5.VideoNoise的计算获取
总的噪声是V=Vspatial+Vtemp
Vspatial的计算:先对每一帧的所有像素灰度做平均,得到一帧,然后在这一帧计算灰度标准差,即为Spatialnoise.
Vtemp的计算:先在画面取5%的中心ROI区域,在这5%区域利用灰度来计算噪点,然后取帧序列的平均,得到Tempnoise。
Deadpixel定义为灰度小于相邻灰度的50%。

6.视频曝光的测试
仍然利用L值计算,几个关键指标
Lux level:即对18%灰色块,规定的光源下,是否到达额定亮度的情况。
转换时间convergencetime:从一种光源到另一种光源的时间
震荡时间OscillationTime:光源变化后,第一次到达目标亮度的时间。
Overshot:从一种光源到另一种光源的过量变化的具体亮度值(过度收敛/过度提亮的L值) 

7.视频色彩的测试
仍然利用a.b值计算,几个关键指标
WB error 20~23灰色块的Delta ab值
CR error   1~18块的Delta ab值
连续帧进行分析,
得到 WB error曲线和CR error曲线
曲线的以下指标代表视频收敛度:
变化振幅Variation amplitude:不同色温光源转化前后的Delta ab变化幅度(稳定后数值为准)
变化灵敏度Variation intensity:色温转换-稳定过程,震荡过程中,最大震荡幅度。

8.曝光误差的测量
1)简单测量
用相机拍摄24色卡中的18%中性灰块,其在sRGB空间中的像素值与122的偏差就是曝光误差,若偏差大于5,就能从视觉上明显感受到曝光偏差。
2)精确测量
1)读取24色卡的20、21、22、23这四个块在sRGB空间中的像素值,来计算平均值;
2)对sRGB空间上的平均像素值做gamma逆变换得到Sensor捕获的曝光值Exposure=Mean_PixelValue^(1/Gamma)
Log(Exposure)=(1/Gamma)*Log(Mean_PixelValue)
3)根据理论值和实测值计算曝光误差
Exposure_Error=ΔLog(Exposure)=1/Gamma*【Log(Mean_Pixel_value)-log(Mean_Pixel_ref)】=(1/Gamma)Log(Mean_Pixel_value/Mean_Pixel_ref)

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
THE END
分享
二维码
< <上一篇
下一篇>>