CN113848892A - 一种机器人清扫区域划分方法、路径规划方法及装置 - Google Patents
一种机器人清扫区域划分方法、路径规划方法及装置 Download PDFInfo
- Publication number
- CN113848892A CN113848892A CN202111064362.3A CN202111064362A CN113848892A CN 113848892 A CN113848892 A CN 113848892A CN 202111064362 A CN202111064362 A CN 202111064362A CN 113848892 A CN113848892 A CN 113848892A
- Authority
- CN
- China
- Prior art keywords
- cleaning
- area
- rectangle
- robot
- 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
Links
- 238000004140 cleaning Methods 0.000 title claims abstract description 555
- 238000000034 method Methods 0.000 title claims abstract description 60
- 238000003708 edge detection Methods 0.000 claims abstract description 51
- 238000005070 sampling Methods 0.000 claims description 196
- 238000010408 sweeping Methods 0.000 claims description 14
- 238000000605 extraction Methods 0.000 claims description 10
- 238000007781 pre-processing Methods 0.000 claims description 7
- 230000004888 barrier function Effects 0.000 claims description 6
- 238000009499 grossing Methods 0.000 claims description 4
- 238000001514 detection method Methods 0.000 abstract description 3
- 238000010586 diagram Methods 0.000 description 31
- PCTMTFRHKVHKIS-BMFZQQSSSA-N (1s,3r,4e,6e,8e,10e,12e,14e,16e,18s,19r,20r,21s,25r,27r,30r,31r,33s,35r,37s,38r)-3-[(2r,3s,4s,5s,6r)-4-amino-3,5-dihydroxy-6-methyloxan-2-yl]oxy-19,25,27,30,31,33,35,37-octahydroxy-18,20,21-trimethyl-23-oxo-22,39-dioxabicyclo[33.3.1]nonatriaconta-4,6,8,10 Chemical compound C1C=C2C[C@@H](OS(O)(=O)=O)CC[C@]2(C)[C@@H]2[C@@H]1[C@@H]1CC[C@H]([C@H](C)CCCC(C)C)[C@@]1(C)CC2.O[C@H]1[C@@H](N)[C@H](O)[C@@H](C)O[C@H]1O[C@H]1/C=C/C=C/C=C/C=C/C=C/C=C/C=C/[C@H](C)[C@@H](O)[C@@H](C)[C@H](C)OC(=O)C[C@H](O)C[C@H](O)CC[C@@H](O)[C@H](O)C[C@H](O)C[C@](O)(C[C@H](O)[C@H]2C(O)=O)O[C@H]2C1 PCTMTFRHKVHKIS-BMFZQQSSSA-N 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000006467 substitution reaction Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0212—Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
- G05D1/0214—Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory in accordance with safety or protection criteria, e.g. avoiding hazardous areas
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0212—Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
- G05D1/0221—Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory involving a learning process
Landscapes
- Engineering & Computer Science (AREA)
- Aviation & Aerospace Engineering (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- Image Analysis (AREA)
- Manipulator (AREA)
Abstract
本发明公开了一种机器人清扫区域划分方法、路径规划方法及装置,基于获取的旋转角角度对待清扫区域场景图和清扫边界轨迹图进行旋转处理,根据图像边缘检测算法获取旋转处理后的清扫边界轨迹图对应的第二最小外接矩形和第一外接多边形,并对第一外接多边形进行顶点处理后生成第二外接多边形,再通过判断旋转处理后的待清扫区域场景图中是否存在障碍物区域,同时结合第二最小外接矩形和第一外接多边形,以此来确定清扫区域和非清扫区域。与现有技术相比,本发明通过图像边缘检测算法进行边界检测,以使区域边界矩形化,实现对清扫区域的划分,提高清扫覆盖面积。
Description
技术领域
本发明涉及自动驾驶的技术领域,特别是涉及一种机器人清扫区域划分方法、路径规划方法及装置。
背景技术
当前,无人驾驶技术应用场景覆盖范围越来越广,为了减轻环卫工人的负担,无人驾驶技术应用场景开始覆盖室内场景。在室内环境中无人驾驶需要具备的一个重要功能是全覆盖清扫路径规划,即在一个特定的封闭区域内尽可能清扫更多区域。
发明内容
本发明要解决的技术问题是:一种机器人清扫区域划分方法、路径规划方法及装置,通过对清扫边界进行边缘检测,实现对清扫区域的划分,提高清扫覆盖面积。
为了解决上述技术问题,本发明提供了一种机器人清扫区域划分方法,包括:
获取并根据第一待清扫区域场景图,绘制清扫边界轨迹,生成第一清扫边界轨迹图;
根据图像边缘检测算法,获取所述第一清扫边界轨迹图的清扫边界轨迹的第一最小外接矩形,并根据所述第一最小外接矩形,确定所述清扫边界轨迹的旋转角角度,继而根据所述旋转角角度对所述第一待清扫区域场景图和所述第一清扫边界轨迹图进行旋转,生成第二待清扫区域场景图和第二清扫边界轨迹图;
根据图像边缘检测算法对所述第二清扫边界轨迹图进行预处理,获取所述第二清扫边界轨迹图的清扫边界轨迹的第二最小外接矩形和第一外接多边形,并对所述第一外接多边形进行顶点处理,生成第二外接多边形;
当所述第二待清扫区域场景图中不存在障碍物区域时,根据所述第二外接多边形与所述第二最小外接矩形所组合形成的第一组合图形,确定所述机器人的第一清扫区域和第一非清扫区域;或者,当所述第二待清扫区域场景图中存在障碍物区域时,根据所述障碍物区域、所述第二外接多边形与所述第二最小外接矩形三者所组合形成的第二组合图形,确定所述机器人的第二清扫区域和第二非清扫区域。
进一步地,根据所述第二外接多边形与所述第二最小外接矩形所组合形成的第一组合图形,确定所述机器人的第一清扫区域和第一非清扫区域,具体为:
将所述第二外接多边形与所述第二最小外接矩形组合形成第一组合图形,分别对所述第一组合图形中所述第二外接多边形与所述第二最小外接矩形所围成的一个或多个区域进行边缘检测,以使所述所围成的一个或多个区域转化为相对应的一个或多个第一外接目标矩形;
将所述一个或多个第一外接目标矩形确定为所述机器人的第一非清扫区域,将所述第一组合图形中除所述一个或多个第一外接目标矩形外的区域确定为所述机器人的第一清扫区域。
进一步地,当所述第二待清扫区域场景图中存在障碍物区域时,根据所述障碍物区域、所述第二外接多边形与所述第二最小外接矩形三者所组合形成的第二组合图形,确定所述机器人的第二清扫区域和第二非清扫区域,具体为:
将所述障碍物区域、所述第二外接多边形与所述第二最小外接矩形三者组合形成第二组合图形,分别对所述第二组合图形中所述第二外接多边形与所述第二最小外接矩形所围成的一个或多个区域进行边缘检测,以使所述所围成的一个或多个区域转化为相对应的一个或多个第一外接目标矩形;同时对所述第二组合图形中所述障碍物区域进行边缘检测,使所述障碍物区域转化为第二外接目标矩形;
将所述一个或多个第一外接目标矩形和所述第二外接目标矩形确定为所述机器人的第二非清扫区域,将所述第二组合图形中除所述一个或多个第一外接目标矩形和所述第二外接目标矩形外的区域确定为所述机器人的第一清扫区域。
进一步地,在确定所述机器人的第一清扫区域为清扫区域和确定所述机器人的第一非清扫区域为非清扫区域之后,或者在确定所述机器人的第二清扫区域为清扫区域和确定所述机器人的第二非清扫区域为非清扫区域之后,所述机器人清扫区域划分方法还包括:
对所述清扫区域和所述非清扫区域按颜色像素值进行区分并形成第一图像;
按第一预设顺序遍历所述第一图像中的非清扫区域中的每个第一外接目标矩形,在所述第一图像中按预设方向以所述第一外接目标矩形的顶点为起点分别绘制线段,以将所述第一图像划分为多个矩形;
按从第二预设顺序遍历所述第一图像中的多个矩形的颜色像素值;
从所述第一图像的任一顶点处的矩形开始,根据所述第二预设顺序遍历,将首次遇到的在第一预设颜色像素阈值范围内的点,记为第一顶点,继续遍历直至遇到第二预设颜色像素阈值范围内的点或遇到矩形的边界的点时,改变遍历方向,直至遇到第二预设颜色阈值范围内的点或遇到矩形的边界的点,记为第二顶点,并根据所述第一顶点和所述第二顶点,划分出一个清扫矩形,其中,所述第一顶点和所述第二顶点为对角顶点;
更改所述清扫矩形的颜色像素值,以使所述清扫矩形的颜色像素值范围区别于所述第一预设颜色像素阈值范围和所述第二预设颜色像素阈值范围,返回步骤“按从第二预设顺序遍历所述第一图像中的多个矩形的颜色像素值”,直至遍历所述第一图像中的所有矩形,以将所述第一图像划分出多个清扫矩形。
进一步地,所述根据图像边缘检测算法对所述第二清扫边界轨迹图进行预处理,获取所述第二清扫边界轨迹图的清扫边界轨迹的第二最小外接矩形和第一外接多边形,具体为:
根据图像边缘检测算法对所述第二清扫边界轨迹图的清扫边界轨迹进行边缘检测,获取所述第二清扫边界轨迹图的清扫边界轨迹的第二最小外接矩形;
根据所述第二最小外接矩形对所述第二清扫边界轨迹图进行ROI提取,获取经ROI提取后得到的第三清扫边界轨迹图,对所述第三清扫边界轨迹图中的清扫边界轨迹进行边缘检测,获取所述第三清扫边界轨迹图的清扫边界的第一外接多边形。
进一步地,所述对所述第一外接多边形进行顶点处理,生成第二外接多边形,具体为:获取所述第一外接多边形的顶点坐标,生成所述第一外接多边形的顶点坐标集,根据预设公式对所述顶点坐标集进行平滑处理,生成新的第一外接多边形的顶点坐标集;和/或,根据所述第一最小外接矩形,确定所述清扫边界轨迹的旋转角角度,具体为:以所述第一最小外接矩形的左上角顶点为坐标原点,从原点向X轴的正方向绘制射线,将所述射线进行逆时针旋转,直至所述射线与所述第一最小外接矩形的边重合,获取所述射线与所述第一最小外接矩形的旋转角角度。
进一步地,本发明还提供了一种机器人清扫路径规划方法,包括:
执行如上述所述的机器人清扫区域划分方法,获取所述第一图像中的多个清扫矩形,将所述多个清扫矩形绘制到第二待清扫轨迹的场景图中,对所述多个清扫矩形中的单个清扫矩形进行路径规划;
将所述单个清扫矩形按预设角度进行旋转,以使所述单个清扫矩形的长边平行于y轴,得到第一清扫矩形,并对所述第一清扫矩形的第一短边和所述第一清扫矩形的第二短边分别按第一预设方向和第二预设方向进行移动,获取移动后的所述第一清扫矩形的第一短边的第一采样坐标集;
对所述第一采样坐标集按第一预设方向绘制射线,以使所述射线与所述第一清扫矩形的第二短边相交,获取第二采样坐标集;
其中,当所述第二待清扫区域场景图中不存在障碍物区域时,按照预设的连接方式将所述第一采样坐标集和所述第二采样坐标集连接起来,形成所述机器人的路径规划线路;
当所述第二待清扫区域场景图中存在障碍物区域时,判断所述障碍物区域的位置;
当确认所述障碍物区域位于所述第一清扫矩形的下方时,获取并根据所述第一采样坐标集中与所述障碍物区域距离最小的第一点坐标,采集满足第一预设范围内的所述第一采样坐标集中的多个点坐标,并按第一预设条件更新所述第一采样坐标集中的所述多个点坐标,生成第三采样坐标集,按照预设的连接方式将所述第三采样坐标集与所述第二采样集连接起来,形成所述机器人的路径规划线路;
当确认所述障碍物区域位于所述第一清扫矩形的上方时,获取并根据所述第二采样坐标集中与所述障碍物区域距离最小的第二点坐标,采集满足第二预设范围内的所述第二采样坐标集中的多个点坐标,并按第二预设条件更新所述第二采样坐标集中的所述多个点坐标,生成第四采样坐标集,按照预设的连接方式将所述第四采样坐标集与所述第一采样集连接起来,形成所述机器人的路径规划线路。
进一步地,本发明还提供了一种机器人清扫区域划分装置,包括:绘制模块、图像旋转模块、图像处理模块和区域确定模块;
其中,所述绘制模块用于获取并根据第一待清扫区域场景图,绘制清扫边界轨迹,生成第一清扫边界轨迹图;
所述图像旋转模块用于根据图像边缘检测算法,获取所述第一清扫边界轨迹图的清扫边界轨迹的第一最小外接矩形,并根据所述第一最小外接矩形,确定所述清扫边界轨迹的旋转角角度,继而根据所述旋转角角度对所述第一待清扫区域场景图和所述第一清扫边界轨迹图进行旋转,生成第二待清扫区域场景图和第二清扫边界轨迹图;
所述图像处理模块用于根据图像边缘检测算法对所述第二清扫边界轨迹图进行预处理,获取所述第二清扫边界轨迹图的清扫边界轨迹的第二最小外接矩形和第一外接多边形,并对所述第一外接多边形进行顶点处理,生成第二外接多边形;
所述区域确定模块用于当所述第二待清扫区域场景图中不存在障碍物区域时,根据所述第二外接多边形与所述第二最小外接矩形所组合形成的第一组合图形,确定所述机器人的第一清扫区域和第一非清扫区域;或者,当所述第二待清扫区域场景图中存在障碍物区域时,根据所述障碍物区域、所述第二外接多边形与所述第二最小外接矩形三者所组合形成的第二组合图形,确定所述机器人的第二清扫区域和第二非清扫区域。
进一步地,所述装置还包括:第一划分模块和第二划分装置;
其中,所述第一划分模块具体用于在确定所述机器人的第一清扫区域为清扫区域和确定所述机器人的第一非清扫区域为非清扫区域之后,或者在确定所述机器人的第二清扫区域为清扫区域和确定所述机器人的第二非清扫区域为非清扫区域之后;
对所述清扫区域和所述非清扫区域按颜色像素值进行区分并形成第一图像;
按第一预设顺序遍历所述第一图像中的非清扫区域中的每个第一外接目标矩形,在所述第一图像中按预设方向以所述第一外接目标矩形的顶点为起点分别绘制线段,以将所述第一图像划分为多个矩形;
所述第二划分模块具体用于按从第二预设顺序遍历所述第一图像中的多个矩形的颜色像素值;
从所述第一图像的任一顶点处的矩形开始,根据所述第二预设顺序遍历,将首次遇到的在第一预设颜色像素阈值范围内的点,记为第一顶点,继续遍历直至遇到第二预设颜色像素阈值范围内的点或遇到矩形的边界的点时,改变遍历方向,直至遇到第二预设颜色阈值范围内的点或遇到矩形的边界的点,记为第二顶点,并根据所述第一顶点和所述第二顶点,划分出一个清扫矩形,其中,所述第一顶点和所述第二顶点为对角顶点;
更改所述清扫矩形的颜色像素值,以使所述清扫矩形的颜色像素值区别于所述第一预设颜色像素阈值范围和所述第二预设颜色像素阈值范围,返回步骤“按从第二预设顺序遍历所述第一图像中的多个矩形的颜色像素值”,直至遍历所述第一图像中的所有矩形,以将所述第一图像划分出多个清扫矩形。
进一步地,本发明还提供了一种机器人清扫路径规划装置,包括:执行模块、第一获取模块、第二获取模块、第一路径规划模块、判断模块、第二路径规划模块和第三路径规划模块;
其中,所述执行模块具体用于执行如上述所述的机器人清扫区域划分装置,所述路径划分模块具体用于获取所述第一图像中的多个清扫矩形,将所述多个清扫矩形绘制到第二待清扫轨迹的场景图中,对所述多个清扫矩形中的单个清扫矩形进行路径规划;
所述第一获取模块具体用于将所述单个清扫矩形按预设角度进行旋转,以使所述单个清扫矩形的长边平行于y轴,得到第一清扫矩形,并对所述第一清扫矩形的第一短边和所述第一清扫矩形的第二短边分别按第一预设方向和第二预设方向进行移动,获取移动后的所述第一清扫矩形的第一短边的第一采样坐标集;
所述第二获取模块具体用于对所述第一采样坐标集按第一预设方向绘制射线,以使所述射线与所述第一清扫矩形的第二短边相交,获取第二采样坐标集;
所述第一路径规划模块具体用于当所述第二待清扫区域场景图中不存在障碍物区域时,按照预设的连接方式将所述第一采样坐标集和所述第二采样坐标集连接起来,形成所述机器人的路径规划线路;
所述判断模块具体用于当所述第二待清扫区域场景图中存在障碍物区域时,判断所述障碍物区域的位置;
所述第二路径规划模块具体用于当确认所述障碍物区域位于所述第一清扫矩形的下方时,获取并根据所述第一采样坐标集中与所述障碍物区域距离最小的第一点坐标,采集满足第一预设范围内的所述第一采样坐标集中的多个点坐标,并按第一预设条件更新所述第一采样坐标集中的所述多个点坐标,生成第三采样坐标集,按照预设的连接方式将所述第三采样坐标集与所述第二采样集连接起来,形成所述机器人的路径规划线路;
所述第三路径规划模块具体用于当确认所述障碍物区域位于所述第一清扫矩形的下方时,获取并根据所述第二采样坐标集中与所述障碍物区域距离最小的第二点坐标,采集满足第二预设范围内的所述第二采样坐标集中的多个点坐标,并按第二预设条件更新所述第二采样坐标集中的所述多个点坐标,生成第四采样坐标集,按照预设的连接方式将所述第四采样坐标集与所述第一采样集连接起来,形成所述机器人的路径规划线路。
本发明实施例一种机器人清扫区域划分方法、路径规划方法及装置,与现有技术相比,具有如下有益效果:
本发明基于获取的旋转角角度对待清扫区域场景图和清扫边界轨迹图进行旋转处理,使旋转处理后的图像相比于原图更规则;同时基于多边形拟合程度比内接矩形拟合程度高的特点,根据图像边缘检测算法获取旋转处理后的清扫边界轨迹图对应的第二最小外接矩形和第一外接多边形,以使本发明获取的区域更接近原有区域,提高本发明的划分精度;并对第一外接多边形进行顶点处理后生成第二外接多边形,再通过判断旋转处理后的待清扫区域场景图中是否存在障碍物区域,同时结合第二最小外接矩形和第一外接多边形,以此来确定清扫区域和非清扫区域。与现有技术相比,本发明通过图像边缘检测算法进行边界检测,以使区域边界矩形化,实现对清扫区域的划分,提高清扫覆盖面积。
附图说明
图1是本发明提供的机器人清扫区域划分方法的一种实施例的流程示意图;
图2是本发明提供的机器人清扫区域划分装置的一种实施例的结构示意图;
图3是本发明提供的机器人清扫区域划分方法的一种实施例的建立坐标系后的第一待清扫区域场景图;
图4是本发明提供的机器人清扫区域划分方法的一种实施例的建立坐标系后的第一清扫边界轨迹图;
图5是本发明提供的机器人清扫区域划分方法的一种实施例的第一清扫边界轨迹图的清扫边界轨迹的旋转角角度θ的示意图;
图6是本发明提供的机器人清扫区域划分方法的一种实施例的第二清扫边界轨迹图;
图7是本发明提供的机器人清扫区域划分方法的一种实施例的第二清扫边界轨迹图的清扫边界轨迹的第二外接矩形示意图;
图8是本发明提供的机器人清扫区域划分方法的一种实施例的第三清扫边界轨迹图;
图9是本发明提供的机器人清扫区域划分方法的一种实施例的多边形定点处理示意图;
图10是本发明提供的机器人清扫区域划分方法的一种实施例的第一目标外接矩形示意图;
图11是本发明提供的机器人清扫区域划分方法的一种实施例的第二组合图形示意图;
图12是本发明提供的机器人清扫区域划分方法的一种实施例的第二目标外接矩形示意图;
图13是本发明提供的机器人清扫区域划分方法的一种实施例的清扫区域划分示意图;
图14是本发明提供的机器人清扫区域划分方法的一种实施例的单清扫区域图;
图15是本发明提供的机器人清扫区域划分方法的一种实施例的第二清扫矩形图;
图16是本发明提供的机器人清扫区域划分方法的一种实施例的单个清扫区域矩形的路径划分流程示意图;
图17是本发明提供的机器人清扫路径规划方法的一种实施例的流程示意图;
图18是本发明提供的机器人清扫路径规划装置的一种实施例的结构示意图。
具体实施方式
下面将结合本发明中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例1
由于市面上室内基于阿克曼运动学模型的清扫机器人在进行路径规划时,以空旷环境中的内接矩形为清扫区域,这种划分区域的方式在异形边界环境中减小了机器人所能清扫的区域面积,因此无法实现室内清扫区域的全覆盖,容易留下清扫死角,需要依靠一定的人力进行二次清扫。基于上述缺点,本实施例中为解决上述问题,提供了机器人清扫区域划分方法及装置。
参见图1,图1是本发明提供的机器人清扫区域划分方法的一种实施例的流程示意图,如图1所示,该方法包括步骤101-步骤104,具体如下:
步骤101:获取并根据第一待清扫区域场景图,绘制清扫边界轨迹,生成第一清扫边界轨迹图。
本实施例中,获取第一待清扫区域场景图,其中,获取的第一待清扫区域场景图中可能不存在障碍物区域,同样第一待清扫区域场景图中也可能存在障碍物区域,如图3中黑色区域为障碍物区域。获取第一待清扫区域场景图的尺寸大小,在相同尺寸大小的空白图像中绘制第一待清扫区域场景图对应的清扫边界轨迹,获取第一清扫边界轨迹图。
本实施例中,对第一待清扫区域场景图和第一清扫边界轨迹图建立坐标系,其中,坐标系以第一待清扫区域场景图和第一清扫边界轨迹图的左上顶点为坐标原点O,X轴正方向为坐标原点O水平向右,Y轴正方向为坐标原点O垂直X轴向下。建立坐标系后的第一待清扫区域场景图,如图3所示;建立坐标系后的第一清扫边界轨迹图,如图4所示。
步骤102:根据图像边缘检测算法,获取所述第一清扫边界轨迹图的清扫边界轨迹的第一最小外接矩形,并根据所述第一最小外接矩形,确定所述清扫边界轨迹的旋转角角度,继而根据所述旋转角角度对所述第一待清扫区域场景图和所述第一清扫边界轨迹图进行旋转,生成第二待清扫区域场景图和第二清扫边界轨迹图。
本实施例中,根据边缘检测图像处理算法获取第一清扫边界轨迹图的清扫边界轨迹的第一最小外接矩形及旋转角角度θ,通过调用opencv中的canny对象,并设置颜色阈值,对第一清扫边界轨迹图进行3*3模板的膨胀操作,最后调用opencv::findcontours得到第一清扫边界轨迹图的清扫边界的轮廓数据,当获取第一清扫边界轨迹图的第一最小外接矩形时,调用cv::minAreaRect(),获取第一最小外接矩形和旋转角度θ,作为本实施例中的一种优选方案,对旋转角角度θ的获取,主要通过以获取的第一最小外接矩形的左上角顶点A为原点,从此点出发沿x轴正方向生成一条射线,其中x轴正方向为水平向右。该射线逆时针旋转,获取的其与第一最小外接矩形的边首次重合时的旋转角度θ,即为旋转角角度θ,如图5所示。本实施例中,根据获取的旋转角角度对第一清扫边界轨迹图进行旋转,以第一最小外接矩形的左上角顶点A为坐标原点对第一清扫边界轨迹图旋转θ角,获取旋转后的第一清扫边界轨迹图,作为第二清扫边界轨迹图,如图6所示。
本实施例中,还根据获取的旋转角角度对第一待清扫区域场景图进行旋转,获取旋转后的第一待清扫区域场景图,作为第二待清扫区域场景图。
步骤103:根据图像边缘检测算法对所述第二清扫边界轨迹图进行预处理,获取所述第二清扫边界轨迹图的清扫边界轨迹的第二最小外接矩形和第一外接多边形,并对所述第一外接多边形进行顶点处理,生成第二外接多边形。
本实施例中,根据图像边缘检测算法对所述第二清扫边界轨迹图进行边缘检测,通过调用opencv中的canny对象,并设置颜色阈值,对第二清扫边界轨迹图进行3*3模板的膨胀操作,最后调用opencv::findcontours得到第二清扫边界轨迹图的清扫边界的轮廓数据,通过调用cv::boundingRect()获取第二最小外接矩形数据,根据获取的第二最小外接矩形数据生成第二清扫边界轨迹图的清扫边界的第二最小外接矩形,如图7所示;根据所述第二最小外接矩形对所述第二清扫边界轨迹图进行ROI提取,获取经ROI提取后得到的图像,记为第三清扫边界轨迹图,如图8所示;对第三清扫边界轨迹图进行边缘检测,通过调用cv::approxPolyDP()获取多边形数据,根据多边形数据获取第三清扫边界轨迹图的清扫边界的第一外接多边形。
本实施例中,对第一外接多边形的顶点进行处理,如图9所示,主要通过获取所述第一外接多边形的顶点坐标,生成所述第一外接多边形的顶点坐标集{(x1,y1),(x2,y2)…(xk,yk)},根据预设公式对第一外接多边形的顶点坐标集中的坐标(xn,yn)进行平滑处理得到(x′n,y′n),公式如下所示:
其中,d1为距离阈值参数。
本实施例中,将获取到的第一外接多边形的顶点坐标集中的每个坐标代入公式中计算得到的新的坐标,对获取的所有坐标继续对比,将所有坐标中重复的坐标进行去除,生成新的第一外接多边形的顶点坐标集{(x′1,y′1),(x′2,y′2),…,(x′h,y′h)},其中,(x′n,y′n)距离外接矩形最近边的垂直投影点为(x″n,y″n),两点距离为dn,当dn小于d2时,更换该(x′n,y′n)为(x″n,y″n),其中d2为距离阈值参数。根据生成的新的第一外接对变形的顶点坐标集,生成第二外接多边形。
步骤104:当所述第二待清扫区域场景图中不存在障碍物区域时,根据所述第二外接多边形与所述第二最小外接矩形所组合形成的第一组合图形,确定所述机器人的第一清扫区域和第一非清扫区域;或者,当所述第二待清扫区域场景图中存在障碍物区域时,根据所述障碍物区域、所述第二外接多边形与所述第二最小外接矩形三者所组合形成的第二组合图形,确定所述机器人的第二清扫区域和第二非清扫区域。
本实施例中,当所述第二待清扫区域场景图中不存在障碍物区域时,将步骤103得到的第二外接多边形和第二最小外接矩形化绘制到与第三清扫边界轨迹图尺寸大小相同的画布中,以使第二外接多边形与第二最小外接矩形组合形成第一组合图形,使用图像边缘检测算法分别对第一组合图形中所述第二外接多边形与所述第二最小外接矩形所围成的一个或多个区域进行边缘检测,以使所述所围成的一个或多个区域转化为相对应的一个或多个第一外接目标矩形,如图10所示;并将一个或多个第一外接目标矩形确定为机器人的第一非清扫区域,将第一组合图形中除所述一个或多个第一外接目标矩形外的区域确定为机器人的第一清扫区域。
本实施例中,当所述第二待清扫区域场景图中存在障碍物区域时,先将步骤103得到的第二外接多边形和第二最小外接矩形化绘制到与第三清扫边界轨迹图尺寸大小相同的画布中,以使第二外接多边形与第二最小外接矩形组合形成第一组合图形,使用图像边缘检测算法分别对第一组合图形中所述第二外接多边形与所述第二最小外接矩形所围成的一个或多个区域进行边缘检测,以使所围成的一个或多个区域转化为相对应的一个或多个第一外接目标矩形;再按第三清扫边界轨迹图的尺寸大小对第二待清扫区域场景图进行ROI提取后,获取第二待清扫区域场景图中的障碍物区域,以使障碍物区域和第一组合图形组合形成第二组合图形,如图11所示,并对第二组合图形中的障碍物区域进行边缘检测,获取第二目标外接矩形,以使第二组合图形中的障碍物区域更新为第二目标外接矩形,对如图12所示。
本实施例中,将一个或多个第一外接目标矩形和第二外接目标矩形确定为所述机器人的第二非清扫区域,将所述第二组合图形中除一个或多个第一外接目标矩形和第二外接目标矩形外的区域确定为机器人的第一清扫区域。
本实施例中,在确定机器人的第一清扫区域为清扫区域和确定机器人的第一非清扫区域为非清扫区域之后,或者在确定机器人的第二清扫区域为清扫区域和确定机器人的第二非清扫区域为非清扫区域之后,对清扫区域和非清扫区域按颜色像素值进行区分并形成第一图像,对由清扫区域和非清扫区域组成的第一图像进行矩形划分,按第一预设顺序遍历所述第一图像中的非清扫区域中的每个第一外接目标矩形,在第一图像中按预设方向以所述第一外接目标矩形的顶点为起点分别绘制线段,以将所述第一图像划分为多个矩形。
作为本实施例中的一个举例,第一预设顺序以及按预设方向以所述第一外接目标矩形的顶点为起点分别绘制线段,即将所有非清扫区域中的每个区域的左上、右上、右下和左下顶点分别对应Y轴负方向、X轴正方向、Y轴正方向和X轴负方向,按每个区域的左上、右上、右下和左下顶点的顺序,向所对应的方向绘制射线;其中,射线在遇到边界或非清扫区域或其他线段时停止,以将所述第一图像划分为多个矩形,且第一图像中的多个矩形的矩形边平行于x轴或y轴,如图13所示。
本实施例中,按从第二预设顺序遍历所述第一图像中的多个矩形的颜色像素值;从所述第一图像的任一顶点处的矩形开始,根据所述第二预设顺序遍历,将首次遇到的在第一预设颜色像素阈值范围内的点,记为第一顶点,继续遍历直至遇到第二预设颜色像素阈值范围内的点或遇到矩形的边界的点时,改变遍历方向,直至遇到第二预设颜色阈值范围内的点或遇到矩形的边界的点,记为第二顶点,并根据所述第一顶点和所述第二顶点,划分出一个清扫矩形,其中,第一顶点和第二顶点为对角顶点。作为本实施例中的一种举例,可按从上到下、从左到右的顺序遍历第一图像中遍历所述第一图像中的非清扫区域,以使非清扫区域按预设条件绘制射线,将所有非清扫区域中的每个区域的左上、右上、右下和左下顶点分别对应Y轴负方向、X轴正方向、Y轴正方向和X轴负方向,按每个区域的左上、右上、右下和左下顶点的顺序,向所对应的方向绘制射线,其中,所述射线在遇到边界或非清扫区域或其他线段时停止,以将所述第一图像划分为多个矩形,且第一图像中的多个矩形的矩形边平行于x轴或y轴,如图13所示。
本实施例中,对清扫区域和非清扫区域按颜色像素值进行区分并形成第一图像,作为本实施例中的一种优选方案,可以只对清扫区域进行颜色像素填充,或者只对非清扫区域进行颜色像素填充,同样的也可同时对清扫区域和非清扫区域进行颜色像素填充,以使所述清扫区域和所述非清扫区域的颜色像素存在差异。本实施例中,对非清扫区域为白色,将非清扫区域填充为黑色,以使清扫区域和非清扫区域的颜色像素存在差异。
本实施例中,按从第二预设顺序遍历所述第一图像中的多个矩形的颜色像素值;从所述第一图像的任一顶点处的矩形开始,根据所述第二预设顺序遍历,将首次遇到的在第一预设颜色像素阈值范围内的点,记为第一顶点,继续遍历直至遇到第二预设颜色像素阈值范围内的点或遇到矩形的边界的点时,改变遍历方向,直至遇到第二预设颜色阈值范围内的点或遇到矩形的边界的点,记为第二顶点,并根据所述第一顶点和所述第二顶点,划分出一个清扫矩形,其中,第一顶点和第二顶点为对角顶点。
作为本实施例中的一种举例,可按从上到下、从左到右的顺序遍历所述第一图像中的多个矩形的颜色像素值;从所述第一图像的左上角的矩形开始,若所述第一图像左上角的矩形的颜色像素值为0,向下遍历,将首次遇到的颜色像素值不为0的点,记为第一顶点,并记录该顶点坐标,继续向下遍历,直至遇到颜色像素值为0的点或矩形的边界时,改变遍历方向,向右遍历,直至遇到颜色像素值为0的点或矩形的边界的点,记为第二顶点,并记录该顶点坐标,并根据所述第一顶点和所述第二顶点,划分出一个清扫矩形。
本实施例中,在划分出一个清扫矩形后,更改清扫矩形的颜色像素值,以使清扫矩形的颜色像素值区别于所述第一预设颜色像素阈值范围和所述第二预设颜色像素阈值范围,返回步骤“按从第二预设顺序遍历所述第一图像中的多个矩形的颜色像素值”,直至遍历所述第一图像中的所有矩形,以将所述第一图像划分出多个清扫矩形。
参见图2,图2是本发明提供的机器人清扫区域划分装置的一种实施例的结构示意图,如图2所示,该结构包括绘制模块201、图像旋转模块202、图像处理模块203、区域确定模块204,具体如下:
其中,绘制模块201用于获取并根据第一待清扫区域场景图,绘制清扫边界轨迹,生成第一清扫边界轨迹图。
本实施例中,获取第一待清扫区域场景图,其中,获取的第一待清扫区域场景图中可能不存在障碍物区域,同样第一待清扫区域场景图中也可能存在障碍物区域,如图3中黑色区域为障碍物区域。获取第一待清扫区域场景图的尺寸大小,在相同尺寸大小的空白图像中绘制第一待清扫区域场景图对应的清扫边界轨迹,获取第一清扫边界轨迹图。
本实施例中,对第一待清扫区域场景图和第一清扫边界轨迹图建立坐标系,其中,坐标系以第一待清扫区域场景图和第一清扫边界轨迹图的左上顶点为坐标原点O,X轴正方向为坐标原点O水平向右,Y轴正方向为坐标原点O垂直X轴向下。建立坐标系后的第一待清扫区域场景图,如图3所示;建立坐标系后的第一清扫边界轨迹图,如图4所示。
图像旋转模块202用于根据图像边缘检测算法,获取所述第一清扫边界轨迹图的清扫边界轨迹的第一最小外接矩形,并根据所述第一最小外接矩形,确定所述清扫边界轨迹的旋转角角度,继而根据所述旋转角角度对所述第一待清扫区域场景图和所述第一清扫边界轨迹图进行旋转,生成第二待清扫区域场景图和第二清扫边界轨迹图。
本实施例中,根据图像边缘检测算法获取第一清扫边界轨迹图的清扫边界轨迹的第一最小外接矩形及旋转角角度θ,通过调用opencv中的canny对象,并设置颜色阈值,对第一清扫边界轨迹图进行3*3模板的膨胀操作,最后调用opencv::findcontours得到第一清扫边界轨迹图的清扫边界的轮廓数据,当获取第一清扫边界轨迹图的第一最小外接矩形时,调用cv::minAreaRect(),获取第一最小外接矩形和旋转角度θ,作为本实施例中的一种优选方案,对旋转角角度θ的获取,主要通过以获取的第一最小外接矩形的左上角顶点A为原点,从此点出发沿x轴正方向生成一条射线,其中x轴正方向为水平向右。该射线逆时针旋转,获取的其与第一最小外接矩形的边首次重合时的旋转角度θ,即为旋转角角度θ,如图5所示。本实施例中,根据获取的旋转角角度对第一清扫边界轨迹图进行旋转,以第一最小外接矩形的左上角顶点A为坐标原点对第一清扫边界轨迹图旋转θ角,获取旋转后的第一清扫边界轨迹图,作为第二清扫边界轨迹图,如图6所示。
本实施例中,还根据获取的旋转角角度对第一待清扫区域场景图进行旋转,获取旋转后的第一待清扫区域场景图,作为第二待清扫区域场景图。
图像处理模块203用于根据图像边缘检测算法对所述第二清扫边界轨迹图进行预处理,获取所述第二清扫边界轨迹图的清扫边界轨迹的第二最小外接矩形和第一外接多边形,并对所述第一外接多边形进行顶点处理,生成第二外接多边形。
本实施例中,根据图像边缘检测算法对所述第二清扫边界轨迹图进行边缘检测,通过调用opencv中的canny对象,并设置颜色阈值,对第二清扫边界轨迹图进行3*3模板的膨胀操作,最后调用opencv::findcontours得到第二清扫边界轨迹图的清扫边界的轮廓数据,通过调用cv::boundingRect()获取第二最小外接矩形数据,根据获取的第二最小外接矩形数据生成第二清扫边界轨迹图的清扫边界的第二最小外接矩形,如图7所示;根据所述第二最小外接矩形对所述第二清扫边界轨迹图进行ROI提取,获取经ROI提取后得到的图像,记为第三清扫边界轨迹图,如图8所示;对第三清扫边界轨迹图进行边缘检测,通过调用cv::approxPolyDP()获取多边形数据,根据多边形数据获取第三清扫边界轨迹图的清扫边界的第一外接多边形。
本实施例中,对第一外接多边形的顶点进行处理,如图9所示,主要通过获取所述第一外接多边形的顶点坐标,生成所述第一外接多边形的顶点坐标集{(x1,y1),(x2,y2)…(xk,yk)},根据预设公式对第一外接多边形的顶点坐标集中的坐标(xn,yn)进行平滑处理得到(x′n,y′n),公式如下所示:
其中,d1为距离阈值参数。
本实施例中,将获取到的第一外接多边形的顶点坐标集中的每个坐标代入公式中计算得到的新的坐标,对获取的所有坐标进行对比,将所有坐标中重复的坐标进行去除,生成新的第一外接多边形的顶点坐标集{(x′1,y′1),(x′2,y′2),…,(x′h,y′h)},其中,(x′n,y′n)距离外接矩形最近边的垂直投影点为(x″n,y″n),两点距离为dn,当dn小于d2时,更换该(x′n,y′n)为(x″n,y″n),其中d2为距离阈值参数。根据生成的新的第一外接对变形的顶点坐标集,生成第二外接多边形。
区域确定模块204用于当所述第二待清扫区域场景图中不存在障碍物区域时,根据所述第二外接多边形与所述第二最小外接矩形所组合形成的第一组合图形,确定所述机器人的第一清扫区域和第一非清扫区域;或者,当所述第二待清扫区域场景图中存在障碍物区域时,根据所述障碍物区域、所述第二外接多边形与所述第二最小外接矩形三者所组合形成的第二组合图形,确定所述机器人的第二清扫区域和第二非清扫区域。
本实施例中,当所述第二待清扫区域场景图中不存在障碍物区域时,将图像处理模块203得到的第二外接多边形和第二最小外接矩形化绘制到与第三清扫边界轨迹图尺寸大小相同的画布中,以使第二外接多边形与第二最小外接矩形组合形成第一组合图形,使用图像边缘检测算法分别对第一组合图形中所述第二外接多边形与所述第二最小外接矩形所围成的一个或多个区域进行边缘检测,以使所述所围成的一个或多个区域转化为相对应的一个或多个第一外接目标矩形,如图10所示;并将一个或多个第一外接目标矩形确定为机器人的第一非清扫区域,将第一组合图形中除一个或多个第一外接目标矩形外的区域确定为机器人的第一清扫区域。
本实施例中,当所述第二待清扫区域场景图中存在障碍物区域时,先将图像处理模块203得到的第二外接多边形和第二最小外接矩形化绘制到与第三清扫边界轨迹图尺寸大小相同的画布中,以使第二外接多边形与第二最小外接矩形组合形成第一组合图形,使用图像边缘检测算法分别对第一组合图形中所述第二外接多边形与所述第二最小外接矩形所围成的一个或多个区域进行边缘检测,以使所围成的一个或多个区域转化为相对应的一个或多个第一外接目标矩形;再按第三清扫边界轨迹图的尺寸大小对第二待清扫区域场景图进行ROI提取后,获取第二待清扫区域场景图中的障碍物区域,以使障碍物区域和第一组合图形组合形成第二组合图形,如图11所示,并对第二组合图形中的障碍物区域进行边缘检测,获取第二目标外接矩形,以使第二组合图形中的障碍物区域更新为第二目标外接矩形,对如图12所示。
本实施例中,将一个或多个第一外接目标矩形和第二外接目标矩形确定为所述机器人的第二非清扫区域,将所述第二组合图形中除一个或多个第一外接目标矩形和第二外接目标矩形外的区域确定为机器人的第一清扫区域。
本实施例中,在确定机器人的第一清扫区域为清扫区域和确定机器人的第一非清扫区域为非清扫区域之后,或者在确定机器人的第二清扫区域为清扫区域和确定机器人的第二非清扫区域为非清扫区域之后,对清扫区域和非清扫区域按颜色像素值进行区分并形成第一图像,对由清扫区域和非清扫区域组成的第一图像进行矩形划分,按第一预设顺序遍历所述第一图像中的非清扫区域中的每个第一外接目标矩形,在第一图像中按预设方向以所述第一外接目标矩形的顶点为起点分别绘制线段,以将所述第一图像划分为多个矩形。
作为本实施例中的一个举例,第一预设顺序以及按预设方向以所述第一外接目标矩形的顶点为起点分别绘制线段,即将所有非清扫区域中的每个区域的左上、右上、右下和左下顶点分别对应Y轴负方向、X轴正方向、Y轴正方向和X轴负方向,按每个区域的左上、右上、右下和左下顶点的顺序,向所对应的方向绘制射线;其中,射线在遇到边界或非清扫区域或其他线段时停止,以将所述第一图像划分为多个矩形,且第一图像中的多个矩形的矩形边平行于x轴或y轴,如图13所示。
本实施例中,对清扫区域和非清扫区域按颜色像素值进行区分并形成第一图像,作为本实施例中的一种优选方案,可以只对清扫区域进行颜色像素填充,或者只对非清扫区域进行颜色像素填充,同样的也可同时对清扫区域和非清扫区域进行颜色像素填充,以使所述清扫区域和所述非清扫区域的颜色像素存在差异。本实施例中,对非清扫区域为白色,将非清扫区域填充为黑色,以使清扫区域和非清扫区域的颜色像素存在差异。
本实施例中,按从第二预设顺序遍历所述第一图像中的多个矩形的颜色像素值;从所述第一图像的任一顶点处的矩形开始,根据所述第二预设顺序遍历,将首次遇到的在第一预设颜色像素阈值范围内的点,记为第一顶点,继续遍历直至遇到第二预设颜色像素阈值范围内的点或遇到矩形的边界的点时,改变遍历方向,直至遇到第二预设颜色阈值范围内的点或遇到矩形的边界的点,记为第二顶点,并根据所述第一顶点和所述第二顶点,划分出一个清扫矩形,其中,第一顶点和第二顶点为对角顶点。
作为本实施例中的一种举例,可按从上到下、从左到右的顺序遍历所述第一图像中的多个矩形的颜色像素值;从所述第一图像的左上角的矩形开始,若所述第一图像左上角的矩形的颜色像素值为0,向下遍历,将首次遇到的颜色像素值不为0的点,记为第一顶点,并记录该顶点坐标,继续向下遍历,直至遇到颜色像素值为0的点或矩形的边界时,改变遍历方向,向右遍历,直至遇到颜色像素值为0的点或矩形的边界的点,记为第二顶点,并记录该顶点坐标,并根据所述第一顶点和所述第二顶点,划分出一个清扫矩形。
本实施例中,在划分出一个清扫矩形后,更改清扫矩形的颜色像素值,以使清扫矩形的颜色像素值区别于所述第一预设颜色像素阈值范围和所述第二预设颜色像素阈值范围,返回步骤“按从第二预设顺序遍历所述第一图像中的多个矩形的颜色像素值”,直至遍历所述第一图像中的所有矩形,以将所述第一图像划分出多个清扫矩形。
实施例2
参见图17,图17是本发明提供的机器人清扫区域划分方法的一种实施例的流程示意图,如图17所示,该方法包括步骤301-步骤307,具体如下:
步骤301:执行如实施例1中所述的机器人清扫区域划分方法,获取所述第一图像中的多个清扫矩形,将所述多个清扫矩形绘制到第二待清扫轨迹的场景图中,对所述多个清扫矩形中的单个清扫矩形进行路径规划。
本实施例中,先执行如实施例1中所述的机器人清扫区域划分方法,用于获取所述第一图像中的多个清扫矩形,将所述多个清扫矩形绘制到第二待清扫轨迹的场景图中;对第二待清扫轨迹的场景图中的多个清扫矩形中的单个清扫矩形进行路径规划。
步骤302:将所述单个清扫矩形按预设角度进行旋转,以使所述单个清扫矩形的长边平行于y轴,得到第一清扫矩形,并对所述第一清扫矩形的第一短边和所述第一清扫矩形的第二短边分别按第一预设方向和第二预设方向进行移动,获取移动后的所述第一清扫矩形的第一短边的第一采样坐标集。
本实施例中,先对单个清扫区域的进行方向判断,即确定单个清扫区域为横向单清扫区域或纵向清扫区域,当单个清扫区域为横向单清扫区域时,需对横向单清扫区域进行旋转,以使横向单清扫区域的长边平行坐标轴y轴,得到第一清扫矩形,如图14所示,清扫矩形ABCD为横向单清扫区域,通过计算矩形短边AB与x轴夹角θ,以A坐标为原点对矩形旋转θ角得第一清扫矩形,如图15所示。在进行路径规划时,从旋转后的横向单清扫区域的长边作为路径规划的起点,相比于使用横向单清扫区域的短边作为路径规划的起点,能进一步的减少路径规划线路掉头的次数,对路径规划方案能进一步优化,提高机器人行驶效率。
本实施例中,对第一清扫矩形的第一短边和所述第一清扫矩形的第二短边分别按第一预设方向和第二预设方向进行移动,获取移动后的所述第一清扫矩形的第一短边的第一采样坐标集,即对第一清扫矩形中的边AB沿y轴负方向移动长度d,边CD沿y轴正方向移动长度d,以矩形左下顶点A为起点,等间隔沿x轴正方向对AB边采样,并考虑车辆的几何模型获取移动后的第二清扫矩形的边AB的第一采样坐标集{(x1,y1),(x2,y2),…(xn,yn)}。
步骤303:对所述第一采样坐标集按第一预设方向绘制射线,以使所述射线与所述第一清扫矩形的第二短边相交,获取第二采样坐标集。
本实施例中,对第一采样坐标集按第一预设方向绘制射线,以使所述射线与所述第一清扫矩形的第二短边相交,获取第二采样坐标集。即将第一采样坐标集中的坐标分别沿y轴负方向做射线与边CD分别相交得第二采样坐标集{(x′1,y′1),(x′2,y′2),…(x′n,y′n)}。
步骤304:其中,当所述第二待清扫区域场景图中不存在障碍物区域时,按照预设的连接方式将所述第一采样坐标集和所述第二采样坐标集连接起来,形成所述机器人的路径规划线路。
本实施例中,当所述第二待清扫区域场景图中不存在障碍物区域时,按照预设的连接方式将所述第一采样坐标集和所述第二采样坐标集连接起来,形成所述机器人的路径规划线路。即依次以线段方式将第一采样坐标集{(x1,y1),(x2,y2),…(xn,yn)}中的单个点坐标分别与第二采样坐标集{(x′1,y′1),(x2′,y′2),…(x′n,y′n)}中对应的单个点坐标连接起来,以半圆弧连接的方式将第一采样坐标集{(x1,y1),(x2,y2),…(xn,yn)}中相邻的点连接起来,同时以半圆弧方式将第二采样坐标集{(x′1,y′1),(x2′,y′2),…(x′n,y′n)}中相邻的点连接起来,形成单个清扫区域矩形的全覆盖划分路径。
步骤305:当所述第二待清扫区域场景图中存在障碍物区域时,判断所述障碍物区域的位置。
本实施例中,障碍物区域的位置可能存在于第一清扫矩形的下方,障碍物区域的位置可能存在于第一清扫矩形的上方,同样的,障碍物区域的位置可能存在于第一清扫矩形的左右两边。
步骤306:当确认所述障碍物区域位于所述第一清扫矩形的下方时,获取并根据所述第一采样坐标集中与所述障碍物区域距离最小的第一点坐标,采集满足第一预设范围内的所述第一采样坐标集中的多个点坐标,并按第一预设条件更新所述第一采样坐标集中的所述多个点坐标,生成第三采样坐标集,按照预设的连接方式将所述第三采样坐标集与所述第二采样集连接起来,形成所述机器人的路径规划线路。
本实施例中,当确认所述障碍物区域位于所述第一清扫矩形的下方时,依次判断第一采样坐标集{(x1,y1),(x2,y2),…(xn,yn)}中的点坐标与障碍物的距离最小的第一点坐标(x,y),用于获取第一采样坐标集中与所述障碍物区域距离最小的第一点坐标(x,y),同时考虑车辆的几何模型,根据获取的第一点坐标(x,y),预设x∈(xk-d1,xk+d1),y∈(yk+d2,yk),设置为第一预设范围,依次判断第一采样坐标集{(x1,y1),(x2,y2),…(xn,yn)}中落在第一预设范围上的点坐标(xk,yk),并采集满足第一预设范围内的所述第一采样坐标集中的多个点坐标,并按第一预设条件更新所述第一采样坐标集中的所述多个点坐标,以使更新第一采样坐标集中的点坐标(xk,yk)为(xk,y″k),其中y″k=max(yk,y+d2),生成第三采样坐标集,依次以线段方式将第三采样坐标集的单个点坐标分别与第二采样坐标集中对应的单个点坐标连接起来,以半圆弧连接的方式将第三采样坐标集中相邻的点连接起来,同时以半圆弧方式将第二采样坐标集中相邻的点连接起来,形成单个清扫区域矩形的全覆盖划分路径。
步骤307:当确认所述障碍物区域位于所述第一清扫矩形的上方时,获取并根据所述第二采样坐标集中与所述障碍物区域距离最小的第二点坐标,采集满足第二预设范围内的所述第二采样坐标集中的多个点坐标,并按第二预设条件更新所述第二采样坐标集中的所述多个点坐标,生成第四采样坐标集,按照预设的连接方式将所述第四采样坐标集与所述第一采样集连接起来,形成所述机器人的路径规划线路。
本实施例中,当确认所述障碍物区域位于所述第一清扫矩形的上方时,依次判断第二采样坐标集{(x′1,y′1),(x′2,y′2),…(x′n,y′n)}中的点坐标(x′k,y′k)与障碍物的距离最小的第一点坐标(x,y),用于获取并根据所述第二采样坐标集中与所述障碍物区域距离最小的第二点坐标(x,y),同时考虑车辆的几何模型,根据获取的第二点坐标(x,y),预设x∈(x′k-d1,x′k+d1),y∈(y′k-d2,y′k)与非清扫区域的距离最小的点坐标(x,y)设置为第二预设范围,依次判断第二采样坐标集{(x′1,y′1),(x′2,y′2),…(x′n,y′n)}中的点坐标在(x′k,y′k)落在第二预设范围上的点坐标(x′k,y′k),并采集满足第二预设范围内的所述第二采样坐标集中的多个点坐标,并按第二预设条件更新所述第二采样坐标集中的所述多个点坐标,以使更新(x′k,y′k)坐标为(x′k,y″′k)其中y″′k=min(y′k,y-d2),生成第四采样坐标集,依次以线段方式将第四采样坐标集的单个点坐标分别与第一采样坐标集中对应的单个点坐标连接起来,以半圆弧连接的方式将第四采样坐标集中相邻的点连接起来,同时以半圆弧方式将第一采样坐标集中相邻的点连接起来。形成单个清扫区域矩形的全覆盖划分路径,其路径划分过程如图16所示。
本实施例中,基于考虑机器人的几何模型,当障碍物区域位于第一清扫矩形上方或下方时设定第一预设范围和第二预设范围来更改机器人距离障碍物区域较近的点的坐标,是为了当机器人在清扫到距离障碍物区域较近的点坐标时,若需要执行掉头动作,避免机器人会与障碍物区域进行重合,能进一步的保障机器人行驶的安全性。
作为本实施例中的一种举例,当第一清扫矩形上下方都存在障碍物区域时,要同时对第一采样坐标集和第二采样坐标集进行处理,对应生成第三采样坐标集和第四采样坐标集,依次以线段方式将第四采样坐标集的单个点坐标分别与第三采样坐标集中对应的单个点坐标连接起来,以半圆弧连接的方式将第四采样坐标集中相邻的点连接起来,同时以半圆弧方式将第三采样坐标集中相邻的点连接起来,形成单个清扫区域矩形的全覆盖划分路径。
同样的,作为本实施例中的一种举例,当第一清扫矩形的左右两边同时或单独存在障碍物区域时,并不要对第一采集坐标集和第二采集坐标集进行处理,依次以线段方式将第一采样坐标集中的单个点坐标分别与第二采样坐标集中对应的单个点坐标连接起来,以半圆弧连接的方式将第一采样坐标集中相邻的点连接起来,同时以半圆弧方式将第二采样坐标集中相邻的点连接起来,形成单个清扫区域矩形的全覆盖划分路径。
参见图18,图18是本发明提供的机器人清扫区域划分方法的一种实施例的结构示意图,如图18所示,该结构包括,具体如下:执行模块401、第一获取模块402、第二获取模块403、第一路径规划模块404、判断模块405、第二路径规划模块406和第三路径规划模块407;
其中,执行模块401具体用于执行实施例1所述的机器人清扫区域划分装置,所述路径划分模块具体用于获取所述第一图像中的多个清扫矩形,将所述多个清扫矩形绘制到第二待清扫轨迹的场景图中,对所述多个清扫矩形中的单个清扫矩形进行路径规划。
本实施例中,先执行如实施例1中所述的机器人清扫区域划分装置,用于获取所述第一图像中的多个清扫矩形,将所述多个清扫矩形绘制到第二待清扫轨迹的场景图中;对第二待清扫轨迹的场景图中的多个清扫矩形中的单个清扫矩形进行路径规划。
第一获取模块402具体用于将所述单个清扫矩形按预设角度进行旋转,以使所述单个清扫矩形的长边平行于y轴,得到第一清扫矩形,并对所述第一清扫矩形的第一短边和所述第一清扫矩形的第二短边分别按第一预设方向和第二预设方向进行移动,获取移动后的所述第一清扫矩形的第一短边的第一采样坐标集。
本实施例中,先对单个清扫区域的进行方向判断,即确定单个清扫区域为横向单清扫区域或纵向清扫区域,当单个清扫区域为横向单清扫区域时,需对横向单清扫区域进行旋转,以使横向单清扫区域的长边平行坐标轴y轴,得到第一清扫矩形,如图14所示,清扫矩形ABCD为横向单清扫区域,通过计算矩形短边AB与x轴夹角θ,以A坐标为原点对矩形旋转θ角得第一清扫矩形,如图15所示。在进行路径规划时,从旋转后的横向单清扫区域的长边作为路径规划的起点,相比于使用横向单清扫区域的短边作为路径规划的起点,能进一步的减少路径规划线路掉头的次数,对路径规划方案能进一步优化,提高机器人行驶效率。
本实施例中,对第一清扫矩形的第一短边和所述第一清扫矩形的第二短边分别按第一预设方向和第二预设方向进行移动,获取移动后的所述第一清扫矩形的第一短边的第一采样坐标集,即对第一清扫矩形中的边AB沿y轴负方向移动长度d,边CD沿y轴正方向移动长度d,以矩形左下顶点A为起点,等间隔沿x轴正方向对AB边采样,并考虑车辆的几何模型获取移动后的第二清扫矩形的边AB的第一采样坐标集{(x1,y1),(x2,y2),…(xn,yn)}。
第二获取模块403具体用于对所述第一采样坐标集按第一预设方向绘制射线,以使所述射线与所述第一清扫矩形的第二短边相交,获取第二采样坐标集。
本实施例中,对第一采样坐标集按第一预设方向绘制射线,以使所述射线与所述第一清扫矩形的第二短边相交,获取第二采样坐标集。即将第一采样坐标集中的坐标分别沿y轴负方向做射线与边CD分别相交得第二采样坐标集{(x′1,y′1),(x′2,y′2),…(x′n,y′n)}。
第一路径规划模块404具体用于当所述第二待清扫区域场景图中不存在障碍物区域时,按照预设的连接方式将所述第一采样坐标集和所述第二采样坐标集连接起来,形成所述机器人的路径规划线路。
本实施例中,当所述第二待清扫区域场景图中不存在障碍物区域时,按照预设的连接方式将所述第一采样坐标集和所述第二采样坐标集连接起来,形成所述机器人的路径规划线路。即依次以线段方式将第一采样坐标集{(x1,y1),(x2,y2),…(xn,yn)}中的单个点坐标分别与第二采样坐标集{(x′1,y′1),(x2′,y′2),…(x′n,y′n)}中对应的单个点坐标连接起来,以半圆弧连接的方式将第一采样坐标集{(x1,y1),(x2,y2),…(xn,yn)}中相邻的点连接起来,同时以半圆弧方式将第二采样坐标集{(x′1,y′1),(x′2,y′2),…(x′n,y′n)}中相邻的点连接起来,形成单个清扫区域矩形的全覆盖划分路径。
判断模块405具体用于当所述第二待清扫区域场景图中存在障碍物区域时,判断所述障碍物区域的位置。
本实施例中,当确认所述障碍物区域位于所述第一清扫矩形的下方时,依次判断第一采样坐标集{(x1,y1),(x2,y2),…(xn,yn)}中的点坐标与障碍物的距离最小的第一点坐标(x,y),用于获取第一采样坐标集中与所述障碍物区域距离最小的第一点坐标(x,y),同时考虑车辆的几何模型,根据获取的第一点坐标(x,y),预设x∈(xk-d1,xk+d1),y∈(yk+d2,yk),设置为第一预设范围,依次判断第一采样坐标集{(x1,y1),(x2,y2),…(xn,yn)}中落在第一预设范围上的点坐标(xk,yk),并采集满足第一预设范围内的所述第一采样坐标集中的多个点坐标,并按第一预设条件更新所述第一采样坐标集中的所述多个点坐标,以使更新第一采样坐标集中的点坐标(xk,yk)为(xk,y″k),其中y″k=max(yk,y+d2),生成第三采样坐标集,依次以线段方式将第三采样坐标集的单个点坐标分别与第二采样坐标集中对应的单个点坐标连接起来,以半圆弧连接的方式将第三采样坐标集中相邻的点连接起来,同时以半圆弧方式将第二采样坐标集中相邻的点连接起来,形成单个清扫区域矩形的全覆盖划分路径。
第二路径规划模块406具体用于当确认所述障碍物区域位于所述第一清扫矩形的下方时,获取并根据所述第一采样坐标集中与所述障碍物区域距离最小的第一点坐标,采集满足第一预设范围内的所述第一采样坐标集中的多个点坐标,并按第一预设条件更新所述第一采样坐标集中的所述多个点坐标,生成第三采样坐标集,按照预设的连接方式将所述第三采样坐标集与所述第二采样集连接起来,形成所述机器人的路径规划线路。
本实施例中,当确认所述障碍物区域位于所述第一清扫矩形的下方时,依次判断第一采样坐标集{(x1,y1),(x2,y2),…(xn,yn)}中的点坐标与障碍物的距离最小的第一点坐标(x,y),用于获取第一采样坐标集中与所述障碍物区域距离最小的第一点坐标(x,y),同时考虑车辆的几何模型,根据获取的第一点坐标(x,y),预设x∈(xk-d1,xk+d1),y∈(yk+d2,yk),设置为第一预设范围,依次判断第一采样坐标集{(x1,y1),(x2,y2),…(xn,yn)}中落在第一预设范围上的点坐标(xk,yk),并采集满足第一预设范围内的所述第一采样坐标集中的多个点坐标,并按第一预设条件更新所述第一采样坐标集中的所述多个点坐标,以使更新第一采样坐标集中的点坐标(xk,yk)为(xk,y″k),其中y″k=max(yk,y+d2),生成第三采样坐标集,依次以线段方式将第三采样坐标集的单个点坐标分别与第二采样坐标集中对应的单个点坐标连接起来,以半圆弧连接的方式将第三采样坐标集中相邻的点连接起来,同时以半圆弧方式将第二采样坐标集中相邻的点连接起来,形成单个清扫区域矩形的全覆盖划分路径。
第三路径规划模块407具体用于当确认所述障碍物区域位于所述第一清扫矩形的下方时,获取并根据所述第二采样坐标集中与所述障碍物区域距离最小的第二点坐标,采集满足第二预设范围内的所述第二采样坐标集中的多个点坐标,并按第二预设条件更新所述第二采样坐标集中的所述多个点坐标,生成第四采样坐标集,按照预设的连接方式将所述第四采样坐标集与所述第一采样集连接起来,形成所述机器人的路径规划线路。
本实施例中,当确认所述障碍物区域位于所述第一清扫矩形的上方时,依次判断第二采样坐标集{(x′1,y′1),(x′2,y′2),…(x′n,y′n)}中的点坐标(x′k,y′k)与障碍物的距离最小的第一点坐标(x,y),用于获取并根据所述第二采样坐标集中与所述障碍物区域距离最小的第二点坐标(x,y),同时考虑车辆的几何模型,根据获取的第二点坐标(x,y),预设x∈(x′k-d1,x′k+d1),y∈(y′k-d2,y′k)与非清扫区域的距离最小的点坐标(x,y)设置为第二预设范围,依次判断第二采样坐标集{(x′1,y′1),(x′2,y′2),…(x′n,y′n)}中的点坐标在(x′k,y′k)落在第二预设范围上的点坐标(x′k,y′k),并采集满足第二预设范围内的所述第二采样坐标集中的多个点坐标,并按第二预设条件更新所述第二采样坐标集中的所述多个点坐标,以使更新(x′k,y′k)坐标为(x′k,y″′k)其中y″′k=min(y′k,y-d2),生成第四采样坐标集,依次以线段方式将第四采样坐标集的单个点坐标分别与第一采样坐标集中对应的单个点坐标连接起来,以半圆弧连接的方式将第四采样坐标集中相邻的点连接起来,同时以半圆弧方式将第一采样坐标集中相邻的点连接起来。形成单个清扫区域矩形的全覆盖划分路径,其路径划分过程如图16所示。
本实施例中,基于考虑机器人的几何模型,当障碍物区域位于第一清扫矩形上方或下方时设定第一预设范围和第二预设范围来更改机器人距离障碍物区域较近的点的坐标,是为了当机器人在清扫到距离障碍物区域较近的点坐标时,若需要执行掉头动作,避免机器人会与障碍物区域进行重合,能进一步的保障机器人行驶的安全性。
作为本实施例中的一种举例,当第一清扫矩形上下方都存在障碍物区域时,要同时对第一采样坐标集和第二采样坐标集进行处理,对应生成第三采样坐标集和第四采样坐标集,依次以线段方式将第四采样坐标集的单个点坐标分别与第三采样坐标集中对应的单个点坐标连接起来,以半圆弧连接的方式将第四采样坐标集中相邻的点连接起来,同时以半圆弧方式将第三采样坐标集中相邻的点连接起来,形成单个清扫区域矩形的全覆盖划分路径。
同样的,作为本实施例中的一种举例,当第一清扫矩形的左右两边同时或单独存在障碍物区域时,并不要对第一采集坐标集和第二采集坐标集进行处理,依次以线段方式将第一采样坐标集中的单个点坐标分别与第二采样坐标集中对应的单个点坐标连接起来,以半圆弧连接的方式将第一采样坐标集中相邻的点连接起来,同时以半圆弧方式将第二采样坐标集中相邻的点连接起来,形成单个清扫区域矩形的全覆盖划分路径。
综上,本发明一种机器人清扫区域划分方法、路径规划方法及装置,基于获取的旋转角角度对存在障碍物区域的待清扫区域场景图和清扫边界轨迹图进行旋转处理,根据图像边缘检测算法获取旋转处理后的清扫边界轨迹图对应的第二最小外接矩形和第一外接多边形,并对第一外接多边形进行顶点处理后生成第二外接多边形,再通过判断待清扫区域场景图中是否存在障碍物区域,同时结合第二最小外接矩形和第一外接多边形,以此来确定清扫区域和非清扫区域。与现有技术相比,本发明通过图像边缘检测算法进行边界检测,以使区域边界矩形化,实现对清扫区域的划分,提高清扫覆盖面积。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明技术原理的前提下,还可以做出若干改进和替换,这些改进和替换也应视为本发明的保护范围。
Claims (10)
1.一种机器人清扫区域划分方法,其特征在于,包括:
获取并根据第一待清扫区域场景图,绘制清扫边界轨迹,生成第一清扫边界轨迹图;
根据图像边缘检测算法,获取所述第一清扫边界轨迹图的清扫边界轨迹的第一最小外接矩形,并根据所述第一最小外接矩形,确定所述清扫边界轨迹的旋转角角度,继而根据所述旋转角角度对所述第一待清扫区域场景图和所述第一清扫边界轨迹图进行旋转,生成第二待清扫区域场景图和第二清扫边界轨迹图;
根据图像边缘检测算法对所述第二清扫边界轨迹图进行预处理,获取所述第二清扫边界轨迹图的清扫边界轨迹的第二最小外接矩形和第一外接多边形,并对所述第一外接多边形进行顶点处理,生成第二外接多边形;
当所述第二待清扫区域场景图中不存在障碍物区域时,根据所述第二外接多边形与所述第二最小外接矩形所组合形成的第一组合图形,确定所述机器人的第一清扫区域和第一非清扫区域;或者,当所述第二待清扫区域场景图中存在障碍物区域时,根据所述障碍物区域、所述第二外接多边形与所述第二最小外接矩形三者所组合形成的第二组合图形,确定所述机器人的第二清扫区域和第二非清扫区域。
2.如权利要求1所述的机器人清扫区域划分方法,其特征在于,根据所述第二外接多边形与所述第二最小外接矩形所组合形成的第一组合图形,确定所述机器人的第一清扫区域和第一非清扫区域,具体为:
将所述第二外接多边形与所述第二最小外接矩形组合形成第一组合图形,分别对所述第一组合图形中所述第二外接多边形与所述第二最小外接矩形所围成的一个或多个区域进行边缘检测,以使所述所围成的一个或多个区域转化为相对应的一个或多个第一外接目标矩形;
将所述一个或多个第一外接目标矩形确定为所述机器人的第一非清扫区域,将所述第一组合图形中除所述一个或多个第一外接目标矩形外的区域确定为所述机器人的第一清扫区域。
3.如权利要求1所述的机器人清扫区域划分方法,其特征在于,当所述第二待清扫区域场景图中存在障碍物区域时,根据所述障碍物区域、所述第二外接多边形与所述第二最小外接矩形三者所组合形成的第二组合图形,确定所述机器人的第二清扫区域和第二非清扫区域,具体为:
将所述障碍物区域、所述第二外接多边形与所述第二最小外接矩形三者组合形成第二组合图形,分别对所述第二组合图形中所述第二外接多边形与所述第二最小外接矩形所围成的一个或多个区域进行边缘检测,以使所述所围成的一个或多个区域转化为相对应的一个或多个第一外接目标矩形;同时对所述第二组合图形中所述障碍物区域进行边缘检测,使所述障碍物区域转化为第二外接目标矩形;
将所述一个或多个第一外接目标矩形和所述第二外接目标矩形确定为所述机器人的第二非清扫区域,将所述第二组合图形中除所述一个或多个第一外接目标矩形和所述第二外接目标矩形外的区域确定为所述机器人的第一清扫区域。
4.如权利要求2或3所述的机器人清扫区域划分方法,其特征在于,在确定所述机器人的第一清扫区域为清扫区域和确定所述机器人的第一非清扫区域为非清扫区域之后,或者在确定所述机器人的第二清扫区域为清扫区域和确定所述机器人的第二非清扫区域为非清扫区域之后,所述机器人清扫区域划分方法还包括:
对所述清扫区域和所述非清扫区域按颜色像素值进行区分并形成第一图像;
按第一预设顺序遍历所述第一图像中的非清扫区域中的每个第一外接目标矩形,在所述第一图像中按预设方向以所述第一外接目标矩形的顶点为起点分别绘制线段,以将所述第一图像划分为多个矩形;
按从第二预设顺序遍历所述第一图像中的多个矩形的颜色像素值;
从所述第一图像的任一顶点处的矩形开始,根据所述第二预设顺序遍历,将首次遇到的在第一预设颜色像素阈值范围内的点,记为第一顶点,继续遍历直至遇到第二预设颜色像素阈值范围内的点或遇到矩形的边界的点时,改变遍历方向,直至遇到第二预设颜色阈值范围内的点或遇到矩形的边界的点,记为第二顶点,并根据所述第一顶点和所述第二顶点,划分出一个清扫矩形,其中,所述第一顶点和所述第二顶点为对角顶点;
更改所述清扫矩形的颜色像素值,以使所述清扫矩形的颜色像素值区别于所述第一预设颜色像素阈值范围和所述第二预设颜色像素阈值范围,返回步骤“按从第二预设顺序遍历所述第一图像中的多个矩形的颜色像素值”,直至遍历所述第一图像中的所有矩形,以将所述第一图像划分出多个清扫矩形。
5.如权利要求1所述的机器人清扫区域划分方法,其特征在于,所述根据图像边缘检测算法对所述第二清扫边界轨迹图进行预处理,获取所述第二清扫边界轨迹图的清扫边界轨迹的第二最小外接矩形和第一外接多边形,具体为:
根据图像边缘检测算法对所述第二清扫边界轨迹图的清扫边界轨迹进行边缘检测,获取所述第二清扫边界轨迹图的清扫边界轨迹的第二最小外接矩形;
根据所述第二最小外接矩形对所述第二清扫边界轨迹图进行ROI提取,获取经ROI提取后得到的第三清扫边界轨迹图,对所述第三清扫边界轨迹图中的清扫边界轨迹进行边缘检测,获取所述第三清扫边界轨迹图的清扫边界的第一外接多边形。
6.如权利要求1所述的机器人清扫区域划分方法,其特征在于,所述对所述第一外接多边形进行顶点处理,生成第二外接多边形,具体为:获取所述第一外接多边形的顶点坐标,生成所述第一外接多边形的顶点坐标集,根据预设公式对所述顶点坐标集进行平滑处理,生成新的第一外接多边形的顶点坐标集;和/或,根据所述第一最小外接矩形,确定所述清扫边界轨迹的旋转角角度,具体为:以所述第一最小外接矩形的左上角顶点为坐标原点,从原点向X轴的正方向绘制射线,将所述射线进行逆时针旋转,直至所述射线与所述第一最小外接矩形的边重合,获取所述射线与所述第一最小外接矩形的旋转角角度。
7.一种机器人清扫路径规划方法,其特征在于,包括:
执行如权利要求4所述的机器人清扫区域划分方法,获取所述第一图像中的多个清扫矩形,将所述多个清扫矩形绘制到第二待清扫轨迹的场景图中,对所述多个清扫矩形中的单个清扫矩形进行路径规划;
将所述单个清扫矩形按预设角度进行旋转,以使所述单个清扫矩形的长边平行于y轴,得到第一清扫矩形,并对所述第一清扫矩形的第一短边和所述第一清扫矩形的第二短边分别按第一预设方向和第二预设方向进行移动,获取移动后的所述第一清扫矩形的第一短边的第一采样坐标集;
对所述第一采样坐标集按第一预设方向绘制射线,以使所述射线与所述第一清扫矩形的第二短边相交,获取第二采样坐标集;
其中,当所述第二待清扫区域场景图中不存在障碍物区域时,按照预设的连接方式将所述第一采样坐标集和所述第二采样坐标集连接起来,形成所述机器人的路径规划线路;
当所述第二待清扫区域场景图中存在障碍物区域时,判断所述障碍物区域的位置;
当确认所述障碍物区域位于所述第一清扫矩形的下方时,获取并根据所述第一采样坐标集中与所述障碍物区域距离最小的第一点坐标,采集满足第一预设范围内的所述第一采样坐标集中的多个点坐标,并按第一预设条件更新所述第一采样坐标集中的所述多个点坐标,生成第三采样坐标集,按照预设的连接方式将所述第三采样坐标集与所述第二采样集连接起来,形成所述机器人的路径规划线路;
当确认所述障碍物区域位于所述第一清扫矩形的上方时,获取并根据所述第二采样坐标集中与所述障碍物区域距离最小的第二点坐标,采集满足第二预设范围内的所述第二采样坐标集中的多个点坐标,并按第二预设条件更新所述第二采样坐标集中的所述多个点坐标,生成第四采样坐标集,按照预设的连接方式将所述第四采样坐标集与所述第一采样集连接起来,形成所述机器人的路径规划线路。
8.一种机器人清扫区域划分装置,其特征在于,包括:绘制模块、图像旋转模块、图像处理模块和区域确定模块;
其中,所述绘制模块用于获取并根据第一待清扫区域场景图,绘制清扫边界轨迹,生成第一清扫边界轨迹图;
所述图像旋转模块用于根据图像边缘检测算法,获取所述第一清扫边界轨迹图的清扫边界轨迹的第一最小外接矩形,并根据所述第一最小外接矩形,确定所述清扫边界轨迹的旋转角角度,继而根据所述旋转角角度对所述第一待清扫区域场景图和所述第一清扫边界轨迹图进行旋转,生成第二待清扫区域场景图和第二清扫边界轨迹图;
所述图像处理模块用于根据图像边缘检测算法对所述第二清扫边界轨迹图进行预处理,获取所述第二清扫边界轨迹图的清扫边界轨迹的第二最小外接矩形和第一外接多边形,并对所述第一外接多边形进行顶点处理,生成第二外接多边形;
所述区域确定模块用于当所述第二待清扫区域场景图中不存在障碍物区域时,根据所述第二外接多边形与所述第二最小外接矩形所组合形成的第一组合图形,确定所述机器人的第一清扫区域和第一非清扫区域;或者,当所述第二待清扫区域场景图中存在障碍物区域时,根据所述障碍物区域、所述第二外接多边形与所述第二最小外接矩形三者所组合形成的第二组合图形,确定所述机器人的第二清扫区域和第二非清扫区域。
9.如权利要求8所述的机器人清扫区域划分装置,其特征在于,所述装置还包括:第一划分模块和第二划分装置;
其中,所述第一划分模块具体用于在确定所述机器人的第一清扫区域为清扫区域和确定所述机器人的第一非清扫区域为非清扫区域之后,或者在确定所述机器人的第二清扫区域为清扫区域和确定所述机器人的第二非清扫区域为非清扫区域之后;
对所述清扫区域和所述非清扫区域按颜色像素值进行区分并形成第一图像;
按第一预设顺序遍历所述第一图像中的非清扫区域中的每个第一外接目标矩形,在所述第一图像中按预设方向以所述第一外接目标矩形的顶点为起点分别绘制线段,以将所述第一图像划分为多个矩形;
所述第二划分模块具体用于按从第二预设顺序遍历所述第一图像中的多个矩形的颜色像素值;
从所述第一图像的任一顶点处的矩形开始,根据所述第二预设顺序遍历,将首次遇到的在第一预设颜色像素阈值范围内的点,记为第一顶点,继续遍历直至遇到第二预设颜色像素阈值范围内的点或遇到矩形的边界的点时,改变遍历方向,直至遇到第二预设颜色阈值范围内的点或遇到矩形的边界的点,记为第二顶点,并根据所述第一顶点和所述第二顶点,划分出一个清扫矩形,其中,所述第一顶点和所述第二顶点为对角顶点;
更改所述清扫矩形的颜色像素值,以使所述清扫矩形的颜色像素值区别于所述第一预设颜色像素阈值范围和所述第二预设颜色像素阈值范围,返回步骤“按从第二预设顺序遍历所述第一图像中的多个矩形的颜色像素值”,直至遍历所述第一图像中的所有矩形,以将所述第一图像划分出多个清扫矩形。
10.一种机器人清扫路径规划装置,其特征在于,包括:执行模块、第一获取模块、第二获取模块、第一路径规划模块、判断模块、第二路径规划模块和第三路径规划模块;
其中,所述执行模块具体用于执行如权利要求9所述的机器人清扫区域划分装置,所述路径划分模块具体用于获取所述第一图像中的多个清扫矩形,将所述多个清扫矩形绘制到第二待清扫轨迹的场景图中;对所述多个清扫矩形中的单个清扫矩形进行路径规划;
所述第一获取模块具体用于将所述单个清扫矩形按预设角度进行旋转,以使所述单个清扫矩形的长边平行于y轴,得到第一清扫矩形,并对所述第一清扫矩形的第一短边和所述第一清扫矩形的第二短边分别按第一预设方向和第二预设方向进行移动,获取移动后的所述第一清扫矩形的第一短边的第一采样坐标集;
所述第二获取模块具体用于对所述第一采样坐标集按第一预设方向绘制射线,以使所述射线与所述第一清扫矩形的第二短边相交,获取第二采样坐标集;
所述第一路径规划模块具体用于当所述第二待清扫区域场景图中不存在障碍物区域时,按照预设的连接方式将所述第一采样坐标集和所述第二采样坐标集连接起来,形成所述机器人的路径规划线路;
所述判断模块具体用于当所述第二待清扫区域场景图中存在障碍物区域时,判断所述障碍物区域的位置;
所述第二路径规划模块具体用于当确认所述障碍物区域位于所述第一清扫矩形的下方时,获取并根据所述第一采样坐标集中与所述障碍物区域距离最小的第一点坐标,采集满足第一预设范围内的所述第一采样坐标集中的多个点坐标,并按第一预设条件更新所述第一采样坐标集中的所述多个点坐标,生成第三采样坐标集,按照预设的连接方式将所述第三采样坐标集与所述第二采样集连接起来,形成所述机器人的路径规划线路;
所述第三路径规划模块具体用于当确认所述障碍物区域位于所述第一清扫矩形的下方时,获取并根据所述第二采样坐标集中与所述障碍物区域距离最小的第二点坐标,采集满足第二预设范围内的所述第二采样坐标集中的多个点坐标,并按第二预设条件更新所述第二采样坐标集中的所述多个点坐标,生成第四采样坐标集,按照预设的连接方式将所述第四采样坐标集与所述第一采样集连接起来,形成所述机器人的路径规划线路。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111064362.3A CN113848892B (zh) | 2021-09-10 | 2021-09-10 | 一种机器人清扫区域划分方法、路径规划方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111064362.3A CN113848892B (zh) | 2021-09-10 | 2021-09-10 | 一种机器人清扫区域划分方法、路径规划方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113848892A true CN113848892A (zh) | 2021-12-28 |
CN113848892B CN113848892B (zh) | 2024-01-16 |
Family
ID=78973666
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111064362.3A Active CN113848892B (zh) | 2021-09-10 | 2021-09-10 | 一种机器人清扫区域划分方法、路径规划方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113848892B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114510049A (zh) * | 2022-02-08 | 2022-05-17 | 珠海一微半导体股份有限公司 | 一种回旋状路径规划方法、芯片及清洁机器人 |
CN115429157A (zh) * | 2022-08-29 | 2022-12-06 | 广州宝乐软件科技有限公司 | 清扫范围的确定方法、装置、清洁机器人和存储介质 |
EP4293465A3 (en) * | 2022-06-17 | 2024-01-31 | Willand (Beijing) Technology Co., Ltd. | Movement control method, electronic device, and computer storage medium |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000353014A (ja) * | 1999-06-09 | 2000-12-19 | Toyota Autom Loom Works Ltd | 清掃ロボット |
CN107505939A (zh) * | 2017-05-13 | 2017-12-22 | 大连理工大学 | 一种移动机器人的全覆盖路径规划方法 |
CN109947114A (zh) * | 2019-04-12 | 2019-06-28 | 南京华捷艾米软件科技有限公司 | 基于栅格地图的机器人全覆盖路径规划方法、装置及设备 |
WO2020077850A1 (zh) * | 2018-10-18 | 2020-04-23 | 深圳乐动机器人有限公司 | 一种室内区域划分和识别方法、装置及终端设备 |
WO2021056428A1 (zh) * | 2019-09-27 | 2021-04-01 | 珊口(深圳)智能科技有限公司 | 智能终端、控制系统及与移动机器人的交互方法 |
CN112596518A (zh) * | 2020-12-07 | 2021-04-02 | 深圳拓邦股份有限公司 | 机器人清扫路径规划方法、装置及洗地机器人 |
US11036230B1 (en) * | 2016-03-03 | 2021-06-15 | AI Incorporated | Method for developing navigation plan in a robotic floor-cleaning device |
-
2021
- 2021-09-10 CN CN202111064362.3A patent/CN113848892B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2000353014A (ja) * | 1999-06-09 | 2000-12-19 | Toyota Autom Loom Works Ltd | 清掃ロボット |
US11036230B1 (en) * | 2016-03-03 | 2021-06-15 | AI Incorporated | Method for developing navigation plan in a robotic floor-cleaning device |
CN107505939A (zh) * | 2017-05-13 | 2017-12-22 | 大连理工大学 | 一种移动机器人的全覆盖路径规划方法 |
WO2020077850A1 (zh) * | 2018-10-18 | 2020-04-23 | 深圳乐动机器人有限公司 | 一种室内区域划分和识别方法、装置及终端设备 |
CN109947114A (zh) * | 2019-04-12 | 2019-06-28 | 南京华捷艾米软件科技有限公司 | 基于栅格地图的机器人全覆盖路径规划方法、装置及设备 |
WO2021056428A1 (zh) * | 2019-09-27 | 2021-04-01 | 珊口(深圳)智能科技有限公司 | 智能终端、控制系统及与移动机器人的交互方法 |
CN112596518A (zh) * | 2020-12-07 | 2021-04-02 | 深圳拓邦股份有限公司 | 机器人清扫路径规划方法、装置及洗地机器人 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114510049A (zh) * | 2022-02-08 | 2022-05-17 | 珠海一微半导体股份有限公司 | 一种回旋状路径规划方法、芯片及清洁机器人 |
EP4293465A3 (en) * | 2022-06-17 | 2024-01-31 | Willand (Beijing) Technology Co., Ltd. | Movement control method, electronic device, and computer storage medium |
US11940809B2 (en) | 2022-06-17 | 2024-03-26 | Willand (Beijing) Technology Co., Ltd. | Movement control method, electronic device, and computer storage medium |
CN115429157A (zh) * | 2022-08-29 | 2022-12-06 | 广州宝乐软件科技有限公司 | 清扫范围的确定方法、装置、清洁机器人和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN113848892B (zh) | 2024-01-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111897334B (zh) | 一种基于边界的机器人区域划分方法、芯片及机器人 | |
WO2020056874A1 (zh) | 一种基于视觉识别的自动泊车系统及方法 | |
CN113848892A (zh) | 一种机器人清扫区域划分方法、路径规划方法及装置 | |
CN111598916A (zh) | 一种基于rgb-d信息的室内占据栅格地图的制备方法 | |
CA2950791C (en) | Binocular visual navigation system and method based on power robot | |
CN109886175B (zh) | 一种直线与圆弧相结合的车道线检测方法 | |
CN109583365B (zh) | 基于成像模型约束非均匀b样条曲线拟合车道线检测方法 | |
CN112561998B (zh) | 一种基于三维点云配准的机器人定位和自主充电方法 | |
CN111595356B (zh) | 一种激光导航机器人的工作区域构建方法 | |
CN110210377A (zh) | 一种用于三维户型重建的墙体及门窗信息获取方法 | |
CN111640323A (zh) | 一种路况信息获取方法 | |
CN112308928A (zh) | 一种无标定装置的相机与激光雷达自动标定方法 | |
CN113985866A (zh) | 扫地机器人路径规划方法、装置、电子设备、存储介质 | |
CN110210298B (zh) | 一种基于空中视野的曲折道路信息提取与表示方法 | |
CN112258517A (zh) | 激光雷达栅格地图的自动修图方法和装置 | |
CN115330969A (zh) | 一种用于地面无人车的局部静态环境矢量化描述方法 | |
CN111681250A (zh) | 一种基于激光栅格地图的分割方法 | |
CN112902981A (zh) | 机器人导航方法和装置 | |
CN106934395A (zh) | 一种采用surf特征和颜色特征相融合的刚体目标跟踪方法 | |
CN110889362A (zh) | 一种利用栅格地图高度信息的障碍物检测方法 | |
CN115202361A (zh) | 移动机器人的路径规划方法及移动机器人 | |
CN117193277A (zh) | 基于地图区域轮廓的设置方法与机器人沿边结束控制方法 | |
CN110633699B (zh) | Agv智能泊车系统交互区停车行为的视觉检测方法 | |
CN114211164A (zh) | 一种水下焊接机器人焊缝跟踪系统的焊缝跟踪控制方法 | |
CN112580487A (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 |