CN114783068A - 姿态识别方法、装置、电子装置和存储介质 - Google Patents

姿态识别方法、装置、电子装置和存储介质 Download PDF

Info

Publication number
CN114783068A
CN114783068A CN202210678576.8A CN202210678576A CN114783068A CN 114783068 A CN114783068 A CN 114783068A CN 202210678576 A CN202210678576 A CN 202210678576A CN 114783068 A CN114783068 A CN 114783068A
Authority
CN
China
Prior art keywords
point cloud
point
target
normal vector
preset
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202210678576.8A
Other languages
English (en)
Other versions
CN114783068B (zh
Inventor
曾澄
胡亘谦
杨超
黄雪峰
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Xinrun Fulian Digital Technology Co Ltd
Original Assignee
Shenzhen Xinrun Fulian Digital Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Shenzhen Xinrun Fulian Digital Technology Co Ltd filed Critical Shenzhen Xinrun Fulian Digital Technology Co Ltd
Priority to CN202210678576.8A priority Critical patent/CN114783068B/zh
Publication of CN114783068A publication Critical patent/CN114783068A/zh
Application granted granted Critical
Publication of CN114783068B publication Critical patent/CN114783068B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/213Feature extraction, e.g. by transforming the feature space; Summarisation; Mappings, e.g. subspace methods
    • G06F18/2135Feature extraction, e.g. by transforming the feature space; Summarisation; Mappings, e.g. subspace methods based on approximation criteria, e.g. principal component analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/22Matching criteria, e.g. proximity measures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/11Region-based segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/60Analysis of geometric attributes
    • G06T7/66Analysis of geometric attributes of image moments or centre of gravity
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10028Range image; Depth image; 3D point clouds

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Data Mining & Analysis (AREA)
  • General Physics & Mathematics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Evolutionary Biology (AREA)
  • Evolutionary Computation (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • General Engineering & Computer Science (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Artificial Intelligence (AREA)
  • Geometry (AREA)
  • Image Analysis (AREA)

Abstract

本申请涉及一种姿态识别方法、装置、电子装置和存储介质,该方法包括:获取预设场景内待识别目标的第一表面点云,分别确定第一表面点云中每个点所对应的法向量和FPFH描述子;在第一表面点云中,查找出每个点对应的多个邻域点,基于法向量夹角和FPFH描述子的相似度进行区域生长,得到第一表面点云对应的多个第一点云分区;根据第一点云分区对应的最小包围多边形图像与预设模板轮廓图的相似度,在多个第一点云分区中检测目标点云分区,确定目标点云分区所对应的姿态参数;计算姿态参数与零点姿态参数对应的偏移参数,得到包括偏移参数的姿态识别结果。通过本申请,解决机器视觉对不规则形状的物品的姿态识别难度大,姿态识别效果差的问题。

Description

姿态识别方法、装置、电子装置和存储介质
技术领域
本申请涉及目标姿态识别技术领域,特别是涉及姿态识别方法、装置、电子装置和存储介质。
背景技术
相关技术中,越来越多生产厂商在生产加工过程中使用机器视觉,特别是机器视觉配合机械臂实现无人化的加工生成,籍以提高企业的生产效率、减少人工成本。
相关技术中,机器视觉搭配机械臂常用于物品或目标的无序抓取,但相关技术中的无序抓取是基于标准CAD图纸完成的目标抓取,因此,对于形状具有一定随机性的物品,例如:水果、土豆等不同个体间形状不统一的物品体,通过采用特征夹具辅助,以解决机器视觉对不规则物品难以有效识别并完成无序抓取的问题,但特制夹具的可适用性受限,无法满足不同形状及不同种类的夹取需求;同时,相关技术中,因不规则形状的物品的外观随机性大,使的机器视觉对不规则形状的物品的姿态识别难度大,姿态识别效果差,无法有效引导机械臂抓取不规则形状的物品。
目前针对相关技术中因不规则形状的物品的外观随机性大,使的机器视觉对不规则形状的物品的姿态识别难度大,姿态识别效果差,尚未提出有效的解决方案。
发明内容
本申请实施例提供了一种姿态识别方法、装置、电子装置和存储介质,以至少解决相关技术中因不规则形状的物品的外观随机性大,使的机器视觉对不规则形状的物品的姿态识别难度大,姿态识别效果差的问题。
第一方面,本申请实施例提供了一种姿态识别方法,包括:获取预设场景内待识别目标的第一表面点云,并分别确定所述第一表面点云中每个点所对应的法向量和三维快速点特征直方图FPFH描述子;在所述第一表面点云中,查找出每个所述点对应的多个邻域点,基于法向量夹角和所述FPFH描述子的相似度进行区域生长,得到所述第一表面点云对应的多个第一点云分区,其中,所述法向量夹角为所述邻域点的法向量和所述点的法向量的夹角;根据所述第一点云分区对应的最小包围多边形图像与预设模板轮廓图的相似度,在多个所述第一点云分区中检测目标点云分区,并确定所述目标点云分区所对应的姿态参数,其中,所述预设模板轮廓图是根据预设目标对应的第二表面点云所生成的,所述姿态参数用于表征所述目标点云分区的姿态;计算所述姿态参数与零点姿态参数对应的偏移参数,得到包括所述偏移参数的姿态识别结果,其中,所述零点姿态参数用于表征所述第二表面点云在所述预设目标处于预设的零点姿态状态下的姿态。
第二方面,本申请实施例提供了一种姿态识别装置,包括:
获取模块,用于获取预设场景内待识别目标的第一表面点云,并分别确定所述第一表面点云中每个点所对应的法向量和三维快速点特征直方图FPFH描述子;
分区模块,用于在所述第一表面点云中,查找出每个所述点对应的多个邻域点,基于法向量夹角和所述FPFH描述子的相似度进行区域生长,得到所述第一表面点云对应的多个第一点云分区,其中,所述法向量夹角为所述邻域点的法向量和所述点的法向量的夹角;
识别模块,用于根据所述第一点云分区对应的最小包围多边形图像与预设模板轮廓图的相似度,在多个所述第一点云分区中检测目标点云分区,并确定所述目标点云分区所对应的姿态参数,其中,所述预设模板轮廓图是根据预设目标对应的第二表面点云所生成的,所述姿态参数用于表征所述目标点云分区的姿态;
处理模块,用于计算所述姿态参数与零点姿态参数对应的偏移参数,得到包括所述偏移参数的姿态识别结果,其中,所述零点姿态参数用于表征所述第二表面点云在所述预设目标处于预设的零点姿态状态下的姿态。
第三方面,本申请实施例提供了一种电子装置,包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如第一方面所述的姿态识别方法。
第四方面,本申请实施例提供了一种存储介质,其上存储有计算机程序,该程序被处理器执行时实现如上述第一方面所述的姿态识别方法。
相比于相关技术,本申请实施例提供了一种姿态识别方法、装置、电子装置和存储介质,通过获取预设场景内待识别目标的第一表面点云,并分别确定所述第一表面点云中每个点所对应的法向量和三维快速点特征直方图FPFH描述子;在所述第一表面点云中,查找出每个所述点对应的多个邻域点,基于法向量夹角和所述FPFH描述子的相似度进行区域生长,得到所述第一表面点云对应的多个第一点云分区;根据所述第一点云分区对应的最小包围多边形图像与预设模板轮廓图的相似度,在多个所述第一点云分区中检测目标点云分区,并确定所述目标点云分区所对应的姿态参数;计算所述姿态参数与零点姿态参数对应的偏移参数,得到包括所述偏移参数的姿态识别结果,解决了相关技术中因不规则形状的物品的外观随机性大,使的机器视觉对不规则形状的物品的姿态识别难度大,姿态识别效果差的问题,实现了通过采集对应场景中的不规则形状物品的点云,并基于相似点云识别出不规则形状物品的姿态,高效准确的完成姿态识别,扩展姿态识别和机械臂无序抓取的应用范围。
本申请的一个或多个实施例的细节在以下附图和描述中提出,以使本申请的其他特征、目的和优点更加简明易懂。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1是根据本申请实施例的姿态识别方法的终端的硬件结构框图;
图2是根据本申请实施例的姿态识别方法的流程图;
图3是根据本申请实施例的姿态识别装置的结构框图。
具体实施方式
为更清楚地理解本申请的目的、技术方案和优点,下面结合附图和实施例,对本申请进行了描述和说明。
除另作定义外,本申请所涉及的技术术语或者科学术语应具有本申请所属技术领域具备一般技能的人所理解的一般含义。在本申请中的“一”、“一个”、“一种”、“该”、“这些”等类似的词并不表示数量上的限制,它们可以是单数或者复数。在本申请中所涉及的术语“包括”、“包含”、“具有”及其任何变体,其目的是涵盖不排他的包含;例如,包含一系列步骤或模块(单元)的过程、方法和系统、产品或设备并未限定于列出的步骤或模块(单元),而可包括未列出的步骤或模块(单元),或者可包括这些过程、方法、产品或设备固有的其他步骤或模块(单元)。在本申请中所涉及的“连接”、“相连”、“耦接”等类似的词语并不限定于物理的或机械连接,而可以包括电气连接,无论是直接连接还是间接连接。在本申请中所涉及的“多个”是指两个或两个以上。“和/或”描述关联对象的关联关系,表示可以存在三种关系,例如,“A和/或B”可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。通常情况下,字符“/”表示前后关联的对象是一种“或”的关系。在本申请中所涉及的术语“第一”、“第二”、“第三”等,只是对相似对象进行区分,并不代表针对对象的特定排序。
本实施例提供的方法实施例可以在终端、计算机或者类似的运算装置中执行。以运行在终端上为例,图1是根据本申请实施例的姿态识别方法的终端的硬件结构框图。如图1所示,终端10可以包括一个或多个(图1中仅示出一个)处理器102(处理器102可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置)和用于存储数据的存储器104,可选地,上述终端还可以包括用于通信功能的传输设备106以及输入输出设备108。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对上述终端的结构造成限定。例如,终端10还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。
存储器104可用于存储计算机程序,例如,应用软件的软件程序以及模块,如本发明实施例中的工控系统登录管控方法对应的计算机程序,处理器102通过运行存储在存储器104内的计算机程序,从而执行各种功能应用以及数据处理,即实现上述的方法。存储器104可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器104可进一步包括相对于处理器102远程设置的存储器,这些远程存储器可以通过网络连接至终端10。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
传输设备106用于经由一个网络接收或者发送数据。上述的网络具体实例可包括终端10的通信供应商提供的无线网络。在一个实例中,传输设备106包括一个网络适配器(Network Interface Controller,简称为NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输设备106可以为射频(Radio Frequency,简称为RF)模块,其用于通过无线方式与互联网进行通讯。
本实施例提供了一种运行于上述终端的姿态识别方法,图2是根据本申请实施例的姿态识别方法的流程图,如图2所示,该流程包括如下步骤:
步骤S201,获取预设场景内待识别目标的第一表面点云,并分别确定第一表面点云中每个点所对应的法向量和三维快速点特征直方图FPFH描述子。
在本实施例中,待识别目标为具有不规则形状且个体外观不具一致性的物品,例如:水果;在本实施例中,第一表面点云是通过三维点云采集设备(例如:结构光扫描仪、线激光扫描仪、双目视觉)扫描预设场景内的目标的上表面生成的。
在本实施例中,在获取第一表面点云后,将第一表面点云构建为K-D树,籍以实现能对第一表面点云进行快速查找点(包括点的序号、三维坐标)、点对应的邻域(预设数目的最邻近点组成的点集);需要说明的是,K-D树,k-dimensional树的简称,是一种分割k维数据空间的数据结构,也是一种类似于二叉树的搜索树,主要应用于多维空间关键数据的搜索(例如:范围搜索和最近邻搜索)。
在本实施例中,通过建立的K-D树,对第一表面点云中的每个点快速查找其最邻近的K个点(K的值可以为10-20)组成的K邻域,然后基于每个点和每个点对应K邻域,采用PCA(Principal Component Analysis,主成分分析)算法进行处理,从而对每个点进行该点的法向量计算,需要理解的,本实施例中采用PCA算法计算点的法向量,可以理解的是,可以根据实际应用场景以及需要选择合适的其它算法,在此不进行限定,同时,采用PCA算法计算点云中点的法向量,应当理解且需要理解是习知的技术。
在本实施例中,通过建立的K-D树,对第一表面点云中的每个点快速查找其最邻近的K个点(K的值可以为10-20)组成的K邻域,然后基于K邻域中的所有点完成对该点的FPFH(Fast Point Feature Histograms,快速点特征直方图)描述子的计算;需要理解的是,在本实施例中,计算第一表面点云中的每个点的FPFH描述子可以采用习知的任一种FPFH描述子计算方法完成,例如:对于第一表面点云中的每一个点,计算这个点和它的邻域点之间的一个元组,得到该点的SPFH(Simple Point Feature Histograms,简化点特征直方图)值;然后重新确定每个点的K邻域,然后根据K邻域中的每个邻域点的SPFH值确定该点的FPFH描述子。
步骤S202,在第一表面点云中,查找出每个点对应的多个邻域点,基于法向量夹角和FPFH描述子的相似度进行区域生长,得到第一表面点云对应的多个第一点云分区,其中,法向量夹角为邻域点的法向量和点的法向量的夹角。
在本实施例中,在对第一表面点云中所有点的法向量和FPFH描述子进行计算之后,还需要对分散的所有点进行分区,将与每个点有相似属性的邻域点合并到同一点云分区,也就是同一子点云区域。
在本实施例中,基于已建立的K-D树,快速查找出作为种子点的每个点对应的一个邻域,每一个邻域包括设定数目(例如:5个)的邻域点,然后基于作为种子点的点与该点的邻域中的所有邻域点依次进行法向量夹角和FPFH描述子的相似度的判断,籍以从每个种子点的邻域点查找出满足条件的邻域点,并归类于同一点云分区,具体地,先判断种子点与邻域中所有邻域点的法向量夹角是否小于预设夹角阈值,将法向量夹角小于预设夹角阈值的邻域点进行下一步的判断,也就是将满足法向量夹角条件的邻域点与种子点进行FPFH描述子相似度的判断,在FPFH描述子的相似度小于设定相似度阈值时,则该邻域点是与种子点属于同一点云分区的点,并且,此后以满足法向量夹角和FPFH描述子的相似度条件的邻域点作为种子点,重复进行上述的区域生长的过程,直至没有满足若对应的邻域点不满足要求重复执行上述的判断,直至查找不到满足法向量夹角和FPFH描述子的相似度条件的点,则对应完成一个第一点云分区的区域生长,然后,以未进行区域生成的点作为种子点进行另一个第一点云分区的区域生长,直至将第一表面点云中所有点区域生长至对应的一个第一点云分区。
需要说明的是,第一表面点云中所有的点均能够归类于对应的第一点云分区,也就是第一表面点云中不存在无效的点;而在以某个种子点进行区域生长的过程,判断出的不满足法向量夹角或FPFH描述子的相似度条件的邻域点,并非表示该邻域点是无效的点,只是表示该邻域点不属于该种子点对应的第一点云分区,该邻域点可以在后续的区域生长中分类至其他的第一点云分区去。
步骤S203,根据第一点云分区对应的最小包围多边形图像与预设模板轮廓图的相似度,在多个第一点云分区中检测目标点云分区,并确定目标点云分区所对应的姿态参数,其中,预设模板轮廓图是根据预设目标对应的第二表面点云所生成的,姿态参数用于表征目标点云分区的姿态。
在本实施例中,在将第一表面点云分类为多个第一点云分区之后,需要从多个第一点云分区中检测出能表征第一表面点云的至少一个点云分区,也就是检测出目标点云分区,籍以通过目标点云分区计算出目标当前的姿态。
在本实施例中,从多个第一点云分区中检测出目标点云分区是基于每个第一点云分区所对应的最小包围多边形图像与预设模板轮廓图的相似度筛选出的;在本实施例中,最小包围多边形图像和预设模板轮廓图均是表征对应目标的形状的一种3D包围盒,同时,预设模板轮廓图是对选定的作为标定的物品的表面点云的点云数据进行图像转换处理(例如:将点云数据转换为深度图,再将深度图进行二值化处理),得到转化后的图像,然后计算该转化后的图像的最小包围多边形图像,从而得到该预设模板轮廓图。
在本实施例中,检测出目标点云分区之后,采用PCS算法计算该目标点云分区整体对应的法向量,也就是对应的点云面法向量;同时,还采用现有中的PCL(Point CloudLibrary,点云库)函数计算目标点云分区的质心,并将质心的坐标数据和点云面法向量作为目标点云分区所对应的姿态参数。
步骤S204,计算姿态参数与零点姿态参数对应的偏移参数,得到包括偏移参数的姿态识别结果,其中,零点姿态参数用于表征第二表面点云在预设目标处于预设的零点姿态状态下的姿态。
在本实施例中,零点姿态参数是在以预设目标为对象,进行视教操作处理以获得进行区域生长所需的相关阈值和预设模板轮廓图的过程中,得到的相关参数,具体地,零点姿态参数包括以预设目标的当前姿态充当的标准零点姿态、根据预设目标处于预设的零点姿态状态下对应的第二表面点云计算的第二点云面法向量及第二表面点云对应的质心。
在本实施例中,采用计算姿态参数与零点姿态参数的偏移(包括旋转、平移),从而以零点姿态参数为标准,确定对应目标当前的姿态,在本实施例中,对应目标当前的姿态为6D姿态,该6D姿态具体包括相对零点姿态所进行的三轴旋转以及在三轴坐标方向上进行的平移,也就是通过预设模板设定为零点时对应的姿态加上偏移参数(6D姿态),以描述待识别目标当前姿态,例如,预设目标在视教阶段对应的零点姿态参数为A0,而当前待姿态识别的不规则物品的姿态参数为A,通过采用A=mA0的方式表示,A0是标准的零点姿态参数,A是标准模板无关联的姿态参数,也就是需要将A相对A0进行量化,从而将A对应的参数转换至零点姿态参数对应的世界坐标系中去,从而能使的机械臂能基于零点姿态参数获取当前的姿态参数,而将A相对A0进行量化,只需要计算出A相对A0的偏移m,则再知晓m和A0的情况下,A对应在零点姿态坐标系下的姿态参数则可被机械臂所获知,进而能基于将A量化后的姿态参数,引导机械臂对不规则物品进行无序抓取。
通过上述步骤S201至步骤S204,采用获取预设场景内待识别目标的第一表面点云,并分别确定第一表面点云中每个点所对应的法向量和三维快速点特征直方图FPFH描述子;在第一表面点云中,查找出每个点对应的多个邻域点,基于法向量夹角和FPFH描述子的相似度进行区域生长,得到第一表面点云对应的多个第一点云分区;根据第一点云分区对应的最小包围多边形图像与预设模板轮廓图的相似度,在多个第一点云分区中检测目标点云分区,并确定目标点云分区所对应的姿态参数;计算姿态参数与零点姿态参数对应的偏移参数,得到包括偏移参数的姿态识别结果,解决了相关技术中因不规则形状的物品的外观随机性大,使的机器视觉对不规则形状的物品的姿态识别难度大,姿态识别效果差的问题,实现了通过采集对应场景中的不规则形状物品的点云,并基于相似点云识别出不规则形状物品的姿态,高效准确的完成姿态识别,扩展姿态识别和机械臂无序抓取的应用范围。
需要说明的是,在本实施例中,在进行正常的不规则形状物体的姿态识别之前,需要采用与不规则形状物体属于同种类的物品进行零点姿态参数的识别,也就是通过在选定的预设标准物品进行相关参数的识别,例如:第二表面点云的采集、第二表面点云中各点的法向量、FPFH描述子、第二表面点云对应的最小包围多边形图像、第二表面点云对应的点云面法向量、第二表面点云对应的质心坐标数据;在完成上述相关参数的识别、计算之后,则将上述识别或计算出的参数作为正常识别过程中的阈值、轮廓图像模板、零点等,也就是将预设目标对应的世界坐标系设定为标准世界坐标系,机械臂以基于该标准世界坐标系进行校准,同时,基于该标准世界坐标系为正常识别的过程提供基准,以使的识别出的参数能量化为标准世界坐标系中对应的姿态参数,机械臂能基于对应的姿态参数完成对不规则形状的物品的无序抓取。
在其中一些实施例中,步骤S201中的确定第一表面点云中每个点所对应的法向量和三维快速点特征直方图FPFH描述子,通过如下步骤实现:
步骤1、将第一表面点云,构建为预设类型的多维搜索树。
在本实施例中,多维搜索树包括但不限于K-D树。
步骤2、在多维搜索树中,查找出每个点对应的K邻域,其中,K邻域包括以每个点为样本点所查找的预设个数的邻域点。
在本实施例中,基于创建的多维搜索树,以每个点为查询点,快速查找K个最邻近点,也就是查找预设个数的邻域点,在本实施例中,K值设定为10-20。本申请实施例中采用K-D树进行快速的查找K邻域;需要理解的是,可以根据实际应用场景以及需要选择合适的其它方式,完成K邻域查找,在此不进行限定。
步骤3、利用主成分分析PCA算法对每个点及对应的K邻域中的所有邻域点进行处理,计算得到每个点对应的法向量。
在本实施例中,以每个点为查询点,采用PCA算法,基于查询点和该点对应的K邻域中所有邻域点完成对查询点的法向量的计算。需要理解,本实施例中采用PCA算法进行法向量计算,在其他实际应用场景中,还可以根据需要选择其他现有中相关算法完成法向量的计算。
步骤4、基于K邻域中所有邻域点的简化点特征直方图SPFH值,确定与K邻域对应的点的FPFH描述子,其中,SPFH值是根据邻域点及其对应的邻域点之间的一个元组计算得到的。
在本实施例中,查询点的FPFH值是先计算查询点和它的邻域点之间的一个元组,得到该查询点的SPFH值;然后重新确定每个查询点的K邻域,然后根据K邻域中的每个邻域点的SPFH值确定该查询点的FPFH描述子。
在其中一些可选实施方式中,采用如下公式计算FPFH描述子:
Figure 58959DEST_PATH_IMAGE001
其中,Pd表示查询点,Pk表示K领域中的邻域点,权重
Figure 910154DEST_PATH_IMAGE002
表示查询点Pd和其邻域点Pk的距离,SPFH(Pd)表示查询点Pd的简化点特征直方图值,SPFH(Pk)表示邻域点Pk的简化点特征直方图值。
通过上述步骤中的将第一表面点云,构建为预设类型的多维搜索树;在多维搜索树中,查找出每个点对应的K邻域,其中,K邻域包括以每个点为样本点所查找的预设个数的邻域点;利用主成分分析PCA算法对每个点及对应的K邻域中的所有邻域点进行处理,计算得到每个点对应的法向量;基于K邻域中所有邻域点的简化点特征直方图SPFH值,确定与K邻域对应的点的FPFH描述子,SPFH值是根据邻域点及其对应的邻域点之间的一个元组计算得到的,实现了基于预设的分析算法确定第一表面点云中的所有点的法向量和FPFH描述子的计算,为实现表面点云进行区域生长提供数据准备,籍以提高姿态识别的效率。
在其中一些实施例中,步骤S202中的在所述第一表面点云中,查找出每个所述点对应的多个邻域点,基于法向量夹角和所述FPFH描述子的相似度进行区域生长,得到所述第一表面点云对应的多个第一点云分区,通过如下步骤实现:
步骤1,判断点对应的多个法向量夹角是否小于预设夹角阈值。
在本实施例中,会遍历所有的点,并依次计算每个点与该点对应的邻域中的每个邻域点计算法向量夹角,并判断对应的法向量夹角是否小于预设夹角阈值,如果小于预设夹角阈值,则对应的邻域点为对应要查找的点;在本实施例中,预设夹角阈值采用的是第二表面点云中所有点的对应的法向量夹角的均值,而每个点对应的法向量夹角是该点的法向量与其邻域中的邻域点的法向量的夹角;在其中一些可选实施方式中,采用如下公式计算法向量夹角阈值:
Figure DEST_PATH_IMAGE003
其中,α为法向量夹角阈值,
Figure 134462DEST_PATH_IMAGE004
对应为第二表面点云去除离群点得到的表面点云,
Figure DEST_PATH_IMAGE005
表示在去除离群点得到的表面点云中的点的数目,
Figure 133642DEST_PATH_IMAGE006
表示某点的法向量与该点的对应的邻域中的邻域点的法向量的夹角,
Figure 417993DEST_PATH_IMAGE007
表示某点与该点对应的邻域中所有邻域点的法向量的夹角的平均值。
在本实施例中,通过采用作为基准的预设目标的表面点云的点及其邻域中的邻域点的法向量夹角的均值,可以使筛选出的点及进行区域生长的第一点云分区与待姿态识别的不规则形状的物品相匹配,可以理解,该法向量夹角阈值还可以根据实际场景及需求进行设定。
步骤2、在判断到法向量夹角小于预设夹角阈值的情况下,将法向量夹角小于预设夹角阈值的邻域点作为候选邻域点。
步骤3、计算点的FPFH描述子与候选邻域点的FPFH描述子的相似度,并判断相似度是否小于预设相似度阈值。
在本实施例中,预设相似度阈值采用的是第二表面点云中所有点的对应的FPFH描述子相似度的均值,而每个点对应的FPFH描述子相似度是该点的FPFH描述子与其邻域中的邻域点的FPFH描述子的相似度。在其中一些可选实施方式中,采用如下公式计算预设相似度阈值:
Figure 830520DEST_PATH_IMAGE008
其中,r为相似度阈值,
Figure 858519DEST_PATH_IMAGE004
对应为第二表面点云去除离群点得到的表面点云,
Figure 977785DEST_PATH_IMAGE009
表示在去除离群点得到的表面点云中的点的数目,w表示FPFH描述子所具有的元素的数目,
Figure 167457DEST_PATH_IMAGE010
表示点Si的FPFH描述子的第m个元素,
Figure 67280DEST_PATH_IMAGE011
表示邻域点Sj的FPFH描述子的第m个元素,
Figure 633391DEST_PATH_IMAGE012
表示Si的FPFH描述子与其邻域点Sj的FPFH描述子的相似度,
Figure 872742DEST_PATH_IMAGE013
表示某点与该点对应的邻域中所有邻域点的FPFH描述子的相似度的平均值。
在本实施例中,通过采用作为基准的预设目标的表面点云的点及其邻域中的邻域点的FPFH描述子相似度的均值,可以使筛选出的点及进行区域生长的第一点云分区与待姿态识别的不规则形状的物品相匹配,可以理解,该预设相似度阈值还可以根据实际场景及需求进行设定。
在其中一些可选实施方式中,计算点的FPFH描述子与候选邻域点的FPFH描述子的相似度,采用如下步骤实现:
按如下公式计算相似度:
Figure 233317DEST_PATH_IMAGE014
其中,
Figure 620436DEST_PATH_IMAGE015
表示点Si与候选邻域点Sjn的FPFH描述子的相似度,w表示FPFH描述子所具有的元素的数目,
Figure 990237DEST_PATH_IMAGE016
表示点Si的FPFH描述子的第m个元素,
Figure 818516DEST_PATH_IMAGE017
表示候选邻域点Sjn的FPFH描述子的第m个元素。
在本实施例中,FPFH描述子具有33个元素,
Figure 615570DEST_PATH_IMAGE018
的值越小,表示两个点的FPFH描述子越相似。
步骤4、在判断到相似度小于预设相似度阈值的情况下,将相似度小于预设相似度阈值的候选邻域点作为目标点,并将点和目标点归类于点对应的第一点云分区。
在本实施例中,满足FPFH描述子的相似度的条件的点为对应的目标点,并将目标点和作为种子点的点归类于同一个第一点云分区,此后,以目标点作为种子点进行区域生长,直至没有满足条件的目标点,则完成该第一点云分区的区域生长,然后跳转至上述步骤1并执行下一个第一点云分区所对应的所有点的区域生长,也就是将属于该下一个第一点云分区内的点根据法向量夹角和FPFH描述子的相似度筛选出来,并归并成该下一个第一点云分区。
通过上述步骤中的判断点对应的多个法向量夹角是否小于预设夹角阈值;在判断到法向量夹角小于预设夹角阈值的情况下,将法向量夹角小于预设夹角阈值的邻域点作为候选邻域点;计算点的FPFH描述子与候选邻域点的FPFH描述子的相似度,并判断相似度是否小于预设相似度阈值;在判断到相似度小于预设相似度阈值的情况下,将相似度小于预设相似度阈值的候选邻域点作为目标点,并将点和目标点归类于点对应的第一点云分区实现了以法向量夹角和FPFH描述子的相似度为筛选条件的点云的区域生长,籍以为实现对相似点云的检查提供数据准备,方便快速查找到代表第一表面点云的目标点云分区,进而提高姿态识别的效率及准确率。
在其中一些可选实施方式中,基于第一表面点云进行区域生成得到多个第一点云分区还通过如下步骤实现:
步骤1、建立数组T,其中,数组T的大小与第一表面点云S中的点的数目相同,初始化T中所有元素为0,并创建记录第一点云分区的序号的变量id=1,然后从i=0开始,第一表面点云S中每个点Si进行遍历并进行区域生长。
步骤2、对于点Si,如果其T[i]为0,则将T[i]改为当前的id值,则表示尚未被遍历或则区域生长过,通过以构建的K-D树快速查找与其最邻近的w个邻域点,并分别设定其序号为j1至jw
步骤3、分别计算点Si与点Sj1至Sjw的法向量的夹角,将夹角小于法向量夹角阈值α的邻域点进行FPFH描述子的相似度计算。
步骤4、对于步骤3中所有满足条件的邻域点,计算其FPFH描述子的相似度,例如:如果点Sj1在步骤3中满足条件,则继续计算点Si与点Sj1的FPFH描述子相似度,计算方法为对于各自FPFH描述子的w(w取值为33)个元素,做对应位置的减法,然后取绝对值并相加,即
Figure 224406DEST_PATH_IMAGE019
其中,
Figure 397899DEST_PATH_IMAGE020
越小则表示两个点的FPFH描述子越相似,如果
Figure 611842DEST_PATH_IMAGE021
小于预设相似度阈值r,则将T[j1]改为当前的id值,并回到步骤1中,并以Sj1为种子点进行区域生长,直到无法得到满足步骤4中对应条件的点时,第一点云分区的生长结束,id值自加1,回到步骤2进行下一个T[i]为0的点的区域生长。
在其中一些实施例中,步骤S203中的根据所述第一点云分区对应的最小包围多边形图像与预设模板轮廓图的相似度,在多个所述第一点云分区中检测目标点云分区,通过如下步骤实现:
步骤1、对第一点云分区对应的点云数据依次进行深度图转化和二值化处理,得到与第一点云分区对应的黑白二值图。
在本实施例中,第一点云分区对应的点云数据转换为对应的深度图P,可以采用现有技术中任一种对应的点云数据转换为深度图像的方法,此处不作限定;在本实施例中,深度图P转换为黑白二值图P´是通过将包含高度值的点的P´中的像素值设为1,其余为0。
步骤2,在二值黑白图像中检测最小包围多边形图像,计算检测出的每个最小包围多边形图像与预设模板轮廓图的倒角距离。在本实施例中,以倒角距离作为最小包围多边形图像与预设模板轮廓图的相似度的判断参数;需要理解,对二值黑白图像进行最小包围多边形图像进行检测或计算,可以采用现有技术中对应的最小包围多边形图像的计算方法、算法及处理技术;在本实施例中,预设模板轮廓图通过如下方式生成的:将第二表面点云进行深度图转化,再将转化出的深度度进行二值化处理,得到对应的黑白二值图像,最后,对得到的对应的黑白二值图像计算最小包围多边形图像,将计算出的最小包围多边形图像作为预设模板轮廓图。在本实施例中,通过采用作为基准的预设目标的表面点云计算出的最小包围多边形图像作为预设模板轮廓图,可以使筛选出目标点云分区与待姿态识别的不规则形状的物品对应的轮廓图或3D包围盒相匹配。
步骤3,将倒角距离最小的至少一个最小包围多边形图像对应的第一点云分区作为目标点云分区。
在本实施例中,最小包围多边形图像与预设模板轮廓图的倒角距离最小的点云分区可以是一个,也可以是多个,因此,可以采用其最小包围多边形图像与预设模板轮廓图的倒角距离最小的第一点云分区中的一个作为目标点云分区,该目标点云分区是第一表面点云的最佳相似点云,以该目标点云分区进行对应的姿态参数计算,可以在满足降低点云数据处理量的条件下,以与待姿态识别的目标具有最佳匹配度(例如:对目标具有最近似的形状表征或描述),从而提高姿态识别的准确率和效率。
通过上述步骤中的对第一点云分区对应的点云数据依次进行深度图转化和二值化处理,得到与第一点云分区对应的黑白二值图;在二值黑白图像中检测最小包围多边形图像,计算检测出的每个最小包围多边形图像与预设模板轮廓图的倒角距离;将倒角距离最小的至少一个最小包围多边形图像对应的第一点云分区作为目标点云分区,实现基于轮廓图(包围盒、最小包围多边形图像)对目标点云分区的检查,降低了对点云数据的处理量,提高姿态识别的准确率和效率。
在其中一些实施例中,步骤S203中的确定目标点云分区所对应的姿态参数包括如下步骤:利用PCA算法计算目标点云分区的点云面法向量,并利用点云库PCL函数计算目标点云分区所对应的质心坐标数据,得到包括点云面法向量和质心坐标数据的姿态参数。
需要说明的是,质心指的是质量的中心,认为是物体质量集中于此点的假想点;常规采用公式如下计算物体质心坐标:
Figure 579798DEST_PATH_IMAGE022
其中,
Figure 675930DEST_PATH_IMAGE023
为各质点的坐标,mi为质点对应的质量。
而计算对应点云质心时,将mi设置为1,也就是点云质心坐标计算公式如下:
Figure 387534DEST_PATH_IMAGE024
其中,
Figure 924826DEST_PATH_IMAGE025
为各点对应的三轴坐标,n表示点云中点的数目。
在其中一些实施例中,姿态参数包括目标点云分区对应的第一点云面法向量和第一质心坐标数据,零点姿态参数包括预设目标处于预设的零点姿态状态时,第二表面点云对应的第二点云面法向量和第二质心坐标数据,步骤S204中的计算姿态参数与零点姿态参数对应的偏移参数,可以通过如下步骤实现:
步骤1,基于第一点云面法向量和第一质心坐标数据,生成目标三维矩阵,并基于第二点云面法向量和第二质心坐标数据,生成零点三维矩阵。
在本实施例中,第一点云面法向量为采用PCA算法获取的目标点云分区的整体法向量,而第一质心坐标数据为目标点云分区的质心的坐标数据;同理,第二点云面法向量为第二表面点云对应的整体法向量,而第二质心坐标数据则为第二表面点云的质心的坐标数据。
在本实施例中,将第一点云面法向量转换为3×3的矩阵r1,将第一质心坐标数据转化为3×1的列向量t1,将两者组合为4×4的目标三维矩阵
Figure 63683DEST_PATH_IMAGE026
,同理,将第二点云面法向量转换为3×3的矩阵r2,将第二质心坐标数据转化为3×1的列向量t2,将两者组合为4×4的零点三维矩阵
Figure 647111DEST_PATH_IMAGE027
步骤2,利用零点三维矩阵和目标三维矩阵进行矩阵运算,得到目标三维矩阵相对零点三维矩阵的旋转变换矩阵。
在本实施例中,基于一个m×n的矩阵与n×m的矩阵,可得到m×m的矩阵,以及基于对零点三维矩阵进行旋转,可矩阵转换成目标三维矩阵,也就是A=M·B,其中,M对应为对零点三维矩阵B进行旋转而得到目标三维矩阵A所对应的旋转变化矩阵,也即本申请实施例所对应的偏移参数;同时,基于A=M·B可知,M=AB-1,因此,可以采用目标三维矩阵A与零点三维矩阵B的逆矩阵B-1相乘,得到旋转变化矩阵。
步骤3、在旋转变换矩阵中,检测对应的三轴旋转角度参数和各坐标轴方向上的坐标偏移参数,其中,偏移参数包括三轴旋转角度参数和各坐标轴方向上的坐标偏移参数。
在本实施例中,得到的旋转变换矩阵M是与目标三维矩阵A及零点三维矩阵B具有相同阶数的矩阵,例如:4×4的矩阵,因此,旋转变换矩阵M中与云面法向量对应的行列以及与质心转换的列向量对应的行列分别对应为偏移参数中的三轴旋转角度参数
Figure 896827DEST_PATH_IMAGE028
和各坐标轴方向上的坐标偏移参数
Figure 819784DEST_PATH_IMAGE029
,其中,Rx是零点三维矩阵B旋转变化为目标三维矩阵A围绕x轴旋转的角度,Ry是零点三维矩阵B旋转变化为目标三维矩阵A围绕y轴旋转的角度,Rz是零点三维矩阵B旋转变化为目标三维矩阵A围绕z轴旋转的角度,△x是零点三维矩阵B旋转变化为目标三维矩阵A沿x方向的坐标偏移量,△y是零点三维矩阵B旋转变化为目标三维矩阵A沿y方向的坐标偏移量,△z是零点三维矩阵B旋转变化为目标三维矩阵A沿z方向的坐标偏移量,基于上述偏移参数,可以确定当前的目标物品的6D姿态为△x,△y,△z,Rx,Ry,Rz。通过上述步骤中的基于第一点云面法向量和第一质心坐标数据,生成目标三维矩阵,并基于第二点云面法向量和第二质心坐标数据,生成零点三维矩阵;利用零点三维矩阵和目标三维矩阵进行矩阵运算,得到目标三维矩阵相对零点三维矩阵的旋转变换矩阵;在旋转变换矩阵中,检测对应的三轴旋转角度参数和各坐标轴方向上的坐标偏移参数,其中,偏移参数包括三轴旋转角度参数和各坐标轴方向上的坐标偏移参数,实现了目标物品的6D姿态的计算。
本实施例还提供了一种姿态识别装置,该装置用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”、“单元”、“子单元”等可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
图3是根据本申请实施例的姿态识别装置的结构框图,如图3所示,该装置包括:获取模块31、分区模块32、识别模块33、处理模块34。
获取模块31,用于获取预设场景内待识别目标的第一表面点云,并分别确定第一表面点云中每个点所对应的法向量和三维快速点特征直方图FPFH描述子。
分区模块32,与获取模块31耦合连接,用于在第一表面点云中,查找出每个点对应的多个邻域点,基于法向量夹角和FPFH描述子的相似度进行区域生长,得到第一表面点云对应的多个第一点云分区,其中,法向量夹角为邻域点的法向量和点的法向量的夹角。
识别模块33,与分区模块32耦合连接,用于在第一表面点云中,查找出每个点对应的多个邻域点,基于法向量夹角和FPFH描述子的相似度进行区域生长,得到第一表面点云对应的多个第一点云分区,其中,法向量夹角为邻域点的法向量和点的法向量的夹角。
处理模块34,与识别模块33耦合连接,用于计算姿态参数与零点姿态参数对应的偏移参数,得到包括偏移参数的姿态识别结果,其中,零点姿态参数用于表征第二表面点云在预设目标处于预设的零点姿态状态下的姿态。
通过本实施例中的姿态识别装置,采用采用获取预设场景内待识别目标的第一表面点云,并分别确定第一表面点云中每个点所对应的法向量和三维快速点特征直方图FPFH描述子;在第一表面点云中,查找出每个点对应的多个邻域点,基于法向量夹角和FPFH描述子的相似度进行区域生长,得到第一表面点云对应的多个第一点云分区;根据第一点云分区对应的最小包围多边形图像与预设模板轮廓图的相似度,在多个第一点云分区中检测目标点云分区,并确定目标点云分区所对应的姿态参数;计算姿态参数与零点姿态参数对应的偏移参数,得到包括偏移参数的姿态识别结果,解决了相关技术中因不规则形状的物品的外观随机性大,使的机器视觉对不规则形状的物品的姿态识别难度大,姿态识别效果差的问题,实现了通过采集对应场景中的不规则形状物品的点云,并基于相似点云识别出不规则形状物品的姿态,高效准确的完成姿态识别,扩展姿态识别和机械臂无序抓取的应用范围。
在其中一些实施例中,该获取模块31进一步包括:
构建单元,用于将第一表面点云,构建为预设类型的多维搜索树;
查找单元,与构建单元耦合连接,用于在多维搜索树中,查找出每个点对应的K邻域,其中,K邻域包括以每个点为样本点所查找的预设个数的邻域点;
第一计算单元,与查找单元耦合连接,用于利用主成分分析PCA算法对每个点及对应的K邻域中的所有邻域点进行处理,计算得到每个点对应的法向量;
第一确定单元,与第一计算单元耦合连接,用于基于K邻域中所有邻域点的简化点特征直方图SPFH值,确定与K邻域对应的点的FPFH描述子,其中,SPFH值是根据邻域点及其对应的邻域点之间的一个元组计算得到的。
在其中一些实施例中,该分区模块32进一步包括:
第一判断单元,用于判断点对应的多个法向量夹角是否小于预设夹角阈值;
第一筛选单元,与第一判断单元耦合连接,用于在第一判断单元判断到法向量夹角小于预设夹角阈值的情况下,将法向量夹角小于预设夹角阈值的邻域点作为候选邻域点;
第二判断单元,与第一筛选单元耦合连接,用于计算点的FPFH描述子与候选邻域点的FPFH描述子的相似度,并判断相似度是否小于预设相似度阈值;
第二筛选单元,与第二判断单元耦合连接,用于在第二判断单元判断到相似度小于预设相似度阈值的情况下,将相似度小于预设相似度阈值的候选邻域点作为目标点,并将点和目标点归类于点对应的第一点云分区。
在其中一些实施例中,第二判断单元还用于按如下公式计算相似度:
Figure 129542DEST_PATH_IMAGE014
其中,
Figure 200267DEST_PATH_IMAGE015
表示点Si与候选邻域点Sjn的FPFH描述子的相似度,w表示FPFH描述子所具有的元素的数目,
Figure 253673DEST_PATH_IMAGE016
表示点Si的FPFH描述子的第m个元素,
Figure 31136DEST_PATH_IMAGE017
表示候选邻域点Sjn的FPFH描述子的第m个元素。
在其中一些实施例中,该识别模块33还进一步包括:
第一转换单元,用于对第一点云分区对应的点云数据依次进行深度图转化和二值化处理,得到与第一点云分区对应的黑白二值图;
第二计算单元,与第一转换单元耦合连接,用于在二值黑白图像中检测最小包围多边形图像,计算检测出的每个最小包围多边形图像与预设模板轮廓图的倒角距离;
第三筛选单元,与第二计算单元耦连接,用于将倒角距离最小的至少一个最小包围多边形图像对应的第一点云分区作为目标点云分区。
在其中一些实施例中,该识别模块33还包括:
第三计算单元,与第三筛选单元耦合连接,用于利用PCA算法计算目标点云分区的点云面法向量,并利用点云库PCL函数计算目标点云分区所对应的质心坐标数据,得到包括点云面法向量和质心坐标数据的姿态参数。
在其中一些实施例中,姿态参数包括目标点云分区对应的第一点云面法向量和第一质心坐标数据,零点姿态参数包括预设目标处于预设的零点姿态状态时,第二表面点云对应的第二点云面法向量和第二质心坐标数据,该处理模块34进一步包括:
第一生成单元,用于基于第一点云面法向量和第一质心坐标数据,生成目标三维矩阵,并基于第二点云面法向量和第二质心坐标数据,生成零点三维矩阵;
第一运算单元,与第一生成单元耦合连接,用于利用零点三维矩阵和目标三维矩阵进行矩阵运算,得到目标三维矩阵相对零点三维矩阵的旋转变换矩阵;
第一检测单元,与第一运算单元耦合连接,用于在旋转变换矩阵中,检测对应的三轴旋转角度参数和各坐标轴方向上的坐标偏移参数,其中,偏移参数包括三轴旋转角度参数和各坐标轴方向上的坐标偏移参数。
需要说明的是,上述各个模块可以是功能模块也可以是程序模块,既可以通过软件来实现,也可以通过硬件来实现。对于通过硬件来实现的模块而言,上述各个模块可以位于同一处理器中;或者上述各个模块还可以按照任意组合的形式分别位于不同的处理器中。
本实施例还提供了一种电子装置,包括存储器和处理器,该存储器中存储有计算机程序,该处理器被设置为运行计算机程序以执行上述任一项方法实施例中的步骤。
可选地,上述电子装置还可以包括传输设备以及输入输出设备,其中,该传输设备和上述处理器连接,该输入输出设备和上述处理器连接。
可选地,在本实施例中,上述处理器可以被设置为通过计算机程序执行以下步骤:
S1,获取预设场景内待识别目标的第一表面点云,并分别确定第一表面点云中每个点所对应的法向量和三维快速点特征直方图FPFH描述子。
S2,在第一表面点云中,查找出每个点对应的多个邻域点,基于法向量夹角和FPFH描述子的相似度进行区域生长,得到第一表面点云对应的多个第一点云分区,其中,法向量夹角为邻域点的法向量和点的法向量的夹角。
S3,根据第一点云分区对应的最小包围多边形图像与预设模板轮廓图的相似度,在多个第一点云分区中检测目标点云分区,并确定目标点云分区所对应的姿态参数,其中,预设模板轮廓图是根据预设目标对应的第二表面点云所生成的,姿态参数用于表征目标点云分区的姿态。
S4,计算姿态参数与零点姿态参数对应的偏移参数,得到包括偏移参数的姿态识别结果,其中,零点姿态参数用于表征第二表面点云在预设目标处于预设的零点姿态状态下的姿态。
需要说明的是,本实施例中的具体示例可以参考上述实施例及可选实施方式中所描述的示例,本实施例在此不再赘述。
另外,结合上述实施例中的姿态识别方法,本申请实施例可提供一种存储介质来实现。该存储介质上存储有计算机程序;该计算机程序被处理器执行时实现上述实施例中的任意一种姿态识别方法。
本领域的技术人员应该明白,以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

Claims (10)

1.一种姿态识别方法,其特征在于,包括:
获取预设场景内待识别目标的第一表面点云,并分别确定所述第一表面点云中每个点所对应的法向量和三维快速点特征直方图FPFH描述子;
在所述第一表面点云中,查找出每个所述点对应的多个邻域点,基于法向量夹角和所述FPFH描述子的相似度进行区域生长,得到所述第一表面点云对应的多个第一点云分区,其中,所述法向量夹角为所述邻域点的法向量和所述点的法向量的夹角;
根据所述第一点云分区对应的最小包围多边形图像与预设模板轮廓图的相似度,在多个所述第一点云分区中检测目标点云分区,并确定所述目标点云分区所对应的姿态参数,其中,所述预设模板轮廓图是根据预设目标对应的第二表面点云所生成的,所述姿态参数用于表征所述目标点云分区的姿态;
计算所述姿态参数与零点姿态参数对应的偏移参数,得到包括所述偏移参数的姿态识别结果,其中,所述零点姿态参数用于表征所述第二表面点云在所述预设目标处于预设的零点姿态状态下的姿态。
2.根据权利要求1所述的方法,其特征在于,确定所述第一表面点云中每个点所对应的法向量和三维快速点特征直方图FPFH描述子,包括:
将所述第一表面点云,构建为预设类型的多维搜索树;
在所述多维搜索树中,查找出每个所述点对应的K邻域,其中,所述K邻域包括以每个所述点为样本点所查找的预设个数的邻域点;
利用主成分分析PCA算法对每个所述点及对应的所述K邻域中的所有邻域点进行处理,计算得到每个所述点对应的所述法向量;
基于所述K邻域中所有所述邻域点的简化点特征直方图SPFH值,确定与所述K邻域对应的所述点的所述FPFH描述子,其中,所述SPFH值是根据所述邻域点及其对应的邻域点之间的一个元组计算得到的。
3.根据权利要求1所述的方法,其特征在于,在所述第一表面点云中,查找出每个所述点对应的多个邻域点,基于法向量夹角和所述FPFH描述子的相似度进行区域生长,得到所述第一表面点云对应的多个第一点云分区,包括:
判断所述点对应的多个所述法向量夹角是否小于预设夹角阈值;
在判断到所述法向量夹角小于预设夹角阈值的情况下,将所述法向量夹角小于预设夹角阈值的所述邻域点作为候选邻域点;
计算所述点的所述FPFH描述子与所述候选邻域点的所述FPFH描述子的相似度,并判断所述相似度是否小于预设相似度阈值;
在判断到所述相似度小于预设相似度阈值的情况下,将所述相似度小于预设相似度阈值的所述候选邻域点作为目标点,并将所述点和所述目标点归类于所述点对应的所述第一点云分区。
4.根据权利要求3所述的方法,其特征在于,计算所述点的所述FPFH描述子与所述候选邻域点的所述FPFH描述子的相似度,包括:
按如下公式计算相似度:
Figure 797494DEST_PATH_IMAGE001
其中,
Figure 173112DEST_PATH_IMAGE002
表示点Si与候选邻域点Sjn的FPFH描述子的相似度,w表示FPFH描述子所具有的元素的数目,
Figure 593729DEST_PATH_IMAGE003
表示点Si的FPFH描述子的第m个元素,
Figure 66298DEST_PATH_IMAGE004
表示候选邻域点Sjn的FPFH描述子的第m个元素。
5.根据权利要求1所述的方法,其特征在于,根据所述第一点云分区对应的最小包围多边形图像与预设模板轮廓图的相似度,在多个所述第一点云分区中检测目标点云分区,包括:
对所述第一点云分区对应的点云数据依次进行深度图转化和二值化处理,得到与所述第一点云分区对应的黑白二值图;
在所述二值黑白图像中检测所述最小包围多边形图像,计算检测出的每个所述最小包围多边形图像与所述预设模板轮廓图的倒角距离;
将所述倒角距离最小的至少一个所述最小包围多边形图像对应的所述第一点云分区作为所述目标点云分区。
6.根据权利要求5所述的方法,其特征在于,确定所述目标点云分区所对应的姿态参数,包括:利用PCA算法计算所述目标点云分区的点云面法向量,并利用点云库PCL函数计算所述目标点云分区所对应的质心坐标数据,得到包括所述点云面法向量和所述质心坐标数据的所述姿态参数。
7.根据权利要求1所述的方法,其特征在于,所述姿态参数包括目标点云分区对应的第一点云面法向量和第一质心坐标数据,所述零点姿态参数包括所述预设目标处于预设的零点姿态状态时,所述第二表面点云对应的第二点云面法向量和第二质心坐标数据,所述计算所述姿态参数与零点姿态参数对应的偏移参数,包括:
基于所述第一点云面法向量和所述第一质心坐标数据,生成目标三维矩阵,并基于所述第二点云面法向量和所述第二质心坐标数据,生成零点三维矩阵;
利用所述零点三维矩阵和所述目标三维矩阵进行矩阵运算,得到所述目标三维矩阵相对所述零点三维矩阵的旋转变换矩阵;
在所述旋转变换矩阵中,检测对应的三轴旋转角度参数和各坐标轴方向上的坐标偏移参数,其中,所述偏移参数包括所述三轴旋转角度参数和各坐标轴方向上的所述坐标偏移参数。
8.一种姿态识别装置,其特征在于,包括:
获取模块,用于获取预设场景内待识别目标的第一表面点云,并分别确定所述第一表面点云中每个点所对应的法向量和三维快速点特征直方图FPFH描述子;
分区模块,用于在所述第一表面点云中,查找出每个所述点对应的多个邻域点,基于法向量夹角和所述FPFH描述子的相似度进行区域生长,得到所述第一表面点云对应的多个第一点云分区,其中,所述法向量夹角为所述邻域点的法向量和所述点的法向量的夹角;
识别模块,用于根据所述第一点云分区对应的最小包围多边形图像与预设模板轮廓图的相似度,在多个所述第一点云分区中检测目标点云分区,并确定所述目标点云分区所对应的姿态参数,其中,所述预设模板轮廓图是根据预设目标对应的第二表面点云所生成的,所述姿态参数用于表征所述目标点云分区的姿态;
处理模块,用于计算所述姿态参数与零点姿态参数对应的偏移参数,得到包括所述偏移参数的姿态识别结果,其中,所述零点姿态参数用于表征所述第二表面点云在所述预设目标处于预设的零点姿态状态下的姿态。
9.一种电子装置,包括存储器和处理器,其特征在于,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行权利要求1至7中任一项所述的姿态识别方法。
10.一种存储介质,其特征在于,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行权利要求1至7中任一项所述的姿态识别方法。
CN202210678576.8A 2022-06-16 2022-06-16 姿态识别方法、装置、电子装置和存储介质 Active CN114783068B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210678576.8A CN114783068B (zh) 2022-06-16 2022-06-16 姿态识别方法、装置、电子装置和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210678576.8A CN114783068B (zh) 2022-06-16 2022-06-16 姿态识别方法、装置、电子装置和存储介质

Publications (2)

Publication Number Publication Date
CN114783068A true CN114783068A (zh) 2022-07-22
CN114783068B CN114783068B (zh) 2022-11-15

Family

ID=82421360

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210678576.8A Active CN114783068B (zh) 2022-06-16 2022-06-16 姿态识别方法、装置、电子装置和存储介质

Country Status (1)

Country Link
CN (1) CN114783068B (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115446392A (zh) * 2022-10-13 2022-12-09 芜湖行健智能机器人有限公司 一种无序板件智能化倒角系统及方法
CN115661552A (zh) * 2022-12-12 2023-01-31 高德软件有限公司 一种点云处理、点云异常检测方法、介质及计算设备
CN116934751A (zh) * 2023-09-15 2023-10-24 深圳市信润富联数字科技有限公司 高精点云的采集方法及装置、存储介质、电子设备

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9327406B1 (en) * 2014-08-19 2016-05-03 Google Inc. Object segmentation based on detected object-specific visual cues
CN110276790A (zh) * 2019-06-28 2019-09-24 易思维(杭州)科技有限公司 基于形状约束的点云配准方法
CN110648361A (zh) * 2019-09-06 2020-01-03 深圳市华汉伟业科技有限公司 一种三维目标物体的实时位姿估计方法及定位抓取系统
CN110930456A (zh) * 2019-12-11 2020-03-27 北京工业大学 基于pcl点云库的钣金零件的三维立体识别及定位方法
GB202004673D0 (en) * 2020-03-31 2020-05-13 Imperial College Sci Tech & Medicine Image processing system and method
CN111582140A (zh) * 2020-04-30 2020-08-25 中国电子科技集团公司第五十四研究所 一种基于激光测量点云的室内物体提取方法
CN111784770A (zh) * 2020-06-28 2020-10-16 河北工业大学 基于shot和icp算法的无序抓取中的三维姿态估计方法
CN111899302A (zh) * 2020-06-23 2020-11-06 武汉闻道复兴智能科技有限责任公司 一种基于点云数据的视觉检测的方法、装置和系统
CN113781558A (zh) * 2021-08-31 2021-12-10 华中科技大学 一种姿态与位置解耦的机器人视觉寻位方法
CN113781561A (zh) * 2021-09-09 2021-12-10 诺力智能装备股份有限公司 基于自适应高斯权快速点特征直方图的目标位姿估计方法
CN114092553A (zh) * 2021-11-12 2022-02-25 上海库灵科技有限公司 基于fpfh和icp改进算法的无序抓取姿态估计方法
CN114454168A (zh) * 2022-02-14 2022-05-10 赛那德数字技术(上海)有限公司 一种动态视觉机械臂抓取方法、系统及电子设备

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9327406B1 (en) * 2014-08-19 2016-05-03 Google Inc. Object segmentation based on detected object-specific visual cues
CN110276790A (zh) * 2019-06-28 2019-09-24 易思维(杭州)科技有限公司 基于形状约束的点云配准方法
CN110648361A (zh) * 2019-09-06 2020-01-03 深圳市华汉伟业科技有限公司 一种三维目标物体的实时位姿估计方法及定位抓取系统
CN110930456A (zh) * 2019-12-11 2020-03-27 北京工业大学 基于pcl点云库的钣金零件的三维立体识别及定位方法
GB202004673D0 (en) * 2020-03-31 2020-05-13 Imperial College Sci Tech & Medicine Image processing system and method
CN111582140A (zh) * 2020-04-30 2020-08-25 中国电子科技集团公司第五十四研究所 一种基于激光测量点云的室内物体提取方法
CN111899302A (zh) * 2020-06-23 2020-11-06 武汉闻道复兴智能科技有限责任公司 一种基于点云数据的视觉检测的方法、装置和系统
CN111784770A (zh) * 2020-06-28 2020-10-16 河北工业大学 基于shot和icp算法的无序抓取中的三维姿态估计方法
CN113781558A (zh) * 2021-08-31 2021-12-10 华中科技大学 一种姿态与位置解耦的机器人视觉寻位方法
CN113781561A (zh) * 2021-09-09 2021-12-10 诺力智能装备股份有限公司 基于自适应高斯权快速点特征直方图的目标位姿估计方法
CN114092553A (zh) * 2021-11-12 2022-02-25 上海库灵科技有限公司 基于fpfh和icp改进算法的无序抓取姿态估计方法
CN114454168A (zh) * 2022-02-14 2022-05-10 赛那德数字技术(上海)有限公司 一种动态视觉机械臂抓取方法、系统及电子设备

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
ADARSH PATHAK 等: "Comparison of CNN and Contour Algorithm for Number Identification Using Hand Gesture", 《INTERNATIONAL JOURNAL OF ENGINEERING RESEARCH IN COMPUTER SCIENCE AND ENGINEERING》 *
祝国凯: "轮对配盘机械手定位关键技术研究", 《中国优秀博硕士学位论文全文数据库(硕士)工程科技Ⅱ辑》 *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115446392A (zh) * 2022-10-13 2022-12-09 芜湖行健智能机器人有限公司 一种无序板件智能化倒角系统及方法
CN115446392B (zh) * 2022-10-13 2023-08-04 芜湖行健智能机器人有限公司 一种无序板件智能化倒角系统及方法
CN115661552A (zh) * 2022-12-12 2023-01-31 高德软件有限公司 一种点云处理、点云异常检测方法、介质及计算设备
CN116934751A (zh) * 2023-09-15 2023-10-24 深圳市信润富联数字科技有限公司 高精点云的采集方法及装置、存储介质、电子设备
CN116934751B (zh) * 2023-09-15 2024-01-12 深圳市信润富联数字科技有限公司 高精点云的采集方法及装置、存储介质、电子设备

Also Published As

Publication number Publication date
CN114783068B (zh) 2022-11-15

Similar Documents

Publication Publication Date Title
CN114783068B (zh) 姿态识别方法、装置、电子装置和存储介质
Aldoma et al. A global hypotheses verification method for 3d object recognition
Taati et al. Local shape descriptor selection for object recognition in range data
EP2720171B1 (en) Recognition and pose determination of 3D objects in multimodal scenes
JP4865557B2 (ja) 有界三次元対象物の分類と空間ローカライゼーションのためのコンピュータ視覚システム
CN108010123B (zh) 一种保留拓扑信息的三维点云获取方法
CN109145969B (zh) 三维物体点云数据的处理方法、装置、设备及介质
CN107818598B (zh) 一种基于视觉矫正的三维点云地图融合方法
CN107953329A (zh) 物体识别和姿态估计方法、装置及机械臂抓取系统
CN110648359B (zh) 一种果实目标定位识别方法及系统
Bewley et al. Advantages of exploiting projection structure for segmenting dense 3D point clouds
CN113191174A (zh) 物品定位方法和装置、机器人及计算机可读存储介质
CN112356019A (zh) 一种用于灵巧手抓取的目标物体形体分析方法及装置
Guo et al. 3D object recognition from cluttered and occluded scenes with a compact local feature
CN117132630A (zh) 一种基于二阶空间兼容性度量的点云配准方法
Zhao et al. Visual odometry-A review of approaches
Srivastava et al. Drought stress classification using 3D plant models
KR102129060B1 (ko) 단일 깊이 영상을 이용한 내용기반 3차원 모델 검색 방법, 이를 수행하는 3차원 모델 검색 서버 및 컴퓨터로 판독 가능한 기록매체
CN113592976A (zh) 地图数据的处理方法、装置、家用电器和可读存储介质
Luchowski et al. Using RANSAC for 3D point cloud segmentation
CN105074729A (zh) 光度边缘描述
Hlubik et al. Advanced point cloud estimation based on multiple view geometry
CN113111741A (zh) 一种基于三维特征点的装配状态识别方法
CN112837370A (zh) 基于3d包围盒的物体堆叠判断方法、装置及计算设备
Asif et al. Model-free segmentation and grasp selection of unknown stacked objects

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant