论文解读--Robust lane detection and tracking with Ransac and Kalman filter

使用随机采样一致性和卡尔曼滤波的鲁棒的车道线跟踪

摘要

        在之前的一篇论文中,我们描述了一种使用霍夫变换和迭代匹配滤波器的简单的车道检测方法[1]。本文扩展了这项工作,通过结合逆透视映射来创建道路的鸟瞰视图,应用随机样本共识来帮助消除由于道路噪声和伪影造成的异常值,以及一个卡尔曼滤波器来帮助平滑车道跟踪器的输出。

1.介绍

        多年来,高速公路上的司机安全一直是人们关注的一个领域。随着快速、廉价、低功耗和精密的电子产品的发展,带有传感器、电子产品和预警系统的汽车开始出现在市场上。

        研究和开发的感兴趣的一个领域是避免碰撞。车道检测是有效避免碰撞的一个重要组成部分。当司机正在进入的车道上有故障时,检测突然或意外的车道变化的能力可以帮助司机避免碰撞。有效地监测汽车在车道内的位置,可以帮助避免因司机干扰、疲劳或在受控物质的影响下驾驶而造成的碰撞。避碰系统的设计存在明显的困难和挑战,其中一些挑战超出了工程领域,涉及与法律和责任相关的复杂问题。

        在本文中,我们解决了设计一个车道检测系统。它的组织方式如下。在简要回顾了一些以前的研究之后,我们接着描述了该系统的各个组成部分。这些方法包括使用时间模糊的图像预处理,逆投影映射来创建道路的鸟瞰图,一个用于检测候选车道标记的霍夫变换,一个用来帮助处理图像中的异常值的随机样本共识算法,以及使用卡尔曼滤波器跟踪车道参数。然后,我们简要描述了用于收集数据的硬件,然后展示了车道跟踪系统的性能。结果表明,与仅使用霍夫变换和匹配滤波的[1]系统相比,该系统在性能上有了相当大的改进。

2.以前的研究

        许多基于视觉的车道检测技术已经被开发出来,试图稳健地检测车道。在车道检测特征的提取中,最常用的方法之一是将边缘检测器应用于数据[2,3]。使用这种方法,Canny边缘检测器通常用于生成二进制边缘映射。从二进制边缘映射中,利用经典的霍夫变换提取一组线作为车道标记的候选线。虽然这种方法通常显示出良好的结果,但检测到的车道往往由于表面不规则或道路上的导航文本标记而倾斜。通过颜色分割来提取车道标记是[4,5]常用的另一种方法。不幸的是,颜色分割对环境光很敏感,需要额外的处理,以避免不良的影响。

        大多数用于车道检测的方法直接操作相机捕获的图像,没有任何几何校正或改变相机透视[1,2,4,6]。虽然从相机的角度处理图像允许访问原始数据值,但定义感兴趣的特征的属性可能会很复杂。例如,一个前瞻性相机将捕捉到的图像中没有平行的车道标记,其线宽随着距离相机的距离的变化而变化。这些变化通常需要以不同的方式处理捕获图像的每一行。

        上面描述的许多系统在某些驾驶条件下表现良好,通常要求一个特定的假设是有效的。其中一些假设包括存在强烈的车道标记对比,以及道路上没有人工痕迹,如裂缝、箭头或类似的标记。不幸的是,这些假设并不适用于许多高交通流量的城市街道和高速公路。

3.方法

        本文将[1]中的分层车道检测方法进行了扩展,(1)使用逆透视映射,(2)应用随机样本共识来帮助消除异常值,(3)使用卡尔曼滤波器进行预测和平滑。在下面的章节中,将描述车道检测系统的各个组件。

3.1.图像增强

        捕获的彩色图像经过灰度变换和时间模糊,平均N=连续3帧。这种平滑有助于连接虚线车道标记,形成一个接近连续的线[1]。

3.2.反向透视映射

        下一步是对图像执行反向透视映射(IPM)。这种转换用于将捕获的图像从相机视角改变为鸟瞰图,如图1所示。[7, 8, 9].通过这种转换,车道检测现在变成了检测一对平行线的问题,这些平行线通常被一个给定的固定距离分开。此外,这种转换使图像平面中的像素之间能够映射到世界坐标(脚),如图1b所示。保证转换的精度,相机的内参和外参是必须的。

图1:反向透视映射将相机透视图像转换为鸟瞰图像。

3.3.车道候选位置检测

        接下来,对IPM图像应用自适应阈值来生成二值图像[1]。然后每个二值图像被分成两部分,每部分可能包含一个车道标记。然后在二值图像上计算低分辨率的霍夫变换,为每半图像[1]找到10条得分最高的线。然后沿着每条线的长度进行采样,如图2中的红色加号所示。为了找到每条线的近似中心,在每条线的每个样本点上应用一个一维匹配滤波器。如[1]所述,匹配滤波器是一个高斯方差,其方差是线宽的函数。由于用IPM创建的鸟瞰视图产生的线的宽度近似恒定,所以一个固定的方差高斯核可以用于匹配的滤波器。经过匹配滤波后,选择每个样本点处相关系数最大的超过预定阈值的像素作为车道标记中心的最佳估计值,如图3中的绿色加号所示。最小阈值有助于忽略假阳性,如裂缝、焦油斑块或车道标记不存在的情况

图2:绿线表示从Hough变换中得到的高得分线,加号表示每条线都要被采样的点

3.4.消除异常值和数据建模

        一旦每个样本点上的每个候选线的中心被估计出来,随机采样一致性(RANSAC)就被应用于数据点。通用的RANSAC算法通过最可能的数据集或嵌入器稳健地适合一个模型,同时拒绝异常值[10,11]。然后使用线性最小二乘估计(LSE)来拟合到整数上的一条直线。图3用ρ和θ表示拟合线的参数化,其中ρ是从原点(左上角像素)到直线的距离,θ是如图3所示的角度(一般接近90◦)。

图3:通过一组候选点拟合的直线,用ρ和θ参数化

3.5.跟踪

        利用卡尔曼滤波器预测了每条线的参数。状态向量x (n)和观测向量y (n)定义为

(1)

        其中,ρ和θ定义了线的方向,˙ρ和θ˙是ρ和θ的导数,它们是利用当前帧和前一帧之间的ρ和θ的差值来估计的。状态转移矩阵A为

(2)

        而测量方程中的矩阵C是单位矩阵。假设状态和测量方程中的噪声为白色,并假设每个过程与其他过程不相关。因此,这些向量随机过程的协方差矩阵是常数和对角线的。每个噪声过程的方差是离线估计使用的帧,其中准确的车道估计正在产生。在车道标记未被检测到的情况下,矩阵C被设置为零,迫使卡尔曼滤波器纯粹依赖于预测。最后,将估计的线映射回相机的视角,以描绘车道检测结果。

4.实验分析

4.1.硬件

        用于测试和评估这种新的车道检测系统的硬件是围绕一个基于英特尔的计算机构建的。在后视镜下方安装了一个面向前方的火线彩色摄像头,这样它就可以清晰地看到前方的道路。视频以VGA分辨率以30帧每秒的速度拍摄。

4.2.结果

        车道检测算法是在Matlab中实现的,每帧大约需要0.8秒。表1和表2说明了当前和以前的车道检测系统在应用于超过10小时的捕获视频时的性能。表1中的结果显示,在使用类似的数据集进行测试时,它比[1]中描述的系统的准确性有所提高。由于缺乏对其他车道检测算法和交钥匙软件系统,使得比较结果极其困难。此外,为数据定义基本真相是极其乏味的;因此,通常避免它。因此,检测是定性的,纯粹基于单个用户的视觉检查。我们使用以下规则将结果量化为不同的类别:1)正确的检测发生在超过50%的车道标记估计覆盖在车道标记在现场,2)一个不正确的检测发生在估计覆盖在车道以外的其他标记,和3)错过检测发生时没有估计尽管相关车道标记可见。取左右标记的检出率平均值,得到表中的数字。图4显示了一些正确的车道检测的实例。结果以每分钟的检出率来表示。当使用不同帧率的相机捕获数据时,这个度量允许将结果标准化。

表1 当前车道检测系统的准确性

表2 之前的车道检测系统[1]的准确性

图4:精确车道线检测示例

        尽管测量有噪声,卡尔曼滤波器递归地估计状态向量的动态。图5为ρ的观测值与预测值的比较。

        图5:多帧范围内,ρ的观测值和预测值之间的比较。一个爆炸图显示了卡尔曼滤波器平滑噪声测量值。

图6:错误的车道线检测示例

        图6中还显示了一些不正确的车道检测的实例。幸运的是,在图6a中,卡尔曼滤波器能够在通过道路上的碰撞后的几毫秒内结束。然而,在图6b中,由于道路老化和磨损而缺少车道标记,导致了对裂缝等虚假信号的检测和跟踪。

5.结论

        本文提出的工作是对[1]中提出的分层车道检测系统的一个重大改进。诸如(1)反向透视映射(IPM)、(2)随机采样一致性(RANSAC)和(3)卡尔曼滤波等特征的加入,增加了对以往系统的新颖性和扩展性。IPM有助于简化寻找候选车道标记的过程,而RANSAC有助于排除估计中的异常值。最后,卡尔曼滤波器忽略了较小的扰动,并用跟踪保持车道标记序列。

        用于测试拟议系统准确性的数据集被记录在佐治亚州亚特兰大市及其周边地区的高速公路和街道上。尽管遇到的交通条件和道路质量存在变化,但推荐的系统仍具有良好的性能,如表1所示。

6.将来工作

        未来将实施车道偏离警告(LDW)。它将利用车道检测系统的能力来准确地确定到车道标记的距离,如图4所示。此外,所实现的算法将被移植到c#和C++中,以方便建立一个实时系统。未来的数据集还将包括地面真实信息,以允许精确的误差计算。其他用户还将进行目视检查。最后,通过计算N作为车辆速度的函数,使图像增强阶段自适应。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/212283.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

基于算能的国产AI边缘计算盒子8核心A53丨17.6Tops算力

边缘计算盒子 8核心A53丨17.6Tops算力 ● 可提供17.6TOPS(INT8)的峰值计算能力、2.2TFLOPS(FP32)的高精度算力,单芯片最高支持32路H.264 & H.265的实时解码能力。 ● 适配Caffe/TensorFlow/MxNet/PyTorch/ ONNX/…

倒计时 1 天,2023 IoTDB 用户大会期待与您相见!

终于!就在明天,2023 IoTDB 用户大会即将在北京与大家见面! 这场筹备已久的盛会,汇集了超 20 位大咖嘉宾带来的精彩议题,届时来自美国国家工程院、清华大学软件学院的产业大拿,与能源电力、钢铁冶炼、城轨运…

康托展开(Cantor Expansion)

【康托展开简介】康托展开(Cantor Expansion)是一种特殊的哈希函数,是一个相对快速的判重方法,其时间复杂度为O(n^2),其中 n 是集合中元素的个数。康托展开能够判重,依据的是一个集合各元素产生的全部排列中…

翻译: GPT4等大型语言模型的原理解析和未来预测慢思考和模型自我迭代和LLM安全

YouTube: Intro to Large Language Models - YouTube 1. Large Language Model LLM 大家好,最近我做了一个关于大型语言模型的 30 分钟演讲,有点像介绍性演讲,不幸的是,那个演讲没有被录制下来,但很多人在演讲结束后…

企业计算机服务器locked1勒索病毒数据恢复,locked1勒索病毒解密流程

随着计算机技术的不断发展,越来越多的企业走向数字化办公时代,计算机技术为企业的生产运营提供了有利条件,但也为企业带来了网络安全威胁。在本月,云天数据恢复中心陆续接到很多企业的求助,企业的速达办公软件遭到了lo…

Linux周期任务

我自己博客网站里的文章 Linux周期任务:at和crontab 每个人或多或少都有一些约会或者是工作,有的工作是长期周期性的, 例如: 每个月一次的工作报告每周一次的午餐会报每天需要的打卡…… 有的工作则是一次性临时的&#xff0…

面试数据库八股文十问十答第二期

面试数据库八股文十问十答第二期 作者:程序员小白条,个人博客 相信看了本文后,对你的面试是有一定帮助的! ⭐点赞⭐收藏⭐不迷路!⭐ 1.MySQL的主从复制 MySQL的主从复制是什么?MySQL主从复制是一种常见的…

Kubernetes1.27容器化部署Prometheus

Kubernetes1.27容器化部署Prometheus GitHub链接根据自己的k8s版本选择对应的版本修改镜像地址部署命令对Etcd集群进行监控(云原生监控)创建Etcd Service创建Etcd证书的Secret创建Etcd ServiceMonitorgrafana导入模板成功截图 对MySQL进行监控&#xff0…

C语言-结构体

---------------------------- ------------------ 岁月漫长心怀热爱,携手共赴星辰大海 --------今天来到我们自定义类型 -----结构体的讲解 目录 结构体的类型声明和初始化 结构体的类型声明 结构体成员的直接访问 结构体成员的间接访问 嵌套结构体进行访问 使用…

一文通关物理机Ubuntu22.04融合部署OpenStack

前言 因为博主笔记本是amd的,就最近搞了个小主机,就想装个云平台玩玩,搞了三四天才正儿八经弄完,摸了一大堆错误出来,在文章前面我会将这些需要注意的点列举出来。 环境 物理环境: i5 12450H 32G内存 无线…

深度学习——第1章 深度学习的概念及神经网络的工作原理

1.1 序言——探索智能机器 千百年来,人类试图了解智能的机制,并将它复制到思维机器上。 人类从不满足于让机械或电子设备帮助做一些简单的任务,例如使用滑轮吊起沉重的岩石,使用计算器做算术。 人类希望计算机能够自动化执行更…

【KPDK】概述

DPDK的主要目标是为数据平面应用程序中的快速数据包处理提供一个简单、完整的框架。用户可以使用代码来理解所采用的一些技术,构建原型或添加自己的协议栈。可提供使用DPDK的替代生态系统选项。 DPDK框架通过创建环境抽象层(EAL)为特定环境创…

大文件分片上传、分片进度以及整体进度、断点续传(一)

大文件分片上传 效果展示 前端 思路 前端的思路&#xff1a;将大文件切分成多个小文件&#xff0c;然后并发给后端。 页面构建 先在页面上写几个组件用来获取文件。 <body><input type"file" id"file" /><button id"uploadButton…

PyLMKit(3):基于角色扮演的应用案例

角色扮演应用案例RolePlay 0.项目信息 日期&#xff1a; 2023-12-2作者&#xff1a;小知课题: 通过设置角色模板并结合在线搜索、记忆和知识库功能&#xff0c;实现典型的对话应用功能。这个功能是大模型应用的基础功能&#xff0c;在后续其它RAG等功能中都会用到这个功能。功…

前端项目打包和自动化部署(jenkins+gitee+nginx)

项目打包和自动化部署 一. 项目部署和DevOps 1. 传统的开发模式 在传统的开发模式中&#xff0c;开发的整个过程是按部就班就行&#xff1a; 但是这种模式存在很大的弊端&#xff1a; 工作的不协调&#xff1a;开发人员在开发阶段&#xff0c;测试和运维人员其实是处于等待…

【MOJO】Modular语言安装和测试

目录 一、Mojo介绍 Linux​ Mac 二、安装Mojo SDK 三、mojo代码测试 3.1、在 REPL 中运行代码​ 3.2、构建并运行 Mojo 源文件​ 运行mojo文件​ 构建可执行二进制文件​ 四、VSCode安装 一、Mojo介绍 在学习Rust语言的过程中无意发现了Modular语言&#xff0c;语言…

WIN10 WIN11 关闭更新的绝佳办法(极简单无副作用)

WIN10 WIN11 关闭更新的绝佳办法&#xff08;极简单无副作用&#xff09; 极其简单用实用可以关闭更新20年 winr&#xff0c;输入regedit 打开注册表打开注册表的这个路径&#xff1a; 计算机\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WindowsUpdate\UX\Settings 右键空白的地方…

智慧用电安全动态监控系统

智慧用电安全动态监控系统是一种先进的电力监控技术系统&#xff0c;它运用物联网、大数据、云计算等先进技术&#xff0c;对电力系统的运行状况进行实时监控和预警。 该系统依托电易云-智慧电力物联网&#xff0c;通过智能传感终端采集电气线路的实时运行数据&#xff0c;客户…

也可Adobe Animate

Animate CC 由原Adobe Flash Professional CC 更名得来&#xff0c;2015年12月2日&#xff1a;Adobe 宣布Flash Professional更名为Animate CC&#xff0c;在支持Flash SWF文件的基础上&#xff0c;加入了对HTML5的支持。并在2016年1月份发布新版本的时候&#xff0c;正式更名为…

数学字体 Mathematical fonts

Mathematical fonts 数学字体&#xff1a; ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyzRQSZ \\ \mathcal{ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyzRQSZ} \\ \mathfrak{ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyzRQSZ} \\ \mathbb{ABC…