CN112783147A - 一种轨迹规划方法、装置、机器人及存储介质 - Google Patents
一种轨迹规划方法、装置、机器人及存储介质 Download PDFInfo
- Publication number
- CN112783147A CN112783147A CN201911097094.8A CN201911097094A CN112783147A CN 112783147 A CN112783147 A CN 112783147A CN 201911097094 A CN201911097094 A CN 201911097094A CN 112783147 A CN112783147 A CN 112783147A
- Authority
- CN
- China
- Prior art keywords
- moving
- self
- robot
- determining
- vibration amplitude
- 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 51
- 238000003860 storage Methods 0.000 title claims abstract description 16
- 230000033001 locomotion Effects 0.000 claims description 32
- 230000008569 process Effects 0.000 claims description 19
- 230000015654 memory Effects 0.000 claims description 18
- 238000004590 computer program Methods 0.000 claims description 16
- 238000001914 filtration Methods 0.000 claims description 4
- 238000001514 detection method Methods 0.000 abstract description 7
- 230000003245 working effect Effects 0.000 abstract 1
- 238000010408 sweeping Methods 0.000 description 75
- 238000010586 diagram Methods 0.000 description 22
- 238000009941 weaving Methods 0.000 description 14
- 238000004140 cleaning Methods 0.000 description 11
- 230000006870 function Effects 0.000 description 11
- 230000000694 effects Effects 0.000 description 7
- 238000004364 calculation method Methods 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 230000004044 response Effects 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000009940 knitting Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000005070 sampling Methods 0.000 description 3
- 230000000007 visual effect Effects 0.000 description 3
- 238000013473 artificial intelligence Methods 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 2
- 239000000835 fiber Substances 0.000 description 2
- 239000011521 glass Substances 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 239000002023 wood Substances 0.000 description 2
- 230000002411 adverse Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 239000000919 ceramic Substances 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000003068 static effect Effects 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/0231—Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
- G05D1/0246—Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means using a video camera in combination with image processing means
-
- 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
-
- 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/0231—Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/20—Image preprocessing
- G06V10/26—Segmentation of patterns in the image field; Cutting or merging of image elements to establish the pattern region, e.g. clustering-based techniques; Detection of occlusion
- G06V10/267—Segmentation of patterns in the image field; Cutting or merging of image elements to establish the pattern region, e.g. clustering-based techniques; Detection of occlusion by performing operations on regions, e.g. growing, shrinking or watersheds
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/50—Context or environment of the image
- G06V20/56—Context or environment of the image exterior to a vehicle by using sensors mounted on the vehicle
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Theoretical Computer Science (AREA)
- Aviation & Aerospace Engineering (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Automation & Control Theory (AREA)
- Electromagnetism (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Manipulator (AREA)
Abstract
本申请实施例提供一种轨迹规划方法、装置、机器人及存储介质。在本申请的一些实施例中,获取自移动机器人在移动时采集的多帧图像;根据所述多帧图像中对应特征点的像素坐标,确定自移动机器人在移动时的振动幅度;根据所述振动幅度确定自移动机器人的路径方向;根据所述路径方向规划自移动机器人的移动轨迹。可以为自移动机器人规划出振动幅度小的移动轨迹。通过对地面介质区域内各移动方向的振动幅度的检测,能够规划出地面纹理对自移动机器人影响最小的移动轨迹,能够有效提升自移动机器人在不同地面纹理上的工作效果。
Description
技术领域
本申请人工智能技术领域,尤其涉及一种轨迹规划方法、装置、机器人及存储介质。
背景技术
随着人工智能技术的不断发展,各种智能机器人越来越多地进入人们的生活,比如物流机器人、扫地机器人,迎宾机器人等等。
以扫地机器人为例,需要扫地机器人能够胜任针对多种待清扫对象的清扫工作,比如,地毯、木地板、瓷砖等等。在实际应用中,针对不同的清扫对象的清扫效果不完全相同,比如,扫地机器人在对地毯进行清扫的时候,由于受到地毯表面存在绒毛,导致扫地机器人清扫效果不佳。
发明内容
本申请的多个方面提供一种轨迹规划方法、装置、机器人及存储介质,用以实现规划出自移动机器人移动过程中振动幅度不明显的移动轨迹。
本申请实施例提供一种轨迹规划方法,应用于自移动机器人,所述方法包括:
获取所述自移动机器人在移动时采集的多帧图像;
根据所述多帧图像中对应特征点的像素坐标,确定所述自移动机器人在不同移动方向上的振动幅度;
根据所述振动幅度确定所述自移动机器人的路径方向;
根据所述路径方向规划所述自移动机器人的移动轨迹。
本申请实施例提供一种轨迹规划装置,应用于自移动机器人,所述装置包括:
获取模块,用于获取所述自移动机器人在移动时采集的多帧图像;
振幅确定模块,用于根据所述多帧图像中对应特征点的像素坐标,确定所述自移动机器人在移动时的振动幅度;
路径确定模块,用于根据所述振动幅度确定所述自移动机器人的路径方向;
轨迹规划模块,用于根据所述路径方向规划所述自移动机器人的移动轨迹。
本申请实施例提供一种存储有计算机程序的计算机可读存储介质,当所述计算机程序被一个或多个处理器执行时,致使所述一个或多个处理器执行包括以下的动作:
获取自移动机器人在移动时采集的多帧图像;
根据所述多帧图像中对应特征点的像素坐标,确定所述自移动机器人在移动时的振动幅度;
根据所述振动幅度确定所述自移动机器人的路径方向;
根据所述路径方向规划所述自移动机器人的移动轨迹。
本申请实施例提供一种自移动机器人,包括:机械本体,所述机械本体上设有一个或多个处理器,以及一个或多个存储计算机程序的存储器;
所述一个或多个处理器,用于执行所述计算机程序,以用于:
获取所述自移动机器人在移动时采集的多帧图像;
根据所述多帧图像中对应特征点的像素坐标,确定所述自移动机器人在移动时的振动幅度;
根据所述振动幅度确定所述自移动机器人的路径方向;
根据所述路径方向规划所述自移动机器人的移动轨迹。
在本申请的一些实施例中,自移动机器人在地面介质区域中进行移动作业之前,需要对移动轨迹进行规划,具体来说,自移动机器人抵达地面介质区域中之后,自移动机器人按照预设半径转动,并不断采集在转动过程中对应的多帧图像。进而,对多帧图像中对应特征点的像素坐标进行计算,从而确定在不同移动方向上的振动幅度。通过对地面介质区域内各移动方向的振动幅度的检测,能够规划出地面纹理对自移动机器人振动幅度影响最小的移动轨迹,能够有效提升自移动机器人在不同地面纹理上的工作效果,比如可以提升扫地自移动机器人的清扫效果。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1为本申请实施例提供的现有扫地机器人清扫轨迹的示意图;
图2为本申请实施例提供的一种轨迹规划方法的流程示意图;
图3为本申请实施例提供的一种检测纹理方向方式的示意图;
图4为本申请实施例提供的确定路径方向的示意图;
图5为本申请实施例提供的移动轨迹规划的示意图;
图6a、6b为本申请实施例提供的不同起始位置移动轨迹规划的示意图;
图7为本申请实施例提供的示例性基于纹理方向进行移动轨迹规划的示意图;
图8为本申请实施例提供一种轨迹规划装置的结构示意图;
图9为本申请实施例提供的一种自移动机器人的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合本申请具体实施例及相应的附图对本申请技术方案进行清楚、完整地描述。显然,所描述的实施例仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
在本申请实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本发明。在本申请实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义,“多种”一般包含至少两种,但是不排除包含至少一种的情况。
取决于语境,如在此所使用的词语“如果”、“若”可以被解释成为“在……时”或“当……时”或“响应于确定”或“响应于检测”。类似地,取决于语境,短语“如果确定”或“如果检测(陈述的条件或事件)”可以被解释成为“当确定时”或“响应于确定”或“当检测(陈述的条件或事件)时”或“响应于检测(陈述的条件或事件)”。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的商品或者***不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种商品或者***所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的商品或者***中还存在另外的相同要素。
以下结合附图,详细说明本申请各实施例提供的技术方案。
在本申请中,自移动机器人除了可以自主行走,执行相应服务功能之外,还可以具有计算、通信、上网等功能。本申请实施例自移动机器人,可以为无人机、无人车等。根据应用场景的不同,自移动机器人的基础服务功能也会有所不同。自移动机器人可以为扫地机器人,跟随机器人,迎宾机器人等。例如,对应用于家庭、办公楼、商场等场景中的扫地机器人而言,其基本服务功能是对所在场景中的地面进行清扫;对应用于家庭、办公楼、商场等场景中的擦玻璃机器人而言,其基本服务功能是对所在场景中玻璃进行清洁;对跟随机器人而言,其基本服务功能是跟随目标对象;对迎宾机器人而言,其基本服务功能是欢迎顾客,并引导顾客到达目的地。
为了便于理解本申请提供的轨迹规划方法的适用情景,下面以扫地机器人为例进行说明,假设当前扫地机器人正在清扫地毯区域。图1为本申请实施例提供的现有扫地机器人清扫轨迹的示意图。从图1中可以看到,地毯编织方向都是从左向右,通过图中带箭头实线表示。在现有技术中,扫地机器人可能会按照左右往返移动轨迹,在地毯上往返清扫。容易理解的是,地毯上的纤维绒毛都是按照一定的顺序编织的,也就是同一块地毯的编织方向是一定的。当扫地机器人朝着与编织方向相同的方向移动的时候,会比较平稳;当扫地机器人朝着与编织方向相反的方向移动的时候,由于地毯纤维绒毛竖起,扫地机器人行进过程中会比较颠簸,振动幅度较大,这种颠簸将会严重影响扫地机器人的清扫效果。
因此,本申请技术方案提出一种针对地毯等存在明显纹理方向,并且纹理方向会导致机器人产生大幅度振动的待清扫区域的清扫方法。扫地机器人在对地毯区域进行清扫之前,需要先确定地毯的编织方向,然后根据编织方向确定能够满足扫地机器人清扫需求的移动轨迹,当扫地机器人按照该移动轨迹进行清扫的时候,能够有效避免因为地毯编织方向对清扫工作造成的不利影响。
图2为本申请实施例提供的一种轨迹规划方法的流程示意图。该方法包括如下步骤:
201:获取自移动机器人在移动时采集的多帧图像。
202:根据所述多帧图像中对应特征点的像素坐标,确定自移动机器人在移动时的振动幅度。
203:根据所述振动幅度确定自移动机器人的路径方向。
204:根据所述路径方向规划自移动机器人的移动轨迹。
当自移动机器人需要在具有明显纹理(比如,木地板)的地面上移动的时候,或者需要在铺设有形状比较规则的轨道的地面上移动的时候,自移动机器人需要根据实际地面情况规划出一条能够更加平稳移动的移动轨迹。在进行移动轨迹规划的时候,可以由用户辅助规划,也可以完全由自移动机器人自主规划。
在完全由自移动机器人自主规划轨迹的应用场景中,需要自移动机器人先对地面介质区域进行检测,若检测到自移动机器人位于预设的地面介质区域(比如,地毯区域),则判断地面介质区域的纹理方向;然后根据纹理方向确定路径方向;进而,基于路径方向规划移动轨迹。若自移动机器人对地面介质区域进行检测,发现并未位于预设的地面介质区域,则不需要进行纹理方向的检测,也不需要根据纹理方向确定路径方向。
如图3为本申请实施例提供的一种检测纹理方向方式的示意图。为了便于理解,下面结合图3具体说明如何确定地面介质区域中纹理方向,假设,地面介质为地毯,纹理方向是地毯的编织方向,也就是以扫地机器人确定地毯的编织方向为例进行说明。
在扫地机器人上设置有至少一个单目摄像头,如图3中所示的扫地机器人,该单目摄像头通常设置在机器人的前端,从而使得单目摄像头具有更好的视野,有利于更加清晰、准确的采集多帧图像。获取扫地机器人在移动时采集的多帧图像的时候,扫地机器人的移动方式是沿不同方向上移动,可以是圆形、椭圆形等非直线,比如,按照预设半径进行圆环形转动(需要说明的是,这里所说的圆环形转动不是扫地机器人进行自转),在扫地机器人转动过程中,通过至少一个单目摄像头连续采集不同移动方向上的多帧图像。需要说明的是,这里之所以采用圆环形转动,是为了能够对地面介质区域的各个方向都进行检测,避免个别方向被遗漏检测的问题出现。
扫地机器人会对采集到的图像进行分析从而确定扫地机器人在不同移动方向上的振动幅度的大小。机器人移动过程中,振动幅度的大小的表示方式可以有很多种,本申请技术方案是通过采集的多帧图像中特征点的像素纵坐标差值表示振动幅度的大小。
容易理解的是,当扫地机器人振动幅度较大时,所采集到的多帧图像中相同特征点对应的像素纵坐标变化越大;当扫地机器人振动幅度较小时(比如,没有任何振动),所采集到的多帧图像中相同特征点对应的像素纵坐标变化越小。
在扫地机器人中存储有当前环境的一张地图,在地图中有对应的坐标系,以便扫地机器人在工作过程中,通过激光雷达能够准确辨别扫地机器人在当前环境中的位置和方向,以及准确知道被标记障碍物在地图中的位置,能够辅助机器人规划移动轨迹以及自动避障。在扫地机器人进行图像采集过程中,图像采集频率通常会比较高,在每个移动方向上都连续采集多帧图像,以便通过针对多帧图像中特征点坐标变化量的比较,确定每个移动方向对应的振动幅度。
假设,通过单目摄像头采集到相邻两帧图像,首先需要对采集到的图像进行简单的处理,因为扫地机器人在振动过程中,拍摄视角不断变化,拍摄到的图像边界特征点的相对位置等发生了比较明显的畸变,为了排除这部分特征点对坐标比较结果的影响,可以对采集到的图像进行裁切,只保留图像的中间部分(视角一致性较好的部分)作为第一图像和第二图像。在得到第一图像和第二图像之后,可以利用光流算法计算扫地机器人的振动幅度。
假设,在第一图像中的有效特征点像素坐标分别为Pk={(x1,y1),(x2,y2),(x3,y3),...(xn,yn)},在第二图像中的有效特征点的像素坐标分别为Pk-1={(x’1,y’1),(x’2,y’2),(x’3,y’3),...(x’n,y’n)}。
在得到第一图像和第二图像之后,根据上述特征点的像素坐标计算振动幅度之前,先要排除一些干扰特征点的影响。在实际应用中,由于扫地机器人在进行图像采集的过程中,扫地机器人是时刻保持向前运动的,在运动过程中,可能是恒速运动,也可能是变速运动。由于扫地机器人自身向前运动,也会导致相邻两帧图像中部分特征点的像素坐标存在比较明显的差值,当扫地机器人向前运动速度过大的时候可能导致第一图像和第二图像所有特征点的像素坐标都存在比较明显的差值。因此,为了排除扫地机器人自身运动对特征点坐标比较结果的影响,可以具体采用如下过滤措施:
先获取第一图像和第二图像中各特征点的像素坐标值,然后将第一图像中指定位置特征点的像素横坐标,与第二图像对应的特征点的像素横坐标进行比较,得到像素横坐标差值。若像素横坐标差值大于阈值,则认为该特征点的像素坐标受到机器人自身运动影响明显,该特征点不能再用于振动幅度的计算。扫地机器人可以通过上述对像素横坐标比较方法,对第一图像和第二图像中所有特征点都进行一次比较筛选,得到合格的特征点。再根据合格的特征点确定振动幅度。
假设,对第一图像和第二图像中所有特征点都进行一次比较筛选,得到合格的特征点之后,接下来可以利用第一图像和第二图像中有效特征点计算振动幅度。具体来说:获取第一图像中有n个有效特征点,对应的像素纵坐标值y1~yn,获取第二图像中有n个有效特征点,对应的像素纵坐标值为y’1~y’n。然后,逐个求取n个有效特征点的像素纵坐标y与像素纵坐标y’之间的差值的绝对值,进而对n个差值的绝对值再求取平均值,作为第一图像与第二图像的像素纵坐标差值。这个像素纵坐标差值表示相邻的第一图像与第二图像产生的相对振动幅度。
然后,根据像素纵坐标差值确定最大振幅和最小振幅,一般来说,像素纵坐标差值越大对应的振动幅度越大,像素纵坐标差值越小对应的振动幅度越小。其中,最大振动幅度所对应的移动方向与地毯的编织方向相反,最小振动幅度所对应的移动方向与地毯编织相同。因此,在实际应用中,若要确定纹理方向,可以先寻找最大振动幅度方向或者最小振动幅度方向。例如,扫地机器人想要找到地毯的纹理方向,经过实验可知,当扫地机器人的移动方向与纹理方向相反的时候,所产生的振动幅度也最大;当扫地机器人的移动方向与纹理方向相同或者相近的时候,振动幅度都不是很大,不容易找到最小振动幅度,但是若要找到最大振动幅度则相对容易一些。
如前文所述可知,在自移动机器人转动过程中,实时采集图像以及对应方向,然而,机器人单目摄像头的图像采集频率高于机器人激光雷达的方向采集频率。为了准确找到最大振幅和最小振幅所对应的方向,可以通过建立一个列表,例如,在列表中,每10个振动幅度为V1~V10对应一个移动方向D1,振动幅度V11~V20对应一个移动方向D2,以此类推,可以得到所有振动幅值与移动方向的对应关系。
在得到上述列表之后,为了更加准确的找到最大振动幅度或者最小振动幅度,可以采用滑窗算法,进而确定纹理方向(也就是地毯的编织方向)。例如,假设每个滑窗当中包含10个振动幅度的采样数据,然后对这10个数据的绝对值求取振动幅度平均值V;再计算下一个滑窗的振动幅度的平均值,相邻两个滑窗之间相差至少十个采样数据对应的采样周期。每个振动幅度平均值V都对应一个移动方向D,进而,转动一圈过程中所有滑窗对应的振动幅度平均值V进行比较,确定出最大振幅和最小振幅。
为了能够准确的确定出最大振动幅度或最小振动幅度,采用先对相邻两帧图像中有效特征点进行振动幅值计算,将所有有效特征点的振动幅值的平均值作为这两帧图像之间的振动幅值。然后,再根据多帧图像各自对应的振动幅值,计算该多帧图像的振动幅值的平均值作为某一个移动方向上的振动幅值。对各个移动方向上的振动幅值进行比较来确认转动一圈中的最大振幅或最小振幅。
在实际应用中,若经过计算得到多个相同的较大振动幅度,则选择多个较大振动幅度各自对应方向中中间方向作为最大振幅对应的方向。比如,得到振动幅度相同的V1、V2、V3,对应的移动方向分别为D1、D2、D3,且D2大于D3,D2小于D1,则选择最大振动幅度对应的移动方向为D2。这个移动方向D2为机器人转动一圈所确定的。
在实际应用中,机器人转动一周的时候,由于机器人位姿定位精度,或者,最大振动幅度、最小振动幅度计算精度的影响,可能会导致最大振动幅度所对应方向或者最小振动幅度与移动方向的对应关系不准确。为此,可以让机器人多转动几圈,通过每一圈都能够确定一个备选纹理方向(如前文所述可知,最大振动幅度对应的移动方向与纹理方向为反向,最小振动幅度对应的移动方向与纹理方向为同向),然后,求取多个备选纹理方向的平均值,作为该地面介质的实际纹理方向(比如,地毯的编织方向)。例如,假设在当前房间的直角坐标系中,第一圈求得的备选纹理方向为相对Y轴顺时针偏转30度,第二圈求得的备选纹理方向为相对Y轴顺时针偏转40度,第三圈求得的备选纹理方向为相对于Y轴顺时针偏转22度,则最终求得的纹理方向为相对Y轴顺时针偏转31度。
在实际应用中,在机器人完成纹理方向的检测之后,将进一步确定对应于该地面介质区域的路径方向。容易理解的是,机器人的行走的时候,方向并不单一,有的可能要多次往返,通常往返表示去的方向与返的方向是完全相反的,比如图1所示,机器人去的方向是从左向右,那么返的方向就是从右向左,由于纹理方向是从左向右,机器人去的时候不会发生振动,但是返的时候则发生大幅度振动,因此,不能选择与纹理方向相同或者相反的方向作为路径方向。为了使得机器人在多次往返过程中,都尽可能少的受到纹理方向的影响,可以选择与纹理方向垂直的方向作为路径方向。这样的路径方向,可以使得机器人往返过程都不会产生很大的振动。
为了便于理解,下面将结合图4对路径方向的确定过程进行解释说明。图4为本申请实施例提供的确定路径方向的示意图。假设,地毯编织方向为从左向右,也就是,当扫地机器人从右向左移动的过程中,扫地机器人将产生大振动幅度。那么,为了保证往返移动都尽可能少的受到编织方向的影响,可以选择与编织方向垂直的方向,比如,图4中向上或者向下的方向作为路径方向(这里所说的上下左右,是指在平面图中的方向),这两个路径方向都能够满足机器人规划移动轨迹的需求。若将向上方向作为机器人路径方向,也就是机器人去的方向,那么向下方向就是对应的返的方向。可以看出,机器人按照图示的路径方向往返移动的过程中,都不会因为纹理方向而产生过大的振动幅度。容易理解的是,机器人相对于地毯的起始位置不同,所以路径方向也不唯一,基于该路径方向所确定的移动轨迹也不唯一。
在确定路径方向之后,基于路径方向对机器人的移动轨迹进行规划。如图5为本申请实施例提供的移动轨迹规划的示意图。具体来说,如图5所示,假设起始路径方向是向上,机器人往返工作,可以得到首尾相连的“弓”字型的移动轨迹。需要说明的是,即便确定路径方向,在规划移动轨迹的时候也要尽可能排除纹理方向的影响,也就是,移动轨迹的延伸方向应该与纹理方向相同,比如按照图中轨迹序号①、②、③、④的顺序延伸,确保首尾相连“弓”字型的首尾衔接处的移动方向与纹理方向相同或相近。扫地机器人的整个清扫过程将按照移动轨迹对地毯区域进行清扫。
在实际应用中,扫地机器人完成对地毯区域的清扫工作之后,扫地机器人将在其存储的地图中标记上该地毯的位置,以及适用于该地毯的路径方向或纹理方向。进一步,结合扫地机器人在地毯中的起始位置,规划移动轨迹。比如,如图6a、6b为本申请实施例提供的不同起始位置移动轨迹规划的示意图,若机器人的起始位置为A,可以得到如图6a所示的移动轨迹;若机器人的起始位置为B,可以得到如图6b所示的移动轨迹;若机器人的起始位置为C或者D,由于移动轨迹中往返连接位置(也就是图6b中半圆弧型连接位置)的移动方向与纹理方向相反,将会产生比较大的振动幅度,需要扫地机器人移动到A或B位置后,重新规划移动轨迹。通过上述方案,不需要机器人转动一圈重新查找地毯编织方向,在保证对地毯区域清扫效果的前提下,能够有效提升扫地机器人的清扫效率。
需要说明的是,扫地机器人在不同的工作环境中开始工作之前,先判断当前房间是否是全屋地毯,如果不是,则优先对地板区域等非地毯区域进行清扫,在完成非地毯区域清扫之后,再清扫该地毯区域。扫地机器人会根据此前地图中地毯区域的标记位置,来判断当前扫地机器人是否移动到地毯区域。
若扫地机器人移动到地毯区域中,将按照如图3所示的方法,扫地机器人在地毯上围绕环形转动一圈,从而可以确定地毯的纹理方向(也就是地毯绒毛编织方向),进而基于纹理方向确定扫地机器人在清扫工作时的路径方向。
如果是全屋地毯,则扫地机器人在开始清扫前先在地毯上围绕环形转动一圈,采用如图3所示的方法,扫地机器人在地毯上围绕环形转动一圈,从而可以确定地毯的纹理方向(也就是地毯绒毛编织方向),进而基于纹理方向确定扫地机器人在清扫工作时的路径方向。
作为一可选实施例,如图7为本申请实施例提供的一种示例性基于纹理方向进行轨迹规划的示意图。如图所示,地毯区域中的纹理方向(也就是地毯绒毛编织方向)是沿着矩形对角方向。扫地机器人移动到地毯区域当中后,在地毯上按照图示转动轨迹,围绕360°环形进行转动,从而扫地机器人可以确定地毯的纹理方向是如图所示的朝向矩形对角方向。基于该纹理方向,进一步确定与纹理方向垂直的路径方向,可以规划得到如图所示的“弓”字型的移动轨迹。
图8为本申请实施例提供一种轨迹规划装置的结构示意图,可以应用于机器人,该装置包括:获取模块81、振幅确定模块82、路径确定模块83和轨迹规划模块84。
获取模块81,用于获取自移动机器人在移动时采集的多帧图像。
振幅确定模块82,用于根据所述多帧图像中对应特征点的像素坐标,确定自移动机器人在移动时的振动幅度。
路径确定模块83,用于根据所述振动幅度确定自移动机器人的路径方向。
轨迹规划模块84,用于根据所述路径方向规划自移动机器人的移动轨迹。
可选地,获取模块81,用于若确定自移动机器人位于预设的地面介质区域,则获取所述自移动机器人在移动时采集的多帧图像。
可选地,所述预设的地面介质区域包括地毯区域。
可选地,获取模块81,用于控制所述自移动机器人沿不同方向上移动;获取所述自移动机器人移动过程中在不同移动方向上采集的多帧图像。
可选地,振幅确定模块82,用于根据所述多帧图像中对应特征点的像素纵坐标差值的平均值,确定自移动机器人在不同移动方向上的振动幅度。
可选地,振幅确定模块82,用于确定所述多帧图像中对应特征点的像素横坐标的差值;过滤掉像素横坐标的差值大于阈值的对应特征点;根据所述多帧图像中剩余的对应特征点的像素纵坐标差值的平均值,确定自移动机器人在不同移动方向上的振动幅度。
可选地,路径确定模块83,用于确定最大或最小振动幅度;根据最大或最小振动幅度,确定地面介质的纹理方向;根据所述纹理方向确定自移动机器人的路径方向。
可选地,路径确定模块83,用于确定与最小振动幅度对应的移动方向为备选纹理方向,或者,确定与最大振动幅度对应的移动方向相反方向为备选纹理方向;根据多个备选纹理方向的平均方向,确定地面介质的纹理方向。
可选地,路径确定模块83,用于确定与所述纹理方向垂直的方向为所述自移动机器人的路径方向。
图9为本申请示例性实施例提供的一种自移动机器人的结构示意图。该自移动机器人包括机械本体、一个或多个处理器901、一个或多个存储计算机程序的存储器902。除此之外,该自移动机器人还可以包括电源组件903等必要组件。
一个或多个处理器901,用于执行计算机程序,以用于:
获取自移动机器人在移动时采集的多帧图像;根据所述多帧图像中对应特征点的像素坐标,确定自移动机器人在移动时的振动幅度;根据所述振动幅度确定自移动机器人的路径方向;根据所述路径方向规划自移动机器人的移动轨迹。
可选地,一个或多个处理器901,用于若确定自移动机器人位于预设的地面介质区域,则获取所述自移动机器人在移动时采集的多帧图像。
可选地,所述预设的地面介质区域包括地毯区域。
可选地,一个或多个处理器901,用于控制所述自移动机器人沿不同方向上移动;获取所述自移动机器人移动过程中在不同移动方向上采集的多帧图像。
可选地,一个或多个处理器901,用于根据所述多帧图像中对应特征点的像素纵坐标差值的平均值,确定自移动机器人在不同移动方向上的振动幅度。
可选地,一个或多个处理器901,用于确定所述多帧图像中对应特征点的像素横坐标的差值;过滤掉像素横坐标的差值大于阈值的对应特征点;根据所述多帧图像中剩余的对应特征点的像素纵坐标差值的平均值,确定自移动机器人在不同移动方向上的振动幅度。
可选地,一个或多个处理器901,用于确定最大或最小振动幅度;根据最大或最小振动幅度,确定地面介质的纹理方向;根据所述纹理方向确定自移动机器人的路径方向。
可选地,一个或多个处理器901,用于确定与最小振动幅度对应的移动方向为备选纹理方向,或者,确定与最大振动幅度对应的移动方向相反方向为备选纹理方向;根据多个备选纹理方向的平均方向,确定地面介质的纹理方向。
可选地,一个或多个处理器901,用于确定与所述纹理方向垂直的方向为所述自移动机器人的路径方向。
在本自移动机器人的实施例中,还可以为自移动机器人以及提供相应的计算机可读存储介质,在此不再赘述。
本领域内的技术人员应明白,本发明的实施例可提供为方法、***、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本申请实施例的方法、设备(***)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪存储体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。
Claims (12)
1.一种轨迹规划方法,其特征在于,应用于自移动机器人,所述方法包括:
获取所述自移动机器人在移动时采集的多帧图像;
根据所述多帧图像中对应特征点的像素坐标,确定所述自移动机器人在移动时的振动幅度;
根据所述振动幅度确定所述自移动机器人的路径方向;
根据所述路径方向规划所述自移动机器人的移动轨迹。
2.根据权利要求1所述的方法,其特征在于,获取所述自移动机器人在移动时采集的多帧图像,包括:
若确定所述自移动机器人位于预设的地面介质区域,则获取所述自移动机器人在移动时采集的多帧图像。
3.根据权利要求2所述的方法,其特征在于,所述预设的地面介质区域包括地毯区域。
4.根据权利要求1或2所述的方法,其特征在于,获取所述自移动机器人在移动时采集的多帧图像,包括:
控制所述自移动机器人沿不同方向上移动;
获取所述自移动机器人移动过程中在不同移动方向上采集的多帧图像。
5.根据权利要求4所述的方法,其特征在于,所述根据所述多帧图像中对应特征点的像素坐标,确定所述自移动机器人在移动时的振动幅度,包括:
根据所述多帧图像中对应特征点的像素纵坐标差值的平均值,确定所述自移动机器人在不同移动方向上的振动幅度。
6.根据权利要求5所述的方法,其特征在于,所述根据所述多帧图像中对应特征点的像素纵坐标的差值的平均值,确定所述自移动机器人在不同移动方向上的振动幅度,包括:
确定所述多帧图像中对应特征点的像素横坐标的差值;
过滤掉像素横坐标的差值大于阈值的对应特征点;
根据所述多帧图像中剩余的所述对应特征点的像素纵坐标差值的平均值,确定所述自移动机器人在不同移动方向上的振动幅度。
7.根据权利要求1所述的方法,其特征在于,所述根据所述振动幅度确定所述自移动机器人的路径方向,包括:
确定最大或最小振动幅度;
根据最大或最小振动幅度,确定地面介质的纹理方向;
根据所述纹理方向确定所述自移动机器人的路径方向。
8.根据权利要求7所述的方法,其特征在于,所述根据最大或最小振动幅度,确定地面介质的纹理方向,包括:
确定与最小振动幅度对应的移动方向为备选纹理方向,或者,确定与最大振动幅度对应的移动方向相反方向为备选纹理方向;
根据多个备选纹理方向的平均方向,确定地面介质的纹理方向。
9.根据权利要求7所述的方法,其特征在于,所述根据所述纹理方向确定所述自移动机器人的路径方向,包括:
确定与所述纹理方向垂直的方向为所述自移动机器人的路径方向。
10.一种轨迹规划装置,其特征在于,应用于自移动机器人,所述装置包括:
获取模块,用于获取所述自移动机器人在移动时采集的多帧图像;
振幅确定模块,用于根据所述多帧图像中对应特征点的像素坐标,确定所述自移动机器人在移动时的振动幅度;
路径确定模块,用于根据所述振动幅度确定所述自移动机器人的路径方向;
轨迹规划模块,用于根据所述路径方向规划所述自移动机器人的移动轨迹。
11.一种存储有计算机程序的计算机可读存储介质,其特征在于,当所述计算机程序被一个或多个处理器执行时,致使所述一个或多个处理器执行包括以下的动作:
获取自移动机器人在移动时采集的多帧图像;
根据所述多帧图像中对应特征点的像素坐标,确定所述自移动机器人在移动时的振动幅度;
根据所述振动幅度确定所述自移动机器人的路径方向;
根据所述路径方向规划所述自移动机器人的移动轨迹。
12.一种自移动机器人,其特征在于,包括:机械本体,所述机械本体上设有一个或多个处理器,以及一个或多个存储计算机程序的存储器;
所述一个或多个处理器执行所述计算机程序,以用于:
获取所述自移动机器人在移动时采集的多帧图像;
根据所述多帧图像中对应特征点的像素坐标,确定所述自移动机器人在移动时的振动幅度;
根据所述振动幅度确定所述自移动机器人的路径方向;
根据所述路径方向规划所述自移动机器人的移动轨迹。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911097094.8A CN112783147A (zh) | 2019-11-11 | 2019-11-11 | 一种轨迹规划方法、装置、机器人及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911097094.8A CN112783147A (zh) | 2019-11-11 | 2019-11-11 | 一种轨迹规划方法、装置、机器人及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112783147A true CN112783147A (zh) | 2021-05-11 |
Family
ID=75749867
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911097094.8A Pending CN112783147A (zh) | 2019-11-11 | 2019-11-11 | 一种轨迹规划方法、装置、机器人及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112783147A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113657164A (zh) * | 2021-07-15 | 2021-11-16 | 美智纵横科技有限责任公司 | 标定目标对象的方法、装置、清扫设备和存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN203053428U (zh) * | 2012-12-06 | 2013-07-10 | 紫光股份有限公司 | 一种光学成像式轮式移动机器人方位的检测装置 |
CN106325270A (zh) * | 2016-08-12 | 2017-01-11 | 天津大学 | 基于感知和自主计算定位导航的智能车导航***及方法 |
CN107314773A (zh) * | 2017-08-18 | 2017-11-03 | 广东宝乐机器人股份有限公司 | 移动机器人的地图创建方法及基于该地图的路径规划方法 |
JP2018165889A (ja) * | 2017-03-28 | 2018-10-25 | カシオ計算機株式会社 | 自律移動装置、方法およびプログラム |
WO2019076044A1 (zh) * | 2017-10-20 | 2019-04-25 | 纳恩博(北京)科技有限公司 | 移动机器人局部运动规划方法、装置及计算机存储介质 |
-
2019
- 2019-11-11 CN CN201911097094.8A patent/CN112783147A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN203053428U (zh) * | 2012-12-06 | 2013-07-10 | 紫光股份有限公司 | 一种光学成像式轮式移动机器人方位的检测装置 |
CN106325270A (zh) * | 2016-08-12 | 2017-01-11 | 天津大学 | 基于感知和自主计算定位导航的智能车导航***及方法 |
JP2018165889A (ja) * | 2017-03-28 | 2018-10-25 | カシオ計算機株式会社 | 自律移動装置、方法およびプログラム |
CN107314773A (zh) * | 2017-08-18 | 2017-11-03 | 广东宝乐机器人股份有限公司 | 移动机器人的地图创建方法及基于该地图的路径规划方法 |
WO2019076044A1 (zh) * | 2017-10-20 | 2019-04-25 | 纳恩博(北京)科技有限公司 | 移动机器人局部运动规划方法、装置及计算机存储介质 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113657164A (zh) * | 2021-07-15 | 2021-11-16 | 美智纵横科技有限责任公司 | 标定目标对象的方法、装置、清扫设备和存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11740634B2 (en) | Systems and methods for configurable operation of a robot based on area classification | |
AU2017228620B2 (en) | Autonomous coverage robot | |
CN110801180B (zh) | 清洁机器人的运行方法及装置 | |
CN111609852A (zh) | 语义地图构建方法、扫地机器人及电子设备 | |
CN111197985B (zh) | 区域识别方法、路径规划方法、设备及存储介质 | |
CN110477813B (zh) | 一种激光式清洁机器人及其控制方法 | |
CN111714028A (zh) | 清扫设备的禁区脱困方法、装置、设备及可读存储介质 | |
CN110946511B (zh) | 打滑判断的方法、设备及存储介质 | |
CN111679664A (zh) | 基于深度相机的三维地图构建方法及扫地机器人 | |
CN110084825B (zh) | 一种基于图像边缘信息导航的方法及*** | |
CN112754363A (zh) | 清扫控制方法、清扫控制装置、清扫设备和存储介质 | |
CN112783147A (zh) | 一种轨迹规划方法、装置、机器人及存储介质 | |
CN111609854A (zh) | 基于多个深度相机的三维地图构建方法及扫地机器人 | |
CN107028558B (zh) | 计算机可读取记录媒体及自动清扫机 | |
CN112438658A (zh) | 清洁机器人的清洁区域划分方法及清洁机器人 | |
CN111780744A (zh) | 移动机器人混合导航方法、设备及存储装置 | |
CN112338908B (zh) | 自主移动设备 | |
RU2658092C2 (ru) | Способ и система навигации подвижного объекта с использованием трехмерных датчиков | |
CN112396611B (zh) | 一种点线视觉里程计自适应优化方法、装置及存储介质 | |
CN113984071B (zh) | 地图匹配方法、装置、机器人和计算机可读存储介质 | |
CN113009911B (zh) | 清洁路径的生成方法、装置和自移动设备 | |
Perroni Filho et al. | Mobile robot path drift estimation using visual streams | |
CN118058658A (zh) | 清洁机器人的移动控制方法和清洁机器人 | |
AU2015224421A1 (en) | Autonomous coverage robot | |
CN115778266A (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 |