前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【百度Apollo】探索自动驾驶:深入了解Apollo平台视觉感知的原理

【百度Apollo】探索自动驾驶:深入了解Apollo平台视觉感知的原理

作者头像
鸽芷咕
发布2024-05-26 17:11:59
500
发布2024-05-26 17:11:59
举报
文章被收录于专栏:C++干货基地C++干货基地

引入

在自动驾驶技术的发展中,视觉感知模块扮演着至关重要的角色。百度Apollo自动驾驶平台致力于通过先进的视觉感知技术实现车辆对周围环境的准确感知和理解,从而实现安全、高效的自动驾驶。本文将为您介绍百度Apollo自动驾驶视觉感知模块的基本原理、技术特点及其在自动驾驶中的应用。

一、视觉感知模块简介

摄像头作为无人车系统中最重要的传感器之一,因为其信息丰富、观测距离远等特点,在障碍物检测和红绿灯检测等方向发挥着不可替代的作用,是对激光雷达感知结果的重要补充。

但摄像头有着容易受环境影响、缺乏深度信息等缺点,给无人驾驶系统中的视觉感知算法带来了巨大的挑战。因此,如何建立一套高精确率和高稳定性的视觉感知算法,是无人车感知模块的核心问题。视觉感知算法在 Apollo 平台上主要有 3 个应用场景,分别是红绿灯检测、车道线检测、基于摄像头的障碍物检测。

每个模块又可以分为 3 部分,分别是图像的预处理、神经网络模型以及后处理。

  • 预处理:对上游信息做一些处理和整合,以方便把信息直接输入到模型中做预测。
  • 神经网络模型:主要涉及一些深度学习算法,包括目标检测、语义分割、图像分类等。
  • 后处理:为了优化模型效果,我们会利用一些传统的算法进一步优化网络模型的预测,让我们的算法可以在实车上跑得更加流畅。

二、视觉感知模块的原理

三、红绿灯检测模块原理

红绿灯检测模块的主要作用是检测当前路况下在摄像头的视觉范围内的红绿灯的状态,这是一个典型的目标检测任务。如下图所示,红绿灯检测模块一共包含 4 个部分,分别是数据预处理、红绿灯位置检测、红绿灯识别和矫正。

  1. 通常红绿灯在图像中所占比例比较低,为了能够有效的检测出红绿灯,我们会借助高精地图给出的的信息预先从相机图像中将包含红绿灯区域的大致位置取出来。
  2. 红绿灯位置检测部分采用了一种常规的基于 CNN 的目标检测算法,模型接收的就是刚刚选取的区域,输出是红绿灯的边框以及红绿灯的类别。
  3. 检测完成后,需要对红绿灯的颜色做识别。我们训练了 3 个轻量级的卷积神经网络做分类,这 3 个网络分别对应检测结果的 3 个类别,竖着的、横着的和方形的。
  4. 最后,矫正器主要针对识别置信度不高的情况,通过查询前面几帧的检测状态对当前的红绿灯颜色进行矫正。

四、车道线检测模块原理

我们把车道线检测算法当作分割问题,在图像中寻求对于语义上车道线存在位置的检测,即使它是模糊的、被光照影响的、甚至是完全被遮挡的,我们都希望能将它检测出来。

车道线检测的网络结构如上图所示,主干是一个编码-解码结构的分割网络,用来输出车道线分割结果。在车道编码器的末端附加一个网络分支来检测消失点。

该分支由卷积层和全连通层组成,其中卷积层为消失点任务转换车道特征,全连通层对整个图像进行全局汇总,输出消失点位置。

车道线检测模型在遮挡情况下和转弯时都可以对车道线进行有效的检测。

五、障碍物检测模块原理

障碍物检测部分采用的是基于单目视觉的障碍物检测算法,根据相机获取的图像得到障碍的类别和位置信息。

这里使用 7 个变量来表示 3D 边框,分别是物体的长宽高,物体的位置 x,y,z 以及物体的旋转角度 θ。

上图是 3D 障碍物检测模块的模型结构图,输入的是单张的图像信息,经过神经网络提取特征,最后接上检测模块(Apollo 有两个检测模型,分别是基于 YOLO 的 one-stage 检测方法和基于中心点检测的检测方法)。

最终,通过模型可以得到障碍物的 3D 信息(长宽高、角度等),可以根据这些信息求出障碍物的 3D 边框。

五、总结

总之,百度Apollo自动驾驶视觉感知模块凭借其高度集成、实时性、准确性、适应性和开放性等特点,在自动驾驶领域具有广泛的应用前景。随着技术的不断发展和优化,Apollo视觉感知模块将为实现更加安全、智能的自动驾驶提供有力支持。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2024-04-30,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 引入
  • 一、视觉感知模块简介
  • 二、视觉感知模块的原理
  • 三、红绿灯检测模块原理
  • 四、车道线检测模块原理
  • 五、障碍物检测模块原理
  • 五、总结
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档