我们的项目是设计一种能够保持车道并识别和响应一些道路危险的自动驾驶汽车,即停车标志和交通信号灯。该项目建立在raja_961 的指南之上,该指南在 Raspberry Pi 3 上实现了这一点。但是,我们的设计改为使用 BeagleBone Black 作为主要平台,具有不使用 PID 的更简单的控制系统。
汽车使用网络摄像头对车道线进行成像,然后执行 Canny 边缘检测以识别车道线和汽车当前与直线路径的偏差量。该偏差通过简单的线性插值转换为转向角。网络摄像头馈送的理想分辨率以及对偏差的敏感程度(即插值参数)是通过首先根据汽车的速度和赛道的难度进行有根据的猜测,然后进行调整来找到的那些通过反复试验的猜测。
网络摄像头提要还用于识别“停车标志”,这实际上是地上的一张红纸。在车道保持程序之后,图像被遮罩为红色像素,并分析遮罩的覆盖范围。如果覆盖范围足够大(大约 10%),则认为存在停车标志,并且汽车的速度会在几秒钟内降至零,然后继续行驶。
一种几乎相同的技术用于响应交通信号灯,它是一种小型多色 LED 灯。如果未检测到停车标志,则图像再次被遮盖为浅红色(在与停车标志不同的范围内)。如果此面罩的覆盖率很高(大约 0.1%,因为光线通常很微弱),则认为存在红灯,汽车停下。然后,图像连续被绿色遮蔽,当检测到足够量的绿色时,灯已“变成绿色”,汽车继续行驶。
图中是速度和转向 PWM 以及转向误差随时间变化的图(以相机帧为单位测量)。请注意,这些图不包括汽车停止的点,因为在这些时间没有收集数据。
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
全部0条评论
快来发表一下你的评论吧 !