通过对摄像头读入的道路白线图像进行灰度变换,再检测出白线的边缘,这是实现智能车自动导航和辅助导航的基础。行车道检测系统可以应用于智能车的防撞预警和控制。该系统设计重点是边缘检测电路的设计。边缘检测电路包括图像输入缓冲电路、垂直方向的边缘检测电路、水平方向的边缘检测电路及对两部分检测的组合,最终通过阈值选择形成二值边缘图像。传统的方案大多采用单片机电路实现,设计流程和系统调试都比较繁琐,开发周期长。在实时图像处理中,由于处理速度要求较高,因此用以前的方法很难达到要求。实时图像处理常常需要对图像进行求和、卷积、边缘提取、图像分割及特征提取等不同种类、不同层次的处理。对于一些运算结构简单,但要处理大量数据的算法一般采用FPGA芯片来实现。通过FPGA实现信号处理可以取得出色的系统稳定性,提高控制精度,还可以大大减少开发周期,使设计人员的设计自由度加大。本文采用Altera公司的Cyclone EP1C6作为主控芯片,利用Altera公司推出的数字信号处理开发工具DSP Builder作为设计平台,通过DSP Builder SignalCompiler模块读取由DSP Builder和MegaCore模块构建的Simulink建模文件(.mdl),生成VHDL文件和工具命令语言(Tcl)脚本,进行综合、硬件实施和仿真,从而完成对整个道路边缘检测系统的设计。
1 系统构成及边缘检测原理
本系统中的主要模块是进行二维卷积操作的sobel边缘检测模块,它相当于硬件的协处理器。该系统从CF卡读入数据到边缘检测模块,使用Nios II控制数据流,采用DMA控制器在外部存储器(SDRAM和SRAM)之间传递数据,这些外部存储器相当于中间图像数据缓冲器。系统结构如图1所示。
边缘是指图像中像素灰度有阶跃变化或屋顶状变化的那些像素的集合。它对图像识别和分析十分有用,边缘能勾划出目标物体轮廓,使观察者一目了然。边缘包含了丰富的信息(如方向、阶跃性质 、形状等),是图像识别中抽取的重要属性[1]。微分运算有加强高频分量的作用,从而使图像轮廓更清晰。对于数字图像,微分可用差分近似代替,沿x和y方向的一阶差分可分别表示如下:
一阶差分增强是有方向性的。为了增强图像中间任何方向伸展的边缘和轮廓,希望对图像的某种导数运算是各向同性的,而梯度运算恰具有各向同性特性。对于图像f(x,y)点上的梯度可定义为矢量:
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉