基于卷积神经网络和热力图回归的非结构化道路消失点检测 论文解读

Unstructured Road Vanishing Point Detection Using the Convolutional Neural Network and Heatmap Regression(URVP)

基于卷积神经网络和热图回归的非结构化道路消失点检测

前言:20年的一篇文章,是关于非结构化道路VP检测中第一篇基于深度学习的解决方案。之前读过,这里再读一下,顺便再跑一下程序。

原文链接:

https://arxiv.org/abs/2006.04691

源代码

https://github.com/qd213618/URVP

引用信息

@article{liu2020unstructured,
  title={Unstructured Road Vanishing Point Detection Using the Convolutional Neural Network and Heatmap Regression},
  author={Liu, Yin-Bo and Zeng, Ming and Meng, Qing-Hao},
  journal={arXiv preprint arXiv:2006.04691},
  year={2020}
}

摘要

  • 轻量化骨架:depthwise convolution modified HRNet。用于提取非结构化道路的层次特征
  • VP检测:multi-scale supervised learning + heatmap super-resolution + coordinate regression
  • Kong数据集上达到了33fps

引言

消失点定义:在三维场景中,一组平行线的透视投影在图像平面上的交点。
自动驾驶车辆可根据消失点辨别可行驶区域。

heatmap regression:可用于估计图像中像素级关键点的位置,然而传统的heatmap regression只在输入图像的1/4或1/2单一的粗尺度上估计关键点,无法满足高精度的要求。而HRNet无法满足高实时性要求,因此本文对HRNet进行了修正,同时采用三个tricks:(multi-scale supervised learning + heatmap super-resolution + coordinate regression)

同时,本文也贡献了含有5355张带有标注的数据集(unstructured road vanishing point ,URVP

关于道路消失点检测的传统方法中,基于边缘和基于区域用于结构化道路,基于纹理的方法可用于非结构化道路,但存在两个问题:

  1. 性能容易受到光照不均匀和图像分辨率等因素的影响,检测结果往往不稳定
  2. 处理非常耗时,不能满足实时性要求
    在这里插入图片描述

本文方法

  1. depthwise convolution modified HRNet:提取图像特征
  2. multiscale heatmap supervised learning:获得准确的VP点估计(结合1/4和1/2尺度的热力图)
  3. coordinate regression:获得准确的VP坐标
    图1显示了网络架构。

在这里插入图片描述

多尺度监督学习

多尺度监督学习:在关键点检测中混合两个或以上热力图。
1/4尺度热力图:在原图中会造成4倍的误差放大。所以采用基于反投影的超分辨率技术(the back-projection-based super-resolution technique)从1/4尺度得到1/2尺度的超分辨率热力图。
图2显示了上采样方法。

从1/4→1/2尺度有下图所示三种方法。本文采用第二种:up-projection unit (UPU)方法。

upsample模块的输入是feature map和预测的1/4比例尺热图的拼接(concatenation)

  1. Deconv:5x5 deconvolution + BatchNorm + ReLU
  2. Conv:3x3 convolution + BatchNorm + ReLU
    在这里插入图片描述

坐标回归

从热力图中获取关键点坐标的两个传统方法:提取热图中最大点的坐标或通过高斯分布估计关键点的位置;缺点如下:

  1. 误差同样会放大相应的倍数。(1/4尺度的热力图会放大4倍,1/2尺度热力图会放大2倍)
  2. 计算量大,达不到实时性要求。
    因此本文采用坐标回归模块直接输出准确的VP点坐标。思路来源于YOLOv2,YOLOv2中证明,在二维坐标回归中,对单元偏移量的预测是一种稳定、准确的方法。因此,预测点(Vx,Vy)定义如下:
    在这里插入图片描述
    f(·):VP的sigmoid函数
    (cx,cy):相关网格单元的左上角的坐标

损失函数

在这里插入图片描述
本文的一些设置如下
lcoord:VP点的坐标损失。logistic regression
lh1:1/4尺度热力图损失。MSE
lh2:1/2尺度热力图损失。MSE
lconf:置信度(confidence)损失。logistic regression
λconf=0.5:不含VP的cells
λconf=1:含VP的cells
λcoord=2和λh=1:用于平衡热力图和和坐标回归的平衡。

实验

实验细节

Pytorch 1.3
dual RTX 2080 Ti
CUDA 10
i7-8700K@3.7GHz

URVP作为训练集;Kong作为测试集
输入图像尺寸:320x320
给所有ground truth热力图添加上std=3的Gaussian kernel
SGD
backbone:开始时lr=0.001
网络其他部分:开始时lr=0.01
每20个epoch将lr除10,momentum=0.9
数据增强:随机翻转和图像旋转

数据集

目前用于非结构化道路VP检测的数据集只有两个:Kong-1003张;Moghadam-500张
URVP:利用Flickr谷歌Image工具构建的一个新的训练数据集

评价指标

标准化欧氏距离来测量预测的VP点和ground truth VP点之间的距离。
在这里插入图片描述
Pg:ground truth
Pv:预测的
Diag(I):输入图片的对角线长度
NormDist>=0.1的置为0.1,认为预测失败。
图3显示了关于热力图尺度对比效果。
在这里插入图片描述
(从左到右依次是:输入,1/4尺度VP估计,1/2尺度VP估计,本文方法估计)
(白点是ground truth,红点是本文方法预测点。)

图4显示了不同方法对比效果。
在这里插入图片描述
图5显示了用NormDist度量的效果对比。
在这里插入图片描述
在这里插入图片描述

消融研究

骨架网络

在这里插入图片描述
Hourglass (Stack = 4) (Hg4)
HRNet (W = 48)(HRNet-48)

多尺度监督学习

在这里插入图片描述

上采样模块

在这里插入图片描述

坐标回归

在这里插入图片描述

结论

下一步:多任务学习

相关推荐
©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页