欢迎来到专业的优谦范文网平台! 工作总结 工作计划 心得体会 述职报告 思想汇报 事迹材料 疫情防控 共同富裕
当前位置:首页 > 范文大全 > 公文范文 > 正文

动态卷积的3D点云目标检测算法

时间:2023-08-23 18:55:06 来源:网友投稿

蔡黎明 ,杜吉祥,刘怀进,张洪博,黄敬东

(1.华侨大学 计算机科学与技术学院,福建 厦门 361021;
2.华侨大学 福建省大数据智能与安全重点实验室,福建 厦门 361021;
3.华侨大学 厦门市计算机视觉与模式识别重点实验室,福建 厦门 361021)

在汽车、飞机等交通工具中,以计算机智能为核心的无人操作,称为自动驾驶.为了提高驾驶安全、缓解交通压力、适应不同人群等问题,自动驾驶已经成为人工智能领域的热门话题.在自动检测场景中出现的目标是自动驾驶研究的关键.在过去研究中,目标检测研究主要侧重于二维图像中的目标检测.然而,当目标检测图片出现严重的遮挡与噪声时,常导致检测算法不精确.在自动驾驶中,常用的传感器是激光雷达传感器,与单目相机相比,激光雷达传感器可以提供更准确的深度信息,且能生成三维(3D)点云来捕捉场景的3D结构.准确的空间位置信息使自动驾驶汽车能够有效地预测和规划路径,避免发生不必要的交通事故.因此,基于3D点云的目标检测研究在自动驾驶领域备受关注.

为了处理非结构化的三维点云,体素的检测器通常将不规则的点转换成规则的体素网格,采用3D卷积神经网络进行特征学习.Zhou等[1]提出一种新的体素特征编码层,提高了体素网格的有效并行处理能力.Yan等[2]利用3D子流形稀疏卷积[3],提出一种高效架构,使计算和内存效率显著提高.Lang等[4]提出将体素简化为柱子.Shi等[5]提出一种两阶段检测器,由部件感知模块和聚合模块组成.Deng等[6]在两阶段的算法中引入全卷积网络来扩展一种新的高性能3D目标检测(PV-RCNN)算法,在体素特征中提取感兴趣区域特征,使粗体素粒度的检测精度得到提高.Ma等[7]将点云分配到规则的三维网格中,并使用三维稀疏卷积提取体素特征.Xu等[8]将原始的3D点云数据进行体素化,同时设计一个轻量级的位置注意模块,采用加权特征融合的方法,高效地获得多层次特征.

与体素的方法不同,基于点的算法是直接从非结构化的点中学习特征生成感兴趣区域.Qi等[9-10]开创性地采用直接从点中学习特征的算法,保留了较多的特征信息,提升了模型的分类分割精度.Shi等[11]提出一种从原始点云中检测3D物体的两阶段3D目标检测(PointRCNN)算法,该算法可以直接从原始点云中分割前景点,为预测3D回归框减少搜索空间.Yang等[12]在下采样过程中提出一种融合采样策略,对点进行检测,设计了包含候选生成层、无锚回归头和3D中心性分配策略的预测网络.Shi等[13]将图神经网络引入三维目标检测的框架中.

上述的3D目标检测算法在特征提取时采用的卷积均为静态.针对此问题,Xu等[14]提出一种用于点云处理的位置自适应卷积算子.在点云三维立体空间中,点与点之间的关系复杂,可以使卷积核的选取适应周围的变化.点云三维目标检测的难点主要是点云的不规则性,若样本遮挡严重且较为稀疏,则难以提取关键特征,经常要转为有序的表达方式.基于此,本文提出一种新的3D目标检测算法,尝试解决不规则且稀疏点云数据中的目标检测问题.

1.1 算法的整体框架

图1 PAC-PointRCNN算法框架图Fig.1 PAC-PointRCNN algorithm framework diagram

提出一种结合动态卷积学习特征的PointRCNN(PAC-PointRCNN)算法,其框架如图1所示.整体架构模型分为2个阶段:第1阶段主要通过构建动态卷积进行特征提取,并构建3D检测框;
第2阶段对第1阶段的输出进行精细化处理.在第1阶段首先对点进行预处理,将得到的点数据送入骨干网络提取特征,每个点产生特征向量,同时,对周围的上下文信息进行编码,增大其感受野,通过KITTI数据集标注的3D边界框可以判断出前景点信息;
然后,根据特征向量进行前景点分割,对得到的前景点进行分类回归,在对前景点预测所属对象的包围框时,用bin机制[11]把回归问题先转化为分类问题,再进行回归,以提高效率及精度;
得到大量预选框后,将预选框进行非极大值抑制处理,送入第2阶段进行特征融合,提取局部特征,得到的点位置坐标通过规范化处理,再分类回归得到精细框.

图2 骨干网络Fig.2 Backbone network

1.2 骨干网络

骨干网络,如图2所示.骨干网络由4个下采样编码的集合抽象层和4个上采样编码的特征传播层组成.

集合抽象层,如图3所示.图3中:N,N1为点集中点的数量;
d为坐标空间维度;
C,C1为特征空间维度;
k为固定值.在集合抽象层中,采用最远点采样的方法对输入点进行降采样,将输入点集从N降到更小的N1,最远点采样是使采样的各个点之间尽可能远,这种降采样的结果比较均匀且具有更好的覆盖效果.在骨干网络的第1个集合抽象层中,对输入的原始点进行最远点采样,得到的降采样结果作为第2个集合抽象层的输入点,以此类推,直到第4个集合抽象层.将降采样得到点的数量N1进行分组,选取这N1个中心点,每个中心点采用球查询的方式寻找固定的k个邻域点,先划定某一半径,找在该半径球内的点作为邻域点,如果点数大于固定值k,取前k个点为邻域点,如果点数小于固定值k,对点进行重采样以达到固定值k.这样形成一个局部邻域,共组成N1个局部邻域,这个过程中,坐标空间维度d和特征空间维度C没有发生变化.球查询在局部邻域组内固定了区域尺度,使局部区域特征在空间上更具有泛化性.

动态网络,如图4所示.在动态网络中,对每一组局部邻域进行动态网络编码,将采样和分组后的点作为输入,送进具有动态内核组装的位置自适应卷积即PAConv动态卷积里,使每个点的特征维度升高,以获取更多的特征信息,再通过最大池化选取最重要的特征作为新特征输出.在此过程中,坐标空间维度d没有发生变化,特征空间维度从C变成更高的维度C1,即特征的通道数升高了.在特征传播层中,采用基于距离的插值和跨越跳级链路的分层传播策略,与集合抽象层的反过程类似,将集合抽象层每一层得到的结果通过插值点特征传播到原始点集.PointNet为直接从点云中学习特征的网络结构;
PointNet++在PointNet的基础上进行改进,具有多层次特征提取结构.在PointNet++的集合抽象层基础上,骨干网络将PointNet层嵌入PAConv动态卷积,生成动态网络,没有改变其他架构配置.

图3 集合抽象层 图4 动态网络Fig.3 Set abstraction layer Fig.4 Dynamic network

1.3 动态卷积

在三维空间中,点与点之间的关系与二维平面中点之间的关系有很大的不同.例如,在二维平面的网格中,中心点周围的邻域点个数是固定的,但在点云的三维空间里,取一个中心点(图5),它周围的邻近点有无限可能,多一个维度会使点关系变的错综复杂.在二维平面空间中,使用卷积神经网络学习得到的特征可以很好地反映点之间的相关性;
而在三维空间里,由于点的无序不规则性,使用二维空间里学习特征的卷积核算子会使相关性变差,从而导致检测不精确.因此,重新设计卷积核函数,使其能动态地学习点特征.PAConv动态卷积,如图6所示.首先,定义由几个权重矩阵组成的权重库;
接着,设计一个LearnNet学习系数向量,根据点的位置组合权重矩阵;
最后,结合权值矩阵及其相关的位置自适应系数生成动态核.

图5 3D点 图6 PAConv动态卷积 Fig.5 3D point Fig.6 PAConv dynamic convolution

构景要素以自然、人文为主线,交通为纽带,民俗文化为趣味点,形成主题各异、形象鲜明的旅游精品线路,造出“同饮黄河水,共赏民俗情”的主题式旅游[10]。民俗文化有着独特的文化内涵、浓烈的原始气味、厚重的历史氛围、显著的地域差距、欢愉的生活情调及丰富多彩的表现形式,对游客产生强大的吸引力和感召力。

P=(Aj-Ai,Ai),

(1)

(Aj-Ai,Ai)=(xj-xi,yj-yi,zj-zi,xi,yi,zi).

(2)

LearnNet的输出向量Ei,j表达式为

Ei,j=softmax(relu(δ(P))).

(3)

(4)

得到动态核后,生成的自适应动态卷积可以更加灵活地学习特征.因此,权重库的规模越大,权重矩阵的灵活性和可用性也越大,但由于权重矩阵是随机初始化的,在网络的训练过程中,卷积核学习得到的合理权值会趋于相似,不能保证权重矩阵的多样性.为了避免这种情况,采用权值正则化来惩罚不同权值矩阵之间的相关性,让权重矩阵的分布更加多样化,进一步保证生成核的多样性.因此,将PAConv动态卷积嵌入骨干网络,从而可以更加灵活精确地学习三维空间的点特征.

1.4 损失函数

为了便于比较,采用PointRCNN的损失函数,由于大型户外场景前景点的数量比背景点的数量少,因此,在第1阶段的子网络中,使用焦点损失[15]解决前景-背景分类不均衡的问题,得到的损失为Lfocal,即

Lfocal(pt)=-φt(1-pt)γlnpt.

(5)

式(5)中:t为前景点即正确分类点;
pt为正确分类的概率;
φt,γ为超参数调节因子,φt=0.25,γ=2.

使用回归损失函数[11]生成3D预选框,即

(6)

在第2阶段的子网络中,将预选框坐标转到规范的坐标系下,总的损失Lrefine为

(7)

2.1 数据集

KITTI的三维检测数据集包含7 481个训练样本和7 518个测试样本,与PointRCNN算法一样,将训练样本分为训练集(3 712个样本)和验证集(3 769个样本).标注文件里的字段含义分别为类别、截断率、遮挡程度、观测角度、2D边界框左右下角坐标、3D边界框的长宽高和在相机的坐标、相对Y轴旋转角度.激光雷达点云数据以浮点二进制文件格式存储.

2.2 实验设置

采用两阶段的训练方式,对于训练集中的每个3D点云场景,从每个场景中抽取16 384个点作为输入,不足16 384个点的场景,随机重复抽取以达到16 384个点.在骨干网络中,使用4个多尺度分组的集合抽象层,将输入的点下采样为4 096,1 024,256,64的组.然后,使用4个特征传播层获取点特征向量,用于分割和生成预选框细化子网络.从每个感兴趣的集合区域随机抽取512个点作为细化子网络的输入,为了使对象置信度分类和提案位置细化,采用3个单尺度分组的集合抽象层(组大小为128,32,1)生成单个特征向量.在KITTI数据集中,汽车类的样本数量最多,对其训练细节的描述也适用于其他类别(如行人和自行车).将3D真值框内的所有点视为前景点,其余点视为背景点,在训练过程中,忽略物体边界附近的背景点.由于3D真值框可能会有小的变化,所以,通过在物体的每一侧将3D真值框放大0.2 m进行鲁棒分割.对于bin机制,参数设置的搜索范围S=3 m,2个垂直方向共划分12个区间,每个区间为0.5 m.

评估时,难度等级Easy,Moderate,Hard表示的最小边界框高度分别为40,25,25 px,最大遮挡程度分别为完全可见、部分可见、很难看到,最大的截断率分别为15%,30%,50%.在PointRCNN开源代码的基础上进行修改,为了便于对比分析,实验的参数设置与原模型一致,只在第1阶段的骨干网络部分将PAConv动态卷积嵌入其中进行改进.为了增加额外的非重叠真值框,在场景中使用随机翻转、缩放、旋转和数据增强等方法.两个阶段的子网络分开训练,在训练过程中,第1阶段采用单个图形处理器(GPU)方式进行训练;
第2阶段采用两种训练方式,即在线的数据增强和离线的数据增强,在线数据增强易于训练,离线数据增强训练效果更好.

2.3 实验对比结果

为了验证文中算法的有效性,根据PointRCNN提供的代码指令,采用在线和离线两种数据增强方式,在汽车类数据集中进行复现,在交并比阈值(IOU)为0.7的情况下,记录平均检测精度(PA).汽车类数据集上文中算法与现有算法、PointRCNN算法的平均检测精度对比,如表1所示.表1中:黑体数据表示最好的实验结果.

表1 不同算法在汽车类KITTI验证集上的平均检测精度对比Tab.1 Comparison of average detection precision of different algorithms on car class of KITTI val split

由表1可知:文中算法在PointRCNN的基础上融入PAConv动态卷积模块,在汽车类数据集的Moderate,Hard等级难度下,文中算法的平均检测精度均优于现有其他算法.

在行人和自行车类数据集上进行实验,文中算法与PointRCNN算法的平均检测精度对比,如表2所示.由表2可知:由于行人和自行车类数据集的体积小且样本稀疏,文中算法在行人类数据集Hard等级难度下的检测精度较好,在自行车类数据集Easy,Moderate等级难度下的检测精度更好.由此可见,文中算法在遮挡严重且样本稀疏的目标检测上具有优越性.

表2 不同算法在行人和自行车类KITTI验证集上的平均检测精度对比Tab.2 Comparison of average detection precision of different algorithms on pedestrian and bicycle class of KITTI val split

表3 训练时间的对比Tab.3 Comparison of training time

为了验证文中算法的可行性,采用文中算法和PointRCNN算法对两阶段进行训练,其训练时间的对比,如表3所示.表3中:t1,t2分别为第1阶段、第2阶段的训练时间.由表3可知:文中算法比PointRCNN算法所用的训练时间更少,再次验证了文中算法的优越性.

2.4 消融实验

为了探究不同的输入方式对PAConv动态卷积效果的影响,采用4种不同的输入方式进行消融分析实验.以中心点Ai和邻近点Aj两者之间的关系设计4种不同的任务,Oi,j表示Ai和Aj的欧式距离.不同输入方式下的召回率(ηR),如表4所示.由表4可知:将邻近点与中心点的距离差和中心点一起输入,召回率最高,加入两点的欧式距离及邻近点后,召回率变差,表明在大型的户外场景中运用动态卷积自适应时,输入的越多,越容易产生误差,从而影响检测效果.因此,选择(Aj-Ai,Ai)作为输入,该输入方式的召回率高,得到的最终检测精度最好.

表4 不同输入方式下的召回率Tab.4 Recall rate under different input modes

2.5 效果可视化

在KITTI训练集上对汽车、行人和自行车三类进行标记,采用分开训练的方式,将得到的模型可视化展示.汽车、行人和自行车类的检测对比图,分别如图7~9所示.图7~9中:图(a)为2D标记框;
图(b)为3D标记框;
图(c)为预测框;
图(d)为预测框与3D标记真值框的对比;
图(e)为图(d)部分结果的放大效果;
绿色为汽车类标记框;
蓝色为行人类标记框;
黄色为自行车类标记框;
红色为预测框;
红色箭头表示方向.

图7 汽车类的检测对比图Fig.7 Car detection comparison chart

图9 自行车类的检测对比图Fig.9 Bicycle detection comparison chart

由图7~9可知:2D标记框的遮挡问题在3D点云场景中得到很好地解决,因为3D检测框是立体的,使检测框得到很好的分离,显示出3D目标检测的优越性;
在汽车、行人、自行车类的检测效果图中,预测框与标记框的误差小,证明了文中算法的有效性.

提出一种将动态卷积作为特征提取的3D点云目标检测算法.针对点云的不规则无序性问题,相较于现有算法,文中算法的优点是运用动态卷积的方法,可以更好地提取关键特征.文中算法采用PAConv动态卷积的方式,通过相对点位置自适应地学习生成分配系数,从而动态调整权重,有效地避免了因遮挡和样本稀疏造成的模型不精确问题.从KITTI数据集的训练结果可知,在汽车类的Moderate,Hard等级难度下,文中算法的平均检测精度优于现有算法;
由于行人和自行车类数据集的体积小且样本稀疏,在行人类数据集的Hard等级难度下,文中算法的平均检测精度较好,在自行车类数据集的Easy,Moderate等级难度下,文中算法的平均检测精度较好.实验结果表明:针对不规则无序、遮挡、稀疏的点数据,文中算法具有更好的检测精度.

猜你喜欢体素卷积动态基于多级细分的彩色模型表面体素化算法计算机集成制造系统(2022年11期)2022-12-05国内动态卫星应用(2022年7期)2022-09-05国内动态卫星应用(2022年3期)2022-05-23瘦体素决定肥瘦家庭医学(2022年3期)2022-04-07国内动态卫星应用(2022年1期)2022-03-09基于3D-Winograd的快速卷积算法设计及FPGA实现北京航空航天大学学报(2021年9期)2021-11-02运用边界状态约束的表面体素加密细分算法计算机集成制造系统(2020年4期)2020-05-08卷积神经网络的分析与设计电子制作(2019年13期)2020-01-14动态环球慈善(2019年6期)2019-09-25从滤波器理解卷积电子制作(2019年11期)2019-07-04

推荐访问:卷积 算法 检测

猜你喜欢