2024年3月27日发(作者:)
摄像头调试经验分享
我这里要介绍(de)就是CMOS摄像头(de)一些调试经验.
首先,要认识CMOS摄像头(de)结构.我们通常拿到(de)是集成
封装好(de)模组,一般由三个部分组成:镜头、感应器和图像信号处理器
构成.一般情况下,集成好(de)模组我们只看到外面(de)镜头、接口和封装
壳,这种一般是固定焦距(de).有些厂商只提供芯片,需要自己安装镜头,
镜头要选择合适大小(de)镜头,如果没有夜视要求(de)话,最好选择带有
红外滤光(de)镜头,因为一般(de)sensor都能感应到红外光线,如果不滤
掉,会对图像色彩产生影响,另外要注意在PCB设计时要保证镜头(de)聚焦
中心点要设计在sensor(de)感光矩阵中心上.除了这点 CMOS Sensor硬件
上就和普通(de)IC差不多了,注意不要弄脏或者磨花表面(de)玻璃.
其次,CMOS模组输出信号可以是模拟信号输出和数字信号输出.
模拟信号一般是电视信号输出,PAL和NTSC都有,直接连到电视看(de);数
字输出一般会有并行和串行两种形式,由于图像尺寸大小不同,所要传输
(de)数据不同,数据(de)频率差异也很大,但是串行接口(de)pixel clock
频率都要比并行方式高(同样(de)数据量下这不难理解),较高(de)频率
对外围电路也有较高(de)要求;并行方式(de)频率就会相对低很多,但是
它需要更多引脚连线;所以这应该是各有裨益.(笔者测试使用(de)系统
是8bit并行接口)另外输出信号(de)格式有很多种,视频输出(de)主要格
式有:RGB、YUV、BAYER PATTERN等.一般CMOS Sensor模组会集成ISP在
模组内部,其输出格式可以选择,这样可以根据自己使用(de)芯片(de)接
口做出较适合自己系统(de)选择.其中,部分sensor为了降低成本或者技
术问题,sensor部分不带ISP或者功能很简单,输出(de)是BAYER PATTERN,
这种格式是sensor(de)原始图像,因此需要后期做处理,这需要有专门(de)
图像处理器或者连接(de)通用处理器有较强(de)运算能力(需要运行图像
处理算法).
不管sensor模组使用何种数据格式,一般都有三个同步信号输
出:帧同步/场同步(Frame synchronizing)、行同步(Horizontal
synchronizing)和像素时钟(pixel clock).要保证信号(de)有效状态
与自己系统一致,如都是场同步上升(下降)沿触发、行同步高(低)电
平有效等.
通过以上介绍,我们就可以根据自己(de)使用(de)系统选择适
合(de)sensor模组.要选择接口对应(如果并行接口,sensor模组输出数
据bit位多于接受端,可以用丢弃低位(de)数据(de)方法连接)、数据格式
可以接受或处理、pixel clock没有超过可接受(de)最高频率(有(de)是
可调(de),但帧率会受影响)、场同步和行同步可以调节到一致(de)sensor
模组,这样才可以保证可以使用.
保证这些条件(de)正确性下,还要符合它(de)硬件电路要求,
首要(de)是确定它(de)电源、时钟、RESET等信号是否符合芯片要求,其次
要看所有(de)引脚是否连接正确,这样保证外围(de)电路没有错误情况下
才可能正确显示图像.各个厂商生产(de)产品各不相同,一些厂商
(de)sensor模组在默认状态下就可以输出图像,而有些厂商(de)sensor模
组必须要设置一些寄存器以后才可以得到图像.区别是否可以直接输出图
像,可以通过检测sensor (de)输出脚,如果三个同步信号都有,数据线上也
有数据,那一般就会有默认图像输出,另外也可以跟厂商联系获得有关信
息.如果没有默认输出就需要设置寄存器了,一般都是通过两线串行方式
(IIC总线使用频率很高)设置寄存器.
摄像头问题及解决办法汇总
一、名词解释
1. 白平衡
白平衡指(de)是传感器对在光线不断变化环境下(de)色彩准
确重现(de)能力表示.大多数拍照系统具有自动白平衡(de)功能,从而能
在光线条件变化下自动改变白平衡值.设计工程师寻找(de)图像传感器应
该配备了一个很好(de)自动白平衡(AWB)控制,从而提供正确(de)色彩重
现.
2. 动态范围
动态范围测量了 图像传感器在同一张照片中同时捕获光明和
黑暗物体(de)能力,通常定义为最亮信号与最暗信号(噪声门槛级别)比
值(de)对数,通常用54dB来作为商业 图像传感器(de)通用指标.具有较宽
动态范围(de) 图像传感器可以在明光环境下提供更好(de)性能(例如,使
用较窄动态范围传感器在明光环境下拍出(de)照片会出现“水洗”或模
糊(de)现象.)
3. 工频干扰 (Banding)
Sensor在日光灯作为光源下获取图像数据时会产生flicker,
其根本原因是照在不同pixel上光能量不同产生(de),所接受(de)光能量
(de) 不同也就是图像(de)亮度(de)不同.
由于CMOS sensor(de)曝光方式是一行一行(de)方式进行(de),
任何一个pixel(de)曝光时间是一样(de),也就是同一行上(de)每个
pixel(de)曝光开始点和曝光(de)时间都是一模一样(de),所以同一行(de)
所有点所接收到(de)能量是一样(de),而在不同行之间虽然曝光时间都是
一样(de),但是曝光(de)开始点是不同(de),所以不同行之间所接受到(de)
能量是不一定相同(de). 为了使不同行之间所接受(de)能量相同,就必须
找一个特定(de)条件,使得每一行即使曝光开始点不同,但是所接受(de)
光能量是相同(de),这样就避开了flicker,这个特定(de)条件就是曝光时
间必须是光能量周期(de)整数倍时间.
Banding由工频干扰引起,交流电光源都有光强(de)波动,在中
国交流电频率是50Hz,光强(de)波动就是100Hz,周期10ms.如果camera曝
光时间不是10ms(de)整数倍,那么在不同(de)感光面接收到(de)光能量一
定不一样,体现在图像上就是有明暗条纹. 消除banding就得想办让曝光
时间是10ms(de)整数倍60Hz(de)交流电需要控制曝光时间为(de)整数倍.
以50Hz为例说明,实现这个有两种办法:
1、设置曝光控制,强制为10ms整数倍变化,但是这样会浪费一
部分曝光时间,导致曝光无法用满,在室内自然就会损失性能.
2、修改桢率,使每桢图像分到(de)时间是10ms(de)整数倍,则
可以用满每桢曝光时间在,室内效果更好.修改桢率可以插入Dummy Line
或者Dummy Pixel.这需要一点点计算,具体计算需要看sensor输出
Timing.
例如把桢率设置为,则每桢曝光时间是140ms.如果是15fps,则
每桢曝光时间是,如果强制曝光为10ms整数倍,最大即60ms,则有无法参与
曝光,损失性能.
具体调整桢率方法得和sensor(de)FAE沟通,每个sensor都可
能不一样,不能一概而论.调整桢率还有个原则要注意,预览一般不能低于
10fps,再低就很卡,常用和;抓拍不能低于5fps,否则用手就很难拍出清晰
(de)照片,常用.桢率是一个权 衡折中
(de)选择,高了曝光时间不够,暗光效果太差,低了没法拍照,
容易虚.
4. Lens Shading (color shading)
5. Chief Ray Angle
拍摄镜头和传感器之间(de)接口是整个可拍照系统中最重要
(de)接口之一.随着镜头(de)长度变得越来越短,光线到达传感器像素位
置(de)角度也就会变得越来越大.每个像素上都有一个微镜头.微镜头(de)
主要功能就是将来自不同 角度(de)光线聚焦在此像素上.然而,随着像素
位置(de)角度越来越大,某些光线将无法聚焦在像素上,从而导致光线损
失和像素响应降低.
从镜头(de)传感器一侧,可以聚焦到像素上(de)光线(de)最大
角度被定义为一个参数,称为主光角(CRA).对于主光角(de)一般性定义是:
此角度处(de)像素响应降低为零度角像素响应(此时,此像素是垂直于光
线(de))(de)80%.
光 线进入每个像素(de)角度将依赖于该像素所处(de)位置.
镜头轴心线附近(de)光线将以接近零度(de)角度进入像素中.随着它与轴
心线(de)距离增大,角度也将随之增大. CRA与像素在传感器中(de)位置是
相关(de),它们之间(de)关系与镜头(de)设计有关.很紧凑(de)镜头都具
有很复杂(de)CRA模式.如果镜头(de)CRA与传感器(de)微镜头设计 不匹
配,将会出现不理想(de)透过传感器(de)光线强度(也就是“阴影”).通
过改变微镜头设计,并对拍摄到(de)图像进行适当处理,就可以大大降低
这种现象.
改 变微镜头设计可以大大降低阴影现象.然而,在改变微镜头
设计时,必须与镜头设计者密切配合,以便为各种拍摄镜头找到适合
(de)CRA模式.相机(de)设计工程师应 该确保这种技术合作得以实现,并
确保传感器与镜头CRA特性可以很好地匹配.为确保成功实现此目标,美光
开发了相关(de)仿真工具和评价工具.
由于光 线是沿着不同(de)角度入射到传感器上(de),因此对
于各种镜头设计而言,阴影现象都是固有(de).“cos4定律”说明,减少
(de)光线与增大角度余弦值(de)四次方是成比 例关系(de).另外,在某些
镜头设计中,镜头可能本身就会阻挡一部分光线(称为“晕光”),这也会
引起阴影现象.所以,即使微镜头设计可以最小化短镜头(de)阴影 现象,
此种现象还是会多多少少地存在.为了给相机设计者提供额外(de)校正阴
影现象(de)方法,MT9D111中内嵌(de)图像处理器包含了阴影校正功能,它
是为某些 特定镜头而定制(de). 为了帮助设计工程师将传感器集成在他
们(de)产品中,美光为其生产(de)所有传感器产品提供了各种开发软件.
通过使用这些软件,相机设 计工程师可以简化对各种芯片特性默认值(de)
修改过程.每种变化(de)结果都可以显示在一个PC监视器上.对于很多相
机中用到(de)新型镜头,通过使用这个开发系统, 可以对校正镜头阴影和
空间色彩失真进行参数设置.通过使用一个均匀点亮(de)白色目标,可以
对设置响应过程进行简单(de)试验.软件开发工具可显示对阴影现象(de)
分 析结果.之后,工程师就可以使用区域方法来应用校正值.关于校正过
程(de)寄存器设置将保存在开发系统中,以用于相机设计.
6. Binning
Binning是将相邻(de)像元中感应(de)电荷被加在一起,以一
个像素(de)模式读出.Binning分为水平方向Binning和垂直方向 Binning,
水平方向Binning是将相邻(de)行(de)电荷加在一起读出,而垂直方向
Binning是将相邻(de)列(de)电荷加在一起读出,Binning这一 技术(de)
优点是能将几个像素联合起来作为一个像素使用,提高灵敏度,输出速度,
降低分辨率,当行和列
同时采用Binning时,图像(de)纵横比并不改变,当采 用
2:2Binning,图像(de)解析度将减少75%.在小屏幕上Preview时建议用这
种方式 而不是通过DSP来做抽点(de)动作.
7. IR cut (滤除红外光)
sensor不仅对可见光谱感光,而且对红外光谱感光. IR就是
infrared红外光, 如果没有IR-Cut Filter,图象就会明显偏红,这种色差
是没法来用软件来调整(de),一般IR-Cut在650+/-10nm,而UV,紫外光(de)
能量很小,一般就忽略了.
未加IR cut 拍摄(de)照片,可见影响最大(de)是图像(de)色
彩.
二、图像传感器拍摄问题汇总
1. 出现横向条纹
比如出现横向(de)紫色或绿色条纹.一般情况下是时序有问
题.
实例图如下:
硬件改善了MCLK和PCLK线,现在已经基本没有绿线了.
走线(de)时候要注意 MCLK、PCLK还有帧同步(vsync)和行同
步(hsync),基本上市面上(de)芯片这些信号都要分开走线,最好加GND
shielding.
总结:
现象: 闪横(de)紫色或绿色干扰线
原因: Hsync和高速线距离太近太长, 产生了耦合(10cm(de)
高速线产生约5pF左右(de)耦合电容), 导致HSYNC不能迅速拉升至
90%(de)区域,相位不同步,最终数据采集有错位.然后因为YUV算法(de)作
用,引起绿线和紫色(de)闪线.
解决办法:绝对禁止将HSYNC,PCLK,MCLK这三根线挤在一起走
线. 1)HSYNC夹在低速线SDA和SCL之间
2)PCLK和MCLK如果一定要贴着走线,最好拉开一点距离,当中
夹一根地线.
2. 颜色和亮度不连续
一般是数据线存在短路、断路和连错(de)问题.图像会出现类
似于水波纹(de)等高线或大面积色偏. D信号丢失画面整体也会色偏,比如
RGB565,D0~D4均断路图像会因蓝色和绿色信号丢失过多而呈现红色.
1)一根数据线虚焊导致(de)等高线及颜色失真例子
等高线
正常(de)图像
2)两根数据线和其他设备复用导致(de)偏绿问题
8根数据线中有两根被其它设备复用了,所以这两跟线没出数
据.
3)数据线接反(de)情况:
4)数据线错位
例1. 好不容易把OV2640初始化了,但是预览(de)图像却不对,
附件是我capture(de)一张图(我(de)一根手指头-_-|||). 我用
Photoshop分析了一下上面(de)图片,发现只有G通道有信号,RB通道全
黑.
我测了一下2640(de)10根数据线与CSI(de)16根数据线(de)
连接关系,发现硬件工程师布板时弄错了将sensor(de)10根数据线
D[0]~D[9]连到了CSI(de)D[4]~D[15],而CSI取得(de)是
D[8]~D[15](de)8bit数据,结果造成了数据位(de)错位与丢失,造成了以
上图像(de)状况.
5) 数据线问题例图汇总
第一张是亮度很低(de)情况下抓到(de)原始数据图像
第二张是将光圈调大以后出现(de)现象
3. 图像中只有红或绿颜色
Y和U/V(de)顺序不对.将摄像头(de)采样格式由CbYCrY改为
YCbYCr后,颜色就对了. 示例图片如下所示:
4. 横向无规则条纹
5. 竖向无规则条纹
6. 偏红
7. 热噪声.
过一段时间噪点逐渐增多.
开始工作时正常(de),,没有色点,工作过一段时间后,模组开
始出现色点,而且色点越来越多. 如上图所示. 原因:
工作一段时间sensor温度会提升,温度升高会加剧半导体材料
(de)本征激发.这会导致sensor S/N降低,noise加剧.此状况与sensor材
料关系较大,后端或软件处理可以减缓此状况但不能根除.这种叫hot
pixel,是芯片过热造成(de).
8. 模拟电压过低或不稳定
模拟电压过低导致很强(de)光才能感应图像,并且偏色.
例1如下图所示,只有天花板上(de)灯管才感应成像,其他部分
很模糊.
例2, 模拟电压过低导致竖向条纹.提高AVDD后问题解决.
例3,在调试 OV7725时发现,刚打开摄像头时图像有条纹,开了
一段时间后图像就正常了,有没有哪位知道是什么原因;不正常(de)图像
如下.查出问题了,是模拟电压不稳导致(de).
9. 背部材料太薄导致“鬼影”
补强(de)表面要用亚光黑油,防止漏光.
例1. OV2715异常图像,感测到了背面电路板(de)漏光,图像如
下:
例2,GC0307 图像异常,如下图. 中间有条线,像分层那样(de)
线,正常情况是没有.格科微(de)叫我们四周都补胶,就解决啦.
10. 由噪声导致(de)图像横纹
在新版(de)电路板中,将CMOS移到离主IC较远(de)地方现象
就消失了,之前是放在主IC(de)背面,猜测是主IC对CMOS造成(de)影响,
比如在模拟电压上引入噪声. 示例1 如下图所示.
示例2:
cmos为ov(de)30w像素,型号为ov7141.使用时出项很明显(de)
水平方向(de)横波纹. 采用和供电,其中VDD_C和VDD_A是由供电,pcb上
直接将他们连在一起接.直接铺地,没有划分模拟地和数字地.
使用外接电源对AVDD供电,没有出现上述现象.可以确定是由
主板(de)电源噪声引起(de)
改板后效果还可以,主要改动有:
1) 原来是两层板,现在用(de)是4层板,有专门(de)电源层
2) LDO输出改用大容量(de)钽电容滤波.示波器测量电源纹波
比以前小了.
11. 工频干扰
在室外自然光下如果不会出现,那一定是50/60Hz引起
(de)flicker;
12. Lens校准参数未调好导致(de)中间较亮(de)情况
用OV9650摄像头模组拍(de)图片,像素是800 X 600;中间较
亮
从硬件来说,可能是lens set与sensor不匹配,特别是CRA,
你得看看datasheet两者是否差距太大.
软件上,可能是lens correction没调好(个人感觉楼主状况
属此列),设定好correction区域然后将gain值拉高让中心与周边亮度
差异减少,如果此时整个画面过曝,可以将整体gain值再往下调(也可以
设定曝光参数来减少画面亮度).
按以上方法调整OV9650(de)几个与lens correction有关(de)
寄存器(de)值,使中心和四周(de)亮度均匀
13. 通过自动增益控制降低噪点
在调试OV7675时,图像有左边是模糊(de),右边正常,图片如下:
将 AGC 调小之后不会出现了,但是没之前亮了.效果如下:
14. 自动曝光计算出现(de)偏绿现象
OV7670:
在室外光线较亮拍摄时,画面颜色任何时候都正常.
在室内光线较暗拍摄时,刚打开摄像时拍摄(de)画面偏绿,几
秒钟之后就会恢复正常.
属于正常现象.
OV7670 30W 计算AE时间比较长.在计算AE(de)过程中容易出
现偏色现象. 可以丢帧或者延时解决这个问题
15. 时序不对导致(de)图像上部或下部出现条纹 因Vsync偏
移出现问题(de)例子如下图所示.
问题解决方法:
camera 模组(de)timing调整不了.修改AP(de)camera控制,
使垂直同步偏移12 rows. 图像输出正确.
16. lens镜间反射导致(de)眩光
这是一颗5M(de)模组拍摄(de)图片,天花板(de)灯在视场外边
缘,图中为何出现紫红色(de)光是什么原因造成(de)
属眩光现象,一般是由于多片lens镜间反射造成.通过改善镀
膜制程,增加镜片透射率可以缓解次问题.
另外,这张照片光心偏到左边去了,holder偏移lens set
circle够大啊,这种偏移都能cover掉.
多谢各位关注,问题已经解决,此现象是lens组装到模组上面
(de)机构问题产生.
17. pclk与vsync布线干扰
在调试一款摄像头(OV7675)时,发现画面垂直不同步,主要是
画面(de)下半部分跳动很厉害,上半部分是好(de).
问题已经找到了,帧同步VSYNC和PCLK布线有干扰
18. PCLK采样边沿选择不对导致(de)噪点
例1,图中有噪点
转换了一下Pclk(de)极性,这个躁点(de)问题得到了很好(de)
解决.
例2. ov7675拍出来(de)照片发绿.可能是PCLK采样边缘不对,
可以试试将pclk反向.也可能是数据线缺失问题.
例3, 如下图所示.通过修改pclk(de)上升沿和下降沿就解决
了.
主要有两点:
1.修改PCLK(de)上升沿(de)斜率. 2.或者修改I/O(de)上升沿
(de)斜率.
原因是不同厂家(de)模组layout(de)走线(de)长短,FPC(de)
厚薄,都可能影响到PCLK(de)获取, FPC(de)公差过大,或者头板(de)制作
是否有什么问题,都可能引起这个问题. 如果可以通过硬件(de)方式改变
PCLK上升沿(de)斜率,也可以解决这个问题.
来结案了,通过修改pclk(de)上升沿和下降沿就解决了
19. FPN问题
白天或亮一点(de)地方是没有这个问题,就只有在低照度下使
用闪光灯拍照会有这样(de)情形.
FPN( fixed pattern noise), 无解.
20. 台阶效应
gain过大,把digitalize(de)量化步距,乘大了,就出现台阶效
应.还与内部(de)量化精度不够,有关系.
另外,若不同(de)颜色通道(de)gain不同(白平衡计算出
(de)R/G/B_gain不同),会出现color phase error.
示意图,如下,只画了B、G两个通道,B_gain比G_gain大,会造
成灰阶(de)景物,有(de)地方B大,有(de)地方G大,就会出现颜色不断交
替.
结合上台阶效应,可能就会表现成(de)这幅图
21. 因电源问题产生(de)竖向条纹
现在已经确定是电源(de)问题了,我在每个电源都并上了一个
大电容,条纹消失了.现在我是用CPU(de)I/O采集(de),效果很好.
22. Lens与摄像头不匹配导致(de)部分偏红现象
图中下方居中(de)地方偏红.ov工程师将LENS CORRECTION调
到了极限问题还存在,确认是LENS与SENSOR不匹配造成(de),模组厂家更
换了镜头后问题基本解决.
我下载了你(de)图片发现有以下问题:
1.首先你(de)照片awb就不对,本身这张照片就没有达到白
平衡. 2.照片边界锯齿现象很严重.
3. 色偏问题,你首先要了解一下你
(de)sensor(de)Lenschief ray angle角度是多少,还有lens(de)CRA是多
少.如果lens(de)CRA小于sensor(de).一定会有偏色(de)现象.要么换
lens.如果市场上找不合适 (de)Lens,就说明sensor 本身品质不是很好.
4.理论上lens shading是解决lens(de)通透率不一样(de)问
题.但也许各家回加自己(de)算法,可以一试.
5.如果Lens 和sensor都已经固定,可以人为想一些办法来
减少色差. a.可以将颜色调淡点,这样就不太明显
b.做AWB校正,排除不同sensor对RGB感应(de)不同,引起AWB
曲线走(de)不准.
CRA通俗(de)讲是lens(de)主轴光线和对成像有贡献(de)最大
(de)如射光线(de)夹角,一般Lens厂商会提供CRA曲线,因为Lens从中心
到四周(de)CRA是不一样(de).
偏红除了SHADING外可能还是要调AWB,因为图片(de)下方其实
就是一片白色,sensor在照白色(de)地方出现了偏红,再试试调整一下AWB,
或者在灯箱里看看R,G,B(de)三条线是
否重合
如果是AWB(de)问题,那为什么图像还有白色区域呢AWB是不会
调(de)有(de)偏色,有(de)不偏,不知道(de)就不要乱说.
如果是CRA不比配,那出现(de)偏色应该是对称(de),下面偏紅
则上面一定会偏紅. 个人觉得应该是漏光造成(de),不是barrel就是通光
孔那里引入了杂光.
23. DOVDD28走线过细过长以及地线不合理 现象:花屏
原因:电压因为导线上(de)电阻吸收了电压,导致驱动能力不
够.地线被拉高并产生毛刺现象,影响信号完整性和数据采集.
24. DVDD电压有问题
图中(de)高光部分是办公室窗户.其它部分全黑,没有任何细
节 是什么原因AWBAGC还是对比度啊
问题解决了,是DVDD电压不对.
datasheet写(de),问了FAE结果是.
25. 增益小导致(de)白色条纹问题
当对着白色(de)物体时,刚进入预览时,会出现下图中显示(de)
条纹,当移动时,则这种条纹消失,以后也不会出现,只有再次进入预览时
可能会出现,请教各位大虾到底是什么原因
这个问题,现在已经解决了,加大了初始化代码中(de)增益之
后,就可以了.
26. 帧率问题导致(de)图像错位
Sensor为0v9655 在拍sxga 130万图像有时会出现图像错位
(de)问题(如图),vga(de)则不会出现,帮忙分析.谢谢
帧率太高了,暴光时间短了.可以调整VBLANK,HBLANK来解决
再降低FPS到5,试试,你(de)buffer速度呢 谢谢大家在我这里降低帧速
率比较有效.
27. 电源噪声
OV9653出现如图所示(de)横向纹路.5
问题已经解决,电源问题,AVDD加钽电容就好了.估计是电源纹
波比较严重导致(de)


发布评论