CN115311172A - 地图区域分割方法以及相关设备 - Google Patents
地图区域分割方法以及相关设备 Download PDFInfo
- Publication number
- CN115311172A CN115311172A CN202211109954.7A CN202211109954A CN115311172A CN 115311172 A CN115311172 A CN 115311172A CN 202211109954 A CN202211109954 A CN 202211109954A CN 115311172 A CN115311172 A CN 115311172A
- Authority
- CN
- China
- Prior art keywords
- grid map
- initial
- contour region
- map
- target
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 63
- 230000011218 segmentation Effects 0.000 title claims abstract description 43
- 230000004888 barrier function Effects 0.000 claims description 18
- 230000006870 function Effects 0.000 claims description 17
- 230000007797 corrosion Effects 0.000 claims description 12
- 238000005260 corrosion Methods 0.000 claims description 12
- 238000007781 pre-processing Methods 0.000 claims description 10
- 241000760358 Enodes Species 0.000 claims description 7
- 230000002085 persistent effect Effects 0.000 claims description 3
- 230000001052 transient effect Effects 0.000 claims description 2
- 230000008569 process Effects 0.000 description 21
- 238000004043 dyeing Methods 0.000 description 9
- 238000004364 calculation method Methods 0.000 description 7
- 238000004891 communication Methods 0.000 description 7
- 239000011159 matrix material Substances 0.000 description 7
- 238000010586 diagram Methods 0.000 description 6
- 238000005192 partition Methods 0.000 description 5
- 238000010408 sweeping Methods 0.000 description 5
- 230000003628 erosive effect Effects 0.000 description 4
- 238000004422 calculation algorithm Methods 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000000605 extraction Methods 0.000 description 3
- 238000005303 weighing Methods 0.000 description 3
- 238000004140 cleaning Methods 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 230000007613 environmental effect Effects 0.000 description 2
- 241000255789 Bombyx mori Species 0.000 description 1
- 101100134058 Caenorhabditis elegans nth-1 gene Proteins 0.000 description 1
- 241001417527 Pempheridae Species 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000000916 dilatatory effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005530 etching Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
- 238000010186 staining Methods 0.000 description 1
- 230000002087 whitening effect Effects 0.000 description 1
Images
Classifications
-
- G06T5/70—
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/20—Image enhancement or restoration by the use of local operators
- G06T5/30—Erosion or dilatation, e.g. thinning
-
- 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/13—Edge detection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/60—Analysis of geometric attributes
- G06T7/62—Analysis of geometric attributes of area, perimeter, diameter or volume
-
- 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/30—Subject of image; Context of image processing
- G06T2207/30204—Marker
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Geometry (AREA)
- Image Analysis (AREA)
Abstract
本申请实施例公开了地图区域分割方法以及相关设备,用于提升地图的区域分割效率以及准确性。本申请实施例方法包括:确定目标栅格地图中每个像素点与对应最近的障碍点的最小距离值,并以所述每个像素点对应的最小距离值为所述每个像素点的灰度值;分别以每个所述最小距离值为二值化阈值,对所述每个像素点的灰度值做二值化处理,以确定至少一个初始轮廓区域;使所述至少一个初始轮廓区域中的每个初始轮廓区域进行扩张,以得到所述目标栅格地图的至少一个目标轮廓区域。
Description
技术领域
本申请实施例涉及扫地机领域,尤其涉及地图区域分割方法以及相关设备。
背景技术
随着扫地机器人的不断升级和改进,越来越多的消费者选择扫地机器人作为家庭清洁工具。
目前,扫地机器人工作前需要通过激光雷达扫描获取全屋的栅格地图,然后对该栅格地图执行二值化处理、腐蚀处理以及轮廓提取处理,以在初始栅格地图中划分出至少一个轮廓区域。基于划分出的至少一个轮廓区域,用户可以分别对机器人下达针对不同轮廓区域的清扫指令。在划分至少一个轮廓区域的过程中,通常是依次以255至0的每个数为阈值对栅格地图中每个像素点执行二值化处理,以确定256个阈值下进行二值化处理后确定的至少一个轮廓区域。
但在轮廓区域确定过程中,依次以255至0中每个数值作为阈值进行二值化,然后进行轮廓区域确定,计算量较大,且导致了硬件成本的增加。
发明内容
本申请实施例提供了地图区域分割方法以及相关设备,用于提升地图区域分割准确性。
本申请实施例第一方面提供一种地图区域分割方法,包括:
对初始栅格地图进行预处理,以得到目标栅格地图;
确定所述目标栅格地图中每个像素点与对应最近的障碍点的最小距离值,并以所述每个像素点对应的最小距离值为所述每个像素点的灰度值;
分别以每个所述最小距离值为二值化阈值,对所述每个像素点的灰度值做二值化处理,以确定至少一个初始轮廓区域;
使所述至少一个初始轮廓区域中的每个初始轮廓区域进行扩张,以得到所述目标栅格地图的至少一个目标轮廓区域。
在一种具体实现方式中,所述分别以每个所述最小距离值为二值化阈值,对所述每个像素点的灰度值做二值化处理,以确定至少一个初始轮廓区域,包括:
分别以每个所述最小距离值为二值化阈值,对所述每个像素点的灰度值做二值化处理,以确定多组待定轮廓区域;
确定所述多组待定轮廓区域中轮廓区域最多且组内每个轮廓区域均大于等于预设的最小轮廓面积的一组待定轮廓区域中的每个待定轮廓区域为至少一个初始轮廓区域。
在一种具体实现方式中,所述使所述至少一个初始轮廓区域中的每个初始轮廓区域进行扩张,以得到所述目标栅格地图的至少一个目标轮廓区域,包括:
使所述每个初始轮廓区域同时进行扩张;
若当前时刻的所述每个初始轮廓区域的边界坐标满足预设的扩张结束条件,则停止扩张所述每个初始轮廓区域;
若所述每个初始轮廓区域均停止扩张,则确定至少一个目标轮廓区域。
在一种具体实现方式中,所述扩张结束条件包括:所述每个初始轮廓区域的边界坐标与其他轮廓区域的边界坐标重合,或所述每个初始轮廓区域的边界坐标与所述目标栅格地图中障碍点对应的障碍像素坐标重合,其中所述其他轮廓区域为所述至少一个初始轮廓区域中除所述每个初始轮廓区域之外的轮廓区域。
在一种具体实现方式中,所述对初始栅格地图进行预处理,以得到目标栅格地图,包括:
获取所述初始栅格地图,并去除所述初始栅格地图中不与边界障碍点连通的其他障碍点以得到去噪栅格地图,其中所述其他障碍点为所述初始栅格地图中除所述边界障碍点之外的障碍点;
对所述去噪栅格地图进行二值化处理以及腐蚀处理,以得到所述目标栅格地图。
在一种具体实现方式中,所述方法还包括:
在所述目标栅格地图中标记所述不与边界障碍点连通的其他障碍点以及所述至少一个目标轮廓区域,以得到目标分区地图。
在一种具体实现方式中,所述对初始栅格地图进行预处理,以得到目标栅格地图,包括:
基于threshold函数对所述初始栅格地图中每个像素点的灰度值进行二值化处理,并基于erode函数对二值化处理后的初始栅格地图进行腐蚀处理,以得到目标栅格地图。
本申请实施例第二方面提供一种地图区域分割装置,包括:
处理单元,用于对初始栅格地图进行预处理,以得到目标栅格地图;
确定单元,用于确定所述目标栅格地图中每个像素点与对应最近的障碍点的最小距离值,并以所述每个像素点对应的最小距离值为所述每个像素点的灰度值;
所述确定单元,还用于分别以每个所述最小距离值为二值化阈值,对所述每个像素点的灰度值做二值化处理,以确定至少一个初始轮廓区域;
扩张单元,用于使所述至少一个初始轮廓区域中的每个初始轮廓区域进行扩张,以得到所述目标栅格地图的至少一个目标轮廓区域。
在一种具体实现方式中,所述确定单元,具体用于分别以每个所述最小距离值为二值化阈值,对所述每个像素点的灰度值做二值化处理,以确定多组待定轮廓区域;
确定所述多组待定轮廓区域中轮廓区域最多且组内每个轮廓区域均大于等于预设的最小轮廓面积的一组待定轮廓区域中的每个待定轮廓区域为至少一个初始轮廓区域。
在一种具体实现方式中,所述扩张单元,具体用于使所述每个初始轮廓区域同时进行扩张;
若当前时刻的所述每个初始轮廓区域的边界坐标满足预设的扩张结束条件,则停止扩张所述每个初始轮廓区域;
若所述每个初始轮廓区域均停止扩张,则确定至少一个目标轮廓区域。
在一种具体实现方式中,所述扩张结束条件包括:所述每个初始轮廓区域的边界坐标与其他轮廓区域的边界坐标重合,或所述每个初始轮廓区域的边界坐标与所述目标栅格地图中障碍点对应的障碍像素坐标重合,其中所述其他轮廓区域为所述至少一个初始轮廓区域中除所述每个初始轮廓区域之外的轮廓区域。
在一种具体实现方式中,所述处理单元,具体用于获取所述初始栅格地图,并去除所述初始栅格地图中不与边界障碍点连通的其他障碍点以得到去噪栅格地图,其中所述其他障碍点为所述初始栅格地图中除所述边界障碍点之外的障碍点;
对所述去噪栅格地图进行二值化处理以及腐蚀处理,以得到所述目标栅格地图。
在一种具体实现方式中,所述装置还包括:标记单元;
所述标记单元,具体用于在所述目标栅格地图中标记所述不与边界障碍点连通的其他障碍点以及所述至少一个目标轮廓区域,以得到目标分区地图。
在一种具体实现方式中,所述处理单元,具体用于基于threshold函数对所述初始栅格地图中每个像素点的灰度值进行二值化处理,并基于erode函数对二值化处理后的初始栅格地图进行腐蚀处理,以得到目标栅格地图。
本申请实施例第三方面提供一种地图区域分割装置,包括:
中央处理器,存储器以及输入输出接口;
所述存储器为短暂存储存储器或持久存储存储器;
所述中央处理器配置为与所述存储器通信,并执行所述存储器中的指令操作以执行第一方面所述的方法。
本申请实施例第四方面提供一种包含指令的计算机程序产品,当所述计算机程序产品在计算机上运行时,使得计算机执行如第一方面所述的方法。
本申请实施例第五方面提供一种计算机存储介质,所述计算机存储介质中存储有指令,所述指令在计算机上执行时,使得所述计算机执行如第一方面所述的方法。
从以上技术方案可以看出,本申请实施例具有以下优点:考虑到室内环境中,是通过墙体实现不同区域的划分,且通常实现区域划分的边界墙体是互相联通的,而不与边界墙体连通的其他障碍物(如不与边界墙体连通的称重柱或沙发)也不用于室内区域划分。为了减少不与边界墙体连通的其他障碍物在地图区域分割过程中带来的干扰以及分割误差。在获取到初始栅格地图后,通过去除初始栅格地图中不与边界障碍点连通的其他障碍点实现去噪,以得到初始栅格地图对应的去噪栅格地图,然后对去噪栅格地图进行区域分割。大大降低了区域分割过程中的误差,进而提升了地图区域分割的准确性。
附图说明
图1为本申请实施例公开的地图区域分割方法的一种流程示意图;
图2为本申请实施例公开的轮廓区域提取的一个示例图;
图3为本申请实施例公开的轮廓区域扩张的一个示例图;
图4为本申请实施例公开的地图区域分割方法的另一流程示意图;
图5为本申请实施例公开的地图区域分割方法的一个示例图;
图6为本申请实施例公开的地图区域分割方法的另一示例图;
图7为本申请实施例公开的地图区域分割装置的一个结构示意图;
图8为本申请实施例公开的地图区域分割装置的另一结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
现有的机器人基于形态的地图区域分割算法如下:首先,将给定地图作二值化(使可行区域像素点的灰度值为255,除可行区域外的其他区域像素点的灰度值为0)。接着,对每个像素点执行腐蚀处理,将每个像素点的灰度值转换为以该像素点为中心的3*3矩阵中灰度值最小的像素点对应的灰度值。然后,将每个像素点到最近的零像素点的距离值确定为该像素点的灰度值。接下来,依次以255至0的每个数为阈值对每个像素点执行二值化处理,以确定256个阈值下进行二值化处理后确定的256组待定轮廓区域,并将256组待定轮廓区域中轮廓区域最多且组内每个轮廓区域均大于等于预设的最小轮廓面积的一组待定轮廓区域中的待定轮廓区域确定为初始轮廓区域。最后,先将每个初始轮廓区域染上对应的颜色,然后遍历给定地图中未染色的每个像素点,将该像素点染色为以该像素点为中心的3x3矩阵的周围八个像素点中从左上角像素点为起点顺时针遍历的第一个已染色像素点的颜色,直至给定地图中不存在未染色像素点,以实现地图区域分割。
现有的地图区域分割算法中,有以下三个问题:其一,真实环境中存在较多障碍物,因此给定地图中存在较多环境噪声,对地图区域分割产生较大干扰,影响地图区域分割的准确性;其二,轮廓区域确定过程中,依次以255至0中每个数值作为阈值进行二值化,然后进行轮廓区域确定,计算量较大;其三,对给定地图进行染色的过程中,需要遍历地图中的每个像素点,计算量较大。
为了解决上述现有地图区域分割算法的缺陷,本申请实施例提供了基于连通性的地图区域分割方法以及相关设备,用于提升地图区域分割的效率和准确性。
请参阅图1,本申请提供一种地图区域分割方法,可以应用于地图区域分割装置,本申请实施例包括以下步骤:
101、对初始栅格地图进行预处理,以得到目标栅格地图。
若要进行地图区域划分首先需要获取一张栅格地图(即初始栅格地图),并对初始栅格地图进行预处理,以得到可以用于后续处理的目标栅格地图。
具体的,预处理可以包括但不限于二值化处理和/或腐蚀处理。
102、确定目标栅格地图中每个像素点与对应最近的障碍点的最小距离值,并以每个像素点对应的最小距离值为每个像素点的灰度值。
具体的,首先确定目标栅格地图中每个像素点与该像素点距离最近的障碍点的距离值为最小距离值,即确定目标栅格地图中每个像素点到最近的墙体的距离值为该像素点对应的最小距离值,将每个像素点对应的最小距离值确定为该像素点的灰度值。
在实际应用中,最小距离值可以是欧氏距离或者马氏距离,此处不作限定。
103、分别以每个最小距离值为二值化阈值,对每个像素点的灰度值做二值化处理,以确定至少一个初始轮廓区域。
分别以每个最小距离值为二值化阈值,对目标栅格地图中每个像素点的灰度值进行二值化处理,然后使用轮廓提取函数从目标栅格地图中确定至少一个初始轮廓区域,其中二值化处理的阈值理论上可以是0至255的256个整数中的任一数值。
104、使至少一个初始轮廓区域中的每个初始轮廓区域进行扩张,以得到目标栅格地图的至少一个目标轮廓区域。
首先,对每个初始轮廓区域的组内区域染色,具体的,每个初始轮廓区域都有其对应的颜色,只要任意两个相邻(即边界坐标直接相邻,其中直接相邻指轮廓区域A的边界坐标的任一相邻坐标就是轮廓区域B的边界坐标)的初始轮廓区域分别对应不同的颜色即可。
然后,使每个初始轮廓区域进行扩张,具体的,可以遍历目标栅格地图中未染色的像素点,并将该像素点的颜色修改为该像素点为中心的3x3矩阵的周围八个像素点中从左上角像素点为起点顺时针遍历的第一个已染色像素点的颜色,直至目标栅格地图中不存在未染色像素点,则得到至少一个目标轮廓区域,实现地图区域分割。
本申请实施例中,考虑到硬件成本以及计算量,轮廓区域确定过程中,依次以仅以多个最小距离值作为阈值进行二值化,然后进行轮廓区域确定,而无需遍历0-255的256个数值。在减少了计算量的同时,也降低了硬件成本。
进一步的,前述步骤101可以通过以下两种方式实现:方法一,获取初始栅格地图,并去除初始栅格地图中不与边界障碍点连通的其他障碍点以得到去噪栅格地图,其中其他障碍点为初始栅格地图中除边界障碍点之外的障碍点;对去噪栅格地图进行二值化处理以及腐蚀处理,以得到目标栅格地图。方法二,基于threshold函数对初始栅格地图中每个像素点的灰度值进行二值化处理,并基于erode函数对二值化处理后的初始栅格地图进行腐蚀处理,以得到目标栅格地图。
具体的,针对方法一,考虑到真实室内环境中,不与边界墙体(即边界障碍点)连通的其他障碍物(即其他障碍点)通常不起到划分室内区域的作用。为了减少不与边界墙体连通的其他障碍物在地图区域分割过程中带来的干扰以及分割误差,需要去除初始栅格地图中不与边界障碍点连通的其他障碍点以得到去噪栅格地图。其中,边界障碍点包括所述初始栅格地图中最外围的障碍点(在室内环境中可以认为是墙体)以及与最外围的障碍点连通的障碍点(即与最外围的墙体连通的墙体),其他障碍点即为初始栅格地图中除边界障碍点之外的其他障碍点(包括但不限于不与边界墙体连通的称重柱或家具)。
对去噪栅格地图先进行二值化处理,再进行腐蚀处理,以得到目标栅格地图。其中,二值化处理通过二值化将去噪栅格地图仅使用黑色(灰度值为0)和白色(灰度值为255)进行标识,可以凸显地图中障碍点的轮廓,将去噪栅格地图二分为可行区域(白色区域)和其他区域(黑色区域);腐蚀处理是对白色区域而言的,腐蚀就是二值化处理后的去噪栅格地图的白色部分被“腐蚀”或者说“领域被蚕食”,得到的目标栅格地图拥有比去噪栅格地图更小的可行区域(即地图范围内除障碍点外的区域)。其中,二值化处理的阈值可以根据需求以及经验设定,理论上可以是0至255的256个整数中的任一数值。
针对方法二,在实际应用中,可以采用threshold函数进行二值化处理和/或使用erode函数进行腐蚀处理。
本实施例中,考虑到室内环境中,是通过墙体实现不同区域的划分,且通常实现区域划分的边界墙体是互相联通的,而不与边界墙体连通的其他障碍物(如不与边界墙体连通的称重柱或沙发)也不用于室内区域划分。为了减少不与边界墙体连通的其他障碍物在地图区域分割过程中带来的干扰以及分割误差。在获取到初始栅格地图后,通过去除初始栅格地图中不与边界障碍点连通的其他障碍点实现去噪,以得到初始栅格地图对应的去噪栅格地图,然后对去噪栅格地图进行区域分割。大大降低了区域分割过程中的误差,进而提升了地图区域分割的准确性。
在一些具体实施例中,前述步骤103具体可以通过以下方式实现:分别以每个最小距离值为二值化阈值,对每个像素点的灰度值做二值化处理,以确定多组待定轮廓区域;确定多组待定轮廓区域中轮廓区域最多且组内每个轮廓区域均大于等于预设的最小轮廓面积的一组待定轮廓区域中的每个待定轮廓区域为至少一个初始轮廓区域。
具体的,按照从大到小(或从小到大)的顺序,从多个最小距离值中最大的最小距离值(或最小的最小距离值)开始,将最大的最小距离值(或最小的最小距离值)作为二值化阈值,对每个像素点的灰度值做二值化处理,以确定满足条件的至少一个初始轮廓区域。(对根据对应的最小距离确定后的)每个像素点进行二值化处理(即对每个像素点的灰度值进行二值化处理),以确定最大的最小距离值(或最小的最小距离值)对应的一组待定轮廓区域。按照上述方法,依照从大到小(或从小到大)的顺序,从多个最小距离值中最大的最小距离值(或最小的最小距离值)开始,依次确定每个最小距离值对应的一组待定轮廓区域,直至确定出一组待定轮廓区域,该组待定轮廓区域中轮廓区域最多且组内每个轮廓区域均大于等于预设的最小轮廓面积,可以停止计算剩余的每个最小距离值(即未进行对应的一组待定轮廓区域计算的最小距离值)对应的一组待定轮廓区域。最后,可以确定多组待定轮廓区域中轮廓区域最多且组内每个轮廓区域均大于等于预设的最小轮廓面积的一组待定轮廓区域中的每个待定轮廓区域为至少一个初始轮廓区域。其中,一组待定轮廓区域中包含至少一个待定轮廓区域。
可以理解的是,因为二值化处理过程中是以最小距离值为阈值,所以二值化的阈值越大(即用于执行二值化处理的最小距离值越大),划分而得的待定轮廓区域越小且每组待定轮廓区域中的待定轮廓区域个数越少,反之亦然。为了更直观地说明二值化阈值越大确定出的初始轮廓区域越小,下面举例说明。现存在如图2(图2中黑色虚线仅为方便说明目标栅格地图中各像素点所在位置,并不表示实际应用中目标栅格地图存在图示黑色虚线)左侧所示的目标栅格地图(大小为9*9个像素点,其中,黑色区域为所示目标栅格地图的边界障碍点),若以2为二值化阈值,则确定出如图2右上侧图所示的初始轮廓区域(其中,灰色区域为初始轮廓区域的边界,白色区域加上黑色区域为初始轮廓区域的组内区域,黑色区域为目标栅格地图的边界障碍点,阴影区域为目标栅格地图中不是障碍点也为在此次二值化过程中被划入轮廓区域的像素点),若以1为二值化阈值,则确定出如图2右下侧图所示的初始轮廓区域(其中,灰色区域为初始轮廓区域的边界,白色区域加上黑色区域为初始轮廓区域的组内区域,黑色区域为目标栅格地图的边界障碍点,阴影区域为目标栅格地图中不是障碍点也为在此次二值化过程中被划入轮廓区域的像素点)。
本申请实施例中,提供了确定至少一个初始轮廓区域的具体实现方式,提升了方案的可实现性。
进一步的,考虑到现有技术对给定地图进行染色的过程中,需要遍历地图中的每个像素点,计算量较大,前述步骤104可以通过方式实现:使每个初始轮廓区域同时进行扩张;若当前时刻的每个初始轮廓区域的边界坐标满足预设的扩张结束条件,则停止扩张每个初始轮廓区域;若每个初始轮廓区域均停止扩张,则确定至少一个目标轮廓区域。
首先,对每个初始轮廓区域的组内区域染色,与本步骤前述对组内区域的染色方式类似,此处不再赘述。
接着,使每个初始轮廓区域从边界同时开始扩张直至满足扩张结束条件时结束扩张。具体的,可以以每个轮廓区域的边界一次向外扩张一个像素点的速度,进行扩张直至每个初始轮廓区域的边界坐标满足预设的扩张结束条件。当某个初始轮廓区域满足在第N次扩张后满足扩张结束条件,则确定该初始轮廓区域对应的目标轮廓区域为该初始轮廓区域在第N-1次扩张后的轮廓区域。直到每个初始轮廓区域均确定有对应的目标轮廓区域则确定扩张结束,并确定地图区域分割结束。
更进一步的,若某次扩张后,某个初始轮廓区域的边界坐标与其他初始轮廓区域的边界坐标重合,或某个初始轮廓区域的边界坐标与目标栅格地图的边界障碍点(即边界)的障碍像素坐标重合,即认为满足扩张结束条件,本实施例不对扩张结束条件作具体限定。
为了更好的解释本申请实施例的地图扩张过程,下面举例说明。现有如图3所示的目标栅格地图(图3中黑色虚线仅为方便说明目标栅格地图中各像素点所在位置,并不表示实际应用中目标栅格地图存在图示黑色虚线),其中,灰色区域为初始轮廓区域的边界,白色区域加上灰色区域为初始轮廓区域的组内区域,黑色区域为目标栅格地图的边界障碍点,阴影区域为目标栅格地图中不是障碍点也未在任一初始轮廓区域的组内区域的像素点。从左至右为一次扩张,具体为左图中灰色区域对应的初始轮廓区域扩张至右图中灰色区域加上白色区域,从图中可明显得知,在进行下一次扩张后,左图中灰色区域对应的初始轮廓区域的边界坐标便于目标栅格地图的障碍点(黑色)坐标重合,因此左图中灰色区域对应的初始轮廓区域对应的目标轮廓区域即为右图中灰色区域加上白色区域。
另外,图2以及图3中灰色区域仅为说明初始轮廓区域的边界,并不代表实际应用中是通过灰色边框实现初始轮廓区域的标识或初始轮廓区域边界的界定。
可以知道的是,扩张速度还可以是一次向外扩张两个像素点或三个像素点,直至某个初始轮廓区域的边界坐标与其他初始轮廓区域的组内区域的任意像素点的像素坐标重合(满足扩张结束条件)时,将扩张速度减少至1个像素点,即若初始轮廓区域以3个像素点的速度扩张且在第M次扩张时满足扩张结束条件,则将将扩张速度减少至1个像素点,并以1个像素点的速度将第M次扩张后的对应初始轮廓区域的边界坐标进行缩减,其中初始轮廓区域的组内区域由该初始轮廓区域的边界坐标划定,即初始轮廓区域的边界决定了初始轮廓区域的大小以及形状,因为边界是闭合的所以一个初始轮廓区域的边界以内的全部区域都是该初始轮廓区域的组内区域。
进一步的,在确定至少一个目标轮廓区域后,还可以在目标栅格地图中标记每个目标轮廓区域以及步骤101中降噪时去除的不与边界障碍点连通的其他障碍点,以保证机器人的正常运行。
本实施例中,对目标栅格地图进行扩张(即染色)的过程中,无需遍历地图中的每个像素点,仅需各目标轮廓区域以相同的扩张速度向外扩张,即避免了将房间A染为房间B的颜色,保证了区域分割的准确性,也减少了计算量,降低了硬件成本。
为了更好地说明本申请实施例的地图区域分割方法,请参阅图4,下面描述本申请实施例的地图区域分割方法,应用于扫地机器人的具体流程。
首先,通过激光雷达扫描获取初始栅格地图,因为扫地机器人所处环境为室内环境,最外围的障碍点可以认为是墙体(即边界障碍点)。考虑到墙体通常是连通的,可以对初始栅格地图做降噪,去除不与边界障碍点相连接的点,从而减少其他物品的影响。具体的,可以从给定地图(即初始栅格地图)中任意边界障碍点开始,寻找不与该任意边界障碍点直接或间接连通的障碍点,然后将不与该任意边界障碍点直接或间接连通的障碍点从给定地图中去除,以得到去噪栅格地图。其中,直接连通指与边界障碍点相邻,间接连通指通过相邻的不属于边界障碍点的障碍点可以直接或间接的连接至边界障碍点。请参照图5,图中最外圈黑色区域为边界障碍点,图中黑色区域1与边界障碍点(最外圈黑色区域)直接连通,图中黑色区域2与边界障碍点(最外圈黑色区域)间接连通。进一步的,若能确定与边界障碍点相连的某些障碍点(如靠墙放置的家具对应的障碍点)不属于边界障碍点,则可以在去噪时同时去除这些与边界障碍点相连通但不属于边界障碍点的障碍点,并在目标栅格地图中标记不与边界障碍点连通的其他障碍点以及至少一个目标轮廓区域时,也标记去噪时去除的与边界障碍点相连通但不属于边界障碍点的障碍点,以减少环境噪声对地图区域分割的影响。
其次,基于threshold函数将图片二值化。具体的,二值化阈值可以设置为250,完成二值化之后,除了可行区域对应像素点的灰度值为255,其他区域对应像素点的灰度值均为0。再次,使用erode函数对二值化处理后的每个像素点进行腐蚀处理,将每个像素点的灰度值转化为以该像素点为中心的3*3矩阵中各像素点的灰度值中最小的灰度值,以得到目标栅格地图。
然后,使用distancetransform函数计算目标栅格地图中每个像素点到对应的最近的0像素点(因去噪后不存在出边界障碍点之外的其他障碍点,所以0像素点对应的障碍点即边界障碍点)的欧式距离矩阵,并将该欧氏距离矩阵转换为整形,以便于后续计算。其中,可以根据公式计算每个像素点到对应的最近的0像素点的距离,可以知道的是,该像素点距离边界障碍点越远,则该像素点对应的欧式距离越大。同时,将每个像素点对应的欧氏距离值作为其灰度值。
再然后,遍历L2距离矩阵中真实存在的值,并将其设置为使用threshold函数的阈值,二值化处理在像素点的灰度值大于阈值时将其灰度值变为255,反之将其灰度值变为0,再次图片黑白化,可获取目待定轮廓区域。因为像素点越靠近区域中心(即远离边界障碍点)其当前灰度值(即该像素点对应的欧式距离值)越大,所以二值化阈值越大,则确定的待定轮廓区域越小,反之越大。然后从确定的多组待定轮廓区域中确定一组目标轮廓区域,该组目标轮廓区域中的每个轮廓区域均为目标轮廓区域。具体确定方式与前述实施例类似,此处不再赘述。
最后,对每个轮廓内区域进行染色,然后从每个目标轮廓区域的边界开始向外染色,当每个目标轮廓区域的边界坐标向外的像素点坐标对应可行区域时,将其(即向外的像素点坐标)染色为对应目标轮廓区域的颜色,直至满足扩张结束条件,对应的边界坐标不再向外扩张。当扩张到每个目标轮廓区域的边界坐标不再变化,即每个像素点均染色时,结束给定地图的区域分割。
具体的区域分割效果可以参照图6,按照箭头指示的顺序,图6中五张图像依次为,初始栅格地图、去除不与边界障碍点连接的障碍点后的地图、去除与边界障碍点连接但并非边界障碍点的障碍点(如靠墙放置的家具)的地图、经过二值化处理和腐蚀处理得到的目标栅格地图,以及完成区域分割(即完成染色)的目标分区地图。
请参阅图7,本申请实施例提供一种地图区域分割装置,包括:
处理单元701,用于对初始栅格地图进行预处理,以得到目标栅格地图;
确定单元702,用于确定目标栅格地图中每个像素点与对应最近的障碍点的最小距离值,并以每个像素点对应的最小距离值为每个像素点的灰度值;
确定单元702,还用于分别以每个最小距离值为二值化阈值,对每个像素点的灰度值做二值化处理,以确定至少一个初始轮廓区域;
扩张单元703,用于使至少一个初始轮廓区域中的每个初始轮廓区域进行扩张,以得到目标栅格地图的至少一个目标轮廓区域。
在一种具体实现方式中,确定单元702,具体用于分别以每个最小距离值为二值化阈值,对每个像素点的灰度值做二值化处理,以确定多组待定轮廓区域;
确定多组待定轮廓区域中轮廓区域最多且组内每个轮廓区域均大于等于预设的最小轮廓面积的一组待定轮廓区域中的每个待定轮廓区域为至少一个初始轮廓区域。
在一种具体实现方式中,扩张单元703,具体用于使每个初始轮廓区域同时进行扩张;
若当前时刻的每个初始轮廓区域的边界坐标满足预设的扩张结束条件,则停止扩张每个初始轮廓区域;
若每个初始轮廓区域均停止扩张,则确定至少一个目标轮廓区域。
在一种具体实现方式中,扩张结束条件包括:每个初始轮廓区域的边界坐标与其他轮廓区域的边界坐标重合,或每个初始轮廓区域的边界坐标与目标栅格地图中障碍点对应的障碍像素坐标重合,其中其他轮廓区域为至少一个初始轮廓区域中除每个初始轮廓区域之外的轮廓区域。
在一种具体实现方式中,处理单元701,具体用于获取初始栅格地图,并去除初始栅格地图中不与边界障碍点连通的其他障碍点以得到去噪栅格地图,其中其他障碍点为初始栅格地图中除边界障碍点之外的障碍点;
对去噪栅格地图进行二值化处理以及腐蚀处理,以得到目标栅格地图。
在一种具体实现方式中,装置还包括:标记单元;
标记单元,具体用于在目标栅格地图中标记不与边界障碍点连通的其他障碍点以及至少一个目标轮廓区域,以得到目标分区地图。
在一种具体实现方式中,处理单元701,具体用于基于threshold函数对初始栅格地图中每个像素点的灰度值进行二值化处理,并基于erode函数对二值化处理后的初始栅格地图进行腐蚀处理,以得到目标栅格地图。
图8是本申请实施例提供的一种地图区域分割装置结构示意图,该地图区域分割装置800可以包括一个或一个以上中央处理器(central processing units,CPU)801和存储器805,该存储器805中存储有一个或一个以上的应用程序或数据。
其中,存储器805可以是易失性存储或持久存储。存储在存储器805的程序可以包括一个或一个以上模块,每个模块可以包括对地图区域分割装置中的一系列指令操作。更进一步地,中央处理器801可以设置为与存储器805通信,在地图区域分割装置800上执行存储器805中的一系列指令操作。
地图区域分割装置800还可以包括一个或一个以上电源802,一个或一个以上有线或无线网络接口803,一个或一个以上输入输出接口804,和/或,一个或一个以上操作系统,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM等。
该中央处理器801可以执行前述图1至图6所示实施例中地图区域分割装置所执行的操作,具体此处不再赘述。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,read-onlymemory)、随机存取存储器(RAM,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。
本申请实施例还提供一种包含指令的计算机程序产品,当计算机程序产品在计算机上运行时,使得计算机执行如上述的地图区域分割方法。
Claims (10)
1.一种地图区域分割方法,其特征在于,所述方法包括:
对初始栅格地图进行预处理,以得到目标栅格地图;
确定所述目标栅格地图中每个像素点与对应最近的障碍点的最小距离值,并以所述每个像素点对应的最小距离值为所述每个像素点的灰度值;
分别以每个所述最小距离值为二值化阈值,对所述每个像素点的灰度值做二值化处理,以确定至少一个初始轮廓区域;
使所述至少一个初始轮廓区域中的每个初始轮廓区域进行扩张,以得到所述目标栅格地图的至少一个目标轮廓区域。
2.根据权利要求1所述的方法,其特征在于,所述分别以每个所述最小距离值为二值化阈值,对所述每个像素点的灰度值做二值化处理,以确定至少一个初始轮廓区域,包括:
分别以每个所述最小距离值为二值化阈值,对所述每个像素点的灰度值做二值化处理,以确定多组待定轮廓区域;
确定所述多组待定轮廓区域中轮廓区域最多且组内每个轮廓区域均大于等于预设的最小轮廓面积的一组待定轮廓区域中的每个待定轮廓区域为至少一个初始轮廓区域。
3.根据权利要求1所述的方法,其特征在于,所述使所述至少一个初始轮廓区域中的每个初始轮廓区域进行扩张,以得到所述目标栅格地图的至少一个目标轮廓区域,包括:
使所述每个初始轮廓区域同时进行扩张;
若当前时刻的所述每个初始轮廓区域的边界坐标满足预设的扩张结束条件,则停止扩张所述每个初始轮廓区域;
若所述每个初始轮廓区域均停止扩张,则确定至少一个目标轮廓区域。
4.根据权利要求3所述的方法,其特征在于,所述扩张结束条件包括:所述每个初始轮廓区域的边界坐标与其他轮廓区域的边界坐标重合,或所述每个初始轮廓区域的边界坐标与所述目标栅格地图中障碍点对应的障碍像素坐标重合,其中所述其他轮廓区域为所述至少一个初始轮廓区域中除所述每个初始轮廓区域之外的轮廓区域。
5.根据权利要求1所述的方法,其特征在于,所述对初始栅格地图进行预处理,以得到目标栅格地图,包括:
获取所述初始栅格地图,并去除所述初始栅格地图中不与边界障碍点连通的其他障碍点以得到去噪栅格地图,其中所述其他障碍点为所述初始栅格地图中除所述边界障碍点之外的障碍点;
对所述去噪栅格地图进行二值化处理以及腐蚀处理,以得到所述目标栅格地图。
6.根据权利要求5所述的方法,其特征在于,所述方法还包括:
在所述目标栅格地图中标记所述不与边界障碍点连通的其他障碍点以及所述至少一个目标轮廓区域,以得到目标分区地图。
7.根据权利要求1所述的方法,其特征在于,所述对初始栅格地图进行预处理,以得到目标栅格地图,包括:
基于threshold函数对所述初始栅格地图中每个像素点的灰度值进行二值化处理,并基于erode函数对二值化处理后的初始栅格地图进行腐蚀处理,以得到目标栅格地图。
8.一种地图区域分割装置,其特征在于,包括:
处理单元,用于对初始栅格地图进行预处理,以得到目标栅格地图;
确定单元,用于确定所述目标栅格地图中每个像素点与对应最近的障碍点的最小距离值,并以所述每个像素点对应的最小距离值为所述每个像素点的灰度值;
所述确定单元,还用于分别以每个所述最小距离值为二值化阈值,对所述每个像素点的灰度值做二值化处理,以确定至少一个初始轮廓区域;
扩张单元,用于使所述至少一个初始轮廓区域中的每个初始轮廓区域进行扩张,以得到所述目标栅格地图的至少一个目标轮廓区域。
9.一种地图区域分割装置,其特征在于,包括:
中央处理器,存储器以及输入输出接口;
所述存储器为短暂存储存储器或持久存储存储器;
所述中央处理器配置为与所述存储器通信,并执行所述存储器中的指令操作以执行权利要求1至7中任一项所述的方法。
10.一种计算机存储介质,其特征在于,所述计算机存储介质中存储有指令,所述指令在计算机上执行时,使得所述计算机执行如权利要求1至7中任一项所述的方法。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2022107040983 | 2022-06-21 | ||
CN202210704098.3A CN114943659A (zh) | 2022-06-21 | 2022-06-21 | 地图区域分割方法以及相关设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115311172A true CN115311172A (zh) | 2022-11-08 |
Family
ID=82910844
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210704098.3A Pending CN114943659A (zh) | 2022-06-21 | 2022-06-21 | 地图区域分割方法以及相关设备 |
CN202211109954.7A Pending CN115311172A (zh) | 2022-06-21 | 2022-09-13 | 地图区域分割方法以及相关设备 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210704098.3A Pending CN114943659A (zh) | 2022-06-21 | 2022-06-21 | 地图区域分割方法以及相关设备 |
Country Status (1)
Country | Link |
---|---|
CN (2) | CN114943659A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116245894A (zh) * | 2023-03-14 | 2023-06-09 | 麦岩智能科技(北京)有限公司 | 一种地图分割方法、装置、电子设备及介质 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117237596A (zh) * | 2023-11-15 | 2023-12-15 | 广州市易鸿智能装备股份有限公司 | 图像识别方法、装置、计算机设备及存储介质 |
-
2022
- 2022-06-21 CN CN202210704098.3A patent/CN114943659A/zh active Pending
- 2022-09-13 CN CN202211109954.7A patent/CN115311172A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116245894A (zh) * | 2023-03-14 | 2023-06-09 | 麦岩智能科技(北京)有限公司 | 一种地图分割方法、装置、电子设备及介质 |
CN116245894B (zh) * | 2023-03-14 | 2023-09-22 | 麦岩智能科技(北京)有限公司 | 一种地图分割方法、装置、电子设备及介质 |
Also Published As
Publication number | Publication date |
---|---|
CN114943659A (zh) | 2022-08-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN115311172A (zh) | 地图区域分割方法以及相关设备 | |
CN113012210B (zh) | 深度图的生成方法、装置、电子设备和存储介质 | |
CN110533601B (zh) | 一种激光光斑中心位置及轮廓获取方法 | |
CN111539238B (zh) | 二维码图像修复方法、装置、计算机设备和存储介质 | |
CN112734837B (zh) | 图像匹配的方法及装置、电子设备及车辆 | |
CN112634301A (zh) | 设备区域图像提取方法及装置 | |
CN112150371A (zh) | 图像降噪方法、装置、设备及存储介质 | |
Zeng et al. | Nearest neighbor based digital restoration of damaged ancient Chinese paintings | |
CN115222879A (zh) | 一种模型减面处理方法、装置、电子设备及存储介质 | |
CN112598687B (zh) | 图像分割方法和装置、存储介质、电子设备 | |
CN112561919A (zh) | 一种图像分割方法、设备和计算机可读存储介质 | |
CN116739943A (zh) | 图像平滑处理方法及目标轮廓提取方法 | |
CN110163894B (zh) | 基于特征匹配的亚像素级目标跟踪方法 | |
CN110020657A (zh) | 一种裁床的位图轮廓坐标提取方法 | |
CN111242140B (zh) | 一种非均匀光照下快速提取轮廓线的方法 | |
CN114862897A (zh) | 一种图像背景处理方法、装置及电子设备 | |
CN114863043A (zh) | 地图处理方法、装置、机器人及存储介质 | |
CN111382834B (zh) | 一种置信度比较方法及装置 | |
CN111626966A (zh) | 声呐图像的去噪模型训练方法及其装置和可读存储介质 | |
CN110689553A (zh) | 一种rgb-d图像的自动分割方法 | |
US20240020846A1 (en) | Corner point detection method and apparatus | |
CN112652004B (zh) | 一种图像处理方法、装置、设备及介质 | |
Wang et al. | A Binocular Vision Stereo Matching Algorithm for Depth Map Estimation | |
CN111259744B (zh) | 一种基于皮肤模型和svm分类器的人脸检测方法及其装置 | |
CN112507921B (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 |