OV7620与OV7670

OV7620与OV7670

摄像头型号有多种,那么如何才能选择到最合适的摄像头呢?我们举例来分析一下OV7620与OV7670。这两种摄像头都是30万像素的,输出的图像大小为640*480(307200)。且皆为彩色摄像头。而他们之间的不同就在于图像输出格式的不同。OV7620是YUV422会输出,而OV7670是RGB565输出。在存储空间上,OV7670在同样大小图像的情况下就要比OV7620大一倍。而RGB565又不是灰度输出,对于赛道这样的黑白差距明显的图像不能得到较好的识别输出。所以OV7670一般是用在FPGA或是其他的高性能单片机上的,具是作为彩色摄像头或是照相机来进行使用。OV7725也是RGB565输出的,但OV7725的性能好,输出的图像质量好,所以野火使用的火眼、鹰眼(现为VCAN,山外大神所有)皆为OV7725,但OV7725的使用相对要麻烦一点,在智能车上的使用现在使用较多的是鹰眼(硬件二值化)。

RGB565与YUV422

RGB565比重不同时根据人眼对于绿色的敏感度要高来设定的。这样做的好处是可以使存储的图像数据从3Byte降低到2Byte,又可以让图像的失真很小。数据的输出还是通过Y[7..0]来输出,但是要每两个PCLK才输出一个完整的像素,也就是把RGB565拆分成两个字节的数据进行会输,第一字节(First Byte)为Y[7..3]为R[4..0],Y[2..0]为G[5..3];在第二个字节(Second Byte),Y[7..5]为G[2..0],Y[4..0]为B[4..0]。

RGB565会输出时序图

人的眼睛对低频信号比对高频信号具有理高的敏感度(人眼一般对于0.1s之内的变化视为是静止的,此外也有人眼的视觉暂留有24帧理论,就是只要一秒钟内有24帧图像,人就认为看到的是视频),事实上,人的眼睛对明视度的改变要比对色彩的改变敏感得多。因此,人们用YUV来表达RGB三色信号。其为Y为灰度(这里智能车中常使用的),UV为色差。如果表示的是一幅彩色图像,YUV444是无损的存储方式,但是需要3个字节,开销大。而Y分量比UV分量重要得多(如同RGB中,G分量与R、B分量要来得重要得多一样)。因此人们用YUV422来表示。这样图像就被压缩了很多,一个字节就可以表示一个完整的像素点,比RGB565还要节省存储空间。

对于OV7670只有一组并行的数据口Y[7..0],所有的数据都通过这个数据口输出,一个完整的像素需要读取两次并完成拼接。

对于OV7620,它有2组并行的数据口Y[7..0]和UV[7..0],其中数据口Y[7..0],会输出的是灰度值,对于UV[7..0]输出的是色度信号UV。所以使用DEMOK摄像头是不能输出彩色图像的,因为只有Y[7..0]被引出来了,而UV[7..0]是没有被此出来的,UV的数据是不能被读取的。对于全白的赛道背景Y[7..0]输出为255,对于黑色的赛道采集回来的值趋近于0。至于为什么会是这样是因为光强的时候,传感器上感应到更多的光,传感器上的像素点将积聚更多的电荷,从而会有更高的输出。

此外,要使用摄像头进行调试的时候,一个非常使用的工具就是上位机,当然也可以使用OLED屏或是5110液晶屏来实时显示图像。有实时的图像输出,对于调试非常有利。

与OV7620与OV7640相比较,为OV7640的供电电压为3.3V而OV7620为5V,可以根据自己需要来选择。

对于OV7620来说,行信号HREF与场信号VSYN比较长,XS128的单片机是可以捕捉到的,但是OV7620的像素同步信号为25MHz,很难捕捉到这个像素同步信号;而PCLK周期性传输,只有高电平数据有效,低电平数据无效。由于单片机与摄像头不能同步,只有凭借抚琴读取IO口的数据,极有可能读取到PCLK为低电平的无效数据,在上位机上显现的就是噪点。由于XS128的能力较K60差,隔行隔像素采集,分辨率最终被降到了3千像素。

P制与N制

我们使用的摄像头,基本只有2种制式,P(PAL)制和N(NTSC)制。PAL制与NTSC制有很区别。其最主要的区别就是P制标准的摄像头,每秒钟输出25帧图像,而N制的每秒钟输出30帧图像。

PAL制:OV6620、sonyCCD、LG CCD、OV5116等。

NTSC制:OV7620、OV7640等。

由24帧理论,人眼看到的图像频率大于24Hz就不会觉得图像闪烁,所以PAL制采用的是25Hz。

逐行扫描与隔行扫描

所谓逐行,即摄像头的像素自左向右,自上而下,一行紧接一行扫描输出;而隔行扫描,就是在每行扫描点数不变的前提下,将图像分成2场进行传送,这两场分别称为奇场和偶场。奇场传输1、3、5、……奇数行;偶数场传送2、4、6、……偶数行。

逐行扫描:OV6620、OV7640等

隔行扫描:OV7620等

消隐信号

消隐区的出现,在电视机原理上,是因为电子束结束一行扫描,从一行尾换到另一行头,期间的空闲期,这叫做行消隐信号;同理,从一行尾换到另一行头,期间也会有空闲期,这叫做消隐信号。

但凡由于没有同步起来采集到图像消隐区,值大概为0x10或者0x80,因此在调试过程中,发现返回大块以上值,使可认为采集到的为消隐区无效信号。

未经允许不得转载:TacuLee » OV7620与OV7670

赞 (3)

评论 0

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址