面向三维特征描述子的自适应二进制简化方法

2021-07-30 10:33刘双元郑王里林云汉
计算机应用 2021年7期
关键词:二进制标准差关键点

刘双元,郑王里,林云汉*

(1.武汉科技大学计算机科学与技术学院,武汉 430081;2.智能信息处理与实时工业系统湖北省重点实验室(武汉科技大学),武汉 430081;3.国网电力科学研究院有限公司,南京 211106)

0 引言

环境视觉感知可分为二维(2 Dimension,2D)感知和三维(3 Dimension,3D)感知。3D 的感知可构建三维世界模型,确定场景中可见物体的3D 位姿、名称、大小、形状和颜色等信息,更符合人类对世界的感知。此外,在光照条件不好的时候,如果采用红外、激光技术提供的3D 数据可以获得比2D 图像或者人眼更好的结果。当前3D 环境感知算法可分为基于深度学习的方法和基于手工计算的方法。基于深度学习的方法虽然近几年来取得了一定的突破,然而,该技术是基于一个封闭、静态环境的,即训练数据和测试数据是来自相同的标记和特征空间;同时,其识别正确率的高低依赖于带注释/标记的训练集的多少。所以,基于深度学习的方法大多数仅应用于离线数据处理,暂时还不适用于机器人实际在线的工业应用场景[1]。然而,基于手工计算的方法通过人为设计合理的特征描述方法来表征3D点云数据,之后通过场景和模型之间的特征匹配实现正确的识别,只要能够实现有效的特征表征,即可实现较好的在线环境感知。所以,目前基于手工计算的方法在3D 视觉领域的研究和应用仍然是研究的热点。根据数据特征表征方式的不同,基于手工计算的3D环境感知又可分为基于全局特征描述子的感知方法和基于局部特征描述子的感知方法。基于特征局部描述子的感知方法因为它在遮挡、重叠、背景杂乱以及视角变化等场景中具有较好的鲁棒性而被广泛地研究。基于特征局部描述子的总体流程如图1 所示,主要包括物体模型库建立、物体识别与位姿估计和语义地图生成三个部分。

然而,现有的3D局部特征描述子算法在保证良好识别正确率(较好的描述性和鲁棒性)的同时,存在匹配耗时长、内存占用高的缺点。针对该问题,本文研究面向3D点云快速特征匹配的二进制局部特征描述子,实现3D环境实时感知与精确场景理解[2]。从点云数据的离散性和3D 特征描述子的设计原理出发,分析3D 特征描述子的特点,对3D 特征描述子进行二进制量化,量化后的特征描述子性能优于现有算法,在物体识别精度和特征匹配效率两方面能达到目前综合最优水平。

1 相关工作

3D 特征描述子表征点云的几何特征,在点云的识别、曲面重建、配准、重采样等过程中,都需要采用特征描述子对点云数据进行特征的描述。特征描述子从尺度上面可分为:全局特征描述子和局部特征描述子。

全局特征描述子如视点特征直方图(Viewpoint Feature Histogram,VFH)、聚类视点特征直方图(Clustered Viewpoint Feature Histogram,CVFH)、定向独特可重复的聚类视点直方图(Oriented,Unique and Repeatable Clustered Viewpoint Feature Histogram,OUR-CVFH)、全局一致的空间分布(Globally Aligned Spatial Distribution,GASD)特征描述子、正交视点特征直方图(Orthogonal Viewpoint Feature Histogram,OVFH)特征描述子[3]、部分视点特征直方图(Partion Viewpoint Feature Histogram,PVFH)特征描述子等都是在整个场景中分割出每个物体的聚类,然后采用全局特征描述子对每个物体聚类点云的几何信息进行描述。然而,当场景中背景杂乱或物体出现遮挡时,分割出的物体聚类可能不正确,表征的实际场景的物体点云特征信息存在失真的问题,最终导致实际模型与场景特征描述匹配错误,识别效果较差。

在实际的3D物体感知应用中,物体间遮挡和物体背景杂乱的情况经常存在。与基于全局的特征描述子感知方法不同,基于局部特征描述子的视觉感知首先计算物体的关键点,然后通过局部特征描述子来描述关键点邻域内点云的几何特征,如点特征直方图(Point Feature Histogram,PFH)[4]、快速点特征直方图(Fast Point Feature Histograms,FPFH)[5]、基于签名的方向直方图(Signature of Histogram of OrienTations,SHOT)[6]、局部表面(Local Surface Descriptor,TriSI)[7]、旋转投影统计(Rotational Projection Statistics,RoPS)[8],距离直方图(Histogram of Distances,HoD)[9],以及2016年和2017年,Yang等[10-12]提出的局部特征统计直方图(Local Feature Statistics Histogram,LFSH)、多属性统计直方 图(Multi-attribute Statistics Histograms,MaSH)和三重正交局部深度图像表征(Triple Orthogonal Local Depth Images,TOLDI)特征描述子;2019 年Zhao 等[13]提出的细分空间上偏差角统计(Statistics of Deviation Angles on Subdivided Space,SDASS),以及Zhao 等[14]在2020 年初新发表的论文中提出的分区本地特征统计(Divisional Local Feature Statistics,DLFS)。由于基于局部的特征描述子关注的是物体的关键点和关键点周围的点云信息,所以无需对整个物体的点云进行描述。基于局部特征描述子的方法一方面提高了物体识别的实时性,另一方面也解决了背景杂乱和物体间存在遮挡的情况下物体识别正确率低的问题[8]。

文献[14-16]中对比分析了十来种当前主流的局部特征描述子的性能,在多个不同的数据集下进行了比较和评估,从评估的结果可以看出:在物体识别过程中,特征描述子算法提取到物体的点云的几何特征越多,识别效果越佳,但是处理时间越长;同时,不同算法对于不同的环境特点表现出了不同的识别性能。

表1列举了12种主流局部特征描述子的维度对比。一方面,这些特征描述子每个维度的值都以浮点值(real-valued)形式存储,维度越少特征匹配的速度就越快;另一方面,这些算法的提出都围绕着特征描述子的描述性、鲁棒性以及匹配耗时、内存占用等评价指标展开评估。如何在保证特征描述子良好识别正确率(较好的描述性和鲁棒性)的同时提高特征匹配效率并降低内存占用是3D 视觉领域的核心和瓶颈问题。所以,近几年来探索如何提高特征匹配效率和降低内存占用的研究成了很多研究者感兴趣的热点。

表1 不同文献中的特征描述子占用内存比较Tab.1 Comparison of memory consumption by feature descriptors from different literatures

目前,实现特征匹配效率提高和内存占用降低的主要方法有三种:1)压缩已有特征描述子维度;2)设计全新的二进制特征描述子;3)二进制简化已有特征描述子。本文拟在已有特征描述子上进行有效自适应二进制简化,从而在不失精度的情况下提高匹配效率并降低内存占有率。

二进制简化已有特征描述子的方法是设计一种二进制的简化方法并将其应用于某种已经存在的特征描述子中,将原来每一维度的向量转化为二进制0或1,并在保证特征描述子的描述性和鲁棒性相当的情况下,大幅减少内存占用,并提高3D 物体匹配/识别速度。在3D 图像处理领域,应用二进制方法简化已有特征描述子的研究可追溯到2015 年,新加坡南洋理工大学和香港科技大学的Prakhya 等在机器人顶级国际会议IROS上提出了向量直接进行二进制简化的方法,该方法是一种通用的方法,可以应用于不同的特征描述子的二进制简化中。当时作者将该方法应用于传统SHOT 特征描述子[6]的二值简化中提出了B-SHOT[17]:首先将SHOT 描述子中每四个浮点型数据作为一个简化的单元,根据定义的5 条规则将SHOT 中的浮点型数据分别转化为二进制0 和1,降低了物体表征时内存的占用,提高了匹配运算的效率,实现了3D 点云快速特征匹配。2017 年,该作者将该二值化的思想又应用到另外两种特征描述子RoPS[8]和FPFH[5]中,建立了B-RoPS 和B-FPFH[18],并通过一些扩展实验将B-SHOT、B-RoPS 和BFPFH 的性能进行了对比分析。实验结果表明,B-SHOT 的性能优于其他两种二值化特征描述子,该算法在3D点云关键点匹配上具有更加快速和高效的优点,而且它的内存占用降低到了SHOT 的1/32,同时关键点匹配速度提高了6 倍。然而,B-SHOT 存在选择的简化单元不连续的问题和严重的信息丢失问题。Kechagias-Stamatis 等[19]提出了二进制距离直方图(Binary-Histogram of Distances,B-HoD)特征描述子,在已有的三维特征描述子算法HoD[9]的基础上,通过提出一种二进制简化方法和预处理步骤,使得简化后的内存占用降低到原来的2/9,关键点匹配时间降低到原来的1/75;但是该二进制简化方法仅针对HoD 特征描述子,不是一种通用的简化方法。通用的简化方法除了文献[17-18]中提出的方法之外,2017年Prakhya 等[20]采用格子量化(lattice quantization)的理论提出了一种压缩3D特征描述子的二进制简化方法,并将这种通用的方法应用于SHOT、RoPS和FPFH的简化中产生了三种简化描述子Type-SHOT、Type-RoPS 和Type-FPFH。实验结果表明,Type-SHOT 效果优于Type-RoPS 和Type-FPFH。与B-SHOT[18]相比,Type-SHOT 的识别正确率优于B-SHOT,但是其关键点匹配时间却比B-SHOT 长,而且该方法生成简化特征描述子的时间很长,导致综合物体识别时间不降反升。本文作者团队在前期也针对通用的二进制简化方法进行了一些尝试,于2018 年和2019 年分别提出了两种通用的特征描述子简化方法,并将它们应用于SHOT,给出了新的描述算子CI-SHOT[21]和GRAY-SHOT[22]。实验结果表明,CI-SHOT 和GRAY-SHOT的识别正确率也优于B-SHOT,但是它们的匹配时间略长于B-SHOT。从当前各种算法的比较来看,此类方法目前的瓶颈是:物体识别正确率与特征匹配效率在各种二进制简化算法中存在此消彼长的关系,目前还没有一种简化方法能够实现综合性能最优。

2 本文方法

本文提出一种基于统计方法的自适应二进制简化方法。首先对实际数据集/场景进行统计学分析,计算数据分布的特点并计算标准差;接下来通过实际值与标准差之间的关系进行简化编码;最后将编码后的所有二进制值联结起来形成对关键点邻域信息的二进制表征(二进制特征描述子)。从相关工作中的文献分析可知,文献[18]中提出的二进制简化方法B-SHOT是目前所有二进制通用简化算法中匹配速度最快的。该方法的二进制简化规则如下:

将SHOT 特征描述子的352 维特征向量S(S0,S1,S2,…,S351),以每4 个维的向量为一个简化单元进行二进制简化,在每一个简化单元中,令Ssum=S0+S1+S2+S3,共定义如下五种二值化规则:

规则1 若四个Si的值都为0,则全部编码为0;

规则2 若某一个值Si超过Ssum的90%,则其编码为1,其余为0;

规则3 若两个值的和超过Ssum的90%,则这两个值都编码为1,其余为0;

规则4 若三个值的和超过Ssum的90%,则这三个值都编码为1,其余为0;

规则5 若规则1、2、3、4都不满足,则全部编码为1。

然而,B-SHOT存在如下两个主要问题:

问题一 选择的简化单元不连续。上述简化方法以4 个向量值(4 个维度)为一个基本单元进行简化,但这种处理方法并没有合理的依据。从SHOT 特征描述子的构建原理可知:SHOT 是将关键点某一邻域内的点云通过横向、纵向和径向拆分成的空间网格(拆分成了32 个网格)以及各个网格中通过计算各点云法线与关键点法线夹角的余弦值(拆分成了11 个值)组成,合计构成32×11=352 个维度,通过统计分布在这352 个维度中的点云的数量并归一化处理后得到352 维的统计直方图。B-SHOT 将每4 个维度的向量作为一个简化单元,而11并不能被4整除,所以存在一些跨越空间网格的分组,必然导致信息的不连续。

问题二 严重的信息丢失。上述规则以Ssum的90%为判定标准来进行二进制简化,然而对于适用于规则3和4的情况时,有可能存在严重信息丢失的问题。如:SHOT 特征描述子中某简化单元的四个维度的值为:{S0,S1,S2,S3}={0.053 0,0.004 0,0.003 9,0.0011},由简化的规则可知,本组数据属于“规则3”的情况,二进制简化后对应的值为:{B0,B1,B2,B3}={1,1,0,0},即B0和B1的值都为1,而实际上S0和S1的值相差很大却都被简化成了1,而S1和S2的值基本相等却一个是1,另一个是0。故存在严重信息丢失的问题。

针对以上问题,本文在简化算法中引入简化单元参数L,使不同的特征描述子可根据其特点选择不同的L,以解决简化单元不连续的问题。另一方面,从点云数据的离散性这一基本特性出发,采用标准差的理论设计简化规则,使得在简化过程中编码能够根据简化单元中数据的概率统计情况自适应调整,以解决简化过程中信息严重丢失的问题。

3D 感知的数据是以点云格式存储的,与二维图像数据以规则的像素点存储不同,点云数据的分布最显著的特点是它的无序性和不规则性(即每个点云的分布是离散的)。在统计学中,标准差(Standard Deviation,SD)是用于量化一组数据值的变化或离散程度的度量。对于离散数据的处理,如果能够从标准差理论的角度出发进行点云数据分析和简化算法设计将会是一个较好的切入点,即:对点云数据集合,首先计算该集合中数据的离散程度(计算出其平均值和标准差),再根据标准差所表示的数据的分布概率情况设计简化算法。

所以,在标准差理论的启发下,本文提出了一种基于标准差的特征描述子简化方法,简化模型定义如下:其中:f()是规则函数,用于将特征描述子的实际值转换为二进制值;SDi代表二进制简化的结果;Di表示原始特征描述子中的第i维向量的实际值;L是二进制简化的单位长度;n为标准差的个数,其中,标准差的值由单位长度L内点云数据集合的值计算得到,不同的集合将得到不同的结果(存在自适应性)。所以,本模型可以通过选择不同的L和n来产生不同的简化特征描述子。简化公式如式(2):首先,计算每个单元L中Di的平均值(MEAN)和标准差(σ);然后将所有Di与该简化单元中的MEAN+n×σ的值进行比较,如果Di>MEAN+n×σ,则将Di的值编码为1,否则编码为0。

其中:

简化方法步骤如下:

1)分析目标特征描述子D(D0,D1,D2,…,Dm-1)的特性,并选择二进制简化单元L;

2)计算L的平均值和标准差;

3)选择标准差的个数n,遍历特征描述子Di的每个实数值,根据规则函数将Di编码为SDi;

4)联结每个编码单元形成完整的二进制特征描述子。

经过二值简化后,特征描述子的实际值将转换为仅包含0和1的二进制值。因此,本文将采用汉明距离代替欧氏距离进行特征匹配。长度相等的两个字符串之间的汉明距离是对应符号不同的值的个数。

算法伪代码如下所示:

3 实验与分析

首先通过文献分析选择一种浮点型特征描述子,将本文提出的特征描述子二进制简化方法应用其中,然后选择标准数据集从多个评价指标上对简化后的特征描述子进行验证、评估和对比分析。

3.1 待简化特征描述子、数据集以及评价指标的选择

2017 年Prakhya 等在文献[18]中将他们提出的二进制简化方法应用于实际的Kinect 数据集中进行测试,得到了这样一个结论:在Kinect 数据集中的性能顺序为:SHOT>B-SHOT>FPFH>RoPS>B-RoPS>B-FPFH。即:SHOT 的综合识别和匹配效果优于RoPS和FPFH的同时,B-SHOT的综合识别和匹配效果也优于B-RoPS 和B-FPFH。考虑到本文算法的应用领域将是机器人智能分拣系统,系统采用的是Kinect 进行三维物体识别,并以识别结果为基础生成三维语义地图,作为整个“人-机-环境”交互的推理机制[23]的输入,所以本文对于局部特征描述子的简化将重点考察算法在实际Kinect 数据集中的性能,并最终将算法集成于实际的机器人自动作业系统中,实现机器人的智能推理与自动作业[24]。所以本文选择SHOT 为实验对象,将本文提出的自适应简化方法应用于SHOT 中,并在Kinect数据集Bologna Kinect数据集[25]中进行算法性能评估。

Bologna Kinect 数据集是Bologna 大学Tombari 等创建的Kinect 数据集,数据集里每个模型的点云图都是通过不同的视角对实际的目标物体进行扫描得到的;对于一个场景中的多个物体,位置摆放都是随机的,这样就构成了多个不同的场景,而且每个场景的3D转换信息都包含其中。此数据集一共包含6个模型、46个场景。

本文采用变换矩阵差(Tdiff)来判定在不同参数设定下简化描述子的性能的评估;采用精确召回曲线(Precision-Recall Curve,PRC)[21]来判定算法的整体性能,通过计算关键点匹配的平均耗时来分析关键点匹配的耗时情况;通过对简化前后特征描述子的内存占用比的比较展示简化前后内存占用的情况。

3.2 实验设定与参数确定

1)计算机配置:所有实验都在同一台计算机上完成,参数:Intel Core i7 CPU 7700K@ 4.20 GHz×832 GB RAM 和UBUNTU 16.04。

2)实验方法:本小节的实验通过三个步骤完成:a)提取关键点;b)对关键点周围的信息进行描述;c)找到场景和模型之间的匹配点和三维转换矩阵(Translate and Rotate,TR)。在实验参数设置中,对于关键点提取的半径(Rkp)和特征描述半径(Rfd)设置为Rkp=0.03 m,Rfd=0.10 m,实验过程中,Rkp和Rfd均保持不变。

3)平均值和标准差计算:根据第2 章中对本文算法的描述,在进行简化之前,需要对目标数据集/场景的点云信息用待简化的描述子表征后统计其平均值和计算标准差。本文选择的是Bologna Kinect 数据集,对其按照等式(2)和(3)计算其平均值和标准差。

4)简化单元L、标准差个数n的选择与评估:针对SHOT特征描述子,由于SHOT 的352 维向量是由空间的32 个网格(spatial grid)以及各个网格中的11 个bin 组成的[6],所以考虑以每个空间网格为单位(即将每11 维设定为一个简化单元);或者直接以整体的352维为简化单元对SHOT进行简化,这样可以满足信息的连续性。对于标准差的个数n,针对点云数据的离散程度,计算数据的方差,进而对标准差的个数进行测试,最终选择0.5、1 和2 三种取值分别进行测试,以验证不同参数组合验证简化效果。

对于不同参数的组合,本文以参数变换矩阵差(Tdiff)为指标来进行简化描述子的性能的评估。对于Tdiff表达的是实际描述子表征得到的旋转矩阵()和数据集提供的基准(ground truth)旋转矩阵()之间的差异,值应该是越小越好,计算公式如式(5)。

测试结果如表2 显示,L=352,n=1 时,本文提出的简化方法的Tdiff值与SHOT最相近,因此,本文将STD-SHOT(352,1)命名为SD-SHOT,而且在后续的实验中将SD-SHOT 与其他简化描述子进行对比分析。

表2 不同参数组合的简化描述子Tdiff对比Tab.2 Comparison of simplified descriptor Tdiff of different parameter combinations

3.3 对比分析实验

本节将本文提出的SD-SHOT 与B-SHOT、GRAY-SHOT、CI-SHOT以及原始未简化描述子SHOT进行性能上的比较,比较的指标包含PRC、关键点特征匹配的耗时以及内存占用率。

在计算不同简化描述子的precision 和recall 时,通过改变参数τ的取值来验证不同算法的准确度。计算过程中:当τ>0.5 时,数据不再发生变化,因此本文设置τ的区间为0~0.5,步长为0.05,共10 组数据进行测试,其余参数如3.2 节所示保持不变。实验结果如图2 显示,SD-SHOT 的整体识别效果均优于CI-SHOT、GRAY-SHOT 和B-SHOT,也更加接近原始未简化的描述子SHOT。需要注意的是在τ的值取值为0.05、0.10以及0.15时,本文删除了存在一些明显错误匹配点并对NN-Matching 和RANSAC 后匹配点的数量为0 的点进行了处理(1-precision 和recall 的定义中分母不能为零,所以本文将这些点的1-precision和recall的值统一设置为0)。

图2 不同简化描述子的PRCFig.2 PRC of different simplified descriptors

针对特征点匹配的平均耗时及内存占用率的比较,如表3 和表4 所示。平均耗时是从特征描述子的简化开始直到RANSAC 结束,其中每个步骤的平均计算时间是来自数据集中的46 个“场景-模型”对的平均时间,所有参数中除简化方案外均保持一致。从表3 可知,本文提出的SD-SHOT 时间减少率优于所有的简化特征描述子,也优于FPFH 局部特征描述子。这里没有统计SHOT 描述子、FPFH 描述子和SD-SHOT以及其他二进制简化描述子的建立时间,仅比较描述子特征简化时间和实际匹配时间总和。从表3 中可以看出,对于SHOT原始描述符,在使用二进制进行简化后匹配时间都有大幅度的降低。对于内存占用率的比较,SD-SHOT 采用一位二进制表示每一维SHOT 特征描述子的浮点值,所以采用了352位表示352维SHOT 浮点值向量,由于SHOT 是352维浮点数,因此它需要1 408 字节(11 264 位)的二进制数据。从表4 可知,表现最优的特征描述子是SD-SHOT 和B-SHOT,它们的内存占用率降低到了原来SHOT的3.13%。

表3 关键点特征匹配的平均耗时比较Tab.3 Average time consumption comparison of key point feature matching

表4 特征描述子占用内存比较Tab.4 Comparison of memory consumption of different feature descriptors

3.4 实际机器人自动作业系统测试

在本节中将所提出的SD-SHOT 应用于实际的机器人物体分拣系统中,验证自适应二进制简化描述子SD-SHOT 的有效性。实验中,设置分别使用未进行简化的描述子SHOT、固定比率二进制简化描述子B-SHOT 算法以及自适应简化描述子SD-SHOT 算法对实际采集的数据进行对比测试,验证二进制简化算法的效果以及意义。本文的实验平台和设计的物体分拣系统的系统结构分别如图3和图4所示。

图3 物体分拣系统实验平台Fig.3 Experimental platform of object sorting system

图4 物体分拣系统的系统架构Fig.4 System architecture of object sorting system

物体分拣系统主要有三个关键功能模块,分别是:三维视觉感知模块、推理与交互模块和自动编程与执行模块。三维视觉感知模块为整个系统提供高质量的环境语义信息;推理与交互模块将人机交互获得的规则与实时三维视觉感知接收到的实时语义图相结合,生成意图;自动编程与执行模块将具有语义信息的意图转换为可执行的机器人指令,控制机械手完成目标动作。在本项目的系统中,推理与交互模块是一种改进的CBR(Case-Based Reasoning)机制,在笔者之前发表的论文[23]中将其称为“human-robot-environment”交互机制;而关于自动编程和执行模块,则在另一篇论文[24]中做了详细的介绍。

本小节的重点是验证SD-SHOT 特征描述子在三维视觉感知模块中的有效性,因此本文假设用户是一次性正确地给出了一个完整的意图。评价指标为机器人能否根据三维视觉感知获得的信息实现正确的物体分拣,即正确识别物体的分类以及物体的位姿。

实验选取了5 个物体模型来验证SHOT 特征描述子和二进制简化特征描述子对物体的轮廓平滑性、对称性以及规则性欠佳的物体的识别效果。物体模型和场景由Kinect 采集,具体物体分类如下:

物体类型A:轮廓对称物体——苹果。

物体类型B:轮廓存在起伏变化的对称物体——圆椒。

物体类型C:轮廓存在起伏变化的非对称物体——杨桃。

物体类型D:轮廓平滑的非对称物体——杯子(带把手)。

物体类型E:规则性欠佳的物体——香蕉

实际验证物体的RGB图和点云图如图5所示。

图5 实际实验图Fig.5 Images in actual experiment

针对所选择的每一种物体,实验通过人为随机改变物体位置和姿态采集25个模型场景对,采集5组数据,之后每组数据测试10 次,合计测试1 250 次。统计机器人分拣平台是否可以正确地识别并抓取物体,评价指标为分拣的平均正确率,结果如表5所示。从表5可以看出:对于二进制简化的特征描述子,本文提出的SD-SHOT 在当前五个种类的物体中的识别正确率均优于B-SHOT;而且相对于简化前的特征描述子SHOT,SD-SHOT在处理除了“轮廓存在起伏变化的对称物体”以外都具有相当或者略好的识别正确率。这是因为SD-SHOT采用了统计学中标准差的理论,在二进制量化时是依照数据的分布情况而自适应地二值简化,在这个过程中,对于特征明显的数据(数据值大于均值与一个标准差的和)进行了放大使得数据的显著性得到了提升,从而提高了模型与场景之间物体的匹配正确率,最终提高了分拣平台分拣的正确率,验证了本文提出的简化方法的有效性。

表5 实际作业平台物体分拣物体的平均正确率比较Tab.5 Average accuracy comparison of sorting objects on actual operating platform

4 结语

本文提出了一种基于标准差的自适应二进制简化方法,将它应用于SHOT 特征描述子的简化中,并在Bologna Kinect数据集和实际机器人物体分拣平台对算法进行了评估。首先,通过改变本文提出的简化方法中的两个可变参数:简化单元L和标准差的个数n产生不同的简化特征描述子,并通过评价指标Tdiff选择最优的参数组合。实验证明:当L=352,n=1 时,简化特征描述子的性能最好,将其命名为SD-SHOT。此外,基于PRC、关键点特征匹配的平均耗时以及特征描述子占用内存三个指标,将本文提出的SD-SHOT 与B-SHOT、GRAYSHOT、CI-SHOT以及SHOT进行性能上的比较,结果表明,SDSHOT 在标准数据集上综合性能优于B-SHOT、GRAY-SHOT和CI-SHOT;而且,特征点匹配的平均耗时和特征描述子占用内存也最少(最优)。此外,本文还基于SD-SHOT 构建了一个机器人物体分拣系统,实际系统验证表明采用本文方法简化后的特征描述子可以在实际场景中生成三维语义地图信息,能够满足实际实验验证阶段的作业需求。下一步会将本文的方法应用于更多的特征描述子的简化中,并且在其他数据集中进行更广泛的测试;同时,将本文提出的方法推广于更多的实际应用场景。

猜你喜欢
二进制标准差关键点
论建筑工程管理关键点
肉兔育肥抓好七个关键点
订正
有用的二进制
用Scratch把十进制转为二进制
有趣的进度
过程能力指数法在改进中小学教学质量中的应用
利用定义法破解关键点
机械能守恒定律应用的关键点
方差中亟待澄清的两个错误观点