• LR RoadMap: A Light-Weight Semantic Map for Visual Localization towards Autonomous Driving


    Abstract

    提出一个轻量级定位方案, 基于便宜的相机和紧致的语义地图:

    • lane line
    • crosswalk
    • ground sign
    • stop line

    语义地图的平均大小是: 36kb/km.

    1. Introduction

    量产车: production car

    • 点云地图占太多memory了.
    • HD map占用了太多人力, 很难保证及时的更新.

    2. Literature Review

    A. Traditional Visual SLAM

    ....

    B. Road-based Localization

    本文提出了在车建图, 在云端融合/更新.

    3. System overview

    需要传感器:

    • 前视相机,
    • RTK-GPS
    • IMU和轮速

    车端建图:

    语义图是在前视提取的, 建图, 然后上传云端.

    云端建图:

    融合多趟建图, 然后压缩成contour extraction.

    4. On-Vehicle Mapping

    A. Image Segmentation

    用了CNN方法, 类似[23, 24, 25]. 多累检测, 地面, lane line, stop line, road marker, curb, vehicle, bike, human.

    B. Inverse Perspective Transformation

    因为透视的噪声, 越远的场景, 越大的误差. 我们只选择ROI, 接近相机中心的部分, 12mx8m.

    假设地面是一个平面, 每个像素([u, v])会被投影到地面(z=0):

    [frac{1}{lambda}left[egin{array}{c} x^{v} \ y^{v} \ 1 end{array} ight]=left[mathbf{R}_{c} mathbf{t}_{c} ight]_{ ext {col }: 1,2,4}^{-1} pi_{c}^{-1}left(left[egin{array}{l} u \ v \ 1 end{array} ight] ight) ]

    这里 (pi_c(.)^{-1})是反投影. R, t外参. 只用1, 2, 4因为z=0.

    C. Pose Graph Optimization

    及时用了RTK-GNSS, 也不能保证位姿是一直可靠的, 因为它只能在空旷区域提供厘米级别的位置.

    用pose graph来align里程计和GNSS.

    [min _{mathbf{s}_{0} ldots mathbf{s}_{n}}left{sum_{i in[1, n]}left|mathbf{r}_{o}left(mathbf{s}_{i-1}, mathbf{s}_{i}, hat{mathbf{m}}_{i-1, i}^{o} ight) ight|_{oldsymbol{sigma}}^{2}+sum_{i in mathcal{G}}left|mathbf{r}_{g}left(mathbf{s}_{mathbf{i}}, hat{mathbf{m}}_{i}^{g} ight) ight|_{oldsymbol{sigma}}^{2} ight} ]

    D. Local Mapping

    地图分成 (0.1 imes 0.1 imes 0.1m) 的grid, 包含位置, 语义信息, 记录语义counter.

    1624611423957

    5. On-Cloud Mapping

    A. Map Merging / Updating

    根据位置, local map会被加入到grid map里. 详见上图.

    B. Map Compression

    6. User-End Localization

    A. Map Decompression

    恢复稠密点云.

    B. ICP Localization

    [mathbf{q}^{*}, mathbf{p}^{*}=underset{mathbf{q}, mathbf{p}}{arg min } sum_{k in mathcal{S}}left|mathbf{R}(mathbf{q})left[egin{array}{c} x_{k}^{v} \ y_{k}^{v} \ 0 end{array} ight]+mathbf{p}-left[egin{array}{c} x_{k}^{w} \ y_{k}^{w} \ z_{k}^{w} end{array} ight] ight|^{2} ]

    7. Experimental Results

    A. Map Production

    需要RTK-GPS, 前视相机, IMU和轮速编码器.

    路算的总长是 22km, raw semantic map是16.7MB, 压缩的是0.786MB, 平均大小是36KB/KM.

    B. Localization Accuracy

    我们用Lidar的方法来评测. 对于自动驾驶任务, 我们专注在x, y, yaw的精度.

    8. Conclusion & Future Work

    没啥.

  • 相关阅读:
    python-pyStrich条形码模块
    js原型及原型链解析
    解决Genymotion下载device时较慢的问题
    nodejs实现OAuth2.0授权服务
    Swagger文档添加file上传参数写法
    TypeScript学习笔记之类
    TypeScript学习笔记之接口类型
    win64环境下使用curl命令
    TypeScript学习笔记之基础类型
    WebRTC介绍及简单应用
  • 原文地址:https://www.cnblogs.com/tweed/p/14945978.html
Copyright © 2020-2023  润新知