智能车制作
标题: 摄像头采样模块 [打印本页]
作者: 黎明sunshine 时间: 2012-9-14 20:39
标题: 摄像头采样模块
摄像头采集赛道黑线信息是本系统赛道信息获取的主要途径,本章将从摄像头工作原理、图像采样电路设计、和采样程序流程图三个方面进行介绍。
8.1 摄像头工作原理 摄像头常分为彩色和黑白两种摄像头,主要工作原理是:按一定的分辨率, 以隔行扫描的方式采样图像上的点,当扫描到某点时,就通过图像传感芯片将该点处图像的灰度转换成与灰度成一一对应关系的电压值,然后将此电压值通过视频信号端输出。
[attach]32187[/attach]
在示波器上观察可知摄像头信号如图8.1所示。摄像头连续地扫描图像上的 一行,就输出一段连续的电压视频信号,该电压信号的高低起伏正反映了该行图像的灰度变化情况。当扫描完一行,视频信号端就输出一低于最低视频信号电压的电平(如0.3V),并保持一段时间。这样相当于,紧接着每行图像对应的电压信号之后会有一个电压“凹槽”,此“凹槽”叫做行同步脉冲,它是扫描换行的标志。然后,跳过一行后(因为摄像头是隔行扫描的方式),开始扫描新的一行,如此下去,直到扫描完该场的视频信号,接着就会出现一段场消隐区。此区中有若干个复合消隐脉冲(简称消隐脉冲),在这些消隐脉冲中,有个脉冲,它远宽于(即持续时间长于)其他的消隐脉冲,该消隐脉冲又称为场同步脉冲,它是扫描换场的标志。场同步脉冲标志着新的一场的到来,不过,场消隐区恰好跨在上一场的结尾部分和下一场的开始部分,得等场消隐区过去,下一场的视频信号才真正到来。摄像头每秒扫描25 幅图像,每幅又分奇、偶两场,先奇场后偶场,故每秒扫描50 场图像。奇场时只扫描图像中的奇数行,偶场时则只扫描偶数行。 8.2 图像采样电路设计 在本次比赛中赛道仅由黑白两色组成,为了获得赛道特征,只需提取探测画 面的灰度信息,而不必提取其色彩信息,所以本设计中采用黑白摄像头。型号为: XB-2001B,分辨率为320*240。为了有效地获取摄像头的视频信号,我们采用LM1881提取行同步脉冲,消隐脉冲和场同步脉冲,电路原理图8.2所示。将视频信号通过一个电容接至LM1881的2脚,即可得到控制单片机进行A/D采样的控制信号行同步HS与奇偶场同步号 ODD/EVEN。
[attach]32188[/attach]
摄像头视频信号端接LM1881 的视频信号输入端VIDEO_IN,同时也接入S12 的一个AD转换器口PAD0。LM1881的行同步信号端(引脚1)接入S12的中断口 PT2。之所以选用带中断的I/O口是因为,行同步信号(即对应摄像头信号的行同步脉冲)持续时间较短,为了不漏检到行同步信号,若使用普通I/O口,则只能使用等待查询的方式来检测到行同步信号,这会浪费不少S12 的CPU 资源。LM1881的奇-偶场同步信号输出端接S12中断口PT1由此作为奇-偶场同步信号的换场的标志信号,也可作为场信号到来的标志。上述摄像头、LM1881电路构成了本智能车定位系统的图像采样模块。
8.3 采样程序流程图
摄像头每秒25帧图像,每帧分为奇、偶两场,每秒供50场,奇场时只扫描图 像中的奇数行,偶场时则只扫描偶数行。由于奇偶场所得的图像差别很小,故没有对奇场偶场的图像分开分析,即没有区分奇偶场。为了减轻S12的负担,我们没有必要对所有行都进行采样,只需对每场采样
30行即满足要求。由于每场开始的前22行为场消隐信号,故开始采样行需从22行以后开始,我们选择从31行开始,并且每间隔8行采一次。结合图8.2,当PT1有变化时,说明新的一场开始了,并且此时开始对行同步信号重新计数。当PT2口每检测到一个上升沿,表明一个行同步信号刚过去,让
计数变量加一。当计数变量增为30时,表明第31行视频信号开始了,并对此行信号进行采样。然后根据计数变量的值来控制每隔8行采一行视频信号。由于采用中断的方式,单片机不会因为处理其他程序而漏掉赛道的采样。
ECT中断初始化设置如下:
[attach]32189[/attach]
程序流程图如图8.3所示。
[attach]32185[/attach]
8.4 AD采样设置
由于行同步脉冲出现的间隔时间是一定的,约为62us,因此为了保证每行采 集的点数达到有效指导小车前行的数目(取每行40个点),AD采样的周期不应大于62/40=1.43us。每行采样点数的确定原则是:不会出现漏检黑线的情况,保证每行采集的点中至少有1~2个是黑线信息。选取每行检测40个点是满足要求的。 这里需要注意的是,由于行消隐信号出现每行开始的4.2us内,因此采集的前几个点要去掉,不然可能会误认为是黑线信息。 由此可以看出,AD采样的频率设置是尤为重要的,下面是关于的AD的初始化 设置:
[attach]32186[/attach]
作者: 王帅 时间: 2012-9-14 22:28
顶一下
作者: Mr_Q 时间: 2012-9-14 23:23
作者: 1434636181 时间: 2012-9-15 09:54
作者: 1434636181 时间: 2012-9-15 09:54
收藏了!
作者: Smile_Sun 时间: 2012-9-15 13:28
作者: huayuc19 时间: 2012-9-15 14:38
LZ好人啊 !
作者: seakid 时间: 2012-9-18 16:10
不错 有TLC5510电路图没??
作者: 水木风情 时间: 2012-9-18 17:25
不错
作者: arno_lin 时间: 2012-9-19 01:28
感谢楼主的无私~~~·
作者: terrify 时间: 2012-10-4 13:41
解释的很详细...
作者: 雪中的紫藤 时间: 2012-10-4 21:36
“由于行同步脉冲出现的间隔时间是一定的,约为62us”,是不是还要减去场消隐区的时间?
作者: zhangtomcom 时间: 2012-10-11 16:40
高手,学习中
作者: 杨钦贺 时间: 2012-10-21 19:12
顶
作者: □★坚守★□ 时间: 2012-10-22 23:47
收藏了,很好的东西
作者: 冷月无痕 时间: 2012-10-27 16:41
作者: 爱那么短,遗 时间: 2012-11-2 17:41
作者: melon_1 时间: 2012-11-7 17:23
好贴!
作者: zhuimeng9182 时间: 2012-11-19 16:49
好贴,顶楼主
作者: fn654 时间: 2012-11-24 15:58
看看
作者: 夏唯夕 时间: 2012-12-29 13:17
ding
作者: 夏唯夕 时间: 2012-12-31 15:15
作者: li562721098 时间: 2013-1-4 10:27
ding啊
作者: Valentine 时间: 2013-1-22 18:14
LZ太好了~~终于找了一个给我这种0基础的研究的资料了~好高兴哦~顶顶
作者: yangbw4978 时间: 2013-1-25 19:46
学习了 顶一下
作者: ^戀·陽、 时间: 2013-2-23 11:04
顶
作者: 飞思卡尔。。 时间: 2013-2-24 09:55
:D:D:D:D
作者: xuezihan 时间: 2013-3-9 12:49
作者: 林的0922 时间: 2013-3-14 19:21
作者: oscarpanpan 时间: 2013-3-15 12:09
作者: Michael_Scofiel 时间: 2013-3-15 20:30
顶
作者: hjc19911203 时间: 2013-3-19 09:54
从零开始学习
作者: Super_Player 时间: 2013-3-21 23:48
顶一下
作者: shhu1993 时间: 2013-3-23 23:20
感谢楼主的无私
作者: 指弹圣手 时间: 2013-3-26 15:49
楼主啊,帮人帮到底啊,发个PDF吧。谢谢了
作者: 指弹圣手 时间: 2013-3-26 15:57
太有用了啊,谢谢
作者: 3009 时间: 2013-4-1 22:54
学习
作者: 守一 时间: 2013-4-4 15:23
黑线提取怎么办
作者: 转身后微笑 时间: 2013-4-9 17:30
谢谢
作者: 了修明日 时间: 2013-4-13 12:08
luiming
作者: zhuyue0414 时间: 2013-4-21 10:18
好东西啊好东西
作者: 山楂草包 时间: 2013-5-26 00:26
感谢LZ,讲的很全面
作者: !!!!!! 时间: 2013-5-30 15:47
作者: 山楂草包 时间: 2013-6-5 21:15
很棒
作者: 智能车2012 时间: 2013-6-19 18:26
那数据手册说8位AD转换时间为6US怎么回事
作者: chenli111 时间: 2013-6-26 00:50
顶!!!!新手飘过,学习中!!
作者: WGQHHH 时间: 2013-7-28 19:42
lz好人啊!我正为采样头疼啊!
作者: 奔小康 时间: 2013-10-22 00:23
学习了
作者: rascalmouse 时间: 2013-11-2 21:58
真心有用!谢谢楼主!
作者: rascalmouse 时间: 2013-11-6 08:39
谢楼主点播
作者: 月隐 时间: 2014-2-21 17:17
作者: 望月逍遥 时间: 2014-3-22 21:15
作者: 天翊 时间: 2014-8-4 14:53
赞
欢迎光临 智能车制作 (http://dns.znczz.com/) |
Powered by Discuz! X3.2 |