长方体状物品装箱方法、装置、电子设备及存储介质与流程

文档序号:28815929发布日期:2022-02-09 06:02阅读:114来源:国知局
长方体状物品装箱方法、装置、电子设备及存储介质与流程

1.本技术涉及机器人控制领域,具体而言,涉及一种长方体状物品装箱方法、装置、电子设备及存储介质。


背景技术:

2.目前,有些设备(如电子设备)在包装时是用多个长方体状小箱子把设备的各部件分别包装后,把同一个设备的所有长方体状小箱子装入一个长方体状大箱子中。传统方法中,是通过人工把长方体状小箱子装入长方体状大箱子中的,但工作效率低。为此,有些工厂中使用机器人来完成把长方体状小箱子装入长方体状大箱子的装箱作业,但目前的机器人拾取与放置的算法大多不够完善、精准,实用性和通用性较差。


技术实现要素:

3.本技术的目的在于提供一种长方体状物品装箱方法、装置、电子设备及存储介质,其实用性和通用性好。
4.第一方面,本技术提供了一种长方体状物品装箱方法,应用于装箱机器人,所述装箱机器人包括第一rgbd相机和第二rgbd相机,所述第一rgbd相机设置在所述装箱机器人的末端,所述第二rgbd相机设置在目标箱体的正上方并用于采集所述目标箱体的图像,所述目标箱体为长方体状箱体;包括步骤:a1.通过所述第一rgbd相机获取各待装箱物品的尺寸和顶面位姿信息;所述待装箱物品为长方体状物品;所述尺寸包括长度、宽度和高度;a2. 根据所述第二rgbd相机采集的图像生成一个掩膜矩阵;所述掩膜矩阵的尺寸与所述目标箱体的装箱区域在所述第二rgbd相机采集的图像中的像素尺寸相同;a3.依次以各所述待装箱物品为目标物品,对比所述装箱区域各处的剩余高度信息与所述目标物品的高度以更新所述掩膜矩阵,利用更新后的所述掩膜矩阵确定所述装箱区域的候选区域,在所述候选区域中搜索有效空间以把所述目标物品放入所述有效空间;所述候选区域的剩余高度不小于所述目标物品的高度。
5.该长方体状物品装箱方法,通过第一rgbd相机确定待装箱物品的尺寸和顶面位姿信息,通过第二rgbd相机获取目标箱体的装箱区域各处的剩余高度信息,利用与装箱区域像素尺寸相同的掩膜矩阵对装箱区域的深度图像进行掩膜操作得以确定剩余高度不小于目标物品高度的候选区域,最后再从候选区域搜索可放入目标物品的有效空间,从而可准确地把目标物品放入可容纳该目标物品的位置,实现对各待装箱物品的自动装箱,具有较好的实用性和通用性。
6.优选地,所述掩膜矩阵的各元素值的初始值均为1;步骤a3包括:依次以各所述待装箱物品为目标物品并执行以下步骤:a301.通过所述第二rgbd相机获取所述装箱区域的深度图像和所述装箱区域各处的剩余高度信息;
a302.在所述掩膜矩阵中,把与所述装箱区域的剩余高度小于所述目标物品的高度的位置相对应的元素值改为0;a303.利用所述掩膜矩阵对所述装箱区域的深度图像进行掩膜操作,得到掩膜图像,并以所述掩膜图像中的像素值为非零的区域为所述候选区域;a304.根据所述目标物品的长度和宽度在所述候选区域中搜索有效空间;a305.根据所述目标物品的顶面位姿信息抓取所述目标物品并放入所述有效空间。
7.优选地,步骤a3之前,还包括步骤:根据各所述待装箱物品的长度和宽度计算各所述待装箱物品的顶面面积;根据所述顶面面积的大小对各所述待装箱物品进行降序排序;步骤a3中,按排序顺序依次以各所述待装箱物品为目标物品。
8.从而,顶面面积大的物品始终处于顶面面积小的物品的下方,物品叠置后不容易倾覆。
9.优选地,步骤a301包括:获取由所述第二rgbd相机采集的所述目标箱体的第二图像;所述第二图像包括第二彩色图像和第二深度图像;在所述第二彩色图像中对所述目标箱体的装箱区域进行分割,以获取装箱区域的边界;根据所述边界对所述第二深度图像进行分割,得到所述装箱区域的深度图像;从所述装箱区域的深度图像中提取各像素点的实时深度数据;用各所述像素点的初始深度数据减去实时深度数据得到各所述像素点的已用高度数据,再分别用所述目标箱体的高度减去各所述像素点的已用高度数据得到所述装箱区域各像素点的剩余高度信息。
10.优选地,步骤a304包括:采用与所述目标物品的顶面尺寸相同的窗口,以滑动窗口方法在所述候选区域中搜索可容纳所述窗口的有效空间。
11.优选地,步骤a304还包括:若搜索到的有效空间有多个,则以剩余高度最大的所述有效空间为最终的有效空间。
12.从而可优先填满下层空间,有利于减小物品叠放时其底部没有全部被支撑的几率,从而进一步降低物品叠放后倾覆的概率;也可减小由于上层物品遮挡下层空隙而导致下层空隙无法被有效利用的几率,从而有利于提高目标箱体的空间利用率。
13.优选地,步骤a305包括:根据所述目标物品的高度和顶面位姿信息获取抓取点位姿信息;获取所述有效空间的位姿信息;根据所述目标物品的高度和所述有效空间的位姿信息获取放置点位姿信息;根据所述抓取点位姿信息和所述放置点位姿信息,从抓取点抓取所述目标物品并移动至放置点处进行放置。
14.第二方面,本技术提供了一种长方体状物品装箱装置,应用于装箱机器人,所述装
箱机器人包括第一rgbd相机和第二rgbd相机,所述第一rgbd相机设置在所述装箱机器人的末端,所述第二rgbd相机设置在目标箱体的正上方并用于采集所述目标箱体的图像,所述目标箱体为长方体状箱体;包括:第一获取模块,用于通过所述第一rgbd相机获取各待装箱物品的尺寸和顶面位姿信息;所述待装箱物品为长方体状物品;所述尺寸包括长度、宽度和高度;掩膜矩阵生成模块,用于根据所述第二rgbd相机采集的图像生成一个掩膜矩阵;所述掩膜矩阵的尺寸与所述目标箱体的装箱区域在所述第二rgbd相机采集的图像中的像素尺寸相同;第一执行模块,用于依次以各所述待装箱物品为目标物品,对比所述装箱区域各处的剩余高度信息与所述目标物品的高度以更新所述掩膜矩阵,利用更新后的所述掩膜矩阵确定所述装箱区域的候选区域,在所述候选区域中搜索有效空间以把所述目标物品放入所述有效空间;所述候选区域的剩余高度不小于所述目标物品的高度。
15.该长方体状物品装箱装置,通过第一rgbd相机确定待装箱物品的尺寸和顶面位姿信息,通过第二rgbd相机获取目标箱体的装箱区域各处的剩余高度信息,利用与装箱区域像素尺寸相同的掩膜矩阵对装箱区域的深度图像进行掩膜操作得以确定剩余高度不小于目标物品高度的候选区域,最后再从候选区域搜索可放入目标物品的有效空间,从而可准确地把目标物品放入可容纳该目标物品的位置,实现对各待装箱物品的自动装箱,具有较好的实用性和通用性。
16.第三方面,本技术提供了一种电子设备,包括处理器和存储器,所述存储器存储有所述处理器可执行的计算机程序,所述处理器执行所述计算机程序时,运行如前文所述长方体状物品装箱方法中的步骤。
17.第四方面,本技术提供了一种存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时运行如前文所述长方体状物品装箱方法中的步骤。
18.有益效果:本技术提供的长方体状物品装箱方法、装置、电子设备及存储介质,通过第一rgbd相机确定待装箱物品的尺寸和顶面位姿信息,通过第二rgbd相机获取目标箱体的装箱区域各处的剩余高度信息,利用与装箱区域像素尺寸相同的掩膜矩阵对装箱区域的深度图像进行掩膜操作得以确定剩余高度不小于目标物品高度的候选区域,最后再从候选区域搜索可放入目标物品的有效空间,从而可准确地把目标物品放入可容纳该目标物品的位置,实现对各待装箱物品的自动装箱,具有较好的实用性和通用性。
19.本技术的其他特征和优点将在随后的说明书阐述,并且,部分地从说明书中变得显而易见,或者通过实施本技术了解。
附图说明
20.图1为本技术实施例提供的长方体状物品装箱方法的流程图。
21.图2为本技术实施例提供的长方体状物品装箱装置的结构示意图。
22.图3为本技术实施例提供的电子设备的结构示意图。
具体实施方式
23.下面将结合本技术实施例中附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本技术实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本技术的实施例的详细描述并非旨在限制要求保护的本技术的范围,而是仅仅表示本技术的选定实施例。基于本技术的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本技术保护的范围。
24.应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本技术的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
25.请参照图1,图1是本技术一些实施例中的一种长方体状物品装箱方法,应用于装箱机器人,装箱机器人包括第一rgbd相机和第二rgbd相机,第一rgbd相机设置在装箱机器人的末端,第二rgbd相机设置在目标箱体的正上方并用于采集目标箱体的图像,目标箱体为长方体状箱体;包括步骤:a1.通过第一rgbd相机获取各待装箱物品的尺寸和顶面位姿信息;待装箱物品为长方体状物品;尺寸包括长度、宽度和高度;a2. 根据第二rgbd相机采集的图像生成一个掩膜矩阵;掩膜矩阵的尺寸与目标箱体的装箱区域(即目标箱体的内腔区域)在第二rgbd相机采集的图像中的像素尺寸相同(例如,假设目标箱体的装箱区域在第二rgbd相机采集的图像中有n行m列像素点,即像素尺寸为n*m,则掩膜矩阵对应地有n行m列元素);a3.依次以各待装箱物品为目标物品,对比装箱区域各处的剩余高度信息与目标物品的高度以更新掩膜矩阵,利用更新后的掩膜矩阵确定装箱区域的候选区域,在候选区域中搜索有效空间以把目标物品放入该有效空间;该候选区域的剩余高度不小于目标物品的高度。
26.该长方体状物品装箱方法,通过第一rgbd相机确定待装箱物品的尺寸和顶面位姿信息,通过第二rgbd相机获取目标箱体的装箱区域各处的剩余高度信息,利用与装箱区域像素尺寸相同的掩膜矩阵对装箱区域的深度图像进行掩膜操作得以确定剩余高度不小于目标物品高度的候选区域,最后再从候选区域搜索可放入目标物品的有效空间,从而可准确地把目标物品放入可容纳该目标物品的位置,实现对各待装箱物品的自动装箱,具有较好的实用性和通用性。
27.优选地,掩膜矩阵的各元素值的初始值均为1;步骤a3包括:依次以各待装箱物品为目标物品并执行以下步骤:a301.通过第二rgbd相机获取装箱区域的深度图像和装箱区域各处的剩余高度信息;a302.在掩膜矩阵中,把与装箱区域的剩余高度小于目标物品的高度的位置相对应的元素值改为0;a303.利用掩膜矩阵对装箱区域的深度图像进行掩膜操作,得到掩膜图像,并以掩膜图像中的像素值为非零的区域为候选区域;a304.根据目标物品的长度和宽度在候选区域中搜索有效空间;
a305.根据目标物品的顶面位姿信息抓取目标物品并放入有效空间。
28.在实际应用中,可把待装箱物品垂直放置在一个取件台上(即按照待装箱物品的底面紧贴取件台放置),把目标箱体垂直放置在一个放置台上(即目标箱体开口朝上地放置在放置台上,该目标箱体的底面紧贴放置台放置),第二rgbd相机朝下地设置在放置台的正上方,且第二rgbd相机的光轴垂直于放置台台面。为了防止因为反光而导致rgbd相机采集的深度图像数据不准确,可在取件台和放置台的台面上设置深色(如黑色)背景幕布。
29.在一些实施方式中,步骤a1包括:获取由第一rgbd相机垂直向下地采集的各待装箱物品的第一图像;第一图像包括第一彩色图像和第一深度图像;在第一彩色图像中分割出各待装箱物品的顶面图像,并获取该顶面图像各像素点的像素坐标数据;根据分割结果,在第一深度图像中提取该顶面图像各像素点的深度数据;根据该顶面图像各像素点的像素坐标数据获取对应的待装箱物品的长度、宽度和该待装箱物品顶面在第一相机坐标系(即第一rgbd相机的相机坐标系)下的顶面位姿信息;根据该顶面图像各像素点的深度数据获取对应的待装箱物品的高度。
30.在一些优选实施例中,由装箱机器人带动第一rgbd相机至预设的拍摄位姿点采集各待装箱物品的第一图像,从而在计算待装箱物品的长度和宽度时,可直接用第一像素尺寸(即第一图像中的像素尺寸)乘以预设的第一转换系数(实测得到)即可得到实际长度和宽度,方便快捷。但不限于此。
31.其中,在第一彩色图像中分割出各待装箱物品的顶面图像为现有技术(例如通过边缘检测方法获取各待装箱物品的外轮廓线,再根据外轮线把各待装箱物品的顶面图像分割出来),此处不对其步骤进行详述。
32.其中,由于第一彩色图像的像素点位置和第一深度图像的像素点位置是一一对应的,因此,根据分割出的顶面图像的各像素点的像素坐标数据,可直接从第一深度图像对应的像素点处提取其深度数据。
33.其中,根据该顶面图像各像素点的像素坐标数据获取对应的待装箱物品的长度、宽度的步骤包括:根据顶面图像的角点的像素坐标计算该顶面图像的第一像素长度和第一像素宽度;获取第一像素尺寸(即第一图像中的像素尺寸)和实际尺寸的第一转换系数(对于在预设的拍摄位姿点采集各待装箱物品的第一图像的情况,该第一转换系数为预设值;对于不在预设的拍摄位姿点采集各待装箱物品的第一图像的情况,则根据顶面图像各像素点的深度数据均值计算该第一转换系数,其中具体的计算方法为现有技术);用该顶面图像的第一像素长度和第一像素宽度分别乘以该第一转换系数,得到对应的待装箱物品的长度和宽度。
34.其中,根据该顶面图像各像素点的像素坐标数据获取该待装箱物品顶面在第一相机坐标系下的顶面位姿信息的具体方法为现有技术,此处不对其进行详述。
35.其中,根据该顶面图像各像素点的深度数据获取对应的待装箱物品的高度的步骤包括:
计算该顶面图像各像素点的深度数据的第一均值;获取第一深度图像中的背景部分的像素点的深度数据的第二均值;用第二均值减去第一均值得到对应的待装箱物品的高度。
36.在实际应用中,也可先根据第一深度图像进行各待装箱物品的顶面图像的分割(例如根据各像素点的深度数据,采用聚类算法对各待装箱物品的顶面图像进行聚类,从而实现分割),再根据分割结果在第一彩色图像中提取该顶面图像各像素点的像素坐标数据。
37.在本实施例中,步骤a2包括:获取由第二rgbd相机采集的目标箱体的第三彩色图像;利用第三彩色图像中对目标箱体的装箱区域进行分割,以获取装箱区域的第三像素尺寸;根据装箱区域的第三像素尺寸生成一个掩膜矩阵,并把该掩膜矩阵的各元素值均赋值为1。
38.其中,掩膜矩阵的元素数量和位置与分割出的装箱区域图像的像素点数量和位置一一对应。
39.在一些优选实施方式中,步骤a3之前,还包括步骤:a4.根据各待装箱物品的长度和宽度计算各待装箱物品的顶面面积;a5.根据顶面面积的大小对各待装箱物品进行降序排序;进而,步骤a3中,按排序顺序依次以各待装箱物品为目标物品。
40.从而,顶面面积大的物品始终处于顶面面积小的物品的下方,物品叠置后不容易倾覆,进一步提高该装箱方法的实用性。
41.在一些实施方式中,步骤a301包括:获取由第二rgbd相机采集的目标箱体的第二图像;第二图像包括第二彩色图像和第二深度图像;在第二彩色图像中对目标箱体的装箱区域进行分割,以获取装箱区域的边界(具体分割方法可采用现有技术,此处不对其进行详述);根据边界对第二深度图像进行分割,得到装箱区域的深度图像;从装箱区域的深度图像中提取各像素点的实时深度数据;用各像素点的初始深度数据减去实时深度数据得到各像素点的已用高度数据,再分别用目标箱体的高度(可预先测得)减去各像素点的已用高度数据得到该装箱区域各像素点的剩余高度信息。
42.其中,剩余高度是指对应像素点位置处的可用空间的高度,剩余高度信息包含该剩余高度的信息,初始深度数据是在没有装入物品时的装箱区域各像素点的深度数据。其中,前文的第三彩色图像是在目标箱体为空箱的状态下采集的图像,而每进行一个目标物品的装箱前均需要获取一个新的第二彩色图像(同时也获取新的第二深度图像),由于进行首个目标物品的装箱前的目标箱体为空箱,因此,对于首个目标物品,该第二彩色图像可以与第三彩色图像是同一个图像(即以第三彩色图像作为首个目标物品对应的第二彩色图像),也可以不是同一个图像,对于后续的其它目标物品,则该第二彩色图像与第三彩色图像不是同一个图像。
43.在步骤a302中,例如,装箱区域的深度图像中的第(i,j)号像素点的剩余高度小于
目标物品的高度,则把掩膜矩阵中对应的第(i,j)号元素的值改为0。
44.其中,步骤a303包括:用掩膜矩阵中的各元素值分别乘以装箱区域的深度图像对应的像素点的像素值,以计算结果更新该装箱区域的深度图像的像素点的像素值,得到掩膜图像。
45.从而,在掩膜图像中,剩余高度小于目标物品的高度的像素点的像素值均为0,其它像素点的像素值保持不变且均为非零值。因此,像素值为非零的区域是满足目标物品对放置空间的高度要求的区域(即候选区域是满足目标物品对放置空间的高度要求的区域),后续只需要在候选区域中搜索有效空间,与每次均在整个装箱区域内进行有效空间搜索的方式相比,可缩小搜索范围,减小数据处理量,提高搜索效率。
46.在本实施例中,步骤a304包括:采用与目标物品的顶面尺寸相同的窗口,以滑动窗口方法在候选区域中搜索可容纳窗口的有效空间。
47.具体地,上述步骤包括:s1.根据第二图像的第二像素尺寸与实际尺寸的第二转换系数(可预先测得)和目标物品的长度及宽度计算目标物品的顶面的第二像素尺寸;s2.根据该目标物品的顶面的第二像素尺寸生成窗口,使该窗口的像素尺寸等于该目标物品的顶面的第二像素尺寸(例如目标物品的顶面的第二像素尺寸为n*m,即有n行m列,则窗口的像素尺寸为n*m);s3.在候选区域内,以从上到下的顺序,逐行地进行搜索,且行与行之间的步长为一个像素点;在每行中,以一个像素点为步长,从左到右进行滑窗搜索;s4.在滑窗过程中,把窗口内填满像素值为非零的像素点的时候的窗口区域标记为有效空间。
48.在进一步的优选实施方式中,当完成一次搜索后没有搜索到有效空间,则可把窗口旋转90
°
,再重新进行搜索(即重复步骤s3-s4)。
49.其中,当搜索到多个有效空间时,可直接以第一个搜索到的有效空间作为最终的有效空间,并把目标物品放置在该最终的有效空间中。
50.在一些优选实施方式中,当搜索到多个有效空间时,可把剩余高度最大的有效空间作为最终的有效空间,并把目标物品放置在该最终的有效空间中;从而,步骤a304还包括:若搜索到的有效空间有多个,则以剩余高度最大的有效空间为最终的有效空间。
51.从而可优先填满下层空间,有利于减小物品叠放时其底部没有全部被支撑的几率,从而进一步降低物品叠放后倾覆的概率;也可减小由于上层物品遮挡下层空隙而导致下层空隙无法被有效利用的几率,从而有利于提高目标箱体的空间利用率。
52.在实际应用中,剩余高度最大的有效空间可能不止一个,此时,可以把剩余高度最大的有效空间中最先搜索到的有效空间为最终的有效空间。
53.优选地,步骤a305包括:根据目标物品的高度和顶面位姿信息获取抓取点位姿信息;获取有效空间的位姿信息;根据目标物品的高度和有效空间的位姿信息获取放置点位姿信息;
根据抓取点位姿信息和放置点位姿信息,从抓取点抓取目标物品并移动至放置点处进行放置。
54.其中,该抓取点位姿信息是在机器人基坐标系下的位姿信息,根据目标物品的高度和顶面位姿信息获取抓取点位姿信息的具体方法为现有技术,此处不对其进行详述。
55.其中,该有效空间的位姿信息是有效空间在第二相机坐标系(即第二rgbd相机的相机坐标系)下的位姿信息,可通过现有技术获取(此处不对其获取方法进行详述);该放置点位姿信息是在机器人基坐标系下的位姿信息,根据目标物品的高度和有效空间的位姿信息获取放置点位姿信息的具体方法为现有技术,此处不对其进行详述。
56.在获取抓取点位姿信息和放置点位姿信息后,可规划从抓取点到放置点的路径,从而使装箱机器人沿该路径移动。
57.在一些优选实施方式中,根据抓取点位姿信息和放置点位姿信息,从抓取点抓取目标物品并移动至放置点处进行放置的步骤包括:移动至第一抓取过渡位姿点;第一抓取过渡位姿点位于目标物品正上方;根据抓取点位姿信息,移动至抓取点抓取目标物品;移动至第二抓取过渡位姿点;第二抓取过渡位姿点位于目标物品正上方;移动至第一放置过渡位姿点;第一放置过渡位姿点位于有效空间正上方;根据放置点位姿信息,移动至放置点进行放置;移动至第二放置过渡位姿点;第二放置过渡位姿点位于有效空间正上方。
58.其中,第一抓取过渡位姿点、第二抓取过渡位姿点、第一放置过渡位姿点和第二放置过渡位姿点的高度可根据实际需要预先设置。
59.通过设置这些过渡点,其优点为:可避开障碍,方便垂直地把物品放入目标箱体中,防止放入物品时该物品与有效空间外的其它物品发生碰撞。
60.由上可知,该长方体状物品装箱方法,通过第一rgbd相机获取各待装箱物品的尺寸和顶面位姿信息;待装箱物品为长方体状物品;尺寸包括长度、宽度和高度;根据第二rgbd相机采集的图像生成一个掩膜矩阵;掩膜矩阵的尺寸与目标箱体的装箱区域在第二rgbd相机采集的图像中的像素尺寸相同;依次以各待装箱物品为目标物品,对比装箱区域各处的剩余高度信息与目标物品的高度以更新掩膜矩阵,利用更新后的掩膜矩阵确定装箱区域的候选区域,在候选区域中搜索有效空间以把目标物品放入该有效空间;该候选区域的剩余高度不小于目标物品的高度;从而可准确地把目标物品放入可容纳该目标物品的位置,实现对各待装箱物品的自动装箱,具有较好的实用性和通用性。
61.请参考图2,本技术提供了一种长方体状物品装箱装置,应用于装箱机器人,装箱机器人包括第一rgbd相机和第二rgbd相机,第一rgbd相机设置在装箱机器人的末端,第二rgbd相机设置在目标箱体的正上方并用于采集目标箱体的图像,目标箱体为长方体状箱体;包括:第一获取模块1,用于通过第一rgbd相机获取各待装箱物品的尺寸和顶面位姿信息;待装箱物品为长方体状物品;尺寸包括长度、宽度和高度;掩膜矩阵生成模块2,用于根据第二rgbd相机采集的图像生成一个掩膜矩阵;掩膜矩阵的尺寸与目标箱体的装箱区域在第二rgbd相机采集的图像中的像素尺寸相同;第一执行模块3,用于依次以各待装箱物品为目标物品,对比装箱区域各处的剩余
高度信息与目标物品的高度以更新掩膜矩阵,利用更新后的掩膜矩阵确定装箱区域的候选区域,在候选区域中搜索有效空间以把目标物品放入该有效空间;该候选区域的剩余高度不小于目标物品的高度。
62.该长方体状物品装箱装置,通过第一rgbd相机确定待装箱物品的尺寸和顶面位姿信息,通过第二rgbd相机获取目标箱体的装箱区域各处的剩余高度信息,利用与装箱区域像素尺寸相同的掩膜矩阵对装箱区域的深度图像进行掩膜操作得以确定剩余高度不小于目标物品高度的候选区域,最后再从候选区域搜索可放入目标物品的有效空间,从而可准确地把目标物品放入可容纳该目标物品的位置,实现对各待装箱物品的自动装箱,具有较好的实用性和通用性。
63.优选地,掩膜矩阵的各元素值的初始值均为1;第一执行模块3用于依次以各待装箱物品为目标物品并执行以下步骤:通过第二rgbd相机获取装箱区域的深度图像和装箱区域各处的剩余高度信息;在掩膜矩阵中,把与装箱区域的剩余高度小于目标物品的高度的位置相对应的元素值改为0;利用掩膜矩阵对装箱区域的深度图像进行掩膜操作,得到掩膜图像,并以掩膜图像中的像素值为非零的区域为候选区域;根据目标物品的长度和宽度在候选区域中搜索有效空间;根据目标物品的顶面位姿信息抓取目标物品并放入有效空间。
64.在实际应用中,可把待装箱物品垂直放置在一个取件台上(即按照待装箱物品的底面紧贴取件台放置),把目标箱体垂直放置在一个放置台上(即目标箱体开口朝上地放置在放置台上,该目标箱体的底面紧贴放置台放置),第二rgbd相机朝下地设置在放置台的正上方,且第二rgbd相机的光轴垂直于放置台台面。为了防止因为反光而导致rgbd相机采集的深度图像数据不准确,可在取件台和放置台的台面上设置深色(如黑色)背景幕布。
65.在一些实施方式中,第一获取模块1用于在通过第一rgbd相机获取各待装箱物品的尺寸和顶面位姿信息的时候,执行:获取由第一rgbd相机垂直向下地采集的各待装箱物品的第一图像;第一图像包括第一彩色图像和第一深度图像;在第一彩色图像中分割出各待装箱物品的顶面图像,并获取该顶面图像各像素点的像素坐标数据;根据分割结果,在第一深度图像中提取该顶面图像各像素点的深度数据;根据该顶面图像各像素点的像素坐标数据获取对应的待装箱物品的长度、宽度和该待装箱物品顶面在第一相机坐标系(即第一rgbd相机的相机坐标系)下的顶面位姿信息;根据该顶面图像各像素点的深度数据获取对应的待装箱物品的高度。
66.在一些优选实施例中,由装箱机器人带动第一rgbd相机至预设的拍摄位姿点采集各待装箱物品的第一图像,从而在计算待装箱物品的长度和宽度时,可直接用第一像素尺寸(即第一图像中的像素尺寸)乘以预设的第一转换系数(实测得到)即可得到实际长度和宽度,方便快捷。但不限于此。
67.其中,在第一彩色图像中分割出各待装箱物品的顶面图像为现有技术(例如通过边缘检测方法获取各待装箱物品的外轮廓线,再根据外轮线把各待装箱物品的顶面图像分
割出来),此处不对其步骤进行详述。
68.其中,由于第一彩色图像的像素点位置和第一深度图像的像素点位置是一一对应的,因此,根据分割出的顶面图像的各像素点的像素坐标数据,可直接从第一深度图像对应的像素点处提取其深度数据。
69.其中,第一获取模块1在根据该顶面图像各像素点的像素坐标数据获取对应的待装箱物品的长度、宽度的时候,执行:根据顶面图像的角点的像素坐标计算该顶面图像的第一像素长度和第一像素宽度;获取第一像素尺寸(即第一图像中的像素尺寸)和实际尺寸的第一转换系数(对于在预设的拍摄位姿点采集各待装箱物品的第一图像的情况,该第一转换系数为预设值;对于不在预设的拍摄位姿点采集各待装箱物品的第一图像的情况,则根据顶面图像各像素点的深度数据均值计算该第一转换系数,其中具体的计算方法为现有技术);用该顶面图像的第一像素长度和第一像素宽度分别乘以该第一转换系数,得到对应的待装箱物品的长度和宽度。
70.其中,根据该顶面图像各像素点的像素坐标数据获取该待装箱物品顶面在第一相机坐标系下的顶面位姿信息的具体方法为现有技术,此处不对其进行详述。
71.其中,第一获取模块1在根据该顶面图像各像素点的深度数据获取对应的待装箱物品的高度的时候,执行:计算该顶面图像各像素点的深度数据的第一均值;获取第一深度图像中的背景部分的像素点的深度数据的第二均值;用第二均值减去第一均值得到对应的待装箱物品的高度。
72.在实际应用中,也可先根据第一深度图像进行各待装箱物品的顶面图像的分割(例如根据各像素点的深度数据,采用聚类算法对各待装箱物品的顶面图像进行聚类,从而实现分割),再根据分割结果在第一彩色图像中提取该顶面图像各像素点的像素坐标数据。
73.在本实施例中,掩膜矩阵生成模块2用于在根据第二rgbd相机采集的图像生成一个掩膜矩阵的时候,执行:获取由第二rgbd相机采集的目标箱体的第三彩色图像;利用第三彩色图像中对目标箱体的装箱区域进行分割,以获取装箱区域的第三像素尺寸;根据装箱区域的第三像素尺寸生成一个掩膜矩阵,并把该掩膜矩阵的各元素值均赋值为1。
74.其中,掩膜矩阵的元素数量和位置与分割出的装箱区域图像的像素点数量和位置一一对应。
75.在一些优选实施方式中,该长方体状物品装箱装置还包括:第一计算模块,用于根据各待装箱物品的长度和宽度计算各待装箱物品的顶面面积;排序模块,用于根据顶面面积的大小对各待装箱物品进行降序排序;进而,第一执行模块3按排序顺序依次以各待装箱物品为目标物品。
76.从而,顶面面积大的物品始终处于顶面面积小的物品的下方,物品叠置后不容易
倾覆,进一步提高该装箱装置的实用性。
77.在一些实施方式中,第一执行模块3在通过第二rgbd相机获取装箱区域的深度图像和装箱区域各处的剩余高度信息的时候,执行:获取由第二rgbd相机采集的目标箱体的第二图像;第二图像包括第二彩色图像和第二深度图像;在第二彩色图像中对目标箱体的装箱区域进行分割,以获取装箱区域的边界(具体分割方法可采用现有技术,此处不对其进行详述);根据边界对第二深度图像进行分割,得到装箱区域的深度图像;从装箱区域的深度图像中提取各像素点的实时深度数据;用各像素点的初始深度数据减去实时深度数据得到各像素点的已用高度数据,再分别用目标箱体的高度(可预先测得)减去各像素点的已用高度数据得到该装箱区域各像素点的剩余高度信息。
78.其中,剩余高度是指对应像素点位置处的可用空间的高度,初始深度数据是在没有装入物品时的装箱区域各像素点的深度数据。其中,前文的第三彩色图像是在目标箱体为空箱的状态下采集的图像,而每进行一个目标物品的装箱前均需要获取一个新的第二彩色图像(同时也获取新的第二深度图像),由于进行首个目标物品的装箱前的目标箱体为空箱,因此,对于首个目标物品,该第二彩色图像可以与第三彩色图像是同一个图像(即以第三彩色图像作为首个目标物品对应的第二彩色图像),也可以不是同一个图像,对于后续的其它目标物品,则该第二彩色图像与第三彩色图像不是同一个图像。
79.第一执行模块3在掩膜矩阵中,把与装箱区域的剩余高度小于目标物品的高度的位置相对应的元素值改为0的时候,例如,装箱区域的深度图像中的第(i,j)号像素点的剩余高度小于目标物品的高度,则把掩膜矩阵中对应的第(i,j)号元素的值改为0。
80.其中,第一执行模块3在利用掩膜矩阵对装箱区域的深度图像进行掩膜操作,得到掩膜图像的时候,执行:用掩膜矩阵中的各元素值分别乘以装箱区域的深度图像对应的像素点的像素值,以计算结果更新该装箱区域的深度图像的像素点的像素值,得到掩膜图像。
81.从而,在掩膜图像中,剩余高度小于目标物品的高度的像素点的像素值均为0,其它像素点的像素值保持不变且均为非零值。因此,像素值为非零的区域是满足目标物品对放置空间的高度要求的区域(即候选区域是满足目标物品对放置空间的高度要求的区域),后续只需要在候选区域中搜索有效空间,与每次均在整个装箱区域内进行有效空间搜索的方式相比,可缩小搜索范围,减小数据处理量,提高搜索效率。
82.在本实施例中,第一执行模块3在根据目标物品的长度和宽度在候选区域中搜索有效空间的时候,执行:采用与目标物品的顶面尺寸相同的窗口,以滑动窗口方法在候选区域中搜索可容纳窗口的有效空间。
83.具体地,第一执行模块3在采用与目标物品的顶面尺寸相同的窗口,以滑动窗口方法在候选区域中搜索可容纳窗口的有效空间的时候,执行:s1.根据第二图像的第二像素尺寸与实际尺寸的第二转换系数(可预先测得)和目标物品的长度及宽度计算目标物品的顶面的第二像素尺寸;
s2.根据该目标物品的顶面的第二像素尺寸生成窗口,使该窗口的像素尺寸等于该目标物品的顶面的第二像素尺寸(例如目标物品的顶面的第二像素尺寸为n*m,即有n行m列,则窗口的像素尺寸为n*m);s3.在候选区域内,以从上到下的顺序,逐行地进行搜索,且行与行之间的步长为一个像素点;在每行中,以一个像素点为步长,从左到右进行滑窗搜索;s4.在滑窗过程中,把窗口内填满像素值为非零的像素点的时候的窗口区域标记为有效空间。
84.在进一步的优选实施方式中,当完成一次搜索后没有搜索到有效空间,则可把窗口旋转90
°
,再重新进行搜索(即重复步骤s3-s4)。
85.其中,当搜索到多个有效空间时,可直接以第一个搜索到的有效空间作为最终的有效空间,并把目标物品放置在该最终的有效空间中。
86.在一些优选实施方式中,当搜索到多个有效空间时,可把剩余高度最大的有效空间作为最终的有效空间,并把目标物品放置在该最终的有效空间中;从而,第一执行模块3在采用与目标物品的顶面尺寸相同的窗口,以滑动窗口方法在候选区域中搜索可容纳窗口的有效空间的时候,执行:若搜索到的有效空间有多个,则以剩余高度最大的有效空间为最终的有效空间。
87.从而可优先填满下层空间,有利于减小物品叠放时其底部没有全部被支撑的几率,从而进一步降低物品叠放后倾覆的概率;也可减小由于上层物品遮挡下层空隙而导致下层空隙无法被有效利用的几率,从而有利于提高目标箱体的空间利用率。
88.在实际应用中,剩余高度最大的有效空间可能不止一个,此时,可以把剩余高度最大的有效空间中最先搜索到的有效空间为最终的有效空间。
89.优选地,第一执行模块3在根据目标物品的位姿信息抓取目标物品并放入有效空间的时候,执行:根据目标物品的高度和顶面位姿信息获取抓取点位姿信息;获取有效空间的位姿信息;根据目标物品的高度和有效空间的位姿信息获取放置点位姿信息;根据抓取点位姿信息和放置点位姿信息,从抓取点抓取目标物品并移动至放置点处进行放置。
90.其中,该抓取点位姿信息是在机器人基坐标系下的位姿信息,根据目标物品的高度和顶面位姿信息获取抓取点位姿信息的具体方法为现有技术,此处不对其进行详述。
91.其中,该有效空间的位姿信息是有效空间在第二相机坐标系(即第二rgbd相机的相机坐标系)下的位姿信息,可通过现有技术获取(此处不对其获取方法进行详述);该放置点位姿信息是在机器人基坐标系下的位姿信息,根据目标物品的高度和有效空间的位姿信息获取放置点位姿信息的具体方法为现有技术,此处不对其进行详述。
92.在获取抓取点位姿信息和放置点位姿信息后,可规划从抓取点到放置点的路径,从而使装箱机器人沿该路径移动。
93.在一些优选实施方式中,第一执行模块3在根据抓取点位姿信息和放置点位姿信息,从抓取点抓取目标物品并移动至放置点处进行放置的时候,执行:移动至第一抓取过渡位姿点;第一抓取过渡位姿点位于目标物品正上方;
根据抓取点位姿信息,移动至抓取点抓取目标物品;移动至第二抓取过渡位姿点;第二抓取过渡位姿点位于目标物品正上方;移动至第一放置过渡位姿点;第一放置过渡位姿点位于有效空间正上方;根据放置点位姿信息,移动至放置点进行放置;移动至第二放置过渡位姿点;第二放置过渡位姿点位于有效空间正上方。
94.其中,第一抓取过渡位姿点、第二抓取过渡位姿点、第一放置过渡位姿点和第二放置过渡位姿点的高度可根据实际需要预先设置。
95.通过设置这些过渡点,其优点为:可避开障碍,方便垂直地把物品放入目标箱体中,防止放入物品时该物品与有效空间外的其它物品发生碰撞。
96.由上可知,该长方体状物品装箱装置,通过第一rgbd相机获取各待装箱物品的尺寸和顶面位姿信息;待装箱物品为长方体状物品;尺寸包括长度、宽度和高度;根据第二rgbd相机采集的图像生成一个掩膜矩阵;掩膜矩阵的尺寸与目标箱体的装箱区域在第二rgbd相机采集的图像中的像素尺寸相同;依次以各待装箱物品为目标物品,对比装箱区域各处的剩余高度信息与目标物品的高度以更新掩膜矩阵,利用更新后的掩膜矩阵确定装箱区域的候选区域,在候选区域中搜索有效空间以把目标物品放入该有效空间;该候选区域的剩余高度不小于目标物品的高度;从而可准确地把目标物品放入可容纳该目标物品的位置,实现对各待装箱物品的自动装箱,具有较好的实用性和通用性。
97.请参照图3,图3为本技术实施例提供的一种电子设备的结构示意图,本技术提供一种电子设备,包括:处理器301和存储器302,处理器301和存储器302通过通信总线303和/或其他形式的连接机构(未标出)互连并相互通讯,存储器302存储有处理器301可执行的计算机程序,当电子设备运行时,处理器301执行该计算机程序,以执行上述实施例的任一可选的实现方式中的长方体状物品装箱方法,以实现以下功能:通过第一rgbd相机获取各待装箱物品的尺寸和顶面位姿信息;待装箱物品为长方体状物品;尺寸包括长度、宽度和高度;根据第二rgbd相机采集的图像生成一个掩膜矩阵;掩膜矩阵的尺寸与目标箱体的装箱区域在第二rgbd相机采集的图像中的像素尺寸相同;依次以各待装箱物品为目标物品,对比装箱区域各处的剩余高度信息与目标物品的高度以更新掩膜矩阵,利用更新后的掩膜矩阵确定装箱区域的候选区域,在候选区域中搜索有效空间以把目标物品放入该有效空间;该候选区域的剩余高度不小于目标物品的高度。
98.本技术实施例提供一种存储介质,其上存储有计算机程序,计算机程序被处理器执行时,执行上述实施例的任一可选的实现方式中的长方体状物品装箱方法,以实现以下功能:通过第一rgbd相机获取各待装箱物品的尺寸和顶面位姿信息;待装箱物品为长方体状物品;尺寸包括长度、宽度和高度;根据第二rgbd相机采集的图像生成一个掩膜矩阵;掩膜矩阵的尺寸与目标箱体的装箱区域在第二rgbd相机采集的图像中的像素尺寸相同;依次以各待装箱物品为目标物品,对比装箱区域各处的剩余高度信息与目标物品的高度以更新掩膜矩阵,利用更新后的掩膜矩阵确定装箱区域的候选区域,在候选区域中搜索有效空间以把目标物品放入该有效空间;该候选区域的剩余高度不小于目标物品的高度。其中,存储介质可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(static random access memory, 简称sram),电可擦除可编程只读存储器(electrically erasable programmable read-only memory, 简称eeprom),可擦除可编
程只读存储器(erasable programmable read only memory, 简称eprom),可编程只读存储器(programmable red-only memory, 简称prom),只读存储器(read-only memory, 简称rom),磁存储器,快闪存储器,磁盘或光盘。
99.在本技术所提供的实施例中,应该理解到,所揭露装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
100.另外,作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
101.再者,在本技术各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
102.在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。
103.以上所述仅为本技术的实施例而已,并不用于限制本技术的保护范围,对于本领域的技术人员来说,本技术可以有各种更改和变化。凡在本技术的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本技术的保护范围之内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1