实现自动驾驶的难点有哪些?

这篇具有很好参考价值的文章主要介绍了实现自动驾驶的难点有哪些?。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

摘要:

这里主要介绍了传感器融合(SF)对目标方面的几类任务,除目标之外,传感器融合还能做很多其他对环境建模的任务,例如道路特征的描述、占用栅格地图以及可通行区域表示等等。

从车道保持到高阶自动驾驶功能,都需要车辆所处的静态、动态环境的准确信息。通过传感器数据融合,可以获得有关其他交通参与者的动态信息、静态环境以及道路和交通规则的信息。俗话说“单丝不成线,独木不成林”。面对如此复杂的自动驾驶系统,最好的办法自然是博采众长,多传感器融合咯。

01False Positive & False Negative

这是做多传感器融合之前必须了解的一个概念。统计学上的名字叫第一类错误和第二类错误。当然,这么专业的名字经常搞得人云里雾里。实际上,除了FP和FN之外,还有TP和TN,组成了如下图所示的四角关系。

实现自动驾驶的难点有哪些?

医学上经常会用这个术语来表述检测结果和实际结果的差别,经典的例子就是你有没有得肿瘤导致你心情大起大落的故事。在自动驾驶感知任务中,FP和FN常被描述成如下场景:

FP:传感器探测到了目标,但实际上没有这个目标。这样的目标又被称作ghost。

FN:传感器没有探测到目标,但实际上有这个目标。这样的情况被称为漏检。

对于双目摄像头而言,它能感知深度,这原本是个很不错的能力。但是当双目摄像头遇上有强光反射的光滑地面时,强光导致的图像局部饱和会让摄像头的深度测量出现偏差,而误以为地上有一个洞。但我们都知道实际上地面上并没有洞,那这就是一个false positive。

实现自动驾驶的难点有哪些?

明亮的地面反射导致摄像头探测到了洞

而这样的偏差会导致汽车在行驶过程中误以为前方不能通行,需要绕行避让或直接刹停,从而产生让人觉得莫名其妙的“幽灵刹车”。但是面对同样的场景,毫米波雷达就不会探测出一个洞来,因为它通过自身发出的电磁波来感知周围环境而不受光线强弱的影响。这时候采用传感器融合,就能够避免这样的问题。

02目标检测

了解了多传感器融合的必要性之后,我们来看看多传感器融合的细分任务。首要的任务便是目标检测。对于自动驾驶汽车来说,周围环境中最多的、出现频率最高的自然是其他汽车。而目标检测就是要用一个个小框把他们框起来,从而与周围环境区别开来。这样的框我们就称为bounding box。Bounding box可以分成二维和三维的,分别对应目标检测里的二维目标检测及三维目标检测方法。2D bounding box,顾名思义每一个框子都是平面的。好处在于简单快捷的把一帧图像或是点云里的目标标识出来。

实现自动驾驶的难点有哪些?

但是同时缺点也是显而易见的。第一,由于框子也是二维的是一个平面,我没法知道这里车的长或者宽;第二,目标的行驶方向也无法体现出来。这两点在车辆进行ACC、AEB纵向功能时可能还不明显,但一旦涉及到车辆横向控制,需要变道时,缺少这些信息则是致命的。于是,三维的目标检测应运而生,并逐渐成为目标检测的主流。同时,我们也会把目标分类合并在一起做掉,这可以通过神经网络的多头设计来完成。因此你会看到目标的框上有一个分类以及分类的置信度。不同类别的目标有不同的几何外形,这样也能方便设计不同大小的框子对应不同类别的目标

实现自动驾驶的难点有哪些?

不过3维框也有其局限,我们都知道车辆的外表并非一个完美的长方体,而都用长方体框出就忽略掉了很多外观上的细节。而这些细节在近距离跟车、加塞变道时会变得特别有用。

03目标追踪

目标检测还只是针对单帧的画面和数据,但是实际上我们的运动场景是连续的,我们不能只简简单单在一张或几张图片上成功检测到物体就足够,还需要跨帧地确保这些目标联系起来,即知道这些目标是同一个目标在不同时间戳的表示。这就是目标追踪。目标追踪的常用结构就是依据我们之前讲过的卡尔曼滤波结合目标关联算法。先预测,再关联,后更新。九字箴言。对于不同的目标我们会建立不同的数学模型,例如针对静止目标,由于速度始终为0不会变化,我们就会用恒定速度(constant velocity)模型来建立运动学模型;而针对运动的目标,尤其是车辆这种还带有旋转、拐弯的一般会用匀速圆周运动模型(constant turn rate and velocity)。不同的模型意味着不同的预测结果。

实现自动驾驶的难点有哪些?

而有了预测值之后,你就能大约猜测出下一个周期目标应该会出现在图上的什么位置,从而去那个范围搜寻对应的像素点或者点云,把合适的点与预测的目标位置关联上。关联上后你就获得了这个时刻的测量值,你就可以用测量去校正之前的预测,从而获得精确的目标位置。这样,循环往复,周而复始,你就成功地tracking上了这个目标。在实际自动驾驶项目中,丢目标和目标跳变是一个很严重的问题。这里的“丢目标”指的就是目标追踪失败,传感器没能跟上目标实际的运动轨迹;“目标跳变”指的就是目标追踪丢失后又重新跟上。由于这两者都会导致目标ID变化而导致功能退出,因此都是需要在目标融合时极力避免的。

04总结

这里主要介绍了传感器融合(SF)对目标方面的几类任务,除目标之外,传感器融合还能做很多其他对环境建模的任务,例如道路特征的描述、占用栅格地图以及可通行区域表示等等。这些会在后续文章介绍,欢迎大家点赞关注收藏!

来源 | 知乎 晓畅Auto文章来源地址https://www.toymoban.com/news/detail-496584.html

到了这里,关于实现自动驾驶的难点有哪些?的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 自动驾驶中大火的AI大模型中有哪些研究方向,与Transformer何干?

    摘要: 本文将针对大模型学习中可能遇见的问题进行分析梳理,以帮助开发者在利用大模型在自动驾驶场景处理中学习更好的策略,利用有关大模型性能评价的问题,制定一个科学的标准去判断大模型的长处和不足。 随着自动驾驶行业发展对于大数据量处理的强大需求,其

    2024年02月21日
    浏览(39)
  • 如何利用Python实现文本的自动摘要,代码全程示例

    摘要:文本自动摘要是一个重要的自然语言处理任务,可以用于许多应用场景,例如新闻摘要、文档分类和搜索引擎优化。在本文中,我们将介绍如何利用Python实现文本的自动摘要,包括文本预处理、摘要生成算法和结果评估。 :自然语言处理、文本摘要、Python 一、

    2024年02月06日
    浏览(56)
  • 纯视觉都有哪些量产方案?单目3D感知在自动驾驶中的应用一览(3D检测/BEV/占用网络)

    尽管基于点云的3D目标检测算法性能不断提升,在KITTI和Nuscenes等榜单上碾压视觉方案。但是激光雷达相对高昂的造价和对各种复杂天气情况的敏感性限制激光雷达的应用范围,使得研究人员更多的探索基于视觉的3D检测。 纯视觉的3D检测输入一般是单目图像或多目图像,只需

    2024年03月19日
    浏览(56)
  • 年内实现全面自动驾驶?快来恶补一下自动驾驶技术吧

    在7月6日召开的2023世界人工智能大会上,特斯拉CEO斯克预测,随着人工智能技术的快速发展,大约在今年年末,就会实现全面自动驾驶。 他说,“我之前也做过许多类似的预测,我承认之前的预测也不完全准确,但是这一次的预测,我觉得是比较接近的。” 不知道小伙伴们

    2024年02月15日
    浏览(46)
  • DQN自动驾驶——python+gym实现

    gym是用于开发和比较强化学习算法的工具包,在python中安装gym库和其中子场景都较为简便。 安装gym: 安装自动驾驶模块,这里使用Edouard Leurent发布在github上的包highway-env(原链接): 其中包含6个场景: 高速公路——“highway-v0” 汇入——“merge-v0” 环岛——“roundabout-v0”

    2023年04月25日
    浏览(38)
  • 【自动驾驶】模型预测控制(MPC)实现轨迹跟踪

    bilibili的DR_CAN讲解的MPC模型预测控制器 知乎上一个比较通俗易懂的解释 模型预测控制 轨迹跟踪模型预测控制(MPC)原理与python实现 DR_CAN笔记MPC MPC控制笔记 模型预测控制(MPC)的核心思想就是以优化方法求解最优控制器,其中优化方法大多时候采用二次规划(Quadratic Programmin

    2024年02月02日
    浏览(50)
  • MPC自动驾驶横向控制算法实现 c++

    参考博客: (1)无人车系统(十一):轨迹跟踪模型预测控制(MPC)原理与python实现【40行代码】 (2)【自动驾驶】模型预测控制(MPC)实现轨迹跟踪 (3)自动驾驶——模型预测控制(MPC)理解与实践 (4)MPC算法学习(1) 0 前言 前面介绍的PID、Pure pursuit、Stanley都只是利用当前的

    2024年02月22日
    浏览(45)
  • 自动驾驶算法(一):Dijkstra算法讲解与代码实现

    目录 0 本节:栅格地图、算法、路径规划 1 Dijkstra算法详解 2 Dijkstra代码详解         用于图中寻找最短路径。节点是地点,边是权重。         从起点开始逐步扩展,每一步为一个节点找到最短路径:         While True:                 1.从未访问的节

    2024年02月06日
    浏览(40)
  • Mediapipe实时3D目标检测和跟踪(自动驾驶实现)

    3D目标检测是根据物体的形状、位置和方向来识别和定位物体的任务。在2D目标检测中,被检测到的物体仅表示为矩形边界框。3D目标检测任务通过预测物体周围的包围框,可以获取物体的三维位置信息。 3D目标检测在各行各业都有广泛的应用。一些常见的用途包括: 🎯 机器

    2024年02月09日
    浏览(37)
  • ios苹果app应用程序录屏开发有哪些难点和注意点?

    首先,让我们简单了解一下iOS录屏的基本原理。iOS录屏是指将设备屏幕上的内容实时捕捉并保存为视频文件的过程。这在教学、演示和用户支持等场景中非常有用。iOS录屏可以通过使用ReplayKit框架来实现,该框架提供了一套API,用于捕捉屏幕上的内容并生成视频文件。 那么,

    2024年02月03日
    浏览(44)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包