清洁区域自动生成方法及系统与流程

文档序号:29074243发布日期:2022-03-01 22:16阅读:60来源:国知局
清洁区域自动生成方法及系统与流程

1.本发明涉及图像处理领域,具体地,涉及一种清洁区域自动生成方法及系统,更为具体地,涉及一种马桶清洁区域自动生成方法及系统。


背景技术:

2.酒店客房的智能化打扫已经是未来的趋势,因为目前的客房清洁是一套标准化流程,很适合用机器人来取代很多重复性的工作。
3.在机器人的清洁过程中,马桶的清洁干净度直接影响住户的体验,所以在马桶清洁过后,对马桶的洁净度的复检就显得非常重要。
4.马桶的清洁过程中,人眼识别的打扫区域,需要正确的反馈给机器人,如果仅仅从二维图像着手的话,检测难度较大,不同于工业视觉检测,其环境变化因素太多,算法会显得非常不稳定。
5.如果单独利用三维点云数据,事先对区域进行点位部署,后期在应用过程中,会很繁琐,而且对于不规则形状,需要利用很多点来部署,效率也会变得非常低,严重增加了部署成本。
6.专利文献cn10689481a(申请号cn201710025189.3)公开了一种基于智能马桶自动检测并清洁污垢方法,包括以下步骤:采集马桶内部图像信息,根据采集的马桶内部图像信息对马桶内部进行区域划分,对马桶内部图像信息进行灰度处理,根据灰度处理结果对马桶内污垢进行检测以定位出污垢所在区域;利用清洁装置对污垢所在区域进行清洁;清洁结束后,再次采集马桶内部图像信息,并对马桶内部图像信息进行灰度处理;根据灰度处理结果判断马桶内是否存在污垢;若不存在污垢,则停止清洁,若存在污垢,定位出污垢所在区域并重复清洁,直至灰度处理结果表明马桶内不存在污垢为止。但是专利中提出的马桶内部区域仅仅是固定图像采集设备与马桶之间的位置关系下才能完成的,针对机器人与马桶不确定性的位置关系显然是不适用的,而此次提出的清洁区域的方案,可以完美解决此问题,并且其检测区域也会比此专利大很多,方案本身具有很强的通用性。
7.专利文献cn111568314a(申请号:cn202010455863.3)公开了一种基于场景识别的清洁方法、装置、清洁机器人和存储介质。所述方法包括:获取待清洁区域对应的环境图像;对所述环境图像进行目标检测,当检测结果为所述待清洁区域包括目标区域时,获取待清洁区域对应的环境对象;调用场景识别模型,根据所述环境对象对所述待清洁区域进行场景识别,得到所述待清洁区域对应的区域场景;根据所述区域场景和所述检测结果确定所述目标区域对应的区域类型;根据所述区域类型对清洁策略进行调整,根据调整后的清洁策略对所述目标区域执行对应的清洁操作。但该发明不能对马桶进行有效清洁。


技术实现要素:

8.针对现有技术中的缺陷,本发明的目的是提供一种清洁区域自动生成方法及系统。
9.根据本发明提供的一种清洁区域自动生成方法,包括:
10.步骤s1:选定位置建模,采集待清洁物体点云数据和彩色图像数据;
11.步骤s2:计算相机坐标系和自定义坐标系的转换关系;
12.步骤s3:利用相机坐标系和自定义坐标系的转换关系,结合位置与模板点云的转换关系,将实时检测的待清洁物体整体点云变换至待清洁物体平面坐标系中,将待清洁物体表面点云和内部点云分割;
13.步骤s4:将分割出的表面点云和内部点云结合彩色相机本身的参数,投影到实际测试场景中的彩色图像中,生成清洁区域。
14.优选地,在所述步骤s2中:
15.提前选定固定建模点位,在待清洁物体检测表面的右上角区域放置一个aruco码;
16.利用aruco检测算法,检测出自定义的坐标系与相机坐标系的转换关系t1;
17.将待清洁物体的点云模板数据保存起来。
18.优选地,在所述步骤s3中:
19.求解出实际检测位置下的待清洁物体点云数据与选定标定点的点云数据之间的刚体映射关系t:
20.利用深度图像将待清洁物体的点云mask掩膜提取出来,并利用mask掩膜,将待清洁物体的点云数据分割出来;
21.将分割后的待清洁物体点云数据与提前保存的模板数据进行迭代匹配,求出刚体变换关系t2;
22.将t1变换关系与t2转换关系相乘,求出t。
23.t=t2*t1
24.优选地,在所述步骤s3中:
25.将待清洁物体表面点云与待清洁物体凹坑点云进行分割;
26.利用t转换关系,将相机坐标系中的点云转换到待清洁物体平面坐标系中;转换过后的待清洁物体点云,平面为待清洁物体平面坐标系的oxy平面,利用待清洁物体的共性,其内部点云与待清洁物体平面表面为固定数值,利用z向的阈值将待清洁物体平面点云与待清洁物体内部凹坑点云进行分割。
27.优选地,在所述步骤s4中:
28.将分割后的待清洁物体平面点云与待清洁物体凹坑的内部点云利用相机的本身的参数,投影至二维图像中;在二维图像中,对检测区域进行判断,检测出打扫区域是否洁净:
29.将分割出的待清洁物体平面点云数据和待清洁物体凹坑点云数据,利用相机成像原理,结合相机的内参数,投影至二维图像中;
30.由于点云的稀疏性,由待清洁物体点云投影至二维图像的mask掩膜区域有孔洞,利用形态学膨胀腐蚀的处理方式,对mask掩膜区域进行空洞填充,生成连续的待检测区域。
31.根据本发明提供的一种清洁区域自动生成系统,包括:
32.模块m1:选定位置建模,采集待清洁物体点云数据和彩色图像数据;
33.模块m2:计算相机坐标系和自定义坐标系的转换关系;
34.模块m3:利用相机坐标系和自定义坐标系的转换关系,结合位置与模板点云的转
换关系,将实时检测的待清洁物体整体点云变换至待清洁物体平面坐标系中,将待清洁物体表面点云和内部点云分割;
35.模块m4:将分割出的表面点云和内部点云结合彩色相机本身的参数,投影到实际测试场景中的彩色图像中,生成清洁区域。
36.优选地,在所述模块m2中:
37.提前选定固定建模点位,在待清洁物体检测表面的右上角区域放置一个aruco码;
38.利用aruco检测算法,检测出自定义的坐标系与相机坐标系的转换关系t1;
39.将待清洁物体的点云模板数据保存起来。
40.优选地,在所述模块m3中:
41.求解出实际检测位置下的待清洁物体点云数据与选定标定点的点云数据之间的刚体映射关系t:
42.利用深度图像将待清洁物体的点云mask掩膜提取出来,并利用mask掩膜,将待清洁物体的点云数据分割出来;
43.将分割后的待清洁物体点云数据与提前保存的模板数据进行迭代匹配,求出刚体变换关系t2;
44.将t1变换关系与t2转换关系相乘,求出t。
45.t=t2*t1
46.优选地,在所述模块m3中:
47.将待清洁物体表面点云与待清洁物体凹坑点云进行分割;
48.利用t转换关系,将相机坐标系中的点云转换到待清洁物体平面坐标系中;转换过后的待清洁物体点云,平面为待清洁物体平面坐标系的oxy平面,利用待清洁物体的共性,其内部点云与待清洁物体平面表面为固定数值,利用z向的阈值将待清洁物体平面点云与待清洁物体内部凹坑点云进行分割。
49.优选地,在所述模块m4中:
50.将分割后的待清洁物体平面点云与待清洁物体凹坑的内部点云利用相机的本身的参数,投影至二维图像中;在二维图像中,对检测区域进行判断,检测出打扫区域是否洁净:
51.将分割出的待清洁物体平面点云数据和待清洁物体凹坑点云数据,利用相机成像原理,结合相机的内参数,投影至二维图像中;
52.由于点云的稀疏性,由待清洁物体点云投影至二维图像的mask掩膜区域有孔洞,利用形态学膨胀腐蚀的处理方式,对mask掩膜区域进行空洞填充,生成连续的待检测区域。
53.与现有技术相比,本发明具有如下的有益效果:
54.1、本发明通过充分利用3d点云数据的稳定性,避免了传统二维图像算法的不稳定性;
55.2、本发明通过自定义的马桶平面坐标系可以完美利用垂向距离的特征,分割马桶平面与凹坑的点云数据,将点云数据投影至二维平面,就可以模拟人眼,给机器人提供检测区域;
56.3、本发明整个流程只需要选定一个位置进行建模,然后计算出自定义的马桶平面坐标系与相机平面坐标系的转换关系,就可以在后面的实际应用场景中进行部署操作,相
比提前标定马桶点位的方法,此方法效率更高,整个流程更加智能。
附图说明
57.通过阅读参照以下附图对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:
58.图1为马桶检测区域生成流程图;
59.图2为放置aruco码的马桶图;
60.图3为rgb通道数据分布;
61.图4为马桶模板点云数据;
62.图5为模板点云匹配效果图;
63.图6为基于深度分割的马桶mask;
64.图7为马桶点云数据转换至马桶平面坐标系;
65.图8为马桶待检测的mask区域;
66.图9为马桶待检测的连续mask区域。
具体实施方式
67.下面结合具体实施例对本发明进行详细说明。以下实施例将有助于本领域的技术人员进一步理解本发明,但不以任何形式限制本发明。应当指出的是,对本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变化和改进。这些都属于本发明的保护范围。
68.实施例1:
69.根据本发明提供的一种清洁区域自动生成方法,如图1-图9所示,包括:
70.步骤s1:选定位置建模,采集待清洁物体点云数据和彩色图像数据;
71.步骤s2:计算相机坐标系和自定义坐标系的转换关系;
72.步骤s3:利用相机坐标系和自定义坐标系的转换关系,结合位置与模板点云的转换关系,将实时检测的待清洁物体整体点云变换至待清洁物体平面坐标系中,将待清洁物体表面点云和内部点云分割;
73.步骤s4:将分割出的表面点云和内部点云结合彩色相机本身的参数,投影到实际测试场景中的彩色图像中,生成清洁区域。
74.具体地,在所述步骤s2中:
75.提前选定固定建模点位,在待清洁物体检测表面的右上角区域放置一个aruco码;
76.利用aruco检测算法,检测出自定义的坐标系与相机坐标系的转换关系t1;
77.将待清洁物体的点云模板数据保存起来。
78.具体地,在所述步骤s3中:
79.求解出实际检测位置下的待清洁物体点云数据与选定标定点的点云数据之间的刚体映射关系t:
80.利用深度图像将待清洁物体的点云mask掩膜提取出来,并利用mask掩膜,将待清洁物体的点云数据分割出来;
81.将分割后的待清洁物体点云数据与提前保存的模板数据进行迭代匹配,求出刚体
变换关系t2;
82.将t1变换关系与t2转换关系相乘,求出t。
83.t=t2*t1
84.具体地,在所述步骤s3中:
85.将待清洁物体表面点云与待清洁物体凹坑点云进行分割;
86.利用t转换关系,将相机坐标系中的点云转换到待清洁物体平面坐标系中;转换过后的待清洁物体点云,平面为待清洁物体平面坐标系的oxy平面,利用待清洁物体的共性,其内部点云与待清洁物体平面表面为固定数值,利用z向的阈值将待清洁物体平面点云与待清洁物体内部凹坑点云进行分割。
87.具体地,在所述步骤s4中:
88.将分割后的待清洁物体平面点云与待清洁物体凹坑的内部点云利用相机的本身的参数,投影至二维图像中;在二维图像中,对检测区域进行判断,检测出打扫区域是否洁净:
89.将分割出的待清洁物体平面点云数据和待清洁物体凹坑点云数据,利用相机成像原理,结合相机的内参数,投影至二维图像中;
90.由于点云的稀疏性,由待清洁物体点云投影至二维图像的mask掩膜区域有孔洞,利用形态学膨胀腐蚀的处理方式,对mask掩膜区域进行空洞填充,生成连续的待检测区域。
91.实施例2:
92.实施例2为实施例1的优选例,以更为具体地对本发明进行说明。
93.本领域技术人员可以将本发明提供的一种清洁区域自动生成方法,理解为清洁区域自动生成系统的具体实施方式,即所述清洁区域自动生成系统可以通过执行所述清洁区域自动生成方法的步骤流程予以实现。
94.根据本发明提供的一种清洁区域自动生成系统,包括:
95.模块m1:选定位置建模,采集待清洁物体点云数据和彩色图像数据;
96.模块m2:计算相机坐标系和自定义坐标系的转换关系;
97.模块m3:利用相机坐标系和自定义坐标系的转换关系,结合位置与模板点云的转换关系,将实时检测的待清洁物体整体点云变换至待清洁物体平面坐标系中,将待清洁物体表面点云和内部点云分割;
98.模块m4:将分割出的表面点云和内部点云结合彩色相机本身的参数,投影到实际测试场景中的彩色图像中,生成清洁区域。
99.具体地,在所述模块m2中:
100.提前选定固定建模点位,在待清洁物体检测表面的右上角区域放置一个aruco码;
101.利用aruco检测算法,检测出自定义的坐标系与相机坐标系的转换关系t1;
102.将待清洁物体的点云模板数据保存起来。
103.具体地,在所述模块m3中:
104.求解出实际检测位置下的待清洁物体点云数据与选定标定点的点云数据之间的刚体映射关系t:
105.利用深度图像将待清洁物体的点云mask掩膜提取出来,并利用mask掩膜,将待清洁物体的点云数据分割出来;
106.将分割后的待清洁物体点云数据与提前保存的模板数据进行迭代匹配,求出刚体变换关系t2;
107.将t1变换关系与t2转换关系相乘,求出t。
108.t=t2*t1
109.具体地,在所述模块m3中:
110.将待清洁物体表面点云与待清洁物体凹坑点云进行分割;
111.利用t转换关系,将相机坐标系中的点云转换到待清洁物体平面坐标系中;转换过后的待清洁物体点云,平面为待清洁物体平面坐标系的oxy平面,利用待清洁物体的共性,其内部点云与待清洁物体平面表面为固定数值,利用z向的阈值将待清洁物体平面点云与待清洁物体内部凹坑点云进行分割。
112.具体地,在所述模块m4中:
113.将分割后的待清洁物体平面点云与待清洁物体凹坑的内部点云利用相机的本身的参数,投影至二维图像中;在二维图像中,对检测区域进行判断,检测出打扫区域是否洁净:
114.将分割出的待清洁物体平面点云数据和待清洁物体凹坑点云数据,利用相机成像原理,结合相机的内参数,投影至二维图像中;
115.由于点云的稀疏性,由待清洁物体点云投影至二维图像的mask掩膜区域有孔洞,利用形态学膨胀腐蚀的处理方式,对mask掩膜区域进行空洞填充,生成连续的待检测区域。
116.实施例3:
117.实施例3为实施例1的优选例,以更为具体地对本发明进行说明。
118.步骤1:选定固定位置进行建模,采集马桶的点云数据和彩色图像数据,并提前计算出相机坐标系和自定义坐标系(马桶平面坐标系)之间的转换关系。
119.步骤2:利用提前标定好的转换关系(马桶平面坐标系与相机坐标系),结合此处位置与模板点云之间的转换关系(实际相机坐标系与模板点云相机坐标系),将实时检测时的马桶整体点云变换至马桶平面的坐标系中,利用垂向深度信息,将马桶表面点云和马桶内部点云分割出来。
120.步骤3:将分割出的马桶表面点云和马桶内部点云结合彩色相机本身的参数,投影到实际测试场景中的彩色图像中,生成清洁区域。
121.其中,步骤1包括如下步骤:
122.步骤1.1:提前选定固定建模点位,在马桶检测表面的右上角区域放置一个aruco码,如图2所示。
123.步骤1.2:利用aruco检测算法,检测出自定义的坐标系与相机本身坐标系的转换关系t1,如图3所示。
124.步骤1.3:将马桶的点云模板数据保存起来,如图4所示。
125.步骤2包括如下步骤:
126.步骤2.1:求解出实际检测位置下的马桶点云数据与选定标定点的点云数据之间的刚体映射关系t,如图5所示。
127.1)利用深度图像将马桶的点云mask掩膜先提取出来,并利用mask掩膜,将马桶的点云数据分割出来,如图6所示。
128.2)将分割后的马桶点云数据与提前保存的模板数据进行icp(最近点迭代算法)迭代匹配,求出其刚体变换关系t2。
129.三维空间中的两个3d点,pi=(xi,yi,zi),qj=(xj,yj,zj),它们欧式距离表示为:
[0130][0131]
icp匹配的目的就是找到p和q变化的矩阵r和t,对于qi=r*pi+t+ni,i=1,2,3,

n,利用最小二乘求解使:
[0132][0133]
最小时的r,t。
[0134]
步骤2.2:将步骤1.2中的t1变换关系与步骤2.1中的t2转换关系相乘,即可求出t。
[0135]
t=t2*t1
[0136]
步骤2.3:将马桶表面点云与马桶凹坑点云进行分割。
[0137]
1)利用步骤2.2中的t转换关系,将相机坐标系中的点云转换到马桶平面坐标系中,如图7所示。
[0138]
2)转换过后的马桶点云,其平面为马桶平面坐标系的oxy平面,所以其z轴方向的距离为0附近,利用马桶的共性,其内部点云与马桶平面表面大致10cm左右,大多数的马桶都是10cm左右,可以利用z向的阈值来将马桶平面点云与马桶内部凹坑点云进行有效分割。
[0139]
步骤3包括如下步骤:将分割后的马桶平面点云与马桶凹坑的内部点云,利用相机的本身的参数,投影至二维图像中。在二维图像中,可以利用图像检测算法,对检测区域进行判断,检测出打扫区域是否洁净。
[0140]
1)将分割出的马桶平面点云数据和马桶凹坑点云数据,利用相机成像原理,结合相机的内参数,投影至二维图像中,如下图8所示
[0141]
2)由于点云的稀疏性,由马桶点云投影至二维图像的mask掩膜区域会有很多孔洞如图8所示,利用形态学膨胀腐蚀的处理方式,对mask掩膜区域进行空洞填充,生成连续的待检测区域,供机器人进行打扫。如图9所示。
[0142]
腐蚀:x用s腐蚀的结果是所有使s平移x后仍在x中的x的集合。换句话说,用s来腐蚀x得到的集合是s完全包括在x中时s的原点位置的集合,用公式表示为:
[0143][0144]
膨胀:膨胀可以看做是腐蚀的对偶运算,其定义是:把结构元素b平移a后得到ba,若ba击中x,我们记下这个a点。所有满足上述条件的a点组成的集合称做x被b膨胀的结果,用公式表示为:
[0145][0146]
本领域技术人员知道,除了以纯计算机可读程序代码方式实现本发明提供的系统、装置及其各个模块以外,完全可以通过将方法步骤进行逻辑编程来使得本发明提供的系统、装置及其各个模块以逻辑门、开关、专用集成电路、可编程逻辑控制器以及嵌入式微控制器等的形式来实现相同程序。所以,本发明提供的系统、装置及其各个模块可以被认为
是一种硬件部件,而对其内包括的用于实现各种程序的模块也可以视为硬件部件内的结构;也可以将用于实现各种功能的模块视为既可以是实现方法的软件程序又可以是硬件部件内的结构。
[0147]
以上对本发明的具体实施例进行了描述。需要理解的是,本发明并不局限于上述特定实施方式,本领域技术人员可以在权利要求的范围内做出各种变化或修改,这并不影响本发明的实质内容。在不冲突的情况下,本技术的实施例和实施例中的特征可以任意相互组合。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1