论文阅读笔记 | 三维目标检测——Complex-YOLO算法


如有错误,恳请指出。


文章目录

  • 1. 背景
  • 2. 网路结构
  • 3. 实验结果

paper:《Complex-YOLO: An Euler-Region-Proposal for Real-time 3D Object Detection on Point Clouds》

1. 背景

先补充一些题外知识:
笛卡尔坐标系(Cartesian space)就是直角坐标系和斜角坐标系的统称。 相交于原点的两条数轴,构成了平面仿射坐标系。 如两条数轴上的度量单位相等,则称此仿射坐标系为笛卡尔坐标系。 两条数轴互相垂直的笛卡尔坐标系,称为笛卡尔直角坐标系,否则称为笛卡尔斜角坐标系。

对于之前的网络结构来说,尽管精度很高,但是或多或少都存在rpn接口来获取高质量proposal来提高精度,既然是Two-stage网络必然会导致速度的减少。之前的sota工作基本上fps都在10以下,而complex-yolo的目的就是在精度和速度上追求一个权衡,将kitti数据集推广到预测8个类,面向真实复杂低延迟搞精度的实时业务场景。实际上,yolo系列的算法均是追求速度和精度上的权衡,追求高推理速度的实时性性能,而这也是自动驾驶所需要的。


2. 网路结构

complex-yolo的网络结构可以说的相当简单了,是面向2d检测的yolov2上进行的拓展,网络结构如下所示。
论文阅读笔记 | 三维目标检测——Complex-YOLO算法_第1张图片

complex-yolo的输入是鸟瞰图的特征表示,利用点云转化为BEV图像而无需RGB输入。具体来说,其参考了MV3D的特征表示对鸟瞰图进行0.08m精度采样,不过这里只有3个channels,zg编码最大高度,zb编码最大强度和zr归一化密度(这里的处理方法与MV3D一致,只是不再对高度进行切分,同时complex-yolo网格采样精度更高),获得了一个3通道大小为1024x512的特征图像(RGB-Map)。

随后,利用简化后的yolov2网络结构对rgb-map进行特征提取,输出的特征尺度是32x16,相当于下采样了32倍。对于输出特征图的每个特征点上,设计5个先验框(prior anchor),包括3中不同尺寸以及2个角方向:i)车辆尺寸(朝上);ii)车辆尺寸(朝下);iii)自行车尺寸(朝上);iv)自行车尺寸(朝下);v)行人尺寸(朝左)。而对于每一个achor,需要预测概率p0,K类概率(p1,…,pn),以及框定位尺寸参数(xywl),最后还需要预测框的方向。这里complex-yolo利用复数角来避免预测的奇异性,利用虚部和实部来估计准确的目标方向,如下所示。通过数学公式:φ=arctan(tIm, tRe)来进行预测,其中Im是虚部,Re是实部。
论文阅读笔记 | 三维目标检测——Complex-YOLO算法_第2张图片

至此,对于一个先验框需要的预测参数是:1个预测概率(p0),K个预测类别(p1,…,pk),4个框定位与尺寸参数(xywh),已经2个角预测参数(im,re),鉴于kitti数据集一共有8个类别,所以k=8,那么一个prior anchor的参数量为15。而每个grid pixel需要预测5中不同尺寸方向的anchor,所以最后特征图的channels为15x5=75,既特征图尺寸为32x16x75。

对角预测构建损失时,考虑到实部虚部始终位于半径|z|=1的单位圆上,所以使用了最小平方误差绝对值分别对实部虚部构造损失,即:(tim − ˆtim)^2 + (tre − ˆtre)^2。此外,complex-yolo还调整了预测框与ground truth的iou比较以处理旋转框,这是通过两个2d多边形几何形状和并集的相交理论分别实现的,该相交理论由相应的盒参数bx,by,bw,bl和bφ(im与re的组合)生成。


3. 实验结果

complex-yolo就突出一个简洁和速度,在精度不差太多的情况下比其他网络快5x,如下所示。
论文阅读笔记 | 三维目标检测——Complex-YOLO算法_第3张图片

不过由于是在鸟瞰图上进行预测,complex-yolo并没有将高度信息添加到回归参数中,也就是并不是在一个空间中实现真正独立的3d检测。将预测框投影到RGB中也只能利用类别的先验知识获取高度,样例图如下所示。
论文阅读笔记 | 三维目标检测——Complex-YOLO算法_第4张图片


你可能感兴趣的:(#,三维点云论文,论文阅读,三维目标检测,自动驾驶,Complex-yolo,yolo系列)