DIY编程器网

 找回密码
 注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 1013|回复: 0
打印 上一主题 下一主题

[待整理] 基于单目视觉的车辆离道预警系统

[复制链接]
跳转到指定楼层
楼主
发表于 2015-4-27 19:33:10 | 只看该作者 |只看大图 回帖奖励 |正序浏览 |阅读模式
引言
        (1)设计意图      

          随着自动化和微电子技术的高速发展,现代交通辅助工具越来越智能化,GPS导航、兴趣点提示、多功能辅助控制系统、甚至是无人驾驶,从军用交通工具融入普及到家用型交通工具,特别是最普遍的家用轿车,已形成一种不可逆的智能化潮流。
           
          在此背景下,本设计将基于Avnet Spartan-6 FPGA 工业视频处理套件上实现一个车辆离道的关键预警机制系统。
           
        (2)设计思路         

          目前有数个国内外汽车生产商已经采用了不同的车道保持辅助系统(例如奥迪Q5、大众高尔夫7代),此类系统均建立在一个数字图像视频处理的基础上,再通过检测车道等信息进行建模和预警。虽然投入商用的系统已经很成熟完善,预警机制的逻辑判断(启动条件、提前预警)考虑较为周全,但几乎都忽略了摄像头因为汽车载客不同和路面铺设而发生倾斜的情况,在算法中加入这个因素的修正对于未来精确控制和辅助车辆行驶具有实际意义。
           
          本项目针对这个未考虑的因素,加入三轴加速计对关于镜头倾斜后图像处理的矫正,突破由于广角摄像头的光学特性的非线性变换问题,并建立一个简化的基于单目视觉的车辆离道预警系统模块对结果进行探讨,验证其精确度。由于整个项目侧重于图形算法方面,故只考虑车辆离道的准确报警,忽略复杂的辅助驾驶系统逻辑,而是为其提供进一步成熟完善的理论。
           
          本项目在原始图像上预处理为边缘二值图像后再采用Hough变换算法,鲁棒性和抗干扰性较高,代替现有的DSP视频处理芯片,更快速地实现实时视频处理。
           
          考虑到软硬件结合的灵活强大功能特性,本项目将基于EDK嵌入式系统开发平台,以MicroBlaze处理器为核心,实现软硬件的协同设计。
           
          设计文档
          (1)设计框图  
         

       

        Figure 1  系统架构图

         
        (2)工作原理

          CCD摄像头安装在车盘中轴前方,其光轴与车盘平行;由于车轴中心距左右分车道有一定距离,根据透视投影的基本原理,摄像头路面投影图像中左右分道线会形成一个角度,这个角度会因车的位置变化而改变,当车处于两条分道线中间,所得图像中两条左右分道线的夹角最大(其斜率一正一负), 当车辆偏移中线时,这个角度会逐渐变小,至离道存在一个最小夹角,但图像中该角度信息小于这个最小夹角的时候,报警机制就会发出警报。
           
          摄像头摄入路面图像数据,存储到板内RAM;通过畸变矫正,保证显示的分车道尽可能实况;接着,通过三轴加速计水平矫正,使得图像x轴与实际路面平行;最后通过阀值分隔、边缘检测以及Hough变换的算法,重新构建出路面图像并建立分道线角度数据传送到预警逻辑状态机。
           
          非线性的畸变矫正是水平矫正的前提操作,也是该系统中最重要的算法之一,通过摄像头参数和Matlab等软件的仿真模拟得出的网格坐标变换表,矫正广角镜头所引起的边角畸变,才可进行正确的水平矫正。
           
        (3)Figure 2 系统工作状态图如下:

       

         

          本项目中预警逻辑状态机较为简单,分三个状态:未启用,启用,报警; 车辆刚启动时,警报系统处于未启用状态,一旦满足预警启动条件(车辆正常行驶在两分道线中间并未打开转向灯)后,警报系统切换到启用状态;在启用状态下,如果车偏离车道,图像处理运算得到分道线角度数据满足离道条件(图像分道夹角小于警报最小夹角),则进入报警状态,警报立即触发;警报触发有一个较短的持续缓冲时间,在该时间内汽车重新满足预警启动条件则警报系统重新进入启用状态,如果依旧未检测到满足启用状态的分道线角度则进入未启用状态。如果最近所得分道线的角度数据处于安全范围内时,即使有小范围摆动,但认为车未偏离车道,警报不会触发;或者,车要转向,提前打开转向灯,那么警报系统处于未启用状态。
           
        (4) Figure3  FPGA内处理图像流程

       

         
          摄像头将摄入的原始灰度图像(如图1)传入到FPGA内部,最先通过阀值边缘检测,得到边缘二值图像(如图2)数据;当车出现倾斜后,摄入的图像会出现透视畸变,所以需要通过光学畸变矫正,得到矫正后与实况相符的边缘二值图像数据;这时,安装的陀螺仪会提供相应参数,对图像进行倾角旋转矫正,得到水平边缘二值图像(如图3)数据;在通过Hough算法转化为参数平面(如图4)数据,从中提取出分道线;随着车行驶的实况,随时对警报触发条件进行判断,出现离道,警报触发条件满足后,FPGA立马将预警逻辑相关信息输出,控制触发警报。(注:图仅为算法过程参考示例,原图实为车内随机角度拍摄所得)
           
                 

                   图1 摄像头所得初始灰度图像          图2 Sobel算子阀值边缘检测
           
       

        图3 水平矫正后边缘二值图像            图4 Hough变换参数平面

         

       

        图5 分道线检测结果示意图(灰度/二值)
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
收藏收藏 分享分享 支持支持 反对反对
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|文字版|手机版|DIY编程器网 ( 桂ICP备14005565号-1 )

GMT+8, 2024-12-29 09:16 , 耗时 0.089406 秒, 22 个查询请求 , Gzip 开启.

各位嘉宾言论仅代表个人观点,非属DIY编程器网立场。

桂公网安备 45031202000115号

DIY编程器群(超员):41210778 DIY编程器

DIY编程器群1(满员):3044634 DIY编程器1

diy编程器群2:551025008 diy编程器群2

QQ:28000622;Email:libyoufer@sina.com

本站由桂林市临桂区技兴电子商务经营部独家赞助。旨在技术交流,请自觉遵守国家法律法规,一旦发现将做封号删号处理。

快速回复 返回顶部 返回列表