SECOND笔记

1.背景

SECOND: Sparsely Embedded Convolutional Detection

在VoxelNet的基础上对其3D CNN的部分改进,引入稀疏卷积。

流程:体素特征提取——稀疏卷积中间层——RPN

2.贡献

1)在仅基于LiDAR的目标检测方法中应用稀疏卷积,增加了训练和推理速度。

2)提出稀疏卷积的方法,网络更快

3)提出角度损失回归,与其他方法相比有更好的方向回归性能。

4)提出新的仅基于LiDAR的数据增强方法

3.以下本文只描述SECOND与VoxelNet不同之处:

稀疏卷积有两种:

1)正常稀疏卷积层:没有相关的输入点就不用计算输出点。该方法在仅基于LiDAR的方法上有益。

2)子流型卷积:限制当且仅当相应的输入位置处于活动状态时,输出位置才处于活动状态。这避免了生成过多的活动点,因为活动点过多会导致后续卷积层的速度下降。

SECOND还详细描述了稀疏卷积算法和规则生成算法,没完全理解

稀疏卷积中间层

SECOND笔记_第1张图片

稀疏中间提取器(上图)有两个稀疏卷积阶段,每个阶段有多个子流型卷积层和一个正常稀疏卷积层对z轴进行下采样。在z轴维度下采样到1或2时将稀疏数据转化为稠密特征图,reshape成2D数据。

网络细节

SECOND笔记_第2张图片

文章提出使用两个网络(一大一小):以car检测为例

在SECOND中使用两个VEF层【即 VFE(32)和 VFE(128)用于大型网络,VFE(32)和 VFE(64) 用于小型网络】+一个线性层Linear(128);——大型网络输出稀疏张量128*10*400*352;小型网络输出128*10*320*264,??

然后使用两个阶段的稀疏卷积(提取特征&降维)。

所有稀疏卷积层都有 64 个输出特征映射,kernel 大小为(3,1,1),步长为(2,1,1)。 对于大型网络,中间模块的输出尺寸为 64×2×400×352。——>reshape为128*400*352——>RPN

SECOND笔记_第3张图片

  (1)第一阶段三个 Conv2D(128,3,1(2))(第一个 s=2,后两个 s=1),后接 s=1 反卷积(2)第二阶段五个 Conv2D(128,3,1(2))(第一个 s=2,后四个 s=1),后接 s=2 反卷积。 (3)第三阶段五个 Conv2D(256,3,1(2))(第一个 s=2,后四个 s=1),后接 s=4 反卷积。

所有的Conv2D层时相同的padding,DeConv2D 的 padding=0。

然后每个阶段的输出上采样到大小一样的特征图,并拼接为一个特征图。后再使用步长为1的卷积,生成类别、回归偏移量、方向的预测。

对于行人和自行车检测而言,不同之处只有RPN第一个卷积层步长为1。

损失函数

目标的回归值(与VoxelNet类似):

SECOND笔记_第4张图片

下标t,a,g分别表示编码值、anchor、gt

1.文章提出了一个创新的角度回归损失:

 之前的角度回归方法有角点编码、直接编码、向量编码,通常效果不好。

VoxelNet直接预测弧度偏移,但在0和π的情况下会遇到一个对立的问题,因为这两个角度对应的是同一个盒子,但当其中一个被误认为是另一个时,会产生很大的损失。

下标p为预测值

该方法优点:解决了在0和π的情况下会遇到一个对立的问题;可以根据角度偏移函数模拟出IOU。

SECOND笔记_第5张图片

2.分类的Local Loss

解决前景、背景极度不平衡的问题。

pt为模型的估计概率,\alpha=0.25;\gamma=2

3.整体损失函数
 

 

Lcls是分类损失,Lreg-other是位置和维度的回归损失,Lreg-theta是角度损失,Ldir是方向分类损失。


数据增强

 1.提出一个新的数据增强方法:

从数据集中采样GT

将 GT 及其包含的点提取出来, 做成一个数据库,当训练的时候,随机取出几个 GT 放到正在训练的场景中。(作者也考虑到随便放到本场景可能产生碰撞等问题:进行碰撞测试。原文中“为了避免物理上不可能的结果,我们在采样 GT 后进行了碰撞测试,并移除了任何与其他物体发生碰撞 的采样物体。”)

其他数据增强方法与Voxelnet相同,GT 旋转缩放、全局的旋转缩放。

你可能感兴趣的:(cnn,深度学习,神经网络)