基于三维激光点云的苗圃场景多目标分类方法
Multi-objective classification method of nursery scene based on 3D laser point cloud
收稿日期: 2023-02-27
基金资助: |
|
Received: 2023-02-27
Fund supported: | 国家自然科学基金资助项目(32171908);江苏高校优势学科资助项目(PAPD) |
作者简介 About authors
刘慧(1980—),女,教授,从事农业电气化与自动化、智能控制与信号处理研究.orcid.org/0000-0002-4282-7378.E-mail:
为了提升苗圃场景中多目标分类和识别的准确率,提出基于融合卷积块注意力模块的PointNet++多目标分类方法. 通过在原PointNet++网络的特征提取层中嵌入注意力机制模块,增强对关键特征的提取,弱化无用特征,降低参数量的同时提高网络特征学习能力. 引入LeakyReLu函数作为激活函数模型,获得的非线性变换效果良好. 为了验证所提方法在苗圃中的分类性能,使用激光采集多种靶标(不同形态的树木)与非靶标(行人、指示牌、种植盆等)制作数据集,并在该数据集上进行分类实验. 实验结果表明,所提方法在苗圃数据集上的分类总体精度达到96.38%,分类速度达到0.04帧/s,均优于原PointNet++网络.
关键词:
To improve the accuracy of multi-target classification and recognition tasks on the nursery scene, a multi-objective classification method based on fusion convolutional block attention module and PointNet++ was proposed. The attention mechanism module was embedded in the feature extraction layer of the original PointNet++ network to enhance the extraction of key features and weaken the useless features, the parameter numbers were reduced while the network feature learning capability was improved. The LeakyReLu function was introduced as the activation function model, and good nonlinear transformation effects were obtained. To verify the classification performance of the proposed method on the nursery scene, a dataset was created using laser to acquire multiple objects (trees with different forms) and non-objects (pedestrians, signs, planting pots, etc.) from the nursery, and the classification experiments were conducted in the dataset. Experimental results showed that the proposed method achieved an overall classification accuracy of 96.38% and the classification speed reached 0.04 frame/s in the dataset, both of which were better than the original PointNet++ network’s.
Keywords:
本文引用格式
刘慧, 王秀丽, 沈跃, 徐婕.
LIU Hui, WANG Xiu-li, SHEN Yue, XU Jie.
农业领域常用算法大多基于二维图像. 早期的研究主要采用传统图像处理的方法,Chen等[7]利用梯度直方图和支持向量机训练初始树干分类器,提取直方图特征,提高分类器识别精度. 白帆等[8]利用最大熵阈值和GrabCut算法分割花朵图像. 传统算法虽然应用在特定场景效果好,但是泛化能力以及鲁棒性较差. 基于图像的深度学习目标检测方法具有强大的特征学习能力、自适应性和鲁棒性,能够达到很高的检测精度,常用的目标检测网络包括SSD[9]、YOLO系列[10-12],已经广泛应用于农业领域. 刘慧等[13]采用改进的SSD方法实现果园行人的实时检测. 蔡舒平等[14]采用改进型的YOLOv4网络实现了对果园障碍物的实时检测.
图像数据的采集易受光照、拍摄角度的影响,导致获取的有效信息有限,不能准确反映目标的特征,影响识别效果. 与二维图像相比,三维点云不受外部环境因素的影响,具有丰富的空间信息,因此基于三维点云的方法被引入目标分类中. 基于点云的分类方法主要分为传统的机器学习方法和深度学习方法. 传统的机器学习方法主要包括基于随机森林(RF)[15]、支持向量机(SVM)[16],基于深度学习的点云分类方法分为间接基于点云的方法和直接基于点云的方法. 间接基于点云的方法包括基于多视图、体素方法[17-20],这些方法均通过将不规则的三维点云数据转换为其他规则化的格式来实现分类,会丢失点云的三维空间信息和固有的几何属性,还会增加计算的复杂度,因此只能用于小型或特定的场景,难以满足大范围复杂场景下的分类要求. 直接基于点云的方法能够充分利用点云数据的几何特性,最大程度上保留了原有的空间特征. PointNet[21]是这类方法的先驱,它通过直接对原始点云数据进行处理,将未处理的无规则点云数据输入网络,避免了信息的丢失,缺点是只考虑了全局特征,忽略了局部特征. Qi等[22]提出PointNet++网络以最远点采样的方式将输入点集划分局部区域,在局部区域上使用PointNet捕获局部特征,提高了点云分类精度. 基于深度学习的点云分类方法效果显著,在农业领域得到进一步应用. 王浩云等[23]使用KinectV2相机获取绿萝叶片点云数据,提出基于多分辨率编码点云深度学习网络和自编码器模型,估测了绿萝叶片的外形. Jayakumari等[24]对PointNet框架进行改进,提出CropPointNet深度卷积神经网络,对蔬菜作物进行了分类. Qian等[25]增加了PointNet网络的跨层次特征连接结构,以便更好地提取水稻种子的表面结构特征,实现了水稻品种的高效分类. 以上研究表明,直接基于点的深度学习方法可以充分利用数据特征,对目标进行较为准确的分类.
由于采用直接基于点的深度学习方法对苗圃场景进行多目标分类的研究较少. 为了实现苗圃场景多目标分类任务,本研究提出基于融入卷积块注意力模块的PointNet++多目标分类网络. 以PointNet++网络为基础,通过在特征提取层中嵌入注意力机制模块,从通道、空间2个维度筛选特征,加权输出特征来提取关键特征,在降低参数量的同时增强网络的特征学习能力. 引入LeakyReLU激活函数避免负值时梯度消失问题. 采集6类苗圃中的常见目标制作数据集,来验证所提方法的多目标分类准确性,给农业机器人的分类作业任务提供参考.
1. 材料与方法
1.1. 点云数据采集
数据集采集地点为江苏省镇江市的一处苗圃,采集方式为大疆激光雷达Livox Horizon扫描,采集时间为2021年11月至2022年5月,采集数据包含冬季和春季不同状态的树木,数据采集的场景如图1所示,激光雷达参数见表1. 每次从不同角度、不同位置扫描目标样本,分别采集不同类别的样本点云数据. 考虑到农业机器人在苗圃中进行作业时可能会遇到的各种靶标(不同高度、不同形态的树木)和非靶标(如指示牌、行人、其他),将靶标根据树木高度与冠层密度划分为高树、灌木、枯树,冠层密度不同设置的喷药量不同,非靶标则避开不进行作业. 苗圃点云数据集分为高树、灌木、枯树、行人、指示牌和其他(不含树木的种植盆) 6种类别标签.
图 1
表 1 Livox Horizon激光扫描仪的设备参数
Tab.1
参数 | 数值 | 参数 | 数值 | |
量程/m | 260 | 视场角/(°) | 81.7×25.1 | |
距离误差/cm | 2 | 数据率/(bit·s−1) | 240 000 | |
角度误差/(°) | 0.05 | 温度/℃ | −40~85 |
1.2. 预处理
1.2.1. 点云处理
通过CloudCompare软件对采集的数据文件进行预处理. 考虑到点云近密远疏特性,处理数据时一般取雷达扫描范围为[0, 10] m的、密度合适的点云数据. 原始点云的大小不一,通过点云预处理可以增强网络对目标物体的识别能力. 利用CloudCompare软件对原始点云数据进行滤除背景、地面点云操作,仅保留感兴趣区域点云,并手动标注点云标签. PointNet++网络输入的样本点数固定,通过对点云密度高的下采样(随机下采样法)至10 000个点和对点云密度稀疏的上采样(移动最小二乘法)至10 000个点来保持输入一致,再对获得的各个样本点云进行归一化处理,将点坐标归一化到[−1, 1]. 数据集部分样本如图2所示,对应预处理后点云如图3所示.
图 2
图 3
1.2.2. 数据增强
图 4
表 2 扩增前、后不同类别样本数量
Tab.2
类别 | na | nb | 类别 | na | nb | |
高树 | 907 | 1 250 | 灌木 | 471 | 663 | |
行人 | 206 | 412 | 其他 | 171 | 342 | |
枯树 | 225 | 450 | 指示牌 | 120 | 240 |
2. 林果园场景多目标分类网络模型
2.1. PointNet++分类网络模型
PointNet作为直接处理原始点云的先驱可以直接进行3D点云数据分类,但无法获得局部特征. PointNet++作为PointNet的后续改进网络,通过对输入点集进行区域划分,以分层的方式提取点的特征. 借鉴卷积神经网络(convolutional neural network,CNN)的思想,PointNet++在不同尺度提取局部特征,从小的点云邻域中捕获点的特征,并沿着层次结构在越来越大的邻域中获得越来越高的特征. 如图5所示,PointNet++利用多个集合采样层构造多层次结构来提取点云特征,每组集合采样层都由3个部分组成:采样层、分组层和特征提取层. 采样层使用最远点采样法从输入点云中选择一组点作为局部区域的质心点. 其中N为点数,d为维度,C为特征维数,K为局部区域最大采样点数. 分组层根据质心点以球查询方式进行局部区域的划分. 特征提取层使用小型PointNet模块作为特征提取器,捕获局部区域近邻点对质心点的特征关系. 提出多尺度分组(multi-scale grouping,MSG)和多分辨率分组(multi-resolution grouping,MRG)方法,当输入点云密度不均时,该方法能够学习不同尺度区域的特征,有效解决点云密度近密远疏的问题,克服PointNet在复杂场景的适用性差的缺点.
图 5
2.2. 改进的PointNet++多目标分类网络
注意力机制在机器视觉领域具有广泛应用,很多学者尝试在目标检测算法中添加注意力模块,在增加少量成本的同时提高目标检测精度[26-28]. 注意力模型本质上是对目标特征数据进行加权变化,生成不同的权重,有选择性地对信息进行筛选. Woo等[29]提出卷积块注意力模块 (convolutional block attention module, CBAM),与SENet[30]不同,注意力机制使用单独的通道注意力模块,仅在通道维度上提升检测性能,CBAM沿着通道和空间这2个维度来提取特征信息,以较低的算力实现了较高的性能改进. 作为轻量级的通用模块,CBAM可以嵌入任意已有的卷积神经网络中进行训练.
CBAM包含通道注意力机制模块(channel attention module, CAM)和空间注意力机制模块(spatial attention module, SAM). 这2个模块以2种不同的维度压缩特征图,并利用平均池化和最大池化提取特征图中的关键信息,计算过程为
式中:
式中:σ为sigmoid激活函数;MLP为多层感知机;
本研究在PointNet++网络的每个集合采样层(set abstration,SA)的特征提取模块中添加卷积块注意力模块CBAM,经过注意力模块后,新的特征结合通道和空间维度上的注意力权重,提高了各个特征在通道和空间上的联系,增强了网络对目标点云关键特征的提取,同时弱化了无关信息,通过注意力里的卷积操作极大地减少了参数和计算量. 改进后的PointNet++多目标分类网络结构如图6所示. 其中N、
图 6
图 6 改进的PointNet++多目标分类网络
Fig.6 Improved PointNet++ multi-object classification network
2.3. 激活函数的选取
学习苗圃中多种目标特征,选择合适的激活函数可以提高网络的效率. PointNet++网络中使用的是ReLu激活函数,该函数只有在输入为正时导数不为0,在当输入为负值时,函数值等于0处于硬饱和状态,神经元不会更新权重. 本研究选择LeakyReLu函数作为具有良好性能的激活函数,以缓解梯度消失问题,方程式为
式中:系数ɑ的取值范围为(0,∞). LeakyReLu函数当输入小于0时梯度也不会为0,而且推理速度与ReLu功能基本相同,避免了梯度消失问题. 选取 LeakyReLu激活函数在一定程度上加快了训练速度,提高了网络的效率.
3. 结果与分析
3.1. 实验环境及参数设置
实验的操作系统为Windows10,以Pytorch为框架,显卡为NVIDIA Quadro RTX4000 GPU,处理器为Intel(R)Core(TM)i9-10900K CPU @ 3.70 GHz . 训练阶段使用Adam优化器,batchsize为18,设置epoch=150,学习速率为0.001.
3.2. 实验评价指标
主流的点云分类精度衡量指标包括总体精度OA和平均分类精度mAcc. OA指场景中正确预测类别的点数与场景总点数的比值,是多类别分类问题中常用的指标;mAcc指评价模型所有类别分类精度取平均. 为了评估分类网络对样本的分类性能,使用OA、mAcc和每个类别的精度Acc作为评判标准,计算式分别为
式中:TP为正确预测结果的数量,FP为错误预测结果的数量,W为数据集中点云的总数,n为类别数.
3.3. 结果与分析
3.3.1. 苗圃数据集上的各个网络分类结果对比
为了探究改进算法在苗圃场景中的多目标分类效果,使用自制的数据集进行分类实验验证,分别计算每个类别的分类精度作为额外的指标来评估改进后网络的性能. 如表3所示为PointNet、PointNet++以及改进PointNet++在林果园场景数据集中6个类别的分类准确率. 可以看出,与PointNet++网络相比,改进后网络对大多数类别的预测精度都有着不同程度的提高,各个类别的分类准确率均超过90%. 其中高树、灌木、枯树和其他4个类别的准确率在改进网络中更高,分别比PointNet++网络高出1.54、0.74、2.28和4.13个百分点,表明融入注意力机制在很大程度上提升了网络的分类精度,特别是对不同形态树木的分类,有利于为农业机器人的靶标精准识别提供参考信息. 行人、指示牌这2个类别的准确率相比原网络有所下降. 可能是由于在采集点云数据时,采集树的类别和数量占据的比重较大,导致分类精度相对较高,而其他类别所占的比重较少,对分类结果的精度有一定的影响. 苗圃中的农业喷雾机器人主要是对不同形态的靶标进行作业,改进方法对不同种形态树木的分类精度都比改进前有一定的提高,能够更好地分类识别出靶标,更有利于为机器人的对靶作业提供参考.
表 3 不同网络在苗圃数据集上的标签分类结果对比
Tab.3
网络 | Acc/% | |||||
高树 | 行人 | 枯树 | 灌木 | 指示牌 | 其他 | |
PointNet | 91.73 | 90.04 | 61.44 | 88.81 | 85.33 | 84.83 |
PointNet++ | 95.82 | 96.08 | 90.93 | 98.13 | 97.50 | 88.46 |
改进PointNet++ | 97.36 | 94.26 | 93.21 | 98.87 | 95.00 | 92.59 |
在PointNet++中相同的位置插入SENet注意力进行分类实验对比. 如表4所示,插入SENet注意力的网络的总体精度和平均精度略有提升,分别达到94.53%和94.08%,相比于原网络提高0.24和0.44个百分点. 本研究使用的CBAM注意力机制改进网络的总体精度和平均精度相比于原网络提高2.09和2.22个百分点. 说明改进网络对苗圃场景的目标分类性能提升更加明显,更符合本研究的需求. 将训练阶段的准确率和损失函数Loss的变化进行了可视化处理,曲线变化如图7所示. 除分类精度外,网络运行速度v也是衡量网络性能的重要指标. 如表4所示,PointNet的分类速度最快达到0.01帧/s,总体精度最低只有88.36%;PointNet++的分类速度为0.07帧/s,精度达到94.29%;插入SENet注意力改进后的网络分类速度为0.06帧/s,总体精度为94.53%;改进网络的分类速为0.04帧/s,分类精度最高达到96.38%. 实验结果表明,改进网络的分类精度在参与对比的模型中表现最好,且分类速度也有一定提升. 综合精度和速度考虑,本研究使用的注意力模块改进后的网络更适于应用在苗圃多目标分类任务中.
表 4 不同网络在苗圃数据集上的分类结果对比
Tab.4
模型 | OA/% | mAcc/% | v/(帧·s−1) |
PointNet | 88.36 | 86.72 | 0.01 |
PointNet++ | 94.29 | 93.64 | 0.07 |
PointNet++(SENet) | 94.53 | 94.08 | 0.06 |
改进PointNet++ | 96.38 | 95.86 | 0.04 |
图 7
图 7 各网络在苗圃数据集上的训练准确率和损失函数曲线
Fig.7 Training accuracy and loss function curve of each network in nursery datasets
3.3.2. ModelNet40数据集上的分类结果对比
在点云分类领域权威的公共数据集ModelNet40上对PointNet、PointNet++以及改进网络分别进行分类训练与测试. ModelNet40共包含40个类别对象的12 311个网格CAD模型,其中9 832个模型作为训练数据,2 468个模型作为测试数据. 训练阶段的准确率和损失函数的变化如图8所示,随着迭代次数的增加,准确率不断增加,损失函数值不断减小. 在训练开始阶段损失值下降幅度很大,准确率曲线上升明显. 当迭代次数达到50次时,损失曲线趋于平稳,准确率曲线变化缓慢,当训练迭代次数达到150次时基本收敛,网络逐渐趋于稳定,准确率也达到最高. 在整个训练过程中,改进网络的损失值一直小于原网络,精度也是高于原网络. 对训练好的模型进行测试. PointNet、PointNet++以及改进网络的分类测试结果对比如表5所示. 与PointNet网络相比,改进网络的总体精度提高了2.90个百分点,平均精度提高了3.99个百分点;与PointNet++网络相比,改进后PointNet++网络的总体精度提高了0.96个百分点,平均精度提高了1.21个百分点. 实验结果表明,所提方法的分类精度与速度在原网络良好的基础上还有提高,证明改进网络具有一定的优越性.
图 8
图 8 各网络在ModelNet40数据集上的训练准确率曲线和损失函数曲线
Fig.8 Training accuracy curve and loss function curve of each network in ModelNet40 datasets
表 5 各网络在ModelNet40数据集上的分类结果对比
Tab.5
模型 | OA/% | mAcc/% |
PointNet | 89.97 | 85.83 |
PointNet++ | 91.91 | 88.61 |
改进PointNet++ | 92.87 | 89.82 |
3.3.3. 综合性能的消融实验
为了进一步验证同时采用的CBAM和选用LeakyReLu的有效性,将注意力模块和激活函数分别单独加入网络中设计4组消融实验,在自制苗圃数据集和ModelNet40数据集上进行分类训练和测试,结果如表6所示. 消融实验的结果表明,单独使用任一模块时,网络分类精度的提升有限,将CBAM与LeakyReLu配合使用时的分类性能最好,网络的总体精度和平均精度也是最高的.
表 6 苗圃数据集与ModelNet40数据集上的消融实验
Tab.6
% | ||||||||
PointNet++ | CBAM | LeakyReLu | 苗圃数据集 | ModelNet40 | ||||
OA | mAcc | OA | mAcc | |||||
√ | — | — | 94.29 | 93.64 | 91.91 | 88.61 | ||
√ | √ | — | 95.91 | 95.47 | 92.69 | 89.12 | ||
√ | — | √ | 94.74 | 94.05 | 92.01 | 89.20 | ||
√ | √ | √ | 96.38 | 95.86 | 92.87 | 89.82 |
4. 结 语
提出基于融合卷积块注意力模块的PointNet++多目标分类方法. 采用基于点云的深度学习方法,利用PointNet++和CBAM构建分类网络模型,将注意力机制嵌入PointNet++主干网络的特征提取层中,对特征进行加权,增强对关键特征的提取,降低无关特征的干扰,引入LeakyReLu激活函数解决梯度消失的问题. 根据苗圃中的不同靶标与非靶标种类制作数据集,该数据集包含不同形态的树木、行人、指示牌等6个标签类别. 在分类实验中,将改进网络与PointNet和PointNet++的分类结果进行比较. 结果表明,改进网络在苗圃数据集上准确率达到96.38%,分类速度达到0.04帧/s,在ModelNet40数据集上的分类准确率达到92.87%,均高于PointNet和PointNet++. 实验结果表明,所提方法具有更高分类精度和更快的分类速度,能够较好实现多目标分类,有利于农业机器人的靶标识别,为机器人的分类作业提供参考. 如何进一步提高网络性能并将网络部署至农业机器人平台上有待更深层次研究.
参考文献
Development status and trend of agricultural robot technology
[J].
中国果园植保机械化技术与装备研究进展
[J].DOI:10.11975/j.issn.1002-6819.2020.20.014
Research progress of orchard plant protection mechanization technology and equipment in China
[J].DOI:10.11975/j.issn.1002-6819.2020.20.014
果园基肥施肥装备研究现状与发展分析
[J].
Research status and development analysis of base-fertilizer application equipment of orchard
[J].
果园喷雾机器人靶标探测与追踪系统
[J].DOI:10.11975/j.issn.1002-6819.2021.09.004 [本文引用: 1]
Target detection and tracking system for orchard spraying robots
[J].DOI:10.11975/j.issn.1002-6819.2021.09.004 [本文引用: 1]
Detection of typical obstacles in orchards based on deep convolutional neural network
[J].
Pesticide spraying robot for precision agriculture: a categorical literature review and future trends
[J].DOI:10.1002/rob.22043 [本文引用: 1]
Multi-feature fusion tree trunk detection and orchard mobile robot localization using camera/ultrasonic sensors
[J].DOI:10.1016/j.compag.2018.02.009 [本文引用: 1]
基于花朵特征编码归类的植物种类识别方法
[J].
Plant species identification method based on flower feature coding classification
[J].
基于改进SSD的果园行人实时检测方法
[J].
Real-time pedestrian detection in orchard based on improved SSD
[J].
基于改进型YOLOv4的果园障碍物实时检测方法
[J].
Real-time detection methodology for obstacles in orchards using improved YOLOv4
[J].
Contextual classification of lidar data and building object detection in urban areas
[J].DOI:10.1016/j.isprsjprs.2013.11.001 [本文引用: 1]
Relevance assessment of full-waveform lidar data for urban area classification
[J].DOI:10.1016/j.isprsjprs.2011.09.008 [本文引用: 1]
基于地基激光雷达的玉米真实叶面积提取方法研究
[J].
Estimation of actual leaf area of maize based on terrestrial laser scanning
[J].
基于八叉树结构的三维体素模型检索
[J].
3D voxel model retrieval based on octree structure
[J].
基于MRE-PointNet+AE的绿萝叶片外形参数估测算法
[J].DOI:10.6041/j.issn.1000-1298.2021.01.016 [本文引用: 1]
Estimation algorithm of leaf shape parameters of scirpus sibiricum based on MRE-PointNet and autoencoder model
[J].DOI:10.6041/j.issn.1000-1298.2021.01.016 [本文引用: 1]
Object-level classification of vegetable crops in 3D LiDAR point cloud using deep learning convolutional neural networks
[J].DOI:10.1007/s11119-021-09803-0 [本文引用: 1]
Classification of rice seed variety using point cloud data combined with deep learning
[J].DOI:10.25165/j.ijabe.20211405.5902 [本文引用: 1]
基于分组注意力模块的实时农作物病害叶片语义分割模型
[J].
Real-time semantic segmentation model for crop disease leaves using group attention module
[J].
采用注意力机制与改进YOLOv5的水下珍品检测
[J].
Detection of underwater treasures using attention mechanism and improved YOLOv5
[J].
基于多尺度几何感知Transformer的植物点云补全网络
[J].DOI:10.11975/j.issn.1002-6819.2022.04.023 [本文引用: 1]
Plant point cloud completion network based on multi-scale geometry-aware point Transformer
[J].DOI:10.11975/j.issn.1002-6819.2022.04.023 [本文引用: 1]
/
〈 |
|
〉 |
