CN108491811A - 一种基于fpga的超低功耗实时车道线检测的方法 - Google Patents
一种基于fpga的超低功耗实时车道线检测的方法 Download PDFInfo
- Publication number
- CN108491811A CN108491811A CN201810267300.4A CN201810267300A CN108491811A CN 108491811 A CN108491811 A CN 108491811A CN 201810267300 A CN201810267300 A CN 201810267300A CN 108491811 A CN108491811 A CN 108491811A
- Authority
- CN
- China
- Prior art keywords
- lane
- line
- detection
- lane line
- roi
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000001514 detection method Methods 0.000 title claims abstract description 55
- 238000000034 method Methods 0.000 title abstract description 10
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 25
- 238000007781 pre-processing Methods 0.000 claims abstract description 7
- 239000002245 particle Substances 0.000 claims description 33
- 238000009826 distribution Methods 0.000 claims description 6
- 238000001914 filtration Methods 0.000 claims description 6
- 239000003550 marker Substances 0.000 claims description 6
- 238000004364 calculation method Methods 0.000 claims description 5
- 238000012952 Resampling Methods 0.000 claims description 4
- 230000000694 effects Effects 0.000 claims description 4
- 238000012545 processing Methods 0.000 claims description 4
- 238000000342 Monte Carlo simulation Methods 0.000 claims description 2
- 238000005070 sampling Methods 0.000 claims description 2
- 102100034112 Alkyldihydroxyacetonephosphate synthase, peroxisomal Human genes 0.000 abstract 2
- 101000799143 Homo sapiens Alkyldihydroxyacetonephosphate synthase, peroxisomal Proteins 0.000 abstract 2
- 238000000848 angular dependent Auger electron spectroscopy Methods 0.000 abstract 2
- 238000010586 diagram Methods 0.000 description 5
- 230000001133 acceleration Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 238000011897 real-time detection Methods 0.000 description 2
- 230000011218 segmentation Effects 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000013139 quantization Methods 0.000 description 1
- 238000012827 research and development Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/50—Context or environment of the image
- G06V20/56—Context or environment of the image exterior to a vehicle by using sensors mounted on the vehicle
- G06V20/588—Recognition of the road, e.g. of lane markings; Recognition of the vehicle driving pattern in relation to the road
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Theoretical Computer Science (AREA)
- Image Analysis (AREA)
- Traffic Control Systems (AREA)
Abstract
本发明涉及车道线检测的技术领域,更具体地,涉及一种基于FPGA的超低功耗实时车道线检测的方法。一种基于FPGA的超低功耗实时车道线检测的方法,包括图像预处理、车道线检测和车道线跟踪三个部分;本发明利用OpenCL作为编程语言和COTS组件搭建了ADAS开发的基础平台,提出了一种可以在检测精度和速度成本进行协调的可伸缩的车道线检测算法,实现了在异构平台上车道线检测算法的并行化,大大提高了在可接受的精度下车道线检测的速度。实现了低成本的超低功耗车道线实时检测,对自动驾驶辅助系统(ADAS)的投入实际应用提供了可能。
Description
技术领域
本发明涉及车道线检测的技术领域,更具体地,涉及一种基于FPGA的超低功耗实时车道线检测的方法。
背景技术
在本发明之前的二十年中,已经有大量研究开发了车道线检测系统,例如霍夫变换随机线检测和可操纵过滤器等经典的算法,但这些算法都有着各种缺陷。如霍夫变换有量化误差,噪声和网格维数等问题,而且这些算法均为CPU串行执行,在速度和功耗方面表现较差。此专利中提出了一种可伸缩的车道线检测算法,可以在检测精度和速度之间进行调整。例如,由于光线条件不同,道路上的阻塞,建筑物或树木上的投影遮盖了车道线,这时候就需要提高计算精度来达到比较好的检测结果。
发明内容
本发明为克服上述现有技术所述的至少一种缺陷,提供一种基于FPGA的超低功耗实时车道线检测的方法,提高计算精度需要较大功耗,本方法可以FPGA上使用OpenCL平台实现超低功耗的检测和跟踪来自现场道路的车道线。
本发明的技术方案是:在硬件方面,采用的是Altera Cyclone V SoC FPGA。主存为1GB,最大功率为4W,可支持并行优化后车道线检测代码实现超低功耗的车道线实时检测。
在软件平台方面,采用OpenCL作为编写并行程序的框架。OpenCL提供了基于任务分割和数据分割的并行计算机制,支持多个异构平台协同工作,被广泛应用于并行加速领域。一个OpenCL应用程序在host上运行时可以连接多个加速设备,然后在加速设备上并行地运行OpenCL代码。
在算法方面,开发了一种可伸缩的车道检测方法,以调节检测精度于计算成本之间的平衡,可实现检测和跟踪来自现场道路的车道标记。对于跟踪的情况,使用非线性的粒子滤波方法。该方法特别适合并行处理,因为每个粒子可以独立处理。可通过改变使用粒子的数量实现在跟踪精度与计算成本之间进行权衡。
与现有技术相比,有益效果是:本发明利用OpenCL作为编程语言和COTS组件搭建了ADAS开发的基础平台,提出了一种可以在检测精度和速度成本进行协调的可伸缩的车道线检测算法,实现了在异构平台上车道线检测算法的并行化,大大提高了在可接受的精度下车道线检测的速度。实现了低成本的超低功耗车道线实时检测,对自动驾驶辅助系统(ADAS)的投入实际应用提供了可能。
附图说明
图1是本发明车道线检测算法框架图。
图2是本发明硬件配置示意图。
图3是本发明车道线检测效果图。
图4是本发明运行结果图。
图5是本发明时间分析图。
具体实施方式
附图仅用于示例性说明,不能理解为对本专利的限制;为了更好说明本实施例,附图某些部件会有省略、放大或缩小,并不代表实际产品的尺寸;对于本领域技术人员来说,附图中某些公知结构及其说明可能省略是可以理解的。附图中描述位置关系仅用于示例性说明,不能理解为对本专利的限制。
如图1所示,为车道线检测算法框架图,对输入图像先进行预处理,然后根据前一帧的估计来判断执行车道线检测算法或车道线跟踪算法,以获取精确的车道线位置。
如图2所示,为本发明中用到的两个型号的FPGA,表格中是两个FPGA的具体参数。由于有超低功耗的要求,主要使用Cyclone V ST。
如图3所示,演示了本算法在不同的场景中的车道线检测效果,排除环境因素对车道线检测的影响,如铁路轨道,需要转弯,曝光和阴影等等,使应用在多变环境下仍能安全可靠地运行。
如图4所示,表示在不同的粒子数目下,帧率的变化。由于粒子数目越大,检测越精确。分析上图可得,当例子数目为Np≤512时,帧率比较大,考虑到检测精度,Np=512时,检测精度与计算成本达到一个平衡点。
如图5所示,测量了三个步骤占用的时间比例,可以看出,粒子数目增大时,车道线跟踪的时间比例是呈上升趋势的,而车道线检测的时间比例是呈下降趋势的。
本实施例中,硬件方面:
摄像头将实时图像数据发送给FPGA进行处理。本发明中FPGA选用的是Altera的Cyclone V ST,其实现了业界最低的系统成本和功耗,具有高效的逻辑集成功能,而且性能水平突出,非常适用于搭建ADAS系统。我们使用该FPGA来处理捕获的图像信息并实现车道线检测功能。
软件方面:
该应用包括图像预处理、车道检测和车道跟踪三个部分。首先在预处理阶段,从每一帧中放大或提取关于车道线的信息。然后,判断车道线是否在先前预测的位置,来决定重新打点进行车道线位置的精确检测或者跟踪先前预测的车道线。
预处理。从传入的图像中选择一个感兴趣区域(ROI),该区域包含车道线的信息。首先将该部分转为灰度图像,然后用Sobel滤波器检测图像的边缘,最后通过一个阈值进行再次滤波,去除噪声和增强图像。
车道线检测。在预处理之后,ROI中会有高强度的像素带表示车道线。提取车道线的准确位置是车道检测和车道跟踪算法的任务。如果没有对车道线的估计,就执行车道线检测。在检测到车道线后,只在车道跟踪算法不能跟踪车道线时再进行车道线检测。在ROI中,我们假设车道线都是直线,因此一条车道线可以定义为两点,一个点在ROI顶部,一个在底部,直线可表示为因此可以通过以下关系来获取任意给定直线X的强度值:
为了检测多个车道标记,ROI被垂直分割为多个区域,每个区域有一个车道标记每一条直线的强度是通过计算ROI内所有像素的强度之和来确定的。另外,在一个可调的邻域(实际线的左和右)附近的像素也被添加到这个强度权重中:
2Nn是可调邻域的宽度。
选择具有最高强度权重的候选线作为车道标记候选线是通过正态分布后采样其x-top和x-bottom来创建的,使用更多的候选线可以获得更好的检测效果,单也会消耗更多的计算资源,因此可以权衡车道线检测的时间性能和质量。
车道线跟踪。车道线跟踪算法使用了先前帧的信息来检测后续帧的车道标记,实际上它没有检测到车道标记,只是跟踪他们。车道跟踪算法有两个信息来源,即预处理的ROI和前一帧的候选线,然后使用粒子滤波来跟踪标记。粒子滤波是一种基于贝叶斯信号处理马尔可夫链蒙特卡洛仿真模型的随机计算方法。
假设从前一帧采样到i=0,1,2,…,N个加权粒子,粒子状态为Xi,此外,每个例子被赋予一个权重wi,表示似然值。
本算法中的例子滤波器以迭代的方式用以下三步实现:每个粒子的状态预测更新;每个例子的重要性权重更新;根据例子的重要性权重进行重采样。
由于粒子已经以良好的线条形式给出,所以在检测阶段,从正常分布中取样候选线是没有必要的。因此引入了预测更新步骤。粒子代表每一帧中的车道标记,在下一帧中被用作先验分布。在新的一帧中,车道的标记可能稍微移动了(因为车辆移动)。粒子需要移动相同的距离,以便在新坐标系中有效的先验分布。粒子权重更新公式如下:
其中,μf=Y是观测直线,σf是测量噪声,Xt-μf=Xt-Y是两直线之间的距离。
则观测直线是车道线的概率值为:
其中,
预测和重要性权重的更新产生了一组新的粒子,其中每个粒子都有一个标准化的重要性权重。最后,为了提高跟踪的准确性和防止集合的退化,需要进行重采样操作。下面的伪代码演示了重采样的过程。
idx是任意一个粒子索引,Np是粒子数目,β用于滤去权重低于β的粒子,该算法中,权重越高的粒子,拥有多个复制粒子的概率越高。但还是可能会有一部分权重较大的粒子没被抽中。
重检车道线准则。从车道跟踪到检测的切换取决于实际的道路情况。本算法需要切换到检测状态的三种情况是:车道标记不交叉;任何检测到的车道标记之间的最小距离;在这个工作中,ROI的宽度的20%,至少30%的车道标识是在ROI中。
在Cyclone V ST运行该应用,显著降低了车道线检测的时间,使其实现实时车道线检测,同时实现了超低功耗。
显然,本发明的上述实施例仅仅是为清楚地说明本发明所作的举例,而并非是对本发明的实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动。这里无需也无法对所有的实施方式予以穷举。凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明权利要求的保护范围之内。
Claims (1)
1.一种基于FPGA的超低功耗实时车道线检测的方法,其特征在于,包括图像预处理、车道线检测和车道线跟踪三个部分;
所述的图像预处理,从传入的图像中选择一个感兴趣区域,该区域包含车道线的信息;首先将该部分转为灰度图像,然后用Sobel滤波器检测图像的边缘,最后通过一个阈值进行再次滤波,去除噪声和增强图像;
所述的车道线检测,在预处理之后,ROI中会有高强度的像素带表示车道线;提取车道线的准确位置是车道检测和车道跟踪算法的任务;如果没有对车道线的估计,就执行车道线检测;在检测到车道线后,只在车道跟踪算法不能跟踪车道线时再进行车道线检测;在ROI中,我们假设车道线都是直线,因此一条车道线可以定义为两点,一个点在ROI顶部,一个在底部,直线可表示为因此可以通过以下关系来获取任意给定直线X的强度值:
为了检测多个车道标记,ROI被垂直分割为多个区域,每个区域有一个车道标记每一条直线的强度是通过计算ROI内所有像素的强度之和来确定的;另外,在一个可调的邻域附近的像素也被添加到这个强度权重中:
2Nn是可调邻域的宽度;
选择具有最高强度权重的候选线作为车道标记候选线是通过正态分布后采样其x-top和x-bottom来创建的,使用更多的候选线可以获得更好的检测效果,单也会消耗更多的计算资源,因此可以权衡车道线检测的时间性能和质量。
所述的车道线跟踪,使用了先前帧的信息来检测后续帧的车道标记,实际上它没有检测到车道标记,只是跟踪他们;车道跟踪算法有两个信息来源,即预处理的ROI和前一帧的候选线,然后使用粒子滤波来跟踪标记;粒子滤波是一种基于贝叶斯信号处理马尔可夫链蒙特卡洛仿真模型的随机计算方法;
假设从前一帧采样到i=0,1,2,…,N个加权粒子,粒子状态为Xi,此外,每个例子被赋予一个权重wi,表示似然值;
本算法中的例子滤波器以迭代的方式用以下三步实现:每个粒子的状态预测更新;每个例子的重要性权重更新;根据例子的重要性权重进行重采样;
由于粒子已经以良好的线条形式给出,所以在检测阶段,从正常分布中取样候选线是没有必要的;因此引入了预测更新步骤;粒子代表每一帧中的车道标记,在下一帧中被用作先验分布;在新的一帧中,车道的标记可能稍微移动了;粒子需要移动相同的距离,以便在新坐标系中有效的先验分布;粒子权重更新公式如下:
其中,μf=Y是观测直线,σf是测量噪声,Xt-μf=Xt-Y是两直线之间的距离;
则观测直线是车道线的概率值为:
其中,
预测和重要性权重的更新产生了一组新的粒子,其中每个粒子都有一个标准化的重要性权重。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810267300.4A CN108491811A (zh) | 2018-03-28 | 2018-03-28 | 一种基于fpga的超低功耗实时车道线检测的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810267300.4A CN108491811A (zh) | 2018-03-28 | 2018-03-28 | 一种基于fpga的超低功耗实时车道线检测的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108491811A true CN108491811A (zh) | 2018-09-04 |
Family
ID=63317118
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810267300.4A Pending CN108491811A (zh) | 2018-03-28 | 2018-03-28 | 一种基于fpga的超低功耗实时车道线检测的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108491811A (zh) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105046235A (zh) * | 2015-08-03 | 2015-11-11 | 百度在线网络技术(北京)有限公司 | 车道线的识别建模方法和装置、识别方法和装置 |
CN107045629A (zh) * | 2017-04-19 | 2017-08-15 | 南京理工大学 | 一种多车道线检测方法 |
-
2018
- 2018-03-28 CN CN201810267300.4A patent/CN108491811A/zh active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105046235A (zh) * | 2015-08-03 | 2015-11-11 | 百度在线网络技术(北京)有限公司 | 车道线的识别建模方法和装置、识别方法和装置 |
CN107045629A (zh) * | 2017-04-19 | 2017-08-15 | 南京理工大学 | 一种多车道线检测方法 |
Non-Patent Citations (1)
Title |
---|
KAI HUANG 等: "ADAS on COTS with OpenCL: A Case Study with Lane Detection", 《TUM-I1637》 * |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110688987B (zh) | 一种行人位置检测与跟踪方法及系统 | |
US9171375B2 (en) | Multi-cue object detection and analysis | |
Li et al. | Pixel-level bridge crack detection using a deep fusion about recurrent residual convolution and context encoder network | |
Azevedo et al. | Automatic vehicle trajectory extraction by aerial remote sensing | |
US20180225515A1 (en) | Method and apparatus for urban road recognition based on laser point cloud, storage medium, and device | |
CN110443258B (zh) | 文字检测方法、装置、电子设备及存储介质 | |
CN111814597A (zh) | 一种耦合多标签分类网络和yolo的城市功能分区方法 | |
US8339454B1 (en) | Vision-based car counting for multi-story carparks | |
CN109886159B (zh) | 一种非限定条件下的人脸检测方法 | |
CN105809716A (zh) | 融合超像素与三维自组织背景减除法的前景提取方法 | |
CN114155200B (zh) | 基于卷积神经网络的遥感影像变化检测方法 | |
CN103136757A (zh) | 基于流形距离的两阶段聚类算法的sar图像分割方法 | |
Yu et al. | Cracklab: A high-precision and efficient concrete crack segmentation and quantification network | |
CN115035164A (zh) | 一种运动目标识别方法及装置 | |
Xiang et al. | Integrating inverse photogrammetry and a deep learning–based point cloud segmentation approach for automated generation of BIM models | |
CN110570450A (zh) | 一种基于级联的上下文感知框架的目标跟踪方法 | |
CN102592125A (zh) | 基于标准差特征的运动目标检测方法 | |
CN108491811A (zh) | 一种基于fpga的超低功耗实时车道线检测的方法 | |
Al Okaishi et al. | Real-time traffic light control system based on background updating and edge detection | |
CN109166138B (zh) | 基于高阶累积量的目标跟踪方法、装置及存储介质 | |
Huang et al. | A scalable lane detection algorithm on COTSs with OpenCL | |
CN113269171A (zh) | 车道线检测方法、电子设备及车辆 | |
Li et al. | Multi-lane detection based on rmfp for autonomous vehicle navigation in urban environments | |
Wei et al. | Research on a hierarchical feature-based contour extraction method for spatial complex truss-like structures in aerial images | |
Ahmad et al. | Crack segmentation in the wild using convolutional neural networks and bootstrapping |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20180904 |