CN115330819A - 一种软包分割定位方法、工控机和机器人抓取系统 - Google Patents
一种软包分割定位方法、工控机和机器人抓取系统 Download PDFInfo
- Publication number
- CN115330819A CN115330819A CN202211249494.8A CN202211249494A CN115330819A CN 115330819 A CN115330819 A CN 115330819A CN 202211249494 A CN202211249494 A CN 202211249494A CN 115330819 A CN115330819 A CN 115330819A
- Authority
- CN
- China
- Prior art keywords
- point cloud
- point
- region
- sub
- current
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/11—Region-based segmentation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/136—Segmentation; Edge detection involving thresholding
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/187—Segmentation; Edge detection involving region growing; involving region merging; involving connected component labelling
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10028—Range image; Depth image; 3D point clouds
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20092—Interactive image processing based on input by user
- G06T2207/20101—Interactive definition of point of interest, landmark or seed
Landscapes
- Engineering & Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Image Analysis (AREA)
Abstract
本发明涉及一种软包分割定位方法、工控机和机器人抓取系统,包括:获取软包垛的原始三维点云;对原始三维点云进行预处理,获得预处理后的三维点云中每个点的点云特征数据;基于每个点的法向量和高斯曲率,从预处理后的三维点云中选取种子点;分别对预处理后的三维点云中包含种子点的每个第一子标记区域进行区域生长,获得多个区域点云集合;对多个区域点云集合中每个区域点云集合进行区域合并,获得多个合并区域;其中,多个合并区域中每个合并区域均与软包垛中的一个软包对应;对每个合并区域进行后处理,获得软包垛中每个软包对应的抓取位置和姿态。本申请实施例不仅能够精准地识别各个软包的抓取位置,还能够提供精准地机器人抓取姿态。
Description
技术领域
本发明涉及机器视觉的技术领域,尤其涉及一种软包分割定位方法、工控机和机器人抓取系统。
背景技术
随着人力成本的逐年提高,越来越多的生产、制造型企业逐渐选择自动化、智能化物料方案,用来替换人力。在铁路、化工、饲料、化肥和食品生产加工等领域,原料物流和成品物流大多数采用软包编织袋堆垛的方式,按照一定的摆放方式(例如,常见的有五花垛、回形垛等)摆放在托盘上,以方便叉车运输。
在随后软包的上料过程,比如装车、上料至传送带或者加工车间的过程,一部分企业仍然多采用人工上料的方式,但是,该人工上料的方案至少存在着浪费人力的问题;另一部分企业采用2D相机或激光线扫描的方式对软包进行定位,进而控制机械臂完成定位和拆垛的过程。虽然该方案能够解决浪费人力的问题,但是,由于软包的柔性性及其内部装的材料的不确定性,往往在码垛的过程中受到挤压而出现变形,故采用现有的2D相关的方法,可能会导致出现机器臂抓取不到的情况,从而导致了抓取精度不高等问题。
发明内容
(一)要解决的技术问题
鉴于现有技术的上述缺点、不足,本发明提供一种软包分割定位方法、工控机和机器人抓取系统,其解决了抓取精度不高等技术问题。
(二)技术方案
为了达到上述目的,本发明采用的主要技术方案包括:
第一方面,本发明实施例提供一种软包分割定位方法,该软包分割定位方法包括:获取软包垛的原始三维点云;对原始三维点云进行预处理,获得预处理后的三维点云中每个点的点云特征数据;其中,点云特征数据包括法向量和高斯曲率;基于每个点的法向量和高斯曲率,从预处理后的三维点云中选取种子点;分别对预处理后的三维点云中包含种子点的每个第一子标记区域进行区域生长,获得多个区域点云集合;其中,第一子标记区域是对原始三维点云进行分割并进行标记后得到的,多个区域点云集合中每个区域点云集合均与一个第一子标记区域对应;对多个区域点云集合中每个区域点云集合进行区域合并,获得多个合并区域;其中,多个合并区域中每个合并区域均与软包垛中的一个软包对应;对每个合并区域进行后处理,获得软包垛中每个软包对应的抓取位置和姿态。
可选地,对原始三维点云进行预处理,获得预处理后的三维点云中每个点的点云特征数据,包括:对原始三维点云进行下采样处理,获得下采样后的三维点云;对下采样后的三维点云进行去噪处理,获得去噪后的三维点云;计算去噪后的三维点云中每个点的点云特征数据。
可选地,点云特征数据还包括邻域密度;计算去噪后的三维点云中每个点的点云特征数据,包括:确定去噪后的三维点云中当前点在第一预设半径范围内所有第一邻域点,并基于所有第一邻域点,确定当前点的邻域密度;其中,当前点为去噪后的三维点云中任意一个点;对所有第一邻域点进行平面拟合,以确定当前点的法向量;对所有第一邻域点进行球面拟合,以确定当前点的高斯曲率。
可选地,基于每个点的法向量和高斯曲率,从预处理后的三维点云中选取种子点,包括:依次比较预处理后的三维点云的每个点的高斯曲率和第一预设高斯曲率的大小,并将高斯曲率小于第一预设高斯曲率的点作为备选种子点;依次比较备选种子点的法向量和机器人坐标系的Z向的标准法向量之间的夹角和第一预设角的大小,并将夹角小于第一预设角的备选种子点作为种子点。
可选地,软包分割定位方法还包括:将原始三维点云均匀划分为多个子点云区域;对多个子点云区域中每个子点云区域进行标记,以获得多个标记区域;其中,多个标记区域包括第一子标记区域、第二子标记区域和第三子标记区域,第一子标记区域为包含种子点的子点云区域,并且第二子标记区域为包含点但不包含种子点的子点云区域,以及第三子标记区域为不包含点的子点云区域;对多个标记区域进行排序,获得排序后的三维点云。
可选地,分别对预处理后的三维点云中包含种子点的每个第一子标记区域进行区域生长,获得多个区域点云集合,包括:将第一子标记区域的所有种子点加入到当前第一区域点云集合;其中,第一子标记区域为多个第一子标记区域中任意一个第一子标记区域,并且当前第一区域点云集合为与第一子标记区域对应的区域点云集合;确定第一子标记区域的当前种子点在第二预设半径范围内所有第二邻域点;其中,当前种子点为第一子标记区域的所有种子点中任意一个种子点;从所有第二邻域点中筛选出目标邻域点;其中,目标邻域点的邻域密度大于预设邻域密度,并且目标邻域点的法向量和当前种子点的法向量之间的夹角小于第二预设角或者目标邻域点的高斯曲率和当前种子点的高斯曲率的差值小于预设值;将目标邻域点加入到当前第一区域点云集合中。
可选地,对多个区域点云集合中每个区域点云集合进行区域合并,获得多个合并区域,包括:基于排序后的三维点云的结构,从排序后的三维点云的有效区域中确定当前区域点云集合的所有邻域;其中,有效区域包括第一子标记区域和第二子标记区域,并且当前区域点云集合为多个区域点云集合中任意一个区域点云集合;从所有邻域中筛选出目标邻域;其中,目标邻域的种子点的法向量和当前区域点云集合的种子点的法向量之间的夹角小于第三预设角,并且目标邻域中靠近当前区域点云集合的第一边缘和当前区域点云集合中靠近目标邻域的第二边缘之间的平均距离小于预设距离;将当前区域点云集合和目标邻域进行区域合并,以获得一个合并区域。
可选地,对每个合并区域进行后处理,获得软包垛中每个软包对应的抓取位置和姿态,包括:对当前合并区域进行二维投影,获得二维投影图像;其中,当前合并区域为多个合并区域中任意一个合并区域;计算二维投影图像的最小包围矩形,并基于最小包围矩形,确定当前软包的姿态;将最小包围矩形的中心点做为当前软包对应的抓取位置。
第二方面,本发明实施例提供一种工控机,包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述第一方面中任一所述软包分割定位方法的步骤。
第三方面,本发明实施例提供一种机器人抓取系统,包括如第二方面所示的工控机。
(三)有益效果
本发明的有益效果是:
本发明通过对原始三维点云进行预处理,获得预处理后的三维点云中每个点的点云特征数据,以及基于每个点的法向量和高斯曲率,从预处理后的三维点云中选取种子点,以及分别对预处理后的三维点云中包含种子点的每个第一子标记区域进行区域生长,获得多个区域点云集合,以及对多个区域点云集合中每个区域点云集合进行区域合并,获得多个合并区域,以及对每个合并区域进行后处理,获得软包垛中每个软包对应的抓取位置和姿态,从而实现了软包的三维分割定位,进而解决了抓取位置和角度的准确性不高的问题。
为使本申请实施例所要实现的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1示出了本申请实施例提供的一种机器人抓取系统的示意图;
图2示出了本申请实施例提供的一种软包分割定位方法的示意图;
图3示出了本申请实施例提供的一种3D相机的设置示意图;
图4示出了本申请实施例提供的一种排序后的三维点云的示意图;
图5示出了本申请实施例提供的一种定位结果的示意图。
具体实施方式
为了更好的解释本发明,以便于理解,下面结合附图,通过具体实施方式,对本发明作详细描述。
目前,由于软包编织袋满装的重量较重,一般超过25kg,甚至在某些特定领域超过50kg。对于人工装卸方案,劳动繁重、重复,且有些场景需要在危险、有毒和有害的环境下作业。在这种背景下,利用视觉引导加机械臂抓取(吸取)拆垛的方式,成为许多工厂自动化改造和新厂创建的首选。
目前,现有的拆垛方案是通过采用2D相机或激光线扫描的方式对软包进行定位,进而控制机械臂完成定位和拆垛。
但是,该方法至少存在如下缺陷:
由于软包的柔性性及其内部装的材料的不确定性,往往在码垛的过程中会受到挤压而出现变形,尤其在底层的情况。在被挤压的情况下,相对于刚性物体(例如,不易变形的箱体和金属工件等),软包的边缘和缝隙的定位会变得更具有挑战性。也就是说,常规的固定的估计方法或2D视觉定位方法存在着姿态估计困难的问题。以及,由于软包的柔性特征,容易造成区域融合,难以分出的问题;
相对于刚性物体的定位方法,软包定位的精度难度更大。在许多场景下,尤其是需要后续码垛的场景,比如自动装车领域,由于货车的容积有限,要求软包的拆垛和放置精度较高,从而最大限度的提高车体的利用率。故要求在拆垛过程中有较高的吸取精度,位置的精度要求往往在1cm以内,角度的识别精度需要在1°以内。但是,由于现有的2D视觉定位方法存在着精度不高的问题,故其无法满足该精度要求。
此外,在自动拆垛方案中,已有采用基于结构光技术的3D视觉扫描装置,安装于软包垛的正上方,并进行3D扫描,获取点云进行识别的方案。例如,申请号为202010189907.2的方案公开了一种工业机器人应用软包拆垛卸车码垛装置及拆垛卸车码垛的方法。但是,该方案采用的是单个的结构光相机,由于相机的视野空间为锥形,能够同时覆盖顶部和底部的空间较小,存在顶部漏检、误检和识别精度不足的情况。同时,该方案只要求了3D视觉扫描装置获取点云,并进行处理获得位置,并未涉及软包的具体的位置计算方法和识别结果的姿态(角度)信息;再例如,申请号为201811297323.6的方案公开了一种基于机器视觉的柔性拆垛码垛机器人系统及方法,该方案采用双目相机进行立体匹配,获取视差图,再转换为点云。然而,双目匹配获取的点云数据一般精度较差,在1米高度的软包垛上,精度误差可能达到数厘米,远不如结构光相机的精度。同时,该方案也未公开如何利用点云识别出软包具体吸取位置的过程;再例如,申请号为201910613517.0的方案公开了一种2D与3D视觉结合的拆垛方法,其采用了3D相机和2D结合的方案,同时涉及到3D点云处理和3D图像的边缘线,但此方案仅采用了3D点云的高度分布图,并未进行进一步的3D处理,只适合刚体拆垛算法,并不适合易变形的软包拆垛,且该发明强烈依赖边缘线信息,仅适用于平面抓取,并不能输出3D位置和姿态。
基于此,本申请提出了一种软包分割定位方法,通过采用一个固定安装的结构光相机进行扫描,获取到高精度的原始三维点云,通过对原始三维点云进行曲率估计、法向量计算、种子聚类和区域合并等步骤,实现了软包的三维分割定位,从而解决了抓取位置和角度的准确性不高的问题。
为了更好的理解上述技术方案,下面将参照附图更详细地描述本发明的示例性实施例。虽然附图中显示了本发明的示例性实施例,然而应当理解,可以以各种形式实现本发明而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更清楚、透彻地理解本发明,并且能够将本发明的范围完整的传达给本领域的技术人员。
请参见图1,图1示出了本申请实施例提供的一种机器人抓取系统的示意图。该机器人抓取系统包括3D相机、工控机和机器人。其中,工控机分别与3D相机和机器人通信连接。
应理解,3D相机的具体相机、工控机的具体装置和机器人的具体装置均可根据实际需求来进行设置,本申请实施例并不局限于此。
例如,3D相机可以为结构光相机等;再例如,机器人可以为多轴机器人或者桁架机器人等。
以及,请继续参见图2,图2示出了本申请实施例提供的一种软包分割定位方法的示意图。具体地,该软包分割定位方法包括:
步骤S210,工控机获取软包垛的原始三维点云。其中,软包垛包括多个软包。
具体地,首先固定安装3D相机,并完成手眼标定工作。其中,该3D相机可以是结构光相机,并且该结构光相机可分别包括一个工业相机和DLP投影,通过单次或多次扫描,可以直接获取场景内的三维点云数据和2D图像。在本申请中,只需利用其三维点云信息。
此外,如图3所示,该3D相机可固定安装在软包托盘的正上方约3m-4m的高度,并且可覆盖托盘视野约(1.5m×1.6m)。同时,在运行软包分割定位方法之前,需要做好相机和机器人之间的手眼标定工作。以及,本申请可定义机器人原点为世界坐标系的原点,转移矩阵为相机坐标系的原点在世界坐标系下的坐标转移矩阵(也称作相机的外参),并且该转移矩阵可包括平移向量t和旋转矩阵R,通常的采用齐次坐标系表示。
这里需要说明的是,手眼标定的目的是通过一定的数据采集流程,获取到对应的相机数据和机械臂数据,计算出相机坐标系到机器人(世界)坐标系的转移矩阵。以及,该手眼标定的具体方法也可根据实际需求进行选择,本申请实施例并不局限于此。
在完成手眼标定工作后,该3D相机可扫描放置于托盘上的软包垛,以获得软包垛的原始三维点云,随后工控机获取该原始三维点云,并通过后续的步骤对原始三维点云进行处理,获得软包垛中各个软包对应的抓取位置和姿态。
步骤S220,工控机对原始三维点云进行预处理,获得预处理后的三维点云中每个点的点云特征数据。其中,点云特征数据可用作分割定位的依据,并且该点云特征数据可包括法向量、高斯曲率和邻域密度。
应理解,工控机对原始三维点云进行预处理的具体过程可根据实际需求来进行设置,本申请实施例并不局限于此。
可选地,在工控机获取到原始三维点云之后,工控机可将原始三维点云进行存储。以及,工控机还可对原始三维点云进行下采样处理,获得下采样后的三维点云。其中,下采样的原理是计算空间中某个体素范围内点的均值,以及下采样的目的是为了使不同区域的点云数据分布均匀,同时还可降低点云数据,去除空点和噪点。
以及,该工控机还可在下采样后的三维点云的基础上,基于下采样后的三维点云,构建索引树,并且索引树可以八叉树的数据结构存储空间中的所有数据。其中,该索引树的检索时间可为logQ,并且Q可表示点云中所有点的总数量。
这里需要说明的是,构建索引树的目的是为了提高检索效率。比如,在后续求取邻域点的过程中,邻域点可通过索引树检索后获得,从而能够减少索引时间,进而提高了检索效率;再比如,在计算法向量、高斯曲率和邻域密度的过程中,也需要用到索引树,从而也能够减少索引时间,进而提高了检索效率。
以及,该工控机可利用索引树,通过邻域搜索方法对下采样后的三维点云进行去噪处理,以去除下采样后的孤立点,从而获得去噪后的三维点云。其中,该邻域搜索方法的原理为通过检索当前点在第三预设半径范围内的第三邻域点的数量,若第三邻域点的数量小于预设数量,则可认为当前点为噪声点,并可去除该噪声点。
应理解,第三预设半径的具体值可根据实际需求来进行设置,本申请实施例并不局限于此。
以及,该工控机可确定去噪后的三维点云中当前点在第一预设半径范围内所有第一邻域点,并基于所有第一邻域点,确定当前点的邻域密度,其中,当前点为去噪后的三维点云中任意一个点,以及该工控机还可对所有第一邻域点进行平面拟合,以确定当前点的法向量,以及该工控机还可对所有第一邻域点进行球面拟合,以确定当前点的高斯曲率。
例如,该工控机可确定去噪后的三维点云中当前点在第一预设半径范围内所有第一邻域点,并可确定第一邻域点的总数量为m,则该工控机可确定该当前点的邻域密度为m+1,即该邻域密度除了包括邻域点之外,还可包括当前点。以及,该工控机还可对所有第一邻域点进行平面拟合,并可确定该拟合平面的法向量,并将该拟合平面的法向量确定为当前点的法向量。以及,该该工控机还可对所有第一邻域点进行球面拟合,并且该高斯曲率可以为拟合球面的半径的倒数。
还应理解,第一预设半径的具体值可根据实际需求来进行设置,本申请实施例并不局限于此。
此外,该高斯曲率又可称为主曲率,其为三维曲面的重要特征。高斯曲率的计算方法可以为K=K1*K2,其中,K1和K2分别为主曲率上的最大值和最小值。在通过上述公式计算之后,通过阈值分割,移除明显不在目标范围内的点云,包括过于稀疏点(例如,邻域密度小于预设密度的点)、方向偏移点(例如,法向量大于预设法向量的点)和褶皱点(例如,高斯曲率小于第二预设高斯曲率的点)。其中,预设密度的具体值、预设法向量的具体值和第二预设高斯曲率的具体值均可根据实际需求来进行设置,本申请实施例并不局限于此。
步骤S230,工控机基于每个点的法向量和高斯曲率,从预处理后的三维点云中选取种子点。
应理解,工控机基于每个点的法向量和高斯曲率,从预处理后的三维点云中选取种子点的具体过程也可根据实际需求来进行设置,本申请实施例并不局限于此。
可选地,该工控机依次比较预处理后的三维点云的每个点的高斯曲率和第一预设高斯曲率的大小,并可将高斯曲率小于第一预设高斯曲率的点作为备选种子点。其中,高斯曲率小于第一预设高斯曲率表示对应区域内的点较为平坦。以及,还可依次比较备选种子点的法向量和机器人坐标系的Z向的标准法向量之间的夹角和第一预设角的大小,并将夹角小于第一预设角的备选种子点作为种子点。
例如,该工控机可选取高斯曲率小于第一预设高斯曲率的点作为备选种子点,以实现可从预处理后的三维点云中选取出30%的点作为备选种子点。以及,该工控机还可在30%的点所处的区域中,选择法向量和机器人坐标系的标准法向量之间的夹角小于第一预设角的备选种子点作为种子点。
应理解,第一预设高斯曲率的具体值和第一预设角的具体角均可根据实际需求来进行设置,本申请实施例并不局限于此。
例如,该第一预设角可以为15°。
此外,该工控机还可将原始三维点云均匀划分为多个子点云区域,以及该工控机还可对多个子点云区域中每个子点云区域进行标记,以获得多个标记区域。其中,多个标记区域包括第一子标记区域、第二子标记区域和第三子标记区域,第一子标记区域为包含种子点的子点云区域,并且第二子标记区域为包含点但不包含种子点的子点云区域,以及第三子标记区域为不包含点的子点云区域。以及,该工控机还可对多个标记区域进行排序,获得排序后的三维点云。
例如,该工控机可将整个原始三维点云按照XY的具体值,将原始三维点云均匀划分成多个固定大小的子点云区域。在每个子点云区域中,如果存在符合要求的种子点,则可将其标记为第一子标记区域Gp;如果存在点但不存在种子点,则可将其标记为第二子标记区域Gn;如果不存在点也不存在种子点,则可将其标记为第三子标记区域N。其中,第一子标记区域Gp和第二子标记区域Gn为有效区域。以及,由于下采样后的点云是无需的,故这里该工控机可将所有的第一子标记区域Gp、所有的第二子标记区域Gn和所有第三子标记区域N按照机器人坐标系的X和Y方向进行排序,排序结果如图4所示。
步骤S240,工控机分别对预处理后的三维点云中包含种子点的每个第一子标记区域进行区域生长,获得多个区域点云集合。其中,第一子标记区域是对原始三维点云进行分割并进行标记后得到的,多个区域点云集合中每个区域点云集合均与一个第一子标记区域对应。
应理解,工控机分别对预处理后的三维点云中包含种子点的每个第一子标记区域进行区域生长的具体过程可根据实际需求来进行设置,本申请实施例并不局限于此。
可选地,工控机将第一子标记区域的所有种子点加入到当前第一区域点云集合。其中,第一子标记区域为多个第一子标记区域中任意一个第一子标记区域,并且当前第一区域点云集合为与第一子标记区域对应的区域点云集合。以及,该工控机可确定第一子标记区域的当前种子点在第二预设半径范围内所有第二邻域点。其中,当前种子点为第一子标记区域的所有种子点中任意一个种子点。以及,该工控机可从所有第二邻域点中筛选出目标邻域点。其中,目标邻域点的邻域密度大于预设邻域密度,并且目标邻域点的法向量和当前种子点的法向量之间的夹角小于第二预设角或者目标邻域点的高斯曲率和当前种子点的高斯曲率的差值小于预设值。以及,该工控机可将目标邻域点加入到当前第一区域点云集合中。
例如,该工控机可将第一子标记区域中的所有种子点都加入到当前第一区域点云集合中。对于第一子标记区域中每个种子点,该工控机可搜索其在第二预设半径范围内所有第二邻域点。以及,该工控机还可通过第二邻域点的曲率、法向量和点云密度,评估是否可加入到当前第一区域点云集合中。
若当前第二邻域点满足以下两个要求,则可将第二邻域点加入到当前第一区域点云集合中:一个要求是第二邻域点的邻域密度大于预设邻域密度,另一个要求是第二邻域点的法向量和当前种子点的法向量之间的夹角小于第二预设角(或者第二邻域点的高斯曲率和当前种子点的高斯曲率的差值小于预设值)。
在第一子标记区域的所有种子点都执行上述步骤之后,则表明当前区域已经分割完毕,则工控机可设置新的区域点云集合,以对下一个子标记区域重复执行上述步骤,直至所有的子标记区域都遍历完毕,则停止循环。
应理解,第二预设半径的具体值、预设邻域密度的具体值、第二预设角的具体值和预设值的具体值等均可根据实际需求来进行设置,本申请实施例并不局限于此。
这里需要说明的是,步骤S240中的区域生长只对第一子标记区域进行处理,其他区域的点可以作为点融入到第一子标记区域中。
步骤S250,工控机对多个区域点云集合中每个区域点云集合进行区域合并,获得多个合并区域。其中,多个合并区域中每个合并区域均与软包垛中的一个软包对应。
应理解,工控机对多个区域点云集合中每个区域点云集合进行区域合并的具体过程可根据实际需求来进行设置,本申请实施例并不局限于此。
可选地,该工控机可基于排序后的三维点云的结构,从排序后的三维点云的结构的有效区域中确定当前区域点云集合的所有邻域。其中,有效区域可包括第一子标记区域和第二子标记区域,以及当前区域点云集合为多个区域点云集合中任意一个区域点云集合。以及,该工控机可从所有邻域中筛选出目标邻域。其中,目标邻域的种子点的法向量和当前区域点云集合的种子点的法向量之间的夹角小于第三预设角,并且目标邻域中靠近当前区域点云集合的第一边缘和当前区域点云集合中靠近目标邻域的第二边缘之间的平均距离小于预设距离。以及,该工控机可将当前区域点云集合和目标邻域进行区域合并(或者说区域合并),以获得一个合并区域。
例如,该工控机可从所有区域点云集合中随机选择一个区域点云集合作为当前区域点云集合,以及从排序后的三维点云的结构的有效区域中确定当前区域点云集合的邻域,即该当前区域点云集合对应的邻域为第一子标记区域和/或第二子标记区域。
以及,若当前邻域满足以下两个条件,则可将当前领域和当前区域点云集合进行合并:一个条件是邻域的种子点的法向量和当前区域点云集合的种子点(例如,任意一个种子点或者指定种子点)的法向量之间的夹角小于第三预设角,并且该第三预设角可小于第二预设角;另外一个条件是邻域中靠近当前区域点云集合(或者说当前区域点云集合对应的区域)的第一边缘和当前区域点云集合中靠近目标邻域的第二边缘之间的平均距离小于预设距离,即两个区域的最近边缘的平均距离需小于预设距离(例如,可确定两个区域的最近边缘附近的种子点,并且两个最近边缘附近的种子点的平均距离小于预设距离)。
在当前区域点云集合按照上述步骤对其所有邻域判断完成后,可对下一个区域点云集合继续执行上述步骤,直至所有区域点云集合遍历完。
应理解,第三预设角的具体值和预设距离的具体值均可根据实际需求来进行设置,本申请实施例并不局限于此。
步骤S260,工控机对每个合并区域进行后处理,获得软包垛中每个软包对应的抓取位置和姿态。其中,每个软包对应的姿态是指每个软包的姿态,并且该每个软包对应的姿态可用于转换为机器人的抓取姿态。
应理解,工控机对每个合并区域进行后处理的步骤可根据实际需求来进行设置,本申请实施例并不局限于此。
可选地,工控机可对当前合并区域进行二维投影,获得二维投影图像,其中,当前合并区域为多个合并区域中任意一个合并区域,以及工控机还可计算二维投影图像的最小包围矩形,并基于最小包围矩形,确定当前软包的姿态,以及工控机还可将最小包围矩形的中心点做为当前软包对应的抓取位置。
例如,工控机可对当前合并区域进行二维投影,获得2D投影图像。以及,该工控机还可计算2D投影图像的最小包围矩形。并且,该工控机还可将最小矩形的长边作为X方向,以及该工控机还可将该最小包围矩形中所有有效点的拟合平面的法向量作为Y方向,以及该工控机还可根据X方向和Y方向的叉积,确定为Z方向。以及,该工控机可根据X方向、Y方向和Z方向,确定当前合并区域对应的当前软包的姿态,并可将最小包围矩形的中心点作为当前软包的抓取位置,具体可参见图5所示。例如,图5中示出了软包1、软包2、软包3和软包4,并且图5还示出了上述四个软包对应的最小包围矩阵(例如,软包1上标记的矩形框表示其对应的最小包围矩阵;软包2上标记的矩形框表示其对应的最小包围矩阵等),以及图5还示出了上述四个软包对应的抓取位置(例如,软包1上标记的十字形表示其对应的抓取位置;软包2上标记的十字形表示其对应的抓取位置等)。
步骤S270,工控机将每个软包对应的抓取位置和姿态的数据格式转换为机器人所需的数据格式。其中,机器人所需的数据格式一般为用xyz和欧拉角结合的方式(x,y,z,rx,ry,rz)。其中rx,ry和rz分别表示欧拉角对应的角度信息。
应理解,工控机将每个软包对应的抓取位置和姿态的数据格式转换为机器人所需的数据格式可根据实际需求来进行设置,本申请实施例并不局限于此。
这里需要说明的是,机器人所需的数据格式用于表示机器人的抓取位置和机器人的抓取姿态。
因此,本申请通过3D相机获取三维点云数据,并基于曲率估计对软包3D点云数据进行分割和定位,无需使用2D纹理信息,有效地解决了软包易变形和难分割等问题。
此外,本申请同时采用了索引树的方式,有效地计算出抓取点的位置和姿态信息,速度快且精度较高。
应理解,上述软包分割定位方法仅是示例性的,本领域技术人员根据上述的方法可以进行各种变形,该变形之后的方案也属于本申请的保护范围。
本申请还提供一种工控机,包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,处理器执行方法实施例的方法。
由于本申请上述实施例所描述的工控机,为实施本申请上述实施例的方法所采用的工控机,故而基于本申请上述实施例所描述的方法,本领域所属技术人员能够了解该工控机的具体结构及变形,因而在此不再赘述。凡是本申请上述实施例的方法所采用的系统/装置都属于本申请所欲保护的范围。
本领域内的技术人员应明白,本发明的实施例可提供为方法、系统或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例,或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。
应当注意的是,在权利要求中,不应将位于括号之间的任何附图标记理解成对权利要求的限制。词语“包含”不排除存在未列在权利要求中的部件或步骤。位于部件之前的词语“一”或“一个”不排除存在多个这样的部件。本发明可以借助于包括有若干不同部件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的权利要求中,这些装置中的若干个可以是通过同一个硬件来具体体现。词语第一、第二、第三等的使用,仅是为了表述方便,而不表示任何顺序。可将这些词语理解为部件名称的一部分。
此外,需要说明的是,在本说明书的描述中,术语“一个实施例”、“一些实施例”、“实施例”、“示例”、“具体示例”或“一些示例”等的描述,是指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和合并。
尽管已描述了本发明的优选实施例,但本领域的技术人员在得知了基本创造性概念后,则可对这些实施例作出另外的变更和修改。所以,权利要求应该解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种修改和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也应该包含这些修改和变型在内。
Claims (10)
1.一种软包分割定位方法,其特征在于,包括:
获取软包垛的原始三维点云;
对所述原始三维点云进行预处理,获得预处理后的三维点云中每个点的点云特征数据;其中,所述点云特征数据包括法向量和高斯曲率;
基于所述每个点的法向量和高斯曲率,从所述预处理后的三维点云中选取种子点;
分别对所述预处理后的三维点云中包含所述种子点的每个第一子标记区域进行区域生长,获得多个区域点云集合;其中,所述第一子标记区域是对所述原始三维点云进行分割并进行标记后得到的,所述多个区域点云集合中每个区域点云集合均与一个第一子标记区域对应;
对所述多个区域点云集合中每个区域点云集合进行区域合并,获得多个合并区域;其中,所述多个合并区域中每个合并区域均与所述软包垛中的一个软包对应;
对所述每个合并区域进行后处理,获得所述软包垛中每个软包对应的抓取位置和姿态。
2.根据权利要求1所述的软包分割定位方法,其特征在于,所述对所述原始三维点云进行预处理,获得预处理后的三维点云中每个点的点云特征数据,包括:
对所述原始三维点云进行下采样处理,获得下采样后的三维点云;
对所述下采样后的三维点云进行去噪处理,获得去噪后的三维点云;
计算所述去噪后的三维点云中每个点的点云特征数据。
3.根据权利要求2所述的软包分割定位方法,其特征在于,所述点云特征数据还包括邻域密度;所述计算所述去噪后的三维点云中每个点的点云特征数据,包括:
确定所述去噪后的三维点云中当前点在第一预设半径范围内所有第一邻域点,并基于所述所有第一邻域点,确定所述当前点的邻域密度;其中,所述当前点为所述去噪后的三维点云中任意一个点;
对所述所有第一邻域点进行平面拟合,以确定所述当前点的法向量;
对所述所有第一邻域点进行球面拟合,以确定所述当前点的高斯曲率。
4.根据权利要求2所述的软包分割定位方法,其特征在于,所述基于所述每个点的法向量和高斯曲率,从所述预处理后的三维点云中选取种子点,包括:
依次比较所述预处理后的三维点云的每个点的高斯曲率和第一预设高斯曲率的大小,并将所述高斯曲率小于所述第一预设高斯曲率的点作为备选种子点;
依次比较所述备选种子点的法向量和机器人坐标系的Z向的标准法向量之间的夹角和第一预设角的大小,并将所述夹角小于所述第一预设角的备选种子点作为所述种子点。
5.根据权利要求4所述的软包分割定位方法,其特征在于,所述软包分割定位方法还包括:
将所述原始三维点云均匀划分为多个子点云区域;
对所述多个子点云区域中每个子点云区域进行标记,以获得多个标记区域;其中,所述多个标记区域包括第一子标记区域、第二子标记区域和第三子标记区域,所述第一子标记区域为包含所述种子点的子点云区域,并且所述第二子标记区域为包含点但不包含所述种子点的子点云区域,以及所述第三子标记区域为不包含点的子点云区域;
对所述多个标记区域进行排序,获得排序后的三维点云。
6.根据权利要求5所述的软包分割定位方法,其特征在于,所述分别对所述预处理后的三维点云中包含所述种子点的每个第一子标记区域进行区域生长,获得多个区域点云集合,包括:
将第一子标记区域的所有种子点加入到当前第一区域点云集合;其中,所述第一子标记区域为多个第一子标记区域中任意一个第一子标记区域,并且所述当前第一区域点云集合为与所述第一子标记区域对应的区域点云集合;
确定所述第一子标记区域的当前种子点在第二预设半径范围内所有第二邻域点;其中,所述当前种子点为所述第一子标记区域的所有种子点中任意一个种子点;
从所述所有第二邻域点中筛选出目标邻域点;其中,所述目标邻域点的邻域密度大于预设邻域密度,并且所述目标邻域点的法向量和所述当前种子点的法向量之间的夹角小于第二预设角或者所述目标邻域点的高斯曲率和所述当前种子点的高斯曲率的差值小于预设值;
将所述目标邻域点加入到所述当前第一区域点云集合中。
7.根据权利要求5所述的软包分割定位方法,其特征在于,所述对所述多个区域点云集合中每个区域点云集合进行区域合并,获得多个合并区域,包括:
基于所述排序后的三维点云的结构,从所述排序后的三维点云的有效区域中确定当前区域点云集合的所有邻域;其中,所述有效区域包括所述第一子标记区域和所述第二子标记区域,并且所述当前区域点云集合为所述多个区域点云集合中任意一个区域点云集合;
从所述所有邻域中筛选出目标邻域;其中,所述目标邻域的种子点的法向量和所述当前区域点云集合的种子点的法向量之间的夹角小于第三预设角,并且所述目标邻域中靠近所述当前区域点云集合的第一边缘和所述当前区域点云集合中靠近所述目标邻域的第二边缘之间的平均距离小于预设距离;
将所述当前区域点云集合和所述目标邻域进行区域合并,以获得一个合并区域。
8.根据权利要求1所述的软包分割定位方法,其特征在于,所述对所述每个合并区域进行后处理,获得所述软包垛中每个软包对应的抓取位置和姿态,包括:
对当前合并区域进行二维投影,获得二维投影图像;其中,所述当前合并区域为所述多个合并区域中任意一个合并区域;
计算所述二维投影图像的最小包围矩形,并基于所述最小包围矩形,确定所述当前软包的姿态;
将所述最小包围矩形的中心点做为当前软包对应的抓取位置。
9.一种工控机,其特征在于,包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述权利要求1至8中任一所述软包分割定位方法的步骤。
10.一种机器人抓取系统,其特征在于,包括如权利要求9所述的工控机。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211249494.8A CN115330819B (zh) | 2022-10-12 | 2022-10-12 | 一种软包分割定位方法、工控机和机器人抓取系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211249494.8A CN115330819B (zh) | 2022-10-12 | 2022-10-12 | 一种软包分割定位方法、工控机和机器人抓取系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115330819A true CN115330819A (zh) | 2022-11-11 |
CN115330819B CN115330819B (zh) | 2023-02-10 |
Family
ID=83914695
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211249494.8A Active CN115330819B (zh) | 2022-10-12 | 2022-10-12 | 一种软包分割定位方法、工控机和机器人抓取系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115330819B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115908426A (zh) * | 2023-02-22 | 2023-04-04 | 江苏金恒信息科技股份有限公司 | 一种基于三维点云定位算法的板材试样加工方法及系统 |
CN115995013A (zh) * | 2023-03-21 | 2023-04-21 | 江苏金恒信息科技股份有限公司 | 覆盖剂添加方法、装置、计算机设备和存储介质 |
CN116051540A (zh) * | 2023-03-06 | 2023-05-02 | 武汉科技大学 | 基于点云模型的互感器接线端子定位位姿获取方法及系统 |
CN116883404A (zh) * | 2023-09-07 | 2023-10-13 | 泰州市乐太食品有限公司 | 一种用于食品生产包装的标签贴合效果检测方法 |
CN117495891A (zh) * | 2023-12-29 | 2024-02-02 | 法奥意威(苏州)机器人系统有限公司 | 点云边缘检测方法、装置和电子设备 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101877128A (zh) * | 2009-12-23 | 2010-11-03 | 中国科学院自动化研究所 | 一种三维场景中不同物体的分割方法 |
CN109670493A (zh) * | 2017-10-13 | 2019-04-23 | 南京敏光视觉智能科技有限公司 | 一种机器人视觉定位传感器 |
US20190340447A1 (en) * | 2018-05-02 | 2019-11-07 | Tusimple, Inc. | Curb detection by analysis of reflection images |
CN111232664A (zh) * | 2020-03-18 | 2020-06-05 | 上海载科智能科技有限公司 | 工业机器人应用软包拆垛卸车码垛装置及拆垛卸车码垛的方法 |
CN113012161A (zh) * | 2021-03-05 | 2021-06-22 | 华南理工大学 | 一种基于凸性区域生长的堆叠散乱目标点云分割方法 |
CN113269791A (zh) * | 2021-04-26 | 2021-08-17 | 西安交通大学 | 一种基于边缘判定与区域生长的点云分割方法 |
-
2022
- 2022-10-12 CN CN202211249494.8A patent/CN115330819B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101877128A (zh) * | 2009-12-23 | 2010-11-03 | 中国科学院自动化研究所 | 一种三维场景中不同物体的分割方法 |
CN109670493A (zh) * | 2017-10-13 | 2019-04-23 | 南京敏光视觉智能科技有限公司 | 一种机器人视觉定位传感器 |
US20190340447A1 (en) * | 2018-05-02 | 2019-11-07 | Tusimple, Inc. | Curb detection by analysis of reflection images |
CN111232664A (zh) * | 2020-03-18 | 2020-06-05 | 上海载科智能科技有限公司 | 工业机器人应用软包拆垛卸车码垛装置及拆垛卸车码垛的方法 |
CN113012161A (zh) * | 2021-03-05 | 2021-06-22 | 华南理工大学 | 一种基于凸性区域生长的堆叠散乱目标点云分割方法 |
CN113269791A (zh) * | 2021-04-26 | 2021-08-17 | 西安交通大学 | 一种基于边缘判定与区域生长的点云分割方法 |
Non-Patent Citations (2)
Title |
---|
JINQUAN LI ET AL.: "A Workpiece Localization Method for Robotic De-Palletizing Based on Region Growing and PPHT", 《IEEE ACCESS》 * |
秦硕: "基于三维视觉的混合垛拆垛点云分割与位姿估计技术研究", 《知网》 * |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115908426A (zh) * | 2023-02-22 | 2023-04-04 | 江苏金恒信息科技股份有限公司 | 一种基于三维点云定位算法的板材试样加工方法及系统 |
CN115908426B (zh) * | 2023-02-22 | 2023-06-23 | 江苏金恒信息科技股份有限公司 | 一种基于三维点云定位算法的板材试样加工方法及系统 |
CN116051540A (zh) * | 2023-03-06 | 2023-05-02 | 武汉科技大学 | 基于点云模型的互感器接线端子定位位姿获取方法及系统 |
CN116051540B (zh) * | 2023-03-06 | 2023-07-14 | 武汉科技大学 | 基于点云模型的互感器接线端子定位位姿获取方法及系统 |
CN115995013A (zh) * | 2023-03-21 | 2023-04-21 | 江苏金恒信息科技股份有限公司 | 覆盖剂添加方法、装置、计算机设备和存储介质 |
CN116883404A (zh) * | 2023-09-07 | 2023-10-13 | 泰州市乐太食品有限公司 | 一种用于食品生产包装的标签贴合效果检测方法 |
CN116883404B (zh) * | 2023-09-07 | 2023-12-26 | 泰州市乐太食品有限公司 | 一种用于食品生产包装的标签贴合效果检测方法 |
CN117495891A (zh) * | 2023-12-29 | 2024-02-02 | 法奥意威(苏州)机器人系统有限公司 | 点云边缘检测方法、装置和电子设备 |
CN117495891B (zh) * | 2023-12-29 | 2024-04-30 | 法奥意威(苏州)机器人系统有限公司 | 点云边缘检测方法、装置和电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN115330819B (zh) | 2023-02-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN115330819B (zh) | 一种软包分割定位方法、工控机和机器人抓取系统 | |
US11413753B2 (en) | Robotic system control method and controller | |
US10518410B2 (en) | Object pickup strategies for a robotic device | |
US9659217B2 (en) | Systems and methods for scale invariant 3D object detection leveraging processor architecture | |
Domae et al. | Fast graspability evaluation on single depth maps for bin picking with general grippers | |
US9483707B2 (en) | Method and device for recognizing a known object in a field of view of a three-dimensional machine vision system | |
US9802317B1 (en) | Methods and systems for remote perception assistance to facilitate robotic object manipulation | |
US20210187741A1 (en) | System and method for height-map-based grasp execution | |
CN113351522B (zh) | 物品分拣方法、装置及系统 | |
CN112802105A (zh) | 对象抓取方法及装置 | |
DE102020111139A1 (de) | Verfeinerung nach Erfassung basierend auf Kanten und mehrdimensionalen Ecken | |
CN113284178B (zh) | 物体码垛方法、装置、计算设备及计算机存储介质 | |
CN115321090B (zh) | 机场行李自动接取方法、装置、设备、系统及介质 | |
CN112802107A (zh) | 基于机器人的夹具组的控制方法及装置 | |
CN116529760A (zh) | 抓取控制方法、装置、电子设备和存储介质 | |
JP5544464B2 (ja) | 対象物の3次元位置・姿勢認識装置及びその方法 | |
Holz et al. | Fast edge-based detection and localization of transport boxes and pallets in rgb-d images for mobile robot bin picking | |
CN114800533B (zh) | 一种用于工业机器人的分拣控制方法及系统 | |
CN116175542B (zh) | 确定夹具抓取顺序的方法、装置、电子设备和存储介质 | |
EP4014160B1 (en) | Method and apparatus for determining lock type | |
Thamer et al. | A 3d-robot vision system for automatic unloading of containers | |
CN116197888B (zh) | 物品位置确定方法、装置、电子设备和存储介质 | |
CN116175541B (zh) | 抓取控制方法、装置、电子设备和存储介质 | |
CN113298866B (zh) | 物体分类方法及装置 | |
CN118220723B (zh) | 基于机器视觉的精确码垛方法及系统 |
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 |