郭 琮 杨熙冲 陈华文 蒙智强 苏梓铭 陈殷彬
(威凯检测技术有限公司 广州 510663)
摄像头作为最直观的信息采集元器件在电子产品智能化中起到了关键作用。由摄像模组自身结构所导致炫光鬼像现象,会严重影响信息的采集。本文通过介绍摄像模组的结构,并在实验室中模拟炫光鬼像的形成条件,分析炫光鬼像的成因,使用MATLAB软件分析摄像模组在实验室中拍摄的图片,得到一种炫光鬼像面积的测量方式。
景物通过镜头生成光学图像投影到感光传感器上转化为电信号,经过 A/D转化后变为数字图像信号,通过图像进行加工处理,转化为显示设备能处理的数字信号,通过显示屏呈现出来[1],其结构如图1所示。
图1 摄像模组结构
镜头一般是由多个透镜组成,透镜的材料通常是玻璃或塑胶。大多数镜头都会采用多片透镜组(通常2~6片)的方式来设计,如图2所示。在成像中不同透镜有着不同的作用,如双凸透镜可以减小畸变,弯月透镜可以消除色差,透镜数量的增加从一定程度上可以提升图像质量。但是随着透镜数量的增加,光线在透镜之间的反射次数也会随之增加,这就会导致有大量的炫光和鬼像出现,反而对成像造成影响。
图2 镜头的组成
本文参考业内通用的测试方法,制造能够产生炫光与鬼像的测试环境,选择更容易产生炫光鬼像的车载摄像头进行测试。
2.1.1 实验设备
在炫光的模拟中,使用亮度为(5~10)Mcd/m²的光源并且光源在视场中占(30~34)arcmin(弧分)。
2.1.2 实验环境布置
炫光的模拟实验全程需要光照度不得大于2lux的标准暗室下进行。光源面对DUT。结合DUT的焦距以及光源在视场中所占弧分,确定光源的通光孔径以及光源与DUT的距离。经计算,在本次实验中光源与DUT的距离为76.8 cm,如图3所示。
图3 实验室模拟示意图
2.1.3 实验步骤
保证光源在DUT视场内,不断调整光源的入射角度,使成像图像中光斑的面积最大。通过分析程序,计算信号强度大于图像中最大强度50 %的区域所占面积,并计算该区域与整个图像面积的比值。
2.1.4 实验结果
由图4可知,在实验室环境下镜头产生了红色炫光,严重影响了成像。
图4 炫光实验结果
图5 转台转动角度示意图
2.2.1 实验设备
点光源功率为1 W、色温为6 000 K、发光角度为(110±10)°(半光强),照度为(220±22)Lux,在暗箱(室)中进行测试。
2.2.2 试验环境布置
鬼像的模拟在暗室中进行,暗室在没有光源的条件下照度不得大于2 lux。光源面对车载摄像头如图3所示。DUT镜头到光源的距离为(400±10)mm
2.2.3 实验步骤
将DUT在水平方向顺时针旋转,旋转中心为镜头的几何中心,每次旋转后的图像之间相隔10 %的水平视场,直到光源超出水平视场40 %区域为止,并保存各视场图像;新安置DUT正对光源,在水平方向按逆时针方向旋转,图像之间相隔10 %的水平视场,直到光源超出水平视场40 %区域为止,并保存各视场图像;统计分析和计算各视场图像中的鬼像的面积占比和亮度比值。
2.2.4 实验结果
结合图6~8可知,在实验室环境下不同位置上镜头产生不同的鬼像,对成像造成影响。
图6 位置1拍摄画面
结合镜筒的结构与实验室的结果可知,当光线射入镜头会在镜头表面产生反射现象,进入镜筒的光线也会在镜筒内壁产生反射从而引起了炫光,导致图像对比度降低的现象。需要注意的是,摄像模组是否对焦也会影响炫光的大小。如摄像模组没有对焦,成像画面中的炫光会变大。这种现象不是由于摄像模组的结构设计导致,而是因为模糊所导致的。所以在进行实验之前要把摄像模组设置为自动或手动对焦,排除因对焦而产生的炫光变大现象。
由于光线照射在镜片上时,光线通过每一层透镜时都会产生一次折射,并且光线会在镜面与镜筒内部重复反射,反射光再成像[2],产生局部遮盖的现象。通过实验室的模拟可以验证鬼像的成因,即由于光线在透镜之间叠加而引起的影响成像的现象。
图6为光源正对摄像模组,图7光源与摄像模组成10 %视场角,图8光源与摄像模组成20 %视场角。通过对比可以得出当光源直射摄像模组时鬼像并不明显对成像的影响可以忽略,转动摄像模组,光源与摄像模组呈一定角度时,才会产生较为清晰的鬼像,且随着光源与摄像模组之间的角度的变化,鬼像的位置、大小以及亮度也会随之改变。需要注意的是,在光源与摄像模组之间夹角的角度较小时,鬼像和炫光会有部分的重合,导致在成像画面中附加像的亮度为炫光亮度与鬼像亮度的叠加,不是其真实的亮度,因此在分析鬼像与成像画面面积占比时,数值会有一定的偏差。实验室给出的解决方法为以光源中心为圆心,鬼像所在位置与圆心德距离为半径画圆,分析圆上其他位置炫光的亮度,附加像的亮度与炫光亮度之差即为所求鬼像的亮度。
图7 位置2拍摄画面
图8 位置3拍摄画面
依据在实验室中模拟得到的图像结果,本文提出一种炫光、鬼像与成像画面面积占比的分析程序。工程师在该程序中可以自由的选择感兴趣的区域,通过图像二值化与矩阵运算的方式,把图像转化为数字矩阵,通过数学计算,得到该区域的亮度值。并在整个画面内检索最亮点,获取最亮点亮度值,对感兴趣区域的炫光、鬼像面积比进行计算。得到工程师想要的数据。该算法的精度为像素级别,误差非常小,可以有效的对炫光与鬼像在成像画面中的面积占比进行计算。不仅可以帮助工程师了解产品的质量情况,还可以帮助制造商把控产品质量。
测试程序中数值可以根据不同产品的需求进行调整,本程序中的参数适用于车载摄像头。
以下为测试程序的代码。
Algorithm 1:interested area select Data: picture under test p,The number of points that make up area k,the first point of the area c1,the cursor X coordinate x,cursor Y coordinate y,the cursor X coordinate of the first point of the area x1,the cursor Y coordinate of the first point of the area y1,Result: the picture which select the interested area S1 1 in: p 2 P1←rgb2gray(p);3 k←2;4 in: first position of cursor 5 While c==1 do 6 if c1==1 then 7 m(k)←x1;8 n(k)←x1;9 line([m(k-1) m(k)],[n(k-1) n(k)]);10 k=k+1;11 c=c1;
算法1:鬼像和炫光的区域选择。
Algorithm 2: glare area test Data: the picture which select the interested area S1,the horizontal pixels number of p a,the vertical pixels number of p b,Number of pixels with peak brightness ratio greater than 50% c1,Result: the area ratio with peak brightness ratio greater than 50% r1 1 in:S1 2 S1←rgb2gray(S1);3 M←max(max(S1));4 c1←0;5 for i← 1 to a do 6 for j← 1 to b do 7 if S1(i,j) >=0.5*M 8 c1←c1+1;9 end 10 end 11 end 12 t←a*b;13 r1←(c1/t)*100;
算法2:炫光亮度大于图片最大亮度的50 %的面积占比r1。
Algorithm 3: ghost area test
Data: the picture which select the interested area S1,the horizontal pixels number of p a,the vertical pixels number of p b,Number of pixels with peak brightness ratio greater than 50% c1,Number of pixels with peak brightness ratio between 30%-50% c2,
Result: the area ratio with peak brightness ratio greater than 50% r1,the area ratio with peak brightness ratio between 30%-50% r2 1 in:S1 2 S1←rgb2gray(S1);3 M←max(max(S1));4 c1←0;5 c2←0;6 for i← 1 to a do 7 for j← 1 to b do 8 if S1(i,j) >=0.5*M 9 c1←c1+1;10 elseif S1(i,j)<0.5*M &&S1(i,j)>0.3*M;11 c2←c2+1;12 end 13 end 14 end 15 t←a*b;16 r1←(c1/t)*100;17 r2←(c2/t)*100;
算法3鬼像峰值亮度比大于50 %的面积占比r1,鬼像峰值亮度比在(30~50)%之间的面积占比r2。