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