基于CCD摄像头黑线提取算法

来源 :电子产品世界 | 被引量 : 0次 | 上传用户:lgwfzc
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  摘要:从大的层面上来讲,黑线提取分为AD转换提取以及通过硬件滤波(电压跳变比较)提取两种算法,本文具体介绍了两种方法的利与弊,以及我们为什么最后选择了AD采样。
  关键词:AD采样;电压跳变采样;硬件滤波;提取黑线;逐行搜索
  
  基于AD采样的算法
  
  基于AD的黑线提取算法能够反映图像上的每个点的黑白程度,提取出来的黑线准确度比较高,但是后续的黑线提取算法比较复杂。基于电压跳变比较方法软件黑线提取非常简单,但是硬件调试比较困难,而且不能反映每个点的真实黑白程度。对赛道环境要求很高,易受干扰。
  


  基于AD的黑道提取有以下几种方法:
  ·找出每一行的黑线的左右边界点,把中间点作为道路,
  ·利用若干行相加,取最黑点,
  ·找出每行的最黑点,把它作为道路。
  第一种做法:找出每一行的黑线的左右边界点,把中间点作为道路。它是最容易想到的方法,在无交叉道以及摄像头的黑白AD值分明的情况下,它可以达到非常理想的效果。但是若出现了斜看交叉道或者黑白AD不是很分明的情况下,该方法的滤波显得十分复杂。在实际中由于摄像头对于远处的黑线不是很敏感,这使得黑点的阈值很难确定,选大了会使远方道路提取出错,选小了会丢失远方的道路信息。也许采用动态阈值是一个好方法,但是它也不是十分管用。在实验中我们发现黑点的阈值不是随着距离的变化成线性变化的,它的变化多少带有点突变的味道,因此很难确定黑点阈值的变化规律,自然动态阈值也很难设定。斜看十字道会带来更大的麻烦,由于在实际的控制中很难做到每次都严格地贴线走,因此小车在从弯道出来的时候若弯道前方有个十字道,很容易造成斜看的情况发生。这时从AD采集的图像上看来十字交叉道会像一个分叉的树枝一样从前方道路上出来,更糟糕的情况是在前方正确道路消失的地方恰好被斜的十字道路的一边给补上了。若采用这种方法,则很容易误将道路确定到十字叉的一边上,使得小车的转向错误。为了滤除这种情况,我们根据它的特点采用了很多的滤波方法。
  


  首先,在前方道路与十字叉的交界点,黑点的个数会突然增加很多。在一般情况下,随着距离的增加黑点的个数会慢慢减少,不会出现突然增多的情况。因此我们可以用上一行的黑点数,估计出下一行的黑点数,如果超出了估计值,我们就认为它是不合理的。
  其次可以根据赛道不突变的原则,来滤除杂点。我们可以根据前面两行的变化情况预测出下一行的赛道变化范围,利用它来滤除杂点。但是在实际的应用中下一行的变化范围预测总不是很理想。因此当赛车经过90度弯时,赛道的变化在小车看来是十分巨大的,几乎和斜看十字交叉道没有多大的区别。有时会将90度弯滤除,造成小车直接冲出跑道。最后,我们还可以通过分别从左至右与从右至左的方法来搜索赛道的左右边界点,若发现两者不一致,则可以采取取变化较小的点作为赛道来处理。加了以上的滤波以后整个搜索赛道程序会显得十分复杂,而且也不是十分可靠,如图1。
  第二种做法:利用若干行相加,取最黑点。这种做法是我们上届的学长提出来的算法。但是我们利用起来不是很可靠。它的头点始终采不稳定。它的三行相加的理由是若中间一行右黑点丢失,它可以利用自己设定的阈值把它找回,如三行相加的黑点闽值可以定义为1个白点与2个黑点的和。带有些中值滤波的味道。但是,由于远处的黑白不是很清楚,本来黑白的阈值就难以设定,三行相加的阈值就更难设定。而且在弯道上由于远方的点本来就少,大约只有一两个黑点而且又不在同一列上,很容易将这些点丢失,导致头部的点不稳定。为了尽可能地将远方的黑线提取出来,从软件上讲唯一的方法就是增大闽值,比如将三行相加的阈值设置为一黑二白相加,但是问题是远方的黑白不是很明显,白点比较黑,黑点比较白,这种闽值的选取很容易造成把远方的那些比较黑的白点也一并归入黑线之中,这使得小车的转向发生混乱,如图2。
  


  第三种做法:找出每行的最黑点,把它作为道路。由于每行搜索的是最黑点,因此可以将黑点的阈值稍稍扩大,即使远方的黑白不清,由于找的是最黑点因此还是可以提取出真确的黑线的。它的主要问题是,不一定每行都有符合要求的点,会造成一行丢失而失去后面的黑点。解决的方法是当发现一行丢失以后,不立即退出搜索,而是置一个丢失计数器,只有当丢失计数器的值连续累加到一定的阈值后才退出。当每次搜索到一行的黑线后看看丢失计数器是否为非零。若不是,则说明前面没有丢失行。若是,则说明前面有几行丢失了。我们可以根据这一行与上一有效行对中间的丢失行做一个线性化处理。然后清零丢失计数器。有了丢失计数器,我们可以对赛道的提取条件加以严格的限制,而不必担心黑线的漏检。比如可以严格限制黑线的宽度,这样很容易滤除看到大块黑斑所带来的干扰。对于上述的斜看十字交叉线的问题,我们只要根据上一行的黑线严格限制下一行黑线出现的范围,便可轻松地滤除。当然在发现丢失行以后对于下一行的搜索必需加大黑线搜索的范围,允许的连续丢失行越多则再次找回的黑线的可信度也就越低,在实际的提取过程中必须把握好这一阈值,使得既可以顺利找到前方的道路,又不至于误提取黑线。实际证明这种方法实现简单,可靠性也最高,黑线提取十分稳定,如图3、图4。
  
  硬件滤波(电压跳变比较)
  
  


  从图5摄像头的视频输出信号可以看出,在黑线与白线之间有一个明显的电压跳变过程,我们可以利用这一特点来作为黑线的提取标志。利用合理的硬件电路我们便可以实现在电压跳变以前输出逻辑1,在电压跳变后输出逻辑0。这样单片机要做的就是不停地读取引脚的电平状态。由于不需要AD转化,这使得单片机在每个视频的行中断中读取比AD多得多的点,黑点的个数自然也很多。在提取黑线时软件要做的只是区分0与1而已,实现起来非常方便。图6是一幅由这种方法提取的图像与AD采样图像的对比。可以看到它的黑线非常明显,效果很好。
  但是这种方法也存在着很多局限性。首先,它对环境的要求苛刻,不能有缝,不能有反光。由于缝的颜色明显区别于周围的颜色,因此在图像上它就表现为一条黑线。其次由于反光的作用使得反光区域光线异常强烈。反光区在图像上也是一片黑,使得白变黑。其次,它对横向的分辨能力很弱。使得它对起始道的区分非常困难。比如起始道在图像上往往会把中间的黑道变成白道,使得起始道的辨别以及黑线的提取困难。最后,对于十字交叉道,由于一行全是黑线,电压无跳变,因此在图像上它是一条白线,使得赛道出现断点,出现黑变白。更糟糕的情况是稍微斜看十字叉时,它会出现起始道的特征,使得赛车乱停机。
  上述的黑变白以及白变黑的出现,很大程度上抵消了它所带来的方便性,软件必须对于采到的黑线加以认真判别,看它是否是真的黑线,这就涉及到许多方面的滤波。再则,由干单片机读取的仅仅是0-1信号,丢失了每点之间的细微的黑白程度,这也给滤波带来极大的难处。为了正确提取黑线,它涉及到本文所提到过的所有滤波方式,包括线宽设置,黑线的连续性等等。
  但是它带来的最大困难还是起始道的判别问题。起始道的干扰不仅来自十字交叉线,而且还来自一般赛道,因为很有可能在赛道的两侧由于光线反射的不均衡导致电压的跳变,使得在黑线的旁边隔着一段白斑出现几段的黑线,很容易误认起始道,最终导致起始道根本无法识别。
  基于以上的分析,最后我们还是选用了AD的第三种方法,它简单、实用,效果很理想。它的流程图如图7,程序代码。
其他文献
摘要:采用无线网络技术,构建了一种无线抄表系统,设计了基于nRF2401的无线通信的集中器。该集中器避免了长距离布线和复杂的线路干扰,具有结构简单、工作可靠、经济实用等特点,  关键词:无线抄表系统;集中器;nRF2401;智能小区    随着电子技术、计算机技术和通信技术的不断发展,各个行业的自动化进程正在逐渐加快,以至于在自动抄表中对数据采集的实时性、可靠性、信息量提出了更高的要求。目前的抄表
期刊
虽然年初各大业内机构和组织对2008年的半导体市场都有一个相对乐观的预测,但随着金融危机影响的不断深化,大家都不断调低预期,根据SIA的分析,2008年全球半导体市场将只增长2.2%,在2007年2556亿美元的基础上增长到2612亿美元,全年的发展持续近几年来的低迷态势。全球市场发展缓慢的原因主要有二,一是金融危机对消费的抑制,二是存储器价格的持续下滑。  而中国市场方面,2008年仍将保持正增
期刊
从市场的走向来看,嵌入式处理器市场继续向32位的方向发展,以ARM公司的32位处理器最为突出,例如:ARM7、ARM9、Cortex等内核,其他的设计公司也不断改进32位处理器的架构和指令集,以推出高效、低价的处理器内核。当前,处理器在FPGA上的应用也越来越多,在FPGA中嵌入处理器软核越来越受到广大工程师所热衷,不仅能够实现复杂的算法,更能实现高速的数据处理能力,实现所谓的sOPc(syste
期刊
摘要:充分利用铁路地面有线传输系统SDH的传输设备SBs622和基于FPGA的直接序列扩频通信DS-CDMA技术等,设计并实现了铁路高速列车互联网络无线传输系统,并可以自动进行越区切换。  关键词:无线传输;SDH;FPGA;DS-CDMA;越区切换
期刊
摘要:基于桥接芯片CP2102,设计了USB2.0-CAN的适配卡。系统采用USB和CAN接收中断、通信同步的握手协议等方式,解决了USB的高速率和CAN的低速率、USB的大数据包与CAN的小数据包之间的矛盾,实现了USB数据与CAN数据之间的协议转换和转发。  关键词:CP2102;CAN控制器;协议转换;USB2.0    引言    控制器局域网(CAN)是德国BOSCH公司于1986年为解
期刊
摘要:新款放大IC可用于解决一些老问题,使工程师能够简化电路、改善性能、降低成本、减少器件数量,并节省电路板空间。  关键词:IC;AC耦合;单电源放大器;ADA4858-3;AD8063    一系列新款放大器IC可用于解决一些老问题,如在采用单电源供电时,如何处理以地为参考的信号,而处理这个问题的传统方法一般是采用AC耦合和单电源放大器。  AC耦合可以处理地参考信号,但需要进行电平搬移和许多
期刊
摘要:由于电池技术跟不上电子产品的发展速度,便携式电源亟待创新。直接甲醇燃料电池(DMFC)技术可确保更长的运行时间,并可在任何远离电网电源的地方即时充电,固而可提供真正的移动性。  关键词:DMFC;燃料电池;便携产品;甲醇    先后在Palm Computing、FuiitsuPersonal systems以及ZenithData Systems任职的经历让我得以亲眼目睹消费电子行业中“电
期刊
当今社会技术日新月异,技术更新之快让我们望尘莫及,而要让我们的产品能够在市场上占有一席之地,必须采用最新的前沿技术,所以对于技术的学习成为了大多数公司和工程师首要考虑的问题:如何在最短的时间里掌握最新的技术?如何找到一个切入点去学习新的技术?如何提升产品的竞争力?而笔者认为技术特别是FPGA的技术,最佳的途径是通过现有的开发平台来学习,因为能够提供开发平台的公司往往具备一支强有力的技术团队,不仅能
期刊
动手是工程学生的天性    对学生来讲,一方面要学知识,而知识学了不一定能够学会,一旦用它才能真正掌握。这就好像你要学自行车,绝不会通过读一本书来学会,或者上课去学怎样骑。同样,如果你去学如何成为一个设计工程师,你也学不会,除非真正地去做它。  例如,FPGA就是这样一门独特的技术,能够让学生自己不仅仅在课堂上,还能在课间学习。在学校里,Patrick Lysaght教的课程是学生愿意花费时间最多
期刊
摘要:“中医神指”是将中医音乐疗法和按摩疗法结合起来,采用先进的微电子技术,通过蓝牙技术将音乐疗法选定的音乐传送,达到疏通经络,康复身心的目的,有效将文化、健康、科技等时尚元素融合起来。可以应用在医疗康复场所、休闲娱乐场所、以及家庭生活中等。  关键词:音乐疗法;按摩疗法;PowerWise技术;蓝牙技术      概述    张景岳说:“十二律为神物,可以通于地而合神明。”神明由心神主宰,通过太
期刊