一种基于三维卷积神经网络的点云物体类型识别方法与流程

文档序号:17778080发布日期:2019-05-28 20:30阅读:231来源:国知局
一种基于三维卷积神经网络的点云物体类型识别方法与流程
本发明属于模式识别领域,具体涉及一种基于三维卷积神经网络的点云物体类型识别方法。
背景技术
:点云数据是利用结构光扫描仪或者三维激光扫描仪采集到的分布在三维空间中的离散点集,它对复杂场景以及物体的外形表达具有特殊的优势。随着人工智能发展以及产业自动化程度的提升,基于二维图像识别的方法已经无法满足要求,人们开始由二维向三维研究领域过渡。相对于二维图像,三维点云数据包含物体的信息更多,涉及物体各个方面因素更充分,表达更加全面。现有的识别方法主要分为四类:基于全局特征的点云物体识别,基于局部特征的点云物体识别,基于机器学习的点云物体识别以及基于图匹配的点云物体识方法。以上四类识别方法,在点云物体识别中都有一定的应用,但是都存在着一定的缺陷。首先,由于点云数据量大,导致提取的目标特征为一个高维向量,计算量大,效率低下;其次,需要大量人工干预,即专家的先验知识的参与,算法自动化程度较低;另外,传统点云物体识别方法一般针对特定物体具有特定识别方法,无法形成一个统一识别不同物体的框架。技术实现要素:针对现有技术中存在的点云物体识别方法计算量大、效率低,且自动化程度较低的缺点,本申请的目的在于,提供了一种基于三维卷积神经网络的点云物体类型识别方法。为了实现上述目的,本发明采取以下技术方案予以实现:一种点云物体类型识别的三维卷积神经网络的搭建方法,包括以下步骤:步骤1、采集已知物体类型的物体的点云数据,并对所述物体的点云数据进行离群点删除,得到无噪声的物体点云数据;所述物体的点云数据包括训练集数据、验证集数据;步骤2、对得到的无噪声的物体点云数据进行体素化操作,得到三维矩阵,并对所述三维矩阵进行归一化操作,得到由cp组成的三维矩阵,所述由cp组成的三维矩阵包括训练集数据中由cp组成的三维矩阵和验证集数据中由cp组成的三维矩阵;步骤3、将训练集数据中由cp组成的三维矩阵作为输入数据,将输入数据输入到三维卷积神经网络中,得到带有输入数据的三维卷积神经网络,将带有输入数据的三维卷积神经网络的层按照从上到下的顺序依次记为第1层至第32层;步骤4、依次对带有输入数据的三维卷积神经网络的第1层至19层进行计算,得到第19层的特征图序列;将第19层的特征图序列输入到带有输入数据的三维卷积神经网络的第20层,依次对第20层至30层进行计算,得到第30层的特征图序列;将第30层的特征图序列输入到带有输入数据的三维卷积神经网络的第31层,依次对第31层至第32层进行计算,得到最终的特征向量;根据最终的特征向量,计算得到每种识别类型的概率和网络损失值;步骤5、将所述每种识别类型的概率和网络损失值输入到所述带有输入数据的三维卷积神经网络中,得到新的带有输入数据的三维卷积神经网络;对得到的新的带有输入数据的三维卷积神经网络进行计算更新,得到新的三维卷积神经网络。进一步的,所述点云物体类型识别的三维卷积神经网络的搭建方法,还包括以下步骤:步骤6、将验证集数据中由cp组成的三维矩阵输入到所述新的三维卷积神经网络中,依次得到第一个网络损失值、第二个网络损失值和第三个网络损失值;当得到的第一个网络损失值、第二个网络损失值和第三个网络损失值相等,或依次增大时,将得到的新的三维卷积神经网络作为训练好的三维卷积神经网络;当得到的第一个网络损失值、第二个网络损失值和第三个网络损失值依次增小时,执行与步骤4-6相同的操作。一种基于三维卷积神经网络的点云物体类型识别方法,具体包括以下步骤:步骤1、采集待识别物体的点云数据,并对所述待识别物体的点云数据进行离群点删除,得到无噪声的待识别物体点云数据;步骤2、对得到的无噪声的待识别物体点云数据进行体素化操作,得到三维矩阵,并对所述三维矩阵进行归一化操作,得到由cp组成的三维矩阵;还包括以下步骤:步骤3、将由cp值组成的三维矩阵输入到新的三维卷积神经网络或训练好的三维卷积神经网络中,得到带有输入数据的三维卷积神经网络;依次对带有输入数据的三维卷积神经网络的第1层至第32层进行计算,得到最终的特征向量;根据最终的特征向量,计算得到每种识别类型的概率;根据得到的每种识别类型概率,最终得到待识别物体的类型。进一步的,步骤4中所述对带有输入数据的三维卷积神经网络的第1层至19层进行计算,具体操作如下:步骤41、将带有输入数据的三维卷积神经网络的第1层作为当前层;步骤42、采用公式(3)对当前层进行卷积操作,得到卷积操作后的输出值;其中,x表示卷积操作后输出值,x∈r;l表示训练集中由cp组成的三维矩阵中被卷积的通道序号,1≤l≤m;m代表当前层具有的特征图的数目,m≥3;xl表示训练集中由cp组成的三维矩阵中第l通道的值,xl∈r,wl表示训练集中由cp组成的三维矩阵中第l通道卷积核权重,wl∈r;对得到的卷积操作后输出值,采用公式(4)进行非线性变换,得到非线性后的值;其中,x表示卷积操作后的输出值;relu(x)表示非线性后的值,relu(x)大于等于0;对得到的非线性后的值进行池化操作,所述池化操作具体为:采用步长为2,大小为2*2*2的窗口对得到的非线性后的值进行划分,得到多个窗口;选取每个窗口中8个数值的最大值作为对应窗口的代表值,得到多个窗口的代表值;由得到的多个窗口的代表值作为当前层的特征图序列,并将当前层的特征图序列输入到当前层的下一层中;将当前层的下一层作为当前层,执行与步骤42相同的操作,直至第19层执行完,带有输入数据的三维卷积神经网络的第1层至19层进行的操作结束。进一步的,步骤4中所述对第20层至第30层进行计算,具体操作如下:步骤43、将第20层作为当前层;步骤44、采用残差向学习方法对当前层进行计算,得到当前层的特征图序列,并将得到的当前层的特征图序列输入到当前层的下一层中;将当前层的下一层作为当前层,执行与步骤44相同的操作,直至第30层执行完,对带有输入数据的三维卷积神经网络的第20层至第30层进行的操作结束。进一步的,步骤4中所述对第31层至32层进行计算,得到最终的特征向量;根据最终的特征向量,计算得到每种识别类型的概率和网络损失值,具体操作如下:步骤45、对第31层采用全连接操作,得到第31层的特征向量;将第31层的特征向量输入到第32层,对第32层采用全连接操作,得到最终的特征向量;步骤46、根据需求及训练集类型数目,设置m种识别类型;采用公式(5)计算得到每种识别类型的概率,其中,i为第i种识别类型,m为识别类型的种类数,1≤i≤j≤m,m≥1;wi为第i种识别类型的权重值,wi∈r,表示第i种识别类型的权重值的转置,v为得到的最终特征向量,v∈r;pi表示第i种识别类型的概率,0≤pi≤1;bi表示第i中识别类型的偏差项,bi∈r;bj代表第j种识别类型的偏差项,bj∈r;步骤47、计算网络损失值:其中,m为识别类型的种类数,i为第i种识别类型,1≤i≤m,m≥1;pi表示第i种识别类型的概率,当已知物体类型与第i种识别类型相同时,yi为1;当已知物体类型与第i种识别类别不同时,yi为0。进一步的,所述步骤5具体操作如下:将所述每种识别类型的概率和网络损失值输入到所述带有输入数据的三维卷积神经网络中,得到新的带有输入数据的三维卷积神经网络;依次按照三维卷积神经网络的第32层至第1层的顺序,采用梯度下降算法对所述新的带有输入数据的三维卷积神经网络进行计算,得到每一层的权重值;将得到的每一层权重值作为该层新的权重值,得到新的三维卷积神经网络。进一步的,所述步骤6具体操作如下:步骤61、将验证集数据中由cp组成的三维矩阵输入到所述新的三维卷积神经网络中;步骤62、执行与步骤4相同的操作,得到第一个网络损失值;将得到的新的三维卷积神经网络作为带有输入数据的三维卷积神经网络,执行与步骤4-5、步骤61-62相同的操作,得到更新的三维卷积网络和第二个网络损失值;将更新的三维卷积神经网络作为带有输入数据的三维卷积神经网络,执行与步骤4-5、步骤61-62相同的操作,得到第三个网络损失值;当得到的第一个网络损失值、第二个网络损失值和第三个网络损失值相等,或依次增大时,将得到的新的三维卷积神经网络作为训练好的三维卷积神经网络;当得到的第一个网络损失值、第二个网络损失值和第三个网络损失值依次减小时,执行与步骤4-6相同的操作。进一步的,所述步骤3具体操作如下:步骤31、将带有输入数据的三维卷积神经网络的第1层作为当前层;步骤32、采用公式(6)对当前层进行卷积操作,得到卷积操作后的输出值;其中,x表示卷积操作后输出值,x∈r;l表示训练集中由cp组成的三维矩阵中被卷积的通道序号,1≤l≤m;m代表当前层具有的特征图的数目,m≥3;xl表示训练集中由cp组成的三维矩阵中第l通道的值,xl∈r,wl表示训练集中由cp组成的三维矩阵中第l通道卷积核权重,wl∈r;对得到的卷积操作后输出值,采用公式(7)进行非线性变换,得到非线性后的值;其中,x表示卷积操作后的输出值;relu(x)表示非线性后的值,relu(x)大于等于0;对得到的非线性后的值进行池化操作,所述池化操作具体为:采用步长为2,大小为2*2*2的窗口对得到的非线性后的值进行划分,得到多个窗口;选取每个窗口中8个数值的最大值作为对应窗口的代表值,得到多个窗口的代表值;由得到的多个窗口的代表值作为当前层的特征图序列,并将当前层的特征图序列输入到当前层的下一层中;将当前层的下一层作为当前层,执行与步骤32相同的操作,直至第19层执行完,执行步骤33;步骤33、采用残差向学习方法对当前层进行计算,得到当前层的特征图序列,并将得到的当前层的特征图序列输入到当前层的下一层中;将当前层的下一层作为当前层,执行与步骤33相同的操作,直至第30层执行完,执行步骤34;步骤34,采用全连接操作对当前层进行计算,得到当前层的特征向量,并将得到的当前层的特征图向量输入到当前层的下一层中;将当前层的下一层作为当前层,执行与步骤34相同的操作,直至得到第30层的特征向量,将第30层的特征向量作为最终的特征向量;步骤35、根据需求及训练集类型数目,设置m种识别类型;采用公式(8)计算得到每种识别类型的概率;其中,i为第i种识别类型,m为识别类型的种类数,1≤i≤j≤m,m≥1;wi为第i种识别类型的权重值,wi∈r,表示第i种识别类型的权重值的转置,v为得到的最终的特征向量,v∈r;pi表示第i种识别类型的概率,0≤pi≤1;bi表示第i中识别类型的偏差项,bi∈r;bj代表第j种识别类型的偏差项,bj∈r。进一步的,步骤3中所述根据得到的每种识别类型概率,最终得到待识别物体的类型,具体操作为:从得到的每种识别类型的概率中选取最大值,将最大值对应的类型作为待识别物体的类型,得到最终待识别物体的类型。与现有技术相比,本发明的有益效果如下:1、本发明为了解决传统点云自动化程度低且无法做到使用一种框架识别不同类型物体的缺点,在点云物体识别过程中加入三维卷积神经网络,通过对三维卷积神经网络的学习训练,得到新的三维卷积神经网络,能够有效的与待识别物体结合,能够提高了待识别物体类型识别的准确率。2、本发明在点云物体识别过程中加入新的三维卷积神经网络进行物体类型的判断,提高了物体类型识别的准确率,克服了现有技术中需要专家根据不同类型物体的点云设计不同算子的先验知识缺点;并克服了现有技术自动化程度低且无法做到使用一种框架识别不同类型物体的缺点,具有自动化程度高,操作方便,准确率高的特点;3、本发明中随着层数的加深目标值的变化趋于稳定,即学习发生退化,通过对第20层至30层由学习目标值变化改为学习残差项的变化,能够自动化的提取点云数据的特征向量,且能够采用一个框架对不同点云物体类型进行判断。附图说明图1为本发明的流程图;图2为物体点云数据在xyz三维空间坐标下和体素化操作后的结果示意图;其中:图a为物体点云数据在xyz三维空间坐标下的示意图;图b为体素化操作后的结果示意图。具体实施方式一种点云物体类型识别的三维卷积神经网络的搭建方法,包括以下步骤:步骤1、采集已知物体类型的物体的点云数据,并对所述物体的点云数据进行离群点删除,得到无噪声的物体点云数据;所述物体的点云数据包括训练集数据、验证集数据;步骤2、对得到的无噪声的物体点云数据进行体素化操作,得到三维矩阵,并对所述三维矩阵进行归一化操作,得到由cp组成的三维矩阵;所述由cp组成的三维矩阵包括训练集数据中由cp组成的三维矩阵和验证集数据中由cp组成的三维矩阵;还包括如下步骤:步骤3、将训练集数据中由cp组成的三维矩阵作为输入数据,将输入数据输入到三维卷积神经网络中,得到带有输入数据的三维卷积神经网络;所述三维卷积神经网络采用32层结构,将带有输入数据的三维卷积神经网络的层按照从上到下的顺序依次记为第1层到第32层;步骤4、依次按照前向传导的方向,对带有输入数据的三维卷积神经网络的第1层至19层进行计算,得到第19层的特征图序列;将第19层的特征图序列输入到带有输入数据的三维卷积神经网络的第20层,依次对第20层至30层进行计算,得到第30层的特征图序列;将第30层的特征图序列输入到带有输入数据的三维卷积神经网络的第31层,依次对第31层至第32层进行计算,得到最终的特征向量;根据最终的特征向量,计算得到每种识别类型的概率和网络损失值;步骤5、将所述每种识别类型的概率和网络损失值输入到所述带有输入数据的三维卷积神经网络中,得到新的带有输入数据的三维卷积神经网络;对得到的新的带有输入数据的三维卷积神经网络进行计算更新,得到新的三维卷积神经网络;本发明为了解决传统点云自动化程度低且无法做到使用一种框架识别不同类型物体的缺点,在点云物体识别过程中加入三维卷积神经网络,通过对三维卷积神经网络的学习训练,得到新的三维卷积神经网络,能够有效的与待识别物体结合,能够提高了待识别物体类型识别的准确率。具体的,还包括以下步骤:步骤6、将验证集数据中由cp组成的三维矩阵输入到所述新的三维卷积神经网络中,依次得到第一个网络损失值、第二个网络损失值和第三个网络损失值;当得到的第一个网络损失值、第二个网络损失值和第三个网络损失值相等,或依次增大时,将得到的新的三维卷积神经网络作为训练好的三维卷积神经网络;当得到的第一个网络损失值、第二个网络损失值和第三个网络损失值依次减小时,执行与步骤4-6相同的操作。该方式通过验证集数据判断得到的新的三维卷积神经网络是否合格,当三维卷积卷积神经网络训练好后,能够提高待识别物体类型识别的准确率。具体的,所述步骤1的具体操作如下:通过三维扫描仪扫描物体,得到所述物体的点云数据,物体的点云数据包括训练集数据、验证集数据;采用k近邻方法对得到的物体的点云数据进行离群点删除操作,得到无噪声的物体点云数据。物体的点云数据的数据形式为物体点云数据中的点分别在xyz三维空间坐标系下x轴、y轴、z轴三个方向上的投影值及该点所对应的rgb三通道值的集合。rgb表示三原色,包括红色、绿色、蓝色。为了解决人工采集数据中具有大量离群点的问题,采用k近邻方法对得到的物体点云数据进行离群点删除操作,该方法能够很好的完成离群点的剔除,保证了点云数据较为准确。具体的,所述步骤2具体操作如下:步骤21、分别找出无噪声物体点云数据在xyz三维空间坐标系下x轴、y轴、z轴三个方向上的最大的投影值和最小的投影值,得到xmax,xmin,ymax,ymin,zmax,zmin六个值,以(xmax,0,0)、(xmin,0,0)、(0,ymax,0)、(0,ymin,0)、(0,0,zmax)、(0,0,zmin)为坐标构成立方体;步骤22、分别沿x轴、y轴、z轴三个方向将立方体切分为m个单元,得到m*m*m个子立方体;统计每一个子立方体内无噪声物体点云数据中点的数量,并将每一子立方体内无噪声物体点云数据中点的数量作为对应子立方体的代表值,得到m*m*m个子立方体的代表值;由m*m*m个子立方体的代表值形成一个三维矩阵,得到三维矩阵,所述三维矩阵中数值的个数为m*m*m,其中20≤m≤30;步骤23、采用归一化函数,即公式(1)对得到的三维矩阵进行归一化操作,得到由cp值组成的三维矩阵,所述由cp值组成的三维矩阵包括训练集数据中由cp值组成的三维矩阵、验证集数据中由cp值组成的三维矩阵;其中r代表归一化后的点云中点的个数,r≥1000,n代表当前物体点云中点的个数;cp表示归一化后得到的值,cp≥0;x,y,z分别代表三维矩阵的x,y,z三个方向上的坐标值,nx,y,z代表三维矩阵中下标为(x,y,z)的值。采用公式(1)的归一化函数对得到的三维矩阵进行归一化操作,识别模型的精度较高,速度较慢;还可采用公式(2)对得到的三维矩阵进行归一化操作,得到由cp值组成的三维矩阵,包括训练集数据中由cp值组成的三维矩阵、测试集数据中由cp值组成的三维矩阵、验证集数据中由cp值组成的三维矩阵;其中,p表示三维矩阵中的数值,p>0;μ为三维矩阵的均值,μ>0;σ为三维矩阵的标准差,σ>0。采用公式(2)对得到的三维矩阵进行归一化操作,识别模型的精度略低,但速度较快。为了降低点云数据量且能够符合三维卷积神经网路的输入要求,需要对无噪声的物体点云数据进行体素化。该方式能够在保留了有效数据的前提下,减少了点云处理的数据量并实现了符合三维卷积神经网络数据要求的格式;由于采集中人为因素的影响,不同物体采集的点云数据量不同,会影响预测的最终结果,因此对得到的三维矩阵进行归一化操作,通过归一化方法最终消除了点云数据量对最终物体类型预测的影响。具体的,步骤4中所述对带有输入数据的三维卷积神经网络的第1层至19层进行计算,具体操作如下:步骤41、将带有输入数据的三维卷积神经网络第1层作为当前层;步骤42、采用公式(3)对当前层进行卷积操作,得到卷积操作后的输出值;其中,x表示卷积操作后输出值,x∈r;l表示训练集中由cp组成的三维矩阵中被卷积的通道序号,1≤l≤m;m代表当前层具有的特征图的数目,m≥3;xl表示训练集中由cp组成的三维矩阵中第l通道的值,xl∈r,wl表示训练集中由cp组成的三维矩阵中第l通道卷积核权重,wl∈r;对得到的卷积操作后输出值,采用relu激活函数,即公式(4)进行非线性变换,得到非线性后的值;其中,x表示卷积操作后的输出值;relu(x)表示非线性后的值,relu(x)大于等于0;对得到的非线性后的值进行池化操作,所述池化操作具体为:采用步长为2,大小为2*2*2的窗口对得到的非线性后的值进行划分,得到多个窗口;选取每个窗口中8个数值的最大值作为对应窗口的代表值,得到多个窗口的代表值;由得到的多个窗口的代表值作为当前层的特征图序列,并将当前层的特征图序列输入到当前层的下一层中;将当前层的下一层作为当前层,执行与步骤42相同的操作,直至第19层执行完,对带有输入数据的三维卷积神经网络的第1层至第19层进行的操作结束。通过第1层至第19层进行了卷积操作,非线性变换及池化操作实现对带有输入数据的三维卷积神经网络第1层至第19层的学习目标。具体的,步骤4中所述第20层至第30层进行计算,具体步骤如下:步骤43、将第20层作为当前层;步骤44、采用残差向学习方法对当前层进行计算,得到当前层的特征图序列,并将得到的当前层的特征图序列输入到当前层的下一层中;将当前层的下一层作为当前层,执行与步骤44相同的操作,直至第30层执行完,对带有输入数据的三维卷积神经网络的第20层至第30层进行的操作结束;由于带有输入数据的三维卷积神经网络在学习目标时,随着层数的加深目标值的变化趋于稳定,即学习发生退化,则需更改学习目标,通过对第20层至30层由学习目标值变化改为学习残差项的变化,能够自动化的提取点云数据的特征向量,且能够采用一个框架对不同点云物体类型进行判断。具体的,步骤4中所述对第31层至32层进行计算,得到最终的特征向量;根据最终的特征向量,计算得到每种识别类型的概率和网络损失值,具体操作如下:步骤45、对第31层采用全连接操作,得到第31层的特征向量;将第31层的特征向量输入第32层,对第32层采用全连接操作,得到最终的特征向量;步骤46、根据需求及训练集类型数目,设置m种识别类型;采用softmax函数即公式(5),分别计算得到每种识别类型的概率,其中,i为第i种识别类型,m为识别类型的种类数,1≤i≤j≤m,m≥1;wi为第i种识别类型的权重值,wi∈r,表示第i种识别类型的权重值的转置,v为得到的最终特征向量,v∈r;pi表示第i种识别类型的概率,0≤pi≤1;,bi表示第i中识别类型的偏差项,bi∈r;bj代表第j种识别类型的偏差项,bj∈r;步骤47、计算网络损失值:其中,m为识别类型的种类数,i为第i种识别类型,1≤i≤m,m≥1;pi表示第i种识别类型的概率;当已知物体类型与第i种识别类型相同时,yi为1;当已知物体类型与第i种识别类别不同时,yi为0。该方式通过计算每种识别类型的概率,能够判断物体识别类型的准确率;计算网络损失值能够有效判断三维卷积神经网络是否训练合格。本发明的实施例中,根据实际情况,对新的三维卷积神经网络重复执行步骤4和步骤5,依此迭代5次,得到新的三维卷积神经网络,再执行步骤6。具体的,所述步骤5具体操作如下:将所述每种识别类型的概率和网络损失值输入到所述带有输入数据的三维卷积神经网络中,得到新的带有输入数据的三维卷积神经网络;依次按照三维卷积神经网络的第32层至第1层的顺序,即反向传导的方向,采用梯度下降算法对新的带有输入数据的三维卷积神经网络进行计算,得到每一层的权重值;将得到的每一层权重值作为该层新的权重值,得到新的三维卷积神经网络。该方式通过反向传导的方向实现了对新的带有输入数据的三维卷积神经网络的更新,得到新的三维卷积神经网络。最终通过前向传导及反向传导完成网络的迭代,最终实现了三维卷积神经网络参数的自主学习,并且达到了无需专家先验知识参与,自主判断物体类型的目标。具体的,所述步骤6具体包括以下步骤:步骤61、将验证集数据中由cp组成的三维矩阵输入到得到的新的三维卷积神经网络中;步骤62、执行与步骤4相同的操作,得到第一个网络损失值;将得到的新的三维卷积神经网络作为带有输入数据的三维卷积神经网络,执行与步骤4-5、步骤61-62相同的操作,得到更新的三维卷积网络和第二个网络损失值;将更新的三维卷积神经网络作为带有输入数据的三维卷积神经网络,执行与步骤4-5、步骤61-62相同的操作,得到第三个网络损失值;当得到的第一个网络损失值、第二个网络损失值和第三个网络损失值相等,或依次增大时,将得到的新的三维卷积神经网络作为训练好的三维卷积神经网络;当得到的第一个网络损失值、第二个网络损失值和第三个网络损失值依次增小时,执行与步骤4-6相同的操作。该方式通过验证集数据判断得到的新的三维卷积神经网络是否合格,并对不合格的新的三维卷积神经网络进行优化。一种基于三维卷积神经网络的点云物体类型识别方法,具体包括以下步骤:步骤1、采集待识别物体的点云数据,并对所述待识别物体的点云数据进行离群点删除,得到无噪声的待识别物体点云数据;步骤2、对得到的无噪声的待识别物体点云数据进行体素化操作,得到三维矩阵,并对所述三维矩阵进行归一化操作,得到由cp组成的三维矩阵;还包括以下步骤:步骤3、将由cp值组成的三维矩阵输入到新的三维卷积神经网络或训练好的三维卷积神经网络中,得到带有输入数据的三维卷积神经网络;依次对带有输入数据的三维卷积神经网络的第1层至第32层进行计算,得到最终的特征向量;根据最终的特征向量,计算得到每种识别类型的概率;根据得到的每种识别类型概率,最终得到待识别物体的类型。所述一种基于三维卷积神经网络的点云物体类型识别方法中的步骤1、步骤2分别与一种点云物体类型识别的三维卷积神经网络的搭建方法中步骤1、步骤2中的操作过程相同。本发明为了解决传统点云自动化程度低且无法做到使用一种框架识别不同类型物体的缺点,在点云物体识别过程中加入新的三维卷积神经网络或训练好的三维卷积神经网络进行待识别物体类型的判断,通过对三维卷积神经网络的训练,提高了待识别物体类型识别的准确率,克服了现有技术中需要专家根据不同类型物体的点云设计不同算子的先验知识缺点;并克服了现有技术自动化程度低且无法做到使用一种框架识别不同类型物体的缺点,具有自动化程度高,操作方便,准确率高的特点。具体的,所述步骤3中所述依次对带有输入数据的三维卷积神经网络的第1层至第32层进行计算,得到最终的特征向量,具体操作如下:步骤31、将带有输入数据的三维卷积神经网络的第1层作为当前层;步骤32、采用公式(6)对当前层进行卷积操作,得到卷积操作后的输出值;其中,x表示卷积操作后输出值,x∈r;l表示训练集中由cp组成的三维矩阵中被卷积的通道序号,1≤l≤m;m代表当前层具有的特征图的数目,m≥3;xl表示训练集中由cp组成的三维矩阵中第l通道的值,xl∈r,wl表示训练集中由cp组成的三维矩阵中第l通道卷积核权重,wl∈r;对得到的卷积操作后输出值,采用公式(7)进行非线性变换,得到非线性后的值;其中,x表示卷积操作后的输出值;relu(x)表示非线性后的值,relu(x)大于等于0;对得到的非线性后的值进行池化操作,所述池化操作具体为:采用步长为2,大小为2*2*2的窗口对得到的非线性后的值进行划分,得到多个窗口;选取每个窗口中8个数值的最大值作为对应窗口的代表值,得到多个窗口的代表值;由得到的多个窗口的代表值作为当前层的特征图序列,并将当前层的特征图序列输入到当前层的下一层中;将当前层的下一层作为当前层,执行与步骤32相同的操作,直至第19层执行完,执行步骤33;步骤33、采用残差向学习方法对当前层进行计算,得到当前层的特征图序列,并将得到的当前层的特征图序列输入到当前层的下一层中;将当前层的下一层作为当前层,执行与步骤33相同的操作,直至第30层执行完,执行步骤34;步骤34,采用全连接操作对当前层进行计算,得到当前层的特征向量,并将得到的当前层的特征图向量输入到当前层的下一层中;将当前层的下一层作为当前层,执行与步骤34相同的操作,直至得到第30层的特征向量,将第30层的特征向量作为最终的特征向量;步骤35、根据需求及训练集类型数目,设置m种识别类型;采用公式(8)计算得到每种识别类型的概率;其中,i为第i种识别类型,m为识别类型的种类数,1≤i≤j≤m,m≥1;wi为第i种识别类型的权重值,wi∈r,表示第i种识别类型的权重值的转置,v为得到的最终的特征向量,v∈r;pi表示第i种识别类型的概率,0≤pi≤1;bi表示第i中识别类型的偏差项,bi∈r;bj代表第j种识别类型的偏差项,bj∈r。具体的,步骤3中所述根据得到的每种识别类型概率,最终得到待识别物体的类型,具体操作为:从得到的每种识别类型的概率中选取最大值,将最大值对应的类型作为待识别物体的类型,得到最终待识别物体的类型。根据训练好的三维卷积神经网络,能够对待识别物体的类型进行自动化的识别,从而得到待识别物体的类型,最终实现对待识别物体类型的识别。实施例:该实施例中选取样本的点云数据为rgbd公共数据集,即深度三原色公共数据集,实施例采取的rgbd公共数据集中包括苹果、球、香蕉、灯笼椒、眼罩和碗6个物体的点云数据;具体的步骤如下:步骤1、采集物体的点云数据;由于选取的样本的点云数据为rgbd公共数据集,且已经过预处理,该步骤直接得到图2中图a所示的xyz三维空间坐标系下无噪声的物体点云数据。其中样本的点云数据选取rgbd公共数据集中300个物体的点云数据,200个物体的点云数据作为训练集数据,50个物体的点云数据作为验证集数据,50个物体的点云数据作为测试集数据;步骤2、对步骤1得到的无噪声的物体点云数据进行体素化,体素化数目为20*20*20共8000个单元格,色彩为rgb三通道,得到如图2中的图b所示的三维矩阵在x、y、z三个方向上的示意图,最终得到3个20*20*20的三维矩阵;对得到的三维矩阵采用标准归一化的方法进行归一化操作,得到由cp组成的三维矩阵;步骤3、将训练集数据中由cp组成的三维矩阵作为输入数据,输入到三维卷积神经网络中,得到带有输入数据的三维卷积神经网络,将带有输入数据的三维卷积神经网络的层按照上到下的顺序依次记为第1层至第32层;步骤4、依次对带有输入数据的三维卷积神经网络的第1层至19层进行计算,得到第19层的特征图序列;将第19层的特征图序列输入到带有输入数据的三维卷积神经网络的第20层,依次对第20层至30层进行计算,得到第30层的特征图序列;将第30层的特征图序列输入到带有输入数据的三维卷积神经网络的第31层,依次对第31层至第32层进行计算,得到最终的特征向量;根据需求和训练集类型数目,设置苹果、球、香蕉、灯笼椒、眼罩和碗6种识别类型,根据最终的特征向量,计算得到每种识别类型的概率和网络损失值;步骤5:将所述每种识别类型的概率和网络损失值输入到所述带有输入数据的三维卷积神经网络中,得到新的带有输入数据的三维卷积神经网络;依次按照三维卷积神经网络的第32层至第1层的顺序,采用梯度下降算法对新的带有输入数据的三维卷积神经网络进行计算,得到每一层的权重值;将得到的每一层权重值作为该层新的权重值,得到新的三维卷积神经网络。在三维卷积神经网络训练中初始化网络参数,设置学习率lr=0.01,迭代次数为50超参数,使用网格搜索的策略确认最优的参数值。训练数据集每迭代5次,将三维卷积神经网络模型运用于验证集数据求出loss值;步骤6、将验证集数据的由cp组成的三维矩阵输入到所述新的三维卷积神经网络中,执行与步骤4相同的操作,得到第一个网络损失值;将得到的新的三维卷积神经网络作为带有输入数据的三维卷积神经网络,执行与步骤4-5、步骤6相同的操作,得到更新的三维卷积网络和第二个网络损失值;将更新的三维卷积神经网络作为带有输入数据的三维卷积神经网络,执行与步骤4-5、步骤6相同的操作,得到第三个网络损失值;当得到的第一个网络损失值、第二个网络损失值和第三个网络损失值相等,或依次增大时,将得到的新的三维卷积神经网络作为训练好的三维卷积神经网络,执行步骤7;当得到的第一个网络损失值、第二个网络损失值和第三个网络损失值依次减小时,执行与步骤4-6相同的操作;步骤7:为了验证本发明的准确性,将得到的测试集数据中由cp组成的三维矩阵输入到训练好的三维卷积神经网络中,计算得到每种物体识别类型的概率;根据得到的每种物体识别类型,得到最终物体的类型。当物体的实际类型分别为苹果、球、香蕉、灯笼椒、眼罩和碗时,统计样本中通过测试集数据预测的类型分别为苹果、球、香蕉、灯笼椒、眼罩和碗的比例,统计结果如表1所示。表1中各栏表示的意义:第一列代表物体的实际类型,第一行代表预测的物体类型,数值表示预测某一的类型的总数在样本总数中的比例。以第二行数据为例,第二行第一列代表物体的实际类型为苹果,当物体的实际类型为苹果时,采用本发明的方法预测的类型为苹果的总数在样本总数中的比例为84%,预测球的总数在样本总数中的比例为7%,预测灯笼椒的总数在样本总数中的比例为7%,预测眼罩的总数在样本总数中的比例为1%,预测香蕉的总数和碗的总数在样本总数中的比例均为0;经过试验统计,采用本发明提供的方法识别物体的类型的准确率达到91.7%左右,具有自动化程度高,操作方便,准确率高的特点。表1苹果球香蕉灯笼椒眼罩碗苹果0.840.070.000.070.010.00球0.060.900.000.020.000.02香蕉0.000.000.970.020.060.00灯笼椒0.100.030.000.890.010.00眼罩0.000.000.030.000.920.00碗0.000.000.000.000.000.98总之,本发明的实施例公布的是其较好的实施方式,但并不限于此。本领域的技术人员能够容易地根据上述实施例,理解本发明的核心思想,只要不脱离本发明的技术方案的基础的变形或替换,都在本发明的保护范围之内。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1