AdamShan
奔驰自动驾驶算法专家,谷歌认证机器学习专家,兰州大学无人驾驶团队创始人,主攻深度学习,无人驾驶汽车方向,著有《无人驾驶原理与实践》一书。
展开
-
自动驾驶系统进阶与项目实战(十)基于PointPillars的点云三维目标检测和TensorRT实战(1)
自动驾驶系统进阶与项目实战(十)基于PointPillars的点云三维目标检测和TensorRT实战(1)发表于CVPR2019的PointPillars是目前比较受业内认可的激光雷达三维检测算法,其推理速度和性能俱佳,百度Apollo和Autoware两个开源自动驾驶项目的感知系统均包含了基于PointPillars目标检测模块。本文首先从理论层面解析PointPillars方法,接着使用PyTorch和Kitti数据集从零开始训练一个神经网络,我们将使用kitti的测试数据推理并可视化检测结果。在下原创 2021-07-18 18:01:38 · 11596 阅读 · 36 评论 -
自动驾驶系统进阶与项目实战(九)基于行锚框和全局信息的深度学习车道线检测方法
自动驾驶系统进阶与项目实战(九)基于行锚框和全局信息的深度学习车道线检测方法目前多数基于深度学习的车道线检测方法通常把车道线的识别问题处理为车道线像素分割问题,单纯的像素级语义分割模型的推理的实时性相对较差。人类对于车道线的感知通常基于上下文和全局信息,所以即使有其他障碍物对车道线造成大面积的遮挡,人依然能够理解车道线及其走向。本文介绍一种基于行锚框和全局信息的深度学习车道线分割方法,由于使用行锚框对车道线检测任务进行建模,该方法具有很高的实时性和不错的性能,本文将实践其基于Pytorch的模型训练和测原创 2021-04-16 19:14:26 · 5333 阅读 · 11 评论 -
自动驾驶系统进阶与项目实战(八)面向自动驾驶的高精度地图框架解析和实战
自动驾驶系统进阶与项目实战(八)面向自动驾驶的高精度地图框架解析和实战前面聊了一些如何制作较大规模的点云地图以及如何使用点云地图进行定位的方法,点云图是高精度地图的一部分,主要用于配准定位和作为高精度地图构建环节中的几何图层(能够反应路面几何结构和大量有效信息),产品形态的高精度地图通常为包含大量交通要素语义和坐标信息的矢量地图,如何定义、构造这种面向自动驾驶业务的矢量地图,目前行业并没有通用的标准(OpenDrive并不是为自动驾驶设计的),Autoware自动驾驶系统的矢量地图和地图引擎计划使用La原创 2020-08-01 11:17:56 · 8693 阅读 · 16 评论 -
自动驾驶系统进阶与项目实战(七)基于PolarNet的点云端到端语义分割和项目实战
自动驾驶系统进阶与项目实战(七)基于PolarNet的点云端到端语义分割和项目实战基于深度学习的激光雷达点云语义分割是目前自动驾驶领域的热门研究方向,前面的文章中我们介绍过了SqueezeSeg和百度cnn seg点云语义分割方法,其中cnn seg被应用于百度Apollo以及Autoware两个开源的自动驾驶系统,在Apollo和Autoware中,点云语义分割模块都占据了障碍物感知比较大的权重。本文我将详细解读点云语义分割领域最新方法——PolarNet,该方法发表于CVPR2020,是目前该领域最原创 2020-07-20 15:59:52 · 9258 阅读 · 18 评论 -
自动驾驶系统进阶与项目实战(六)基于NDT的自动驾驶高精度定位和ROS项目实战
自动驾驶系统进阶与项目实战(六)基于NDT的自动驾驶高精度定位和ROS项目实战对于高级自动驾驶系统而言,定位模块通常会融合IMU、轮速计(车辆底盘)以及激光雷达odometry多种测量,使用滤波算法(EKF、UKF等)以获得平滑、厘米级别的绝对定位,其中基于高精度点云地图和激光雷达的配准定位(Lidar Odometry)因其精度高、可靠性好,在整个融合定位中通常占很大的权重,是自动驾驶定位系统中相对可靠的“绝对定位”数据来源,本文我们学习如何使用NDT配准实现自动驾驶汽车的高精度定位,并且结合前面文章原创 2020-06-13 23:09:36 · 16311 阅读 · 59 评论 -
自动驾驶系统进阶与项目实战(五)使用SC-LEGO-LOAM进行较大规模点云地图构建和闭环优化
自动驾驶系统进阶与项目实战(五)使用SC-LEGO-LOAM进行较大规模点云地图构建和闭环优化高精度地图和高精度定位目前仍然是L4及以上自动驾驶系统的核心模块之一,成熟的传感器融合定位方法高度依赖高精度地图,L4级自动驾驶系统中,我们所说的高精度地图通常包含两类地图:语义地图(也称为矢量地图)和点云地图,语义地图也就是自动驾驶感知规划重度依赖的地图,包含了大量的路网和交通静态信息,是结构化数据;点云地图,通常为定位模块中的雷达配准定位所使用,是高精度定位的基础,存储类型为非结构化的传感器数据,点云地图本原创 2020-06-06 16:34:53 · 13500 阅读 · 59 评论 -
自动驾驶系统进阶与项目实战(四)自动驾驶高精度地图构建中的三维场景识别和闭环检测
自动驾驶系统进阶与项目实战(四)自动驾驶高精度地图构建中的三维场景识别和闭环检测闭环检测(loop-closure detection)是SLAM中非常关键的一部分,当然也是自动驾驶高精度地图(HD Map)构建的核心技术之一,闭环检测即无人车能够识别出SLAM构图过程中形成的闭环,从而优化由观测(lidar slam、imu、车辆can、gnss等算出的里程计)累计的误差,使得SLAM地图在闭环的“缝合处”能够准确对接、在同一路段的重复测量(主要是激光点云、图像等)能够准确拟合。显然闭环检测对于大面积原创 2020-05-24 19:21:48 · 6281 阅读 · 4 评论 -
自动驾驶系统进阶与项目实战(三)基于全卷积神经网络的点云三维目标检测和ROS实战
自动驾驶系统进阶与项目实战(三)基于全卷积神经网络的点云三维目标检测和ROS实战前面入门系列的文章中我介绍了几种点云三维分割/目标检测模型,在做点云预处理上,有通过球面投射(SqueezeNet)得到深度图的,也有采用Voxel网格的(VoxelNet),本文我们一起学习一下百度开源的cnn_seg点云三维语义分割神经网络,该模型被集成于Apollo的perception模块,并且自Apollo 3.0开始一直是Apollo体系下用于障碍物检测的主力模型,在Apollo 5.0以后甚至release出了原创 2020-05-16 13:06:02 · 13447 阅读 · 85 评论 -
自动驾驶系统进阶与项目实战(二)多激光雷达外参自动化标定算法及代码实例
激光雷达是目前自动驾驶系统中的核心传感器之一,但是由于其信息密度低、存在垂直盲区等问题,厂商大多在其L4级自动驾驶系统中搭配多组激光雷达,下图为通用(Cruise)的自动驾驶汽车,采用了多激光雷达以弥补lidar+camera的不足,使用多激光雷达进行环境感知的前提是对各雷达的外参进行精准的标定,本文介绍一种基于NDT算法的自动多激光雷达标定技术,并且给出了代码实例以及测试数据(rosbag)供读者实践。原创 2020-05-05 12:21:16 · 17079 阅读 · 41 评论 -
自动驾驶系统进阶与项目实战(一)激光雷达-相机外参自动化标定算法及项目实战
通常而言,激光雷达和相机固定安装于无人车上,其相对关系一定,获得准确的齐次变换矩阵或者 $(x,y,z,roll,pitch,yaw)$ 变化量即完成了传感器的外参标定。然而,无人车安装的传感器数量较多,高效且自动化地完成多传感器标定对于自动驾驶研发而言非常关键,本文介绍一种自动化标定相机-激光雷达的方法,并且给出了相对完整的ROS实现以供读者参考。原创 2020-04-24 18:00:36 · 20110 阅读 · 60 评论