为什么会出现闪烁或者图像明暗相间的横条纹?
以国内50Hz交流电为例,灯具将是以100Hz的频率波动,在同一个周期内各个点的亮度不一致。而cmos sensor在曝光的时候是全局曝光或者是局部曝光。当全局曝光时,哪怕曝光时间相同,也会导致帧与帧的图像亮度不一致,这是由于外界亮度在周期变化导致的,所以眼睛直观的看到图像闪烁;而局部曝光时,同一图像的不同行是分开曝光的,所以会看到明暗相间的横条纹。
cmos sensor一帧图像数据时间的计算
曝光时间以行长为单位,一般会说曝光行数是多少;而像素时钟 pclk 以 Hz 为单位(有部分会说系统时钟)。
行长:Hsync = hts = H_Size + H_Blank /* 行长,会增加曝光时间,也会影响帧率 */
帧长:Vsync = vts = V_Size + V_Blank /* 帧长,不占用曝光时间,但会影响帧率 */
帧率:fps = pclk / ( hts * vts )
一行的曝光时间:T_Raw = hts / pclk /* T_Raw即代表一行的曝光时间 */
如何规避工频干扰导致的闪烁?
相信在很多地方都可以了解到,只要曝光时间是光能量周期(100Hz)的整数倍,即可规避工频干扰导致的闪烁问题。
但是当曝光时间低于光能量周期(10ms)时,有应该如何规避这个问题呢?
假设帧率为10fps,那么设置一帧的时间间隔刚好为100ms,那么,每帧开始曝光开始时间都会是一致的,在相同的曝光时间,得到的光能量也就一致了。(由于有些提示是100ms的帧间隔,但是由于误差问题,不是准确的100ms,误差累计导致闪烁)