CN114690755A - 清洁机器人及其绕障方法 - Google Patents

清洁机器人及其绕障方法 Download PDF

Info

Publication number
CN114690755A
CN114690755A CN202011567845.0A CN202011567845A CN114690755A CN 114690755 A CN114690755 A CN 114690755A CN 202011567845 A CN202011567845 A CN 202011567845A CN 114690755 A CN114690755 A CN 114690755A
Authority
CN
China
Prior art keywords
obstacle
line
cleaning robot
virtual
image
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
Application number
CN202011567845.0A
Other languages
English (en)
Inventor
王旭宁
李志鹏
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sharkninja China Technology Co Ltd
Original Assignee
Sharkninja China Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Sharkninja China Technology Co Ltd filed Critical Sharkninja China Technology Co Ltd
Priority to CN202011567845.0A priority Critical patent/CN114690755A/zh
Publication of CN114690755A publication Critical patent/CN114690755A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0231Control of position or course in two dimensions specially adapted to land vehicles using optical position detecting means
    • G05D1/0246Control 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
    • G05D1/0253Control 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 extracting relative motion information from a plurality of images taken successively, e.g. visual odometry, optical flow
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0212Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
    • G05D1/0214Control 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
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0212Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
    • G05D1/0223Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory involving speed control of the vehicle
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05DSYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
    • G05D1/00Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
    • G05D1/02Control of position or course in two dimensions
    • G05D1/021Control of position or course in two dimensions specially adapted to land vehicles
    • G05D1/0276Control of position or course in two dimensions specially adapted to land vehicles using signals provided by a source external to the vehicle

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Aviation & Aerospace Engineering (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Remote Sensing (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Multimedia (AREA)
  • Electromagnetism (AREA)
  • Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)

Abstract

本公开种清洁机器人及其绕障方法,该清洁机器人上设置有摄像头,该绕障方法包括:通过摄像头获取清洁机器人前方的图像;在图像上生成虚拟行进线和虚拟视距线,图像上的虚拟行进线与实际环境中清洁机器人的左右边缘向前延伸而成的虚拟线条相对应,图像中的虚拟视距线与实际环境中清洁机器人前方预设安全距离处的虚拟线条相对应;以图像中障碍物位于虚拟行进线和虚拟视距线的远离清洁机器人的一侧为约束条件,控制清洁机器人对障碍物进行绕障行走。本公开的清洁机器人不仅能够通过摄像头识别障碍物,还能够通过在摄像头采集到图像上生成虚拟行进线和虚拟视距线,在行走的过程中绕开障碍物。

Description

清洁机器人及其绕障方法
技术领域
本公开涉及清洁设备技术领域,尤其涉及一种清洁机器人及其绕障方法。
背景技术
清洁机器人是一种能够自主对家居环境进行清洁的智能设备。清洁机器人在对复杂多样的家庭环境进行清洁或地图构建的过程中,通常需要依赖激光测距传感器来判断清洁机器人的前方是否有障碍物,以避免清洁机器人与前方的障碍物发生碰撞。然后借助沿墙传感器、碰撞传感器等传感器来引导清洁机器人绕开障碍物。
目前尚没有一款清洁机器人可以通过摄像头对识别到的障碍物进行绕障行走。
发明内容
本公开提供一种清洁机器人及其绕障方法,可以通过摄像头对识别出的障碍进行绕障行走。
第一方面,本公开提供了一种清洁机器人的绕障方法,该清洁机器人上设置有摄像头,该绕障方法包括:
通过前述摄像头获取前述清洁机器人前方的图像;
在前述图像上生成虚拟行进线和虚拟视距线,前述图像上的虚拟行进线与实际环境中前述清洁机器人的左右边缘向前延伸而成的虚拟线条相对应,前述图像中的虚拟视距线与实际环境中前述清洁机器人前方预设安全距离处的虚拟线条相对应;
以前述图像中障碍物位于前述虚拟行进线和前述虚拟视距线的远离前述清洁机器人的一侧为约束条件,控制前述清洁机器人对前述障碍物进行绕障行走。
可选地,前述以前述图像中障碍物位于前述虚拟行进线和前述虚拟视距线的远离前述清洁机器人的一侧为约束条件,控制前述清洁机器人对前述障碍物进行绕障行走,包括:
在前述图像中障碍物与前述虚拟视距线接触时,以前述图像中前述障碍物与前述虚拟行进线相切为约束条件,控制前述清洁机器人对前述障碍物进行绕障行走。
可选地,前述以前述图像中障碍物位于前述虚拟行进线和前述虚拟视距线的远离前述清洁机器人的一侧为约束条件,控制前述清洁机器人对前述障碍物进行绕障行走,包括:
在前述图像中障碍物与前述虚拟视距线接触时,根据前述图像确定前述障碍物的宽度以及长度估计值;
根据前述障碍物的长度估计值确定前述清洁机器人的绕障终点,前述绕障终点与前述清洁机器人的当前位置分别位于前述障碍物相反的两侧;
根据前述当前位置以及前述绕障终点规划绕障路径;
使前述清洁机器人沿着前述绕障路径行走,并在前述虚拟视距线和/或前述虚拟行进线接触到前述障碍物时,根据行进过程中获取的图像更新前述绕障终点,并根据更新后的绕障终点调整后续的绕障路径。
可选地,前述根据前述当前位置以及前述绕障终点规划绕障路径,包括:
确定前述当前位置与前述绕障终点之间的距离,将直径为前述距离并且将前述当前位置和前述绕障终点连接到一起的圆弧作为前述绕障路径。
可选地,前述根据前述当前位置以及前述绕障终点规划绕障路径,包括:
将前述当前位置与前述绕障终点之间的连线作为第一轴;
根据前述障碍物的宽度和前述清洁机器人的尺寸,确定与前述第一轴垂直的第二轴;
将长轴和短轴分别为前述第一轴和前述第二轴,且将前述当前位置和前述绕障终点连接到一起的椭圆弧,作为前述绕障路径。
可选地,前述根据前述当前位置以及前述绕障终点规划绕障路径,包括:
确定前述当前位置与前述绕障终点之间的多个中间点,前述中间点位于前述障碍物的外侧;
将依次连接前述当前位置、前述中间点、前述绕障终点的线作为前述绕障路径。
可选地,前述在前述图像上生成虚拟行进线和虚拟视距线,包括:
根据预先确定的虚拟行进线和虚拟视距线映射至前述摄像头所拍摄的标定图像中的位置,将前述虚拟行进线和前述虚拟视距线添加到前述图像上。
可选地,前述绕障方法还包括:
通过前述摄像头获取标定对象的标定图像;前述标定对象上具有用于代表前述虚拟行进线的第一线条和用于代表前述虚拟视距线的第二线条;
确定前述第一线条和前述第二线条在前述标定图像中的位置。
可选地,前述绕障方法还包括:
响应于前述清洁机器人转弯,确定前述清洁机器人的转向轨迹;
使前述虚拟行进线调整为沿着前述转向轨迹延伸。
第二方面,本公开提供了一种清洁机器人,该清洁机器人包括处理器、存储器和存储在前述存储器上的执行指令,前述执行指令设置成在被前述处理器执行时能够使前述清洁机器人执行第一方面中任一项技术方案所述的绕障方法。
基于前文的描述,本领域技术人员能够理解的是,本公开通过摄像头获取清洁机器人前方的图像,并在该图像中生成虚拟行进线和虚拟视距线,以便通过虚拟行进线来确定清洁机器人将要行走的路径,通过虚拟视距线来确定清洁机器人在行进方向上的安全距离。进而以图像中障碍物位于虚拟行进线和虚拟视距线的远离清洁机器人的一侧为约束条件,控制清洁机器人对障碍物进行绕障行走。因此,本公开不仅可以通过摄像头识别障碍物,还通过在摄像头采集到图像上生成虚拟行进线和虚拟视距线,并使障碍物始终位于虚拟行进线和虚拟视距线的远离清洁机器人的一侧,避免了清洁机器人在行走的过程中与障碍物发生碰撞。
进一步可选地,在图像中障碍物与虚拟视距线接触时,通过以图像中障碍物与虚拟行进线相切为约束条件,控制清洁机器人对障碍物进行绕障行走,使得清洁机器人在绕行障碍物的过程中,与障碍物之间始终保持一直保持较为接近的距离,以便对障碍物周围的环境进行精细清扫。
进一步可选地,在图像中障碍物与虚拟视距线接触时,通过确定图像中障碍物的宽度和长度估计值,能够初步确定清洁机器人的绕障终点,以便使清洁机器人根据当前位置和绕障终点规划绕障路径,从而使得清洁机器人能够快速绕开障碍物。同时,在虚拟视距线和/或虚拟行进线接触到障碍物时,通过根据行进过程中获取的图像更新绕障终点,并根据更新后的绕障终点调整后续的绕障路径,有效地避免了清洁机器人在绕障过程中与障碍物发生碰撞的情形。
附图说明
为了更清楚地说明本公开的技术方案,下面将结合附图来对本公开的部分实施例进行详细说明,附图中:
图1是本公开第一实施例中绕障方法的主要步骤流程示意图;
图2是本公开第一实施例中具有虚拟行进线和虚拟视距线的图像的效果示意图;
图3是本公开第一实施例中清洁机器人的精细绕障路径示意图;
图4是本公开第一实施例中清洁机器人在精细绕障过程中的图像的效果示意图;
图5是本公开第一实施例中清洁机器人快速绕障的步骤流程图;
图6是本公开第一实施例中清洁机器人的快速绕障路径示意图(一次规划完成);
图7是本公开第一实施例中清洁机器人的快速绕障过程的路径示意图(路径为圆弧);
图8是本公开第一实施例中清洁机器人的快速绕障过程的路径示意图(路径为椭圆弧);
图9是本公开第一实施例中清洁机器人的快速绕障过程的路径示意图(路径为多边形);
图10是本公开第一实施例中清洁机器人的快速绕障过程的路径示意图(路径为多工字形);
图11是本公开第一实施例中清洁机器人的快速绕障路径示意图(多次规划完成);
图12是本公开第二实施例中绕障方法的部分步骤流程示意图;
图13是本公开第二实施例中对摄像头进行标定的示意图;
图14是本公开第三实施例中绕障方法的部分步骤流程示意图;
图15是本公开第三实施例中虚拟行进线和虚拟视距线在清洁机器人拐弯时的示意图;
图16是本公开第三实施例中虚拟行进线转向角的几何示意图;
图17是本公开第四实施例中绕障方法的部分步骤流程示意图;
图18是本公开第五实施例中清洁机器人的结构示意图。
附图标记列表:
1、虚拟行进线;11、左侧虚拟行进线;12、右侧虚拟行进线;13、中间虚拟行进线;
2、虚拟视距线;21、第一虚拟视距线;22、第二虚拟视距线;23、第三虚拟视距线;
3、障碍物;
4、清洁机器人;41、摄像头
5、绕障路径;
6、标定板。
具体实施方式
为使本公开的目的、技术方案和优点更加清楚,下面将结合具体实施例及相应的附图对本公开的技术方案进行清楚、完整地描述。本领域技术人员应当理解的是,本节具体实施方式中所描述的实施例仅是本公开的一部分实施例,而不是本公开的全部实施例。基于本节具体实施方式中所描述的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其它实施例,都不会偏离本公开的技术原理,因此都应当落入到本公开的保护范围内。
需要说明的是,在本公开的描述中,各个功能模块既可以是由多个结构、构件或电子元器件构成的物理模块,也可以是由多条程序构成的虚拟模块;各个功能模块既可以是彼此独立存在的模块,也可以是由一个整体模块按照功能划分而成的模块。本领域技术人员应当理解的是,在能够实现本公开所描述的技术方案的前提下,各个功能模块的构成方式、实现方式、位置关系无论怎样变化都不会偏离本公开的技术原理,因此都应当落入本公开的保护范围之内。
本公开的清洁机器人包括扫地机器人、拖地机器人、扫吸拖一体机器人等具有清洁功能的机器人。本公开的清洁机器人上设置有摄像头,该摄像头能够采集清洁机器人前方的图像。本公开的清洁机器人还包括两个驱动轮,该两个驱动轮分别位于该清洁机器人的左右两侧,该两个驱动轮用于驱动清洁机器人行走和转向。
下面参照附图来对本公开的一些实施例进行详细说明。
在本公开的第一实施例中:
如图1所示,本实施例清洁机器人的绕障方法包括:
步骤S110,通过摄像头获取清洁机器人前方的图像。
在本实施例中,清洁机器人在行走的过程中,可以通过摄像头每间隔一段时间(例如0.5秒、1秒、1.8秒、5秒等)就获取一次清洁机器人前方的图像,也可以通过摄像头实时地拍摄清洁机器人前方的视频,然后提取视频的帧。
步骤S120,在图像上生成虚拟行进线1和虚拟视距线2。
如图2所示,将预先存储的虚拟行进线数据和虚拟视距线数据添加到步骤S110中获取的图像中,或者根据步骤S110中获取的图像和预先存储的虚拟行进线数据和虚拟视距线数据生成新的图像,以便将步骤S110中获取的图像与预先存储的虚拟行进线数据和虚拟视距线数据结合到一起。
继续参阅图2,图像上的虚拟行进线1与实际环境中清洁机器人的左右边缘向前延伸而成的虚拟线条相对应。优选地,图像上的左侧虚拟行进线11和右侧虚拟行进线12与清洁机器人等宽,以便图像中出现与左侧虚拟行进线11和右侧虚拟行进线12接触或者位于两者之间的障碍物时,便可认定清洁机器人前方存在阻碍清洁机器人行进的障碍物。此外,在能够从图像中识别出阻碍清洁机器人行进的障碍物的前提下,本领域技术人员也可以根据需要,使图像上的左侧虚拟行进线11和右侧虚拟行进线12之间的距离大于或小于清洁机器人的宽度。
继续参阅图2,图像中的虚拟视距线2与实际环境中清洁机器人前方预设安全距离处的虚拟线条相对应。其中,该预设安全距离指的是,从清洁机器人通过摄像头获取前方的图像开始,至清洁机器人通过获取到的图像识别到前方具有障碍物,再到停止前进或转向的过程中所走过的最大距离。在清洁机器人不会与前方障碍物发生碰撞的前提下,该预设安全距离可以是任意可行的数值,例如5cm、15cm、20cm、40cm、50cm、100cm等。
进一步,图像中的虚拟视距线2的数量可以是一条,也可以是多条,如图2中所示的第一虚拟视距线21、第二虚拟视距线22和第三虚拟视距线23。其中,第一虚拟视距线21与清洁机器人之间的距离的取值范围为[5cm,15cm];第二虚拟视距线22与清洁机器人之间的距离的取值范围为[20cm,40cm];第三虚拟视距线23与清洁机器人之间的距离的取值范围为[50cm,100cm]。
步骤S130,以图像中障碍物位于虚拟行进线和虚拟视距线的远离清洁机器人的一侧为约束条件,控制清洁机器人对障碍物进行绕障行走。
作为示例一,在图像中障碍物与虚拟视距线2接触时,以图像中障碍物与虚拟行进线1相切为约束条件,控制清洁机器人对障碍物进行绕障行走。下面参照图3和图4,来对本示例进行详细说明。
如图3所示,当清洁机器人4行进至位置1时,障碍物3与第一虚拟视距线21相接触,使清洁机器人4原地转向,直到障碍物3离开左侧虚拟行进线11并与之相切时(参见图4),再使清洁机器人4沿直线从位置1行进到位置2。
进一步,清洁机器人4移动至位置2时,左侧虚拟行进线11不与障碍物3相切,使清洁机器人4转向,直至左侧虚拟行进线11与障碍物3相切时,再使清洁机器人4沿直线从位置2行进到位置3。
重复上述过程,使清洁机器人4行驶至位置3、位置4、位置5,直至行驶至位置6,使清洁机器人回到了原定的、无障碍物时的直线行进路线上,再使清洁机器人原地转向,恢复到位置1时正向行进的姿态,并继续执行原定的行走作业。或者,使清洁机器人4重复上述过程,对障碍物3绕障一周,实现沿边清洁。
本领域技术人员能够理解的是,本实施例示例一中的路径规划策略能够使清洁机器人对障碍物边缘区域进行全方位、无死角地清洁,尤其适合边角旮旯和柜下床下等狭小空间的清洁作业。但是,该种路径规划策略会需要大量重复的障碍物检测和条件判断,导致计算资源消耗和算力占用较大。为此,本实施例还提供了快速清扫的路径规划策略,具体请参见下位所描述的示例二。
如图5所示,示例二的路径规划包括:
步骤S131,在图像中障碍物与虚拟视距线接触时,根据图像确定障碍物的宽度以及长度估计值。
步骤S132,根据障碍物的长度估计值确定清洁机器人的绕障终点。
步骤S133,根据当前位置以及绕障终点规划绕障路径。
步骤S134,使清洁机器人沿着绕障路径行走。
步骤S135,虚拟视距线和/或虚拟行进线是否接触到障碍物?如果接触到了,执行步骤S136;如果没有接触到,执行步骤S134。
步骤S136,根据行进过程中获取的图像更新绕障终点,并根据更新后的绕障终点调整后续的绕障路径,然后继续执行步骤S134。
下面结合图6至图11,来对示例二的路径规划进行举例说明。
在图6至图11中,圆圈1、2、3、4、5、6表示清洁机器人绕障过程中的不同节点。虚线圆表示第一虚拟视距线21和第二虚拟视距线22的中心点在清洁机器人360°原地旋转时形成的水平面内轨迹。设定,清洁机器人当前位置的初始坐标为(0,0),绕过障碍物后绕障终点的坐标为(D0,0)。其中,D0为清洁机器人在障碍物前后两侧位置时的直线距离,其中,D0大于D,例如设定D0=D+2*d2,D为障碍物3长度估计值,d2为预设值以使清洁机器人和障碍物留有一定的安全间隙。
在本示例中,图像中与障碍物接触的虚拟视距线为第二虚拟视距线22,或者本领域技术人员也可以根据需要,选定其他任意可行的虚拟视距线作为与障碍物接触的虚拟视距线,例如,第一虚拟视距线21、第三虚拟视距线23、位于第一、第二或第三虚拟视距线内侧的任意虚拟视距线。
本领域技术人员能够理解的是,由于大部分的障碍物的横截面并不是方形或圆形,因此,清洁机器人无法准确地获取图像中障碍物厚度(长度)的真实数据。只能通过障碍物3的实际宽度确定出障碍物3的长度估计值,该长度估计值可以为障碍物3的实际宽度的预设倍数,比如为1倍、2倍。
如图6所示,在估计的长度值大于等于障碍物3的实际长度值时,清洁机器人仅需要规划一次绕障路径5即可。一次规划而成的绕障路径5可以是图7中所示的圆弧、图8中所示的椭圆弧、图9中所示的多边形、图10中所示的弓字形等。
在图7中,先根据图像内障碍物3的像素信息计算障碍物3真实宽度距离W,然后以W估计障碍物3长度估计值D,设定D0=D+2*d2。其中,d2为第二虚拟视距线22到清洁机器人中心的距离。最后生成直径为D0,并且将起点(0,0)和终点(D0,0)连接到一起的圆弧作为绕障路径5。
在图8中,与图7中不同的是,将起点(0,0)和终点(D0,0)连接到一起的椭圆弧作为绕障路径5。其中,该椭圆弧的长轴(第一轴)为将起点(0,0)和终点(D0,0)之间的连线,该椭圆弧的短轴(第二轴)为(W+2*R0)。其中,R0表示清洁机器人中心点到能够清洁到的最远距离。
在图9中,绕障路径5具有6个依次相连的节点:(0,0)(0,D0/6)(D0/3,D0/2)、(2*D0/3,D0/2)、(D0,D0/6)、(D0,0)。
在图10中,绕障路径5具有4个依次相连的节点:(0,0)、(0,D0/2)、(D0,D0/2)、(D0,0)。
如图11所示,在估计的长度值小于障碍物3的实际长度值时,清洁机器人需要多次规划绕障路径5。具体地,在图像中障碍物与虚拟视距线接触时,先根据图像确定障碍物的宽度以及长度估计值,然后如图7至图10中任一方式确定初步地绕障路径5,并使清洁机器人开始沿着该绕障路径5开始行进。
在虚拟视距线和/或虚拟行进线再次接触到障碍物3时,先使绕障终点朝着远离绕障起点的方向增加,例如增加一个距离dL,变成(D0+dL),并根据更新后的绕障终点调整后续的绕障路径5,并使清洁机器人沿着调整后的绕障路径5继续行进。如果虚拟视距线和/或虚拟行进线再次接触到障碍物3时,再使绕障终点朝着远离绕障起点的方向移动一个距离dL。其中,dL可以是任意可行的数值,例如2cm、5cm、9cm、11.5cm等。
或者,在虚拟视距线和/或虚拟行进线再次接触到障碍物3时,利用清洁机器人行进过程中拍摄的图像,重新计算障碍物3的长度估计值,然后更新绕障终点,并根据更新后的绕障终点调整后续的绕障路径5,并使清洁机器人沿着调整后的绕障路径5继续行进。
基于前文的描述,本领域技术人员能够理解的是,本公开的清洁机器人不仅可以通过摄像头来识别前方的障碍物,还能够通过图像中虚拟行进线1和虚拟视距线2与障碍物的关系来引导清洁机器人对该障碍物进行精细绕障或快速绕障作业。
需要说明的是,本公开的第一实施例仅为本公开的绕障方法的一个基础实施例,在其基础上还可以得到其它可选的实施例,例如下面的第二实施例。
在本公开的第二实施例中:
如图12所示,与第一实施例不同的是,本实施例的绕障方法在步骤S110之前,还包括:
步骤S210,通过摄像头获取标定对象的标定图像。
如图13所示,在本实施例中,先选取棋盘格式的标定板6作为标定对象。该标定板6与清洁机器人4等宽,均为W0,标定板6的长度L0超出摄像头41图像的成像范围。
然后,将清洁机器人4固定在水平地面上,具***置如图13所示:使清洁机器人4的直线行进方向与标定板6的宽度方向在水平地面上垂直,使清洁机器人4的直线行进中心线与标定板6的宽度的中心线重合,使清洁机器人4的本体前端固定在标定板6的起始位置。
再,调整摄像头41的位置、焦距、视场角、成像等参数变量,以使摄像头41所拍摄到的图像满足如下条件:宽边w与图13中的Y向一致,高边h与图13中X向一致,并且图13中X轴线垂直平分图像的宽边w,以使图像中的标定板6关于X轴线左右对称,图像中的XY坐标轴的原点出现在图像的最下沿的宽边w的1/2处。
再,使摄像头41获取标定板6的标定图像。
最后,将标定图像中的标定板6的位置和度量信息映射到二维图像空间,为标定图像新建掩膜图层,用于存放生成的虚拟行进线1和虚拟视距线2。
步骤S220,确定第一线条和第二线条在标定图像中的位置。
其中,第一线条和第二线条分别存在于标定板6上,并且第一线条代表虚拟行进线1,第二线条代表虚拟视距2。具体地,第一线条是图13中标定板6的上边缘线(在标定图像中为左侧边缘线)和下边缘线(在标定图像中为右侧边缘线)。第二线条是图13中标定板6平行于Y轴的线条。通常情况下,标定板6中有多条第二线条。
步骤S230,根据第一线条确定虚拟行进线,根据第二线条确定虚拟视距线。
如图2和图13所示,从标定图像中提取标定板6的左侧边缘线,计算左侧边缘线的起点位置PL0(xl0,yl0)、终点位置PL1(xl1,yl1)和斜率
Figure BDA0002861510870000101
利用PL0、PL1、KL数据在掩膜图层生成第一虚拟行进线11(左侧限位标志线Leftline),第一虚拟行进线11与标定图像中标定板6的左侧边缘线重合。同样地,从标定图像中提取标定板6的右侧边缘线,计算直线的起点位置PR0(xr0,yr0)、终点位置PR1(xr1,yr1)和斜率
Figure BDA0002861510870000102
利用PR0、PR1、KR数据在掩膜图层生成第二虚拟行进线12(右侧限位标志线Rightline),第二虚拟行进线12与标定图像中标定板6的右侧边缘线重合。进一步,在掩膜图层生成第三虚拟行进线13(中心标志线Centerline),第三虚拟行进线13为标定图像左右方向上的垂直平分线。
从图2和图13中不难看出:第一虚拟行进线11和第二虚拟行进线12之间的区域即为清洁机器人4直线行进的安全车道。
进一步,根据清洁机器人行进速度和实际需要,在掩膜图层生成几条虚拟视距线2,如图2中所示的第一条虚拟视距线21、第二条虚拟视距线22和第三条虚拟视距线23。其中,每一条虚拟视距线都与第三虚拟行进线13垂直,并且位于第一虚拟行进线11与第二虚拟行进线12之间。优选地,掩膜图层的底边到第一条虚拟视距线21的距离d1经仿射变换后对应的实际距离为5cm~15cm,掩膜图层的底边到第二条虚拟视距线22的距离d2经仿射变换后对应的实际距离为20cm~40cm,掩膜图层的底边到第三条虚拟视距线23的距离d3经仿射变换后对应的实际距离为50cm~100cm。
其中,虚拟视距线为判断清洁机器人与前方距离的依据。
再进一步,为了防止清洁机器人碰撞到障碍物,还可以根据清洁机器人的行走速度来设置虚拟视距线的缩放系数α。α可以根据清洁机器人的实时直线行进速度来动态调整。清洁机器人在正常速度时α=1,速度越大时α越大,速度越小时α越小。以掩膜图层的底边到第一虚拟行进线11的距离d1'为例,d1'=α*d1。
之后,在执行步骤S120时,可以将具有虚拟行进线1和虚拟视距线2的掩膜图层叠加到步骤S110中获取的图像中,从而在该图像上生成虚拟行进线1和虚拟视距线2。
基于前文的描述,本领域技术人员能够理解的是,本实施例通过标定板6能够使清洁机器人生成精确探测障碍物的虚拟行进线1和虚拟视距线2,提升了清洁机器人探测障碍物的准确性和绕障的可靠性。
在本公开的第三实施例中:
如图14所示,与第一实施例和/或第二实施例不同的是,本实施例的绕障方法在清洁机器人拐弯的过程中,还包括:
步骤S310,响应于清洁机器人转弯,确定清洁机器人的转向轨迹。
如图15和图16所示,O点为清洁机器人转弯轨迹的中心点;r为清洁机器人中心点的转弯半径;d0为清洁机器人左右两个驱动轮之间的距离;VL为左侧驱动轮的行驶速度;VR为右侧驱动轮的行驶速度;两驱动轮之间中心点处线速度为VM=(VL+VR)/2;d为Δt时间内右侧驱动轮比左侧驱动轮多行进的距离;θ3为清洁机器人航向角的变化量。根据几何关系可知,图16中的θ1=θ2=θ3。
清洁机器人的航向角:
Figure BDA0002861510870000111
由于θ1=θ2=θ3,清洁机器人绕圆心运动的角速度w:
Figure BDA0002861510870000112
清洁机器人转向运动的圆弧半径:
Figure BDA0002861510870000121
因此,根据VR、VL、d0和r,能够确定清洁机器人当前的转向轨迹。
步骤S320,将虚拟行进线调整为沿着转向轨迹延伸。
如图15所示地,使虚拟行进线1沿着转向轨迹延伸的延伸方向延伸,并且使每一条虚拟视距线与驱动轮的转向轨迹的切线垂直。
基于前文的描述,本领域技术人员能够理解的是,本实施例的虚拟行进线1和虚拟视距线2能够随着清洁机器人的转向角度而调整,使清洁机器人在转向的过程中也能够通过虚拟行进线1和虚拟视距线2进行绕障作业。
在本公开的第四实施例中:
如图16所示,与第一实施例、第二实施例和/或第三实施例不同的是,本实施例的绕障方法还包括:
步骤S401,障碍物检测。
具体地,在清洁机器人行进的过程中,通过摄像头持续地获取清洁机器人前方的图像,进而持续地识别图像中是否存在障碍物。
步骤S402,前方是否存在移动的障碍物。
具体地,如果检测到图像中存在障碍物,则利用帧差法来确定该障碍物是否为移动的障碍物。如果不是,则执行步骤S403;如果是,则执行步骤S404。
步骤S403,更新路径表。
具体地,每间隔预设时长(例如5秒、7秒、15秒等)或预设距离(例如3cm、5cm、9cm等),和/或在清洁机器人的姿态每次发生变化时都更新清洁机器人的路径表。该路径表用于引导清洁机器人行进。
步骤S404,判断移动的障碍物是否在第一虚拟视距线内。
具体地,可以从当前时刻获取的图像中,确定障碍物是否位于图像的底侧边缘与第一虚拟视距线之间。如果位于,则执行步骤S405,如果没有位于,则执行步骤S406。
步骤S405,障碍物规避,原地转向、停止或后退。
具体地,可以使清洁机器人停止在当前位置,以等待移动的障碍物离开;也可以使清洁机器人后退,以避免清洁机器人与移动的障碍物发生碰撞;还可以使清洁机器人转向之后继续行进,以使清洁机器人绕过移动的障碍物,继续清洁作业。
步骤S406,判断移动的障碍物是否在第二虚拟视距线内。
具体地,可以从当前时刻获取的图像中,确定障碍物是否位于第一虚拟视距线和第二虚拟视线之间。如果位于,则执行步骤S407,如果没有位于,则执行步骤S408。
步骤S407,障碍物规避,行进转向、停止或行进。
具体地,可以使清洁机器人停止在当前位置,以等待移动的障碍物离开;也可以使清洁机器人后退,以避免清洁机器人与移动的障碍物发生碰撞;还可以使清洁机器人转向之后继续行进,以使清洁机器人绕过移动的障碍物,继续清洁作业。
步骤S408,判断移动的障碍物是否在第三虚拟视距线内。
具体地,可以从当前时刻获取的图像中,确定障碍物是否位于第二虚拟视距线和第三虚拟视线之间。如果位于,则执行步骤S409,如果没有位于,则执行步骤S403。
步骤S409,运动评估,停止或行进。
具体地,先对障碍物的移动状态和移动速度进行评估,以确定清洁机器人按照当前的行走方向和行驶速度是否会与移动的障碍物发生碰撞,如果不会发生碰撞,则使清洁机器人继续行进,如果会发生碰撞,则使清洁机器人停止行进。
基于前文的描述,本领域技术人员能够理解的是,本实施例的绕障方法还可以对移动的障碍物进行识别,并对移动的障碍物进行评估,以便在移动的障碍物影响清洁机器人行进时,调整清洁机器人的行进策略,以防止清洁机器人与移动的障碍物发生碰撞,同时还能够在移动的障碍物离开之后,继续对相应区域进行清洁。因此,本实施例的绕障方法也能够使清洁机器人对移动障碍物停留的区域进行清洁。
在本公开的第五实施例中:
如图18所示,本公开还提供了一种清洁机器人。该清洁机器人在硬件层面上包括处理器,可选地还包括存储器和总线,此外该清洁机器人还允许包括其它业务所需要的硬件。
其中,存储器用于存放执行指令,该执行指令具体是能够被执行的计算机程序。进一步,存储器可以包括内存和非易失性存储器(non-volatile memory),并向处理器提供执行指令和数据。示例性地,内存可以是高速随机存取存储器(Random-Access Memory,RAM),非易失性存储器可以是至少1个磁盘存储器。
其中,总线用于将处理器、存储器和网络接口相互连接到一起。该总线可以是ISA(Industry Standard Architecture,工业标准体系结构)总线、PCI(PeripheralComponent Interconnect,外设部件互连标准)总线、EISA(ExtendedIndustryStandardArchitecture,扩展工业标准结构)总线等。所述总线可以分为地址总线、数据总线、控制总线等。为了便于表示,图18中仅用一个双向箭头表示,但这并不表示仅有一根总线或一种类型的总线。
在上述清洁机器人的一种可行的实施方式中,处理器可以先从非易失性存储器中读取对应的执行指令到内存中再运行,也可以先从其它设备上获取相应的执行指令再运行。处理器在执行存储器所存放的执行指令时,能够实现本公开上述任意一个绕障方法实施例中的绕障方法。
本领域技术人员能够理解的是,上述的绕障方法可以应用于处理器中,也可以借助处理器来实现。示例性地,处理器是一种集成电路芯片,具有处理信号的能力。在处理器执行上述绕障方法的过程中,上述绕障方法的各步骤可以通过处理器中硬件形式的集成逻辑电路或软件形式的指令完成。进一步,上述处理器可以是通用处理器,例如中央处理器(Central Processing Unit,CPU)、网络处理器(NetworkProcessor,NP)、数字信号处理器(Digital SignalProcessor,DSP)、专用集成电路(Application Specific IntegratedCircuit,ASIC)、现场可编程门阵列(Field-Programmable GateArray,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件、微处理器以及其它任何常规的处理器。
本领域技术人员还能够理解的是,本公开上述绕障方法实施例的步骤可以被硬件译码处理器执行完成,也可以被译码处理器中的硬件和软件模块组合执行完成。其中,软件模块可以位于随机存储器、闪存、只读存储器、可编程只读存储器、电可擦写可编程存储器、寄存器等其它本领域成熟的存储介质中。该存储介质位于存储器中,处理器读取存储器中的信息之后结合其硬件完成上述绕障方法实施例中步骤的执行。
至此,已经参照附图并结合上述实施例完成了对本公开技术方案的描述。
需要说明的是,为了突出本公开上述多个实施例彼此之间的不同之处,本公开上述的多个实施例之间是以并列的方式和/或递进的方式来进行布局和描述的,并且后面的实施例仅重点说明了其与其它实施例之间的不同之处,各个实施例之间相同或相似的部分可以互相参照。举例说明,对于装置/产品实施例而言,由于装置/产品实施例与方法实施例基本相似,所以描述的相对比较简单,相关之处参见方法实施例对应部分的说明即可。
以上所述仅为本公开的实施例而已,并不用于限制本公开。对于本领域技术人员来说,本公开可以有各种更改和变化。凡在本公开技术原理之内所作的任何修改、等同替换、改进等,均应落入本公开的保护范围之内。

Claims (10)

1.一种清洁机器人的绕障方法,所述清洁机器人上设置有摄像头,其特征在于,所述绕障方法包括:
通过所述摄像头获取所述清洁机器人前方的图像;
在所述图像上生成虚拟行进线和虚拟视距线,所述图像上的虚拟行进线与实际环境中所述清洁机器人的左右边缘向前延伸而成的虚拟线条相对应,所述图像中的虚拟视距线与实际环境中所述清洁机器人前方预设安全距离处的虚拟线条相对应;
以所述图像中障碍物位于所述虚拟行进线和所述虚拟视距线的远离所述清洁机器人的一侧为约束条件,控制所述清洁机器人对所述障碍物进行绕障行走。
2.根据权利要求1所述的绕障方法,其特征在于,所述以所述图像中障碍物位于所述虚拟行进线和所述虚拟视距线的远离所述清洁机器人的一侧为约束条件,控制所述清洁机器人对所述障碍物进行绕障行走,包括:
在所述图像中障碍物与所述虚拟视距线接触时,以所述图像中所述障碍物与所述虚拟行进线相切为约束条件,控制所述清洁机器人对所述障碍物进行绕障行走。
3.根据权利要求1所述的绕障方法,其特征在于,所述以所述图像中障碍物位于所述虚拟行进线和所述虚拟视距线的远离所述清洁机器人的一侧为约束条件,控制所述清洁机器人对所述障碍物进行绕障行走,包括:
在所述图像中障碍物与所述虚拟视距线接触时,根据所述图像确定所述障碍物的宽度以及长度估计值;
根据所述障碍物的长度估计值确定所述清洁机器人的绕障终点,所述绕障终点与所述清洁机器人的当前位置分别位于所述障碍物相反的两侧;
根据所述当前位置以及所述绕障终点规划绕障路径;
使所述清洁机器人沿着所述绕障路径行走,并在所述虚拟视距线和/或所述虚拟行进线接触到所述障碍物时,根据行进过程中获取的图像更新所述绕障终点,并根据更新后的绕障终点调整后续的绕障路径。
4.根据权利要求3所述的绕障方法,其特征在于,所述根据所述当前位置以及所述绕障终点规划绕障路径,包括:
确定所述当前位置与所述绕障终点之间的距离,将直径为所述距离并且将所述当前位置和所述绕障终点连接到一起的圆弧作为所述绕障路径。
5.根据权利要求3所述的绕障方法,其特征在于,所述根据所述当前位置以及所述绕障终点规划绕障路径,包括:
将所述当前位置与所述绕障终点之间的连线作为第一轴;
根据所述障碍物的宽度和所述清洁机器人的尺寸,确定与所述第一轴垂直的第二轴;
将长轴和短轴分别为所述第一轴和所述第二轴,且将所述当前位置和所述绕障终点连接到一起的椭圆弧,作为所述绕障路径。
6.根据权利要求3所述的绕障方法,其特征在于,所述根据所述当前位置以及所述绕障终点规划绕障路径,包括:
确定所述当前位置与所述绕障终点之间的多个中间点,所述中间点位于所述障碍物的外侧;
将依次连接所述当前位置、所述中间点、所述绕障终点的线作为所述绕障路径。
7.根据权利要求1-6中任一项所述的绕障方法,其特征在于,所述在所述图像上生成虚拟行进线和虚拟视距线,包括:
根据预先确定的虚拟行进线和虚拟视距线映射至所述摄像头所拍摄的标定图像中的位置,将所述虚拟行进线和所述虚拟视距线添加到所述图像上。
8.根据权利要求7所述的绕障方法,其特征在于,所述绕障方法还包括:
通过所述摄像头获取标定对象的标定图像;所述标定对象上具有用于代表所述虚拟行进线的第一线条和用于代表所述虚拟视距线的第二线条;
确定所述第一线条和所述第二线条在所述标定图像中的位置。
9.根据权利要求1-6中任一项所述的绕障方法,其特征在于,所述绕障方法还包括:
响应于所述清洁机器人转弯,确定所述清洁机器人的转向轨迹;
使所述虚拟行进线调整为沿着所述转向轨迹延伸。
10.一种清洁机器人,其特征在于,所述清洁机器人包括处理器、存储器和存储在所述存储器上的执行指令,所述执行指令设置成在被所述处理器执行时能够使所述清洁机器人执行权利要求1至9中任一项所述的绕障方法。
CN202011567845.0A 2020-12-25 2020-12-25 清洁机器人及其绕障方法 Pending CN114690755A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011567845.0A CN114690755A (zh) 2020-12-25 2020-12-25 清洁机器人及其绕障方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011567845.0A CN114690755A (zh) 2020-12-25 2020-12-25 清洁机器人及其绕障方法

Publications (1)

Publication Number Publication Date
CN114690755A true CN114690755A (zh) 2022-07-01

Family

ID=82129729

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011567845.0A Pending CN114690755A (zh) 2020-12-25 2020-12-25 清洁机器人及其绕障方法

Country Status (1)

Country Link
CN (1) CN114690755A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115185286A (zh) * 2022-09-13 2022-10-14 上海仙工智能科技有限公司 一种移动机器人自主绕障规划方法及其任务调度***

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115185286A (zh) * 2022-09-13 2022-10-14 上海仙工智能科技有限公司 一种移动机器人自主绕障规划方法及其任务调度***
CN115185286B (zh) * 2022-09-13 2022-12-27 上海仙工智能科技有限公司 一种移动机器人自主绕障规划方法及其任务调度***

Similar Documents

Publication Publication Date Title
CN113267199B (zh) 行驶轨迹规划方法及装置
JP5862670B2 (ja) 走行支援装置および走行支援方法
Barth et al. Tracking oncoming and turning vehicles at intersections
CN112363513B (zh) 一种基于深度信息的障碍物分类避障控制方法
US11347227B2 (en) Autonomous mobile apparatus
JP2004048295A (ja) 画像処理装置、駐車支援装置、及び画像処理方法
CN111665852B (zh) 一种障碍物避让方法、装置、车辆及存储介质
CN113320526B (zh) 自主泊车的方法、装置和设备、计算机可读存储介质
CN112327878A (zh) 一种基于tof摄像头的障碍物分类避障控制方法
JP4670807B2 (ja) 移動経路作成方法、自律移動体および自律移動体制御システム
JP6139465B2 (ja) 物体検出装置、運転支援装置、物体検出方法、および物体検出プログラム
US11712802B2 (en) Construction constrained motion primitives from robot maps
JP2020083140A (ja) 駐車支援装置
JP2020067698A (ja) 区画線検出装置及び区画線検出方法
JP6825715B2 (ja) 移動車両
CN114690755A (zh) 清洁机器人及其绕障方法
JP4843880B2 (ja) 走行路環境検出装置
CN114779777A (zh) 自移动机器人的传感器控制方法、装置、介质及机器人
CN112308033B (zh) 一种基于深度数据的障碍物碰撞警告方法及视觉芯片
CN117227714A (zh) 一种自动驾驶车辆转弯避让控制方法及***
WO2022134863A1 (zh) 防撞方法、移动机器及存储介质
CN114489050A (zh) 沿直线行驶的避障路线控制方法、装置、设备及存储介质
US11285946B2 (en) Moving object detector, vehicle control system, method for detecting moving object, and method for controlling vehicle
JP2021076968A (ja) 自律走行体
CN114074657B (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