CN110522359B - 清洁机器人以及清洁机器人的控制方法 - Google Patents
清洁机器人以及清洁机器人的控制方法 Download PDFInfo
- Publication number
- CN110522359B CN110522359B CN201910831571.2A CN201910831571A CN110522359B CN 110522359 B CN110522359 B CN 110522359B CN 201910831571 A CN201910831571 A CN 201910831571A CN 110522359 B CN110522359 B CN 110522359B
- Authority
- CN
- China
- Prior art keywords
- obstacle
- boundary
- cleaning robot
- distance
- boundaries
- 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.)
- Active
Links
Images
Classifications
-
- A—HUMAN NECESSITIES
- A47—FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
- A47L—DOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
- A47L11/00—Machines for cleaning floors, carpets, furniture, walls, or wall coverings
- A47L11/24—Floor-sweeping machines, motor-driven
-
- A—HUMAN NECESSITIES
- A47—FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
- A47L—DOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
- A47L11/00—Machines for cleaning floors, carpets, furniture, walls, or wall coverings
- A47L11/40—Parts or details of machines not provided for in groups A47L11/02 - A47L11/38, or not restricted to one of these groups, e.g. handles, arrangements of switches, skirts, buffers, levers
-
- A—HUMAN NECESSITIES
- A47—FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
- A47L—DOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
- A47L11/00—Machines for cleaning floors, carpets, furniture, walls, or wall coverings
- A47L11/40—Parts or details of machines not provided for in groups A47L11/02 - A47L11/38, or not restricted to one of these groups, e.g. handles, arrangements of switches, skirts, buffers, levers
- A47L11/4002—Installations of electric equipment
-
- A—HUMAN NECESSITIES
- A47—FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
- A47L—DOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
- A47L11/00—Machines for cleaning floors, carpets, furniture, walls, or wall coverings
- A47L11/40—Parts or details of machines not provided for in groups A47L11/02 - A47L11/38, or not restricted to one of these groups, e.g. handles, arrangements of switches, skirts, buffers, levers
- A47L11/4011—Regulation of the cleaning machine by electric means; Control systems and remote control systems therefor
-
- A—HUMAN NECESSITIES
- A47—FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
- A47L—DOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
- A47L11/00—Machines for cleaning floors, carpets, furniture, walls, or wall coverings
- A47L11/40—Parts or details of machines not provided for in groups A47L11/02 - A47L11/38, or not restricted to one of these groups, e.g. handles, arrangements of switches, skirts, buffers, levers
- A47L11/4061—Steering means; Means for avoiding obstacles; Details related to the place where the driver is accommodated
-
- A—HUMAN NECESSITIES
- A47—FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
- A47L—DOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
- A47L2201/00—Robotic cleaning machines, i.e. with automatic control of the travelling movement or the cleaning operation
- A47L2201/04—Automatic control of the travelling movement; Automatic obstacle detection
-
- A—HUMAN NECESSITIES
- A47—FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
- A47L—DOMESTIC WASHING OR CLEANING; SUCTION CLEANERS IN GENERAL
- A47L2201/00—Robotic cleaning machines, i.e. with automatic control of the travelling movement or the cleaning operation
- A47L2201/06—Control of the cleaning action for autonomous devices; Automatic detection of the surface condition before, during or after cleaning
Landscapes
- Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
- Electric Vacuum Cleaner (AREA)
Abstract
本申请提供了清洁机器人以及清洁机器人的控制方法,该方法包括:采集障碍物的多个视角的图像;根据多个视角的图像识别障碍物的类型;分别确定多个视角中各个视角的图像对应的所述障碍物的第一障碍物边界;根据障碍物的类型和各个所述第一障碍物边界,获得障碍物的第二障碍物边界;根据标记有第二障碍物边界的地图,控制所述清洁机器人。实施本申请有利于提高清洁机器人所建立地图中的障碍物边界的可信度,针对不同障碍物提高清扫覆盖率,同时降低清扫风险。
Description
技术领域
本申请涉及智能机器人领域,尤其涉及清洁机器人以及清洁机器人的控制方法。
背景技术
现代生活中,清洁机器人逐渐应用和普及。在清洁机器人的清扫过程中,会遇到各种障碍物,如墙壁、桌椅、花瓶等。现有的障碍物处理方案主要是通过红外,激光或超声波等检测传感器检测前方的障碍物。有的方案中是在前部安装一套接触传感器,如开关或电容传感等,来检测清洁机器人与障碍物的触碰。现有技术中,清洁机器人在运动过程中,对环境进行拍摄,通过自身的SLAM系统构建包含环境中障碍物的障碍物边界的地图并以此导航,进行有序的清扫规划。现有技术所构建的地图中的障碍物边界通常可信度不高。
发明内容
本申请实施例提供了清洁机器人以及清洁机器人的控制方法,既可提高清洁机器人所建立地图中的障碍物边界的可信度,又可针对不同障碍物提高清扫覆盖率,同时降低清扫风险。
第一方面,本申请实施例提供了一种清洁机器人的控制方法,该方法包括:获取障碍物的多个视角的图像;根据所述多个视角的图像识别所述障碍物的类型;分别确定各个视角的图像对应的所述障碍物的第一障碍物边界;根据所述障碍物的类型和各个所述第一障碍物边界,获得所述障碍物的第二障碍物边界;根据标记有所述第二障碍物边界的地图,控制所述清洁机器人。
可以看到,本申请实施例的清洁机器人在清扫作业过程中,一方面可从不同的视角观察障碍物,以便于通过不同视角的图像获得完整准确的障碍物轮廓(第一障碍物边界);另一方面可根据障碍物的类型,对障碍物轮廓进行进一步改善,以获得第二障碍物边界并标记于地图,也就是说通过本申请技术方案得到的地图中的障碍物边界不但能够体现出完整准确的障碍物轮廓,提高清洁机器人所建立地图中的障碍物边界的可信度,还与障碍物类型息息相关(障碍物类型例如后面所描述的危险类障碍物、非危险类障碍物等等)。从而,清洁机器人能够根据所述地图,为不同的障碍物制定适宜的工作策略(如运动策略、清扫策略等)。这样,既可实现清洁机器人对垃圾的清扫无遗漏,提高清扫覆盖率,又能避免清洁机器人陷入危险状况和对周围环境的物品造成危害,降低风险或负面影响。
基于第一方面,在可能的实施例中,所述根据所述障碍物的类型和各个所述第一障碍物边界,获得所述障碍物的第二障碍物边界,包括:根据所述障碍物的类型,或所述障碍物的类型与所述清洁机器人的运动速度,确定边界膨胀距离;根据各个所述第一障碍物边界和所述边界膨胀距离,获得所述第二障碍物边界。
其中,所述障碍物的类型与边界膨胀距离具有映射关系,不同的障碍物类型可对应不同的边界膨胀距离,边界膨胀距离用于表征障碍物的虚拟边界向外膨胀的程度。所以,清洁机器人可根据障碍物的类型确定对应的边界膨胀距离,进而根据各个视角的第一障碍物边界和对应的边界膨胀距离,获得所述第二障碍物边界,所述第二障碍物边界即为可被标注于清洁机器人所构建的SLAM地图的障碍物边界。
在可能的应用场景中,清洁机器人还可根据一些预设因素对边界膨胀距离进行修正,这些预设因素例如包括清洁机器人的运动速度、图像清晰度等中的至少一个。比如,清洁机器人的运动速度较大时,可适当增大边界膨胀距离,运动速度较小时,可适当减少边界膨胀距离;又比如,图像清晰度较低时,则可适当增加边界膨胀距离,等等。
可以看到,通过本申请实施例得到的地图中的障碍物边界不但能够体现出完整准确的障碍物轮廓,还与障碍物类型所映射的边界膨胀距离息息相关。从而,清洁机器人能够根据所述地图,为不同的障碍物制定更加适合的工作策略(如运动策略、清扫策略等)。提高清扫覆盖率,降低风险或负面影响。
关于所述根据所述障碍物的类型对应的边界膨胀距离和各个所述第一障碍物边界获得所述障碍物的第二障碍物边界,本发明的具体实施例可以有多种实现方式,下面描述其中的两类实现方式。
在一种可能的实现方式,所述根据各个所述第一障碍物边界和所述边界膨胀距离,获得所述第二障碍物边界,包括:根据所述边界膨胀距离分别对各个所述第一障碍物边界进行膨胀处理,获得多个膨胀后的第一障碍物边界;对所述多个膨胀后的第一障碍物边界进行叠加,获得所述第二障碍物边界。
也就是说,由于视角的遮挡关系,在单一时刻,清洁机器人不能检测出完整的障碍物轮廓。本申请实施例中,清洁机器人在移动过程中,在不同的位置、以不同的视角对同一障碍物进行拍摄,获得不同视角的膨胀后的第一障碍物边界。由于视角不同,所以每次获得到的膨胀后的第一障碍物边界也不同。那么,清洁机器人将在相同的地图位置将所述多个膨胀后的第一障碍物边界进行叠加处理,从而获得第二障碍物边界,即获得可添加到地图的完整的障碍物轮廓。
通过上述方式确定的第二障碍物边界,一方面考虑到了多个视角的障碍物边界的差异性,获得各个视角的第一障碍物边界(如栅格化的虚拟边界),所以能够较为准确地反映障碍物的真实完整轮廓,提高地图中的障碍物边界的可信度。清洁机器人可基于障碍物的位置,不断将各个视角的膨胀后的第一障碍物边界标记到地图(如栅格地图),对各个膨胀后的第一障碍物边界进行叠加,获得第二障碍物边界。另一方面,第二障碍物边界是根据边界膨胀距离进行膨胀后得到的,且不同的障碍物类型可具有不同的边界膨胀距离。所以,随着不同视角获得的图像的增加,能够不断修正地图中的第二障碍物边界,从而有助于清扫机器人在针对障碍物的清扫覆盖率与清扫风险之间取得较好的平衡。提高了清洁机器人自动完成清洁作业的效率,提升了清洁机器人的智能化程度和清扫效果。
在一种可能的实现方式,所述根据各个所述第一障碍物边界和所述边界膨胀距离,获得所述第二障碍物边界,包括:对各个所述第一障碍物边界进行叠加,获得叠加后的第一障碍物边界;根据所述边界膨胀距离对所述叠加后的第一障碍物边界进行膨胀处理,获得所述第二障碍物边界。
也就是说,由于视角的遮挡关系,在单一时刻,清洁机器人不能检测出完整的障碍物轮廓。本申请实施例中,清洁机器人在移动过程中,在不同的位置、以不同的视角对同一障碍物进行拍摄,获得不同视角的第一障碍物边界。由于视角不同,所以每次获得到的第一障碍物边界也不同。那么,清洁机器人将在相同的地图位置将所述多个第一障碍物边界进行叠加处理,并对叠加后的障碍物边界根据边界膨胀距离进行膨胀处理,从而获得第二障碍物边界,即获得可添加到地图的完整的障碍物轮廓。
通过上述方式确定的第二障碍物边界,一方面考虑到了多个视角的障碍物边界的差异性,获得各个视角的第一障碍物边界(如栅格化的虚拟边界),所以能够较为准确地反映障碍物的真实完整轮廓,提高地图中的障碍物边界的可信度。清洁机器人可基于障碍物的位置,不断将各个视角的第一障碍物边界标记到地图(如栅格地图)后,并进行叠加,并对叠加后的障碍物边界根据边界膨胀距离进行膨胀处理,从而获得第二障碍物边界。另一方面,第二障碍物边界是根据边界膨胀距离进行膨胀后得到的,且不同的障碍物类型可具有不同的边界膨胀距离。所以,随着不同视角获得的图像的增加,能够不断修正地图中的第二障碍物边界,从而有助于清扫机器人在针对障碍物的清扫覆盖率与清扫风险之间取得较好的平衡。提高了清洁机器人自动完成清洁作业的效率,提升了清洁机器人的智能化程度和清扫效果。
基于第一方面,在可能的实施例中,可通过以下方式采集所述障碍物的多个视角的图像:当所述清洁机器人执行预先规划的全局运动路径,经过所述障碍物附近的多个位置时,在所述多个位置中的每个位置处对所述障碍物进行图像采集,获得所述障碍物的多个位置处对应的多个视角的图像。
也就是说,当清洁机器人执行预先规划的全局运动路径(例如弓形运动路径、螺旋形运动路径等)时,可在不同的时间、不同的位置经过障碍物附近,即可获得与前次拍摄不同的拍摄视角,从而实现以迭代的方式不断获得不同的视角的膨胀后的第一障碍物边界添加到地图。
可以看到,实施本实施例能够在不影响清洁机器人原有的运动路径的情况下,不断地获得障碍物的各个角度的图像,有利于实现对地图中的障碍物边界(第二障碍物边界)的不断修正,使得基于该地图确定运动策略/清扫策略能够在针对障碍物的清扫覆盖率与清扫风险之间取得更好的平衡。
基于第一方面,在可能的实施例中,可通过以下方式采集所述障碍物的多个视角的图像:当所述清洁机器人执行预先规划的全局运动路径遇到所述障碍物,并调整运动方向运动到所述障碍物附近的多个位置时,在多个位置中的每个位置处,根据多个位置对应的多个视角对所述障碍物进行图像采集,获得所述障碍物的多个视角的图像。
举例来说,清洁机器人在沿预先规划的运动路径运动过程中,在前进方向上检测到障碍物时,当距该障碍物的距离小于等于一定值,可在地图中标定清洁机器人的当前位置为临时中断点。然后,确定针对障碍物的运动路径,调整运动方向,运动到该障碍物附近不同的位置并朝向障碍物进行拍摄,可以理解的,通过上述操作,即可获得针对障碍物不同位置、视角的图像,示例性地,清洁机器人可获得从障碍物的前方、后方、左方、右方视角拍摄的图像,并将这些图像对应的障碍物边界(第一障碍物边界或者膨胀后的障碍物边界)添加到地图。在完成沿针对障碍物的运动路径的运动后,清洁机器人即可回到原先标定的临时中断点位置,继续控制清洁机器人沿原先预设的运动路径执行之前中断的动作。
可以看到,实施本实施例,清洁机器人能够遇到障碍物时,临时改变运动路径,对障碍物的各个角度的图像进行拍摄,有利于从而一次性地实现对地图中的障碍物边界(第二障碍物边界)进行修正,提高地图更新效率,使得基于该地图确定运动策略/清扫策略能够在针对障碍物的清扫覆盖率与清扫风险之间取得更好的平衡。
基于第一方面,在可能的实施例中,所述控制器将所述障碍物的类型识别为以下至少一种:危险类障碍物;非危险类障碍物。
相应的,当所述障碍物的类型表示危险类障碍物时,所述边界膨胀距离为第一边界膨胀距离;相应的,所述根据各个所述第一障碍物边界和所述边界膨胀距离,获得所述第二障碍物边界包括:根据各个所述第一障碍物边界和所述第一边界膨胀距离,获得所述第二障碍物边界;
当所述障碍物的类型表示非危险类障碍物时,所述边界膨胀距离为第二边界膨胀距离;相应的,所述根据各个所述第一障碍物边界和所述边界膨胀距离,获得所述第二障碍物边界包括:根据各个所述第一障碍物边界和所述第二边界膨胀距离,获得所述第二障碍物边界;其中,所述第一边界膨胀距离大于所述第二边界膨胀距离。
这种情况下,所述根据标记有所述第二障碍物边界的地图,控制所述清洁机器人的运动包括以下至少一种:当所述障碍物的类型表示危险类障碍物时,控制所述清洁机器人不靠近所述障碍物;当所述障碍物的类型表示非危险类障碍物时,控制所述清洁机器人靠近或接触所述障碍物。
由于危险类障碍物的边界膨胀程度大于非危险类障碍物的边界膨胀程度,基于这样的有区别的边界膨胀程度而成的地图既可实现清洁机器人对垃圾的清扫无遗漏,提高清扫覆盖率,又能避免清洁机器人陷入危险状况和对周围环境的物品造成危害,降低风险或负面影响。从而,提高了清洁机器人自动完成清洁作业的效率,提升了清洁机器人的智能化程度和清扫效果。
基于第一方面,在可能的实施例中,所述危险类障碍物包括以下至少一种:
低危险类障碍物;高危险类障碍物。
相应的,当所述障碍物的类型表示低危险类障碍物时,所述边界膨胀距离为第三边界膨胀距离;相应的,所述根据各个所述第一障碍物边界和所述边界膨胀距离,获得所述第二障碍物边界包括:根据各个所述第一障碍物边界和所述第三边界膨胀距离,获得所述第二障碍物边界;
当所述障碍物的类型表示高危险类障碍物时,所述边界膨胀距离为第四边界膨胀距离;相应的,所述根据各个所述第一障碍物边界和所述边界膨胀距离,获得所述第二障碍物边界包括:根据各个所述第一障碍物边界和所述第四边界膨胀距离,获得所述第二障碍物边界;
其中,所述第四边界膨胀距离大于所述第三边界膨胀距离。
由于高危险类障碍物的边界膨胀程度大于低危险类障碍物的边界膨胀程度,基于这样的有区别的边界膨胀程度而成的地图能够在针对障碍物的清扫覆盖率与清扫风险之间取得较好的平衡。
第二方面,本申请实施例提供了一种清洁机器人,所述清洁机器人包括机身主体以及与所述机身主体连接的清扫装置,其中所述机身主体包括控制器和图像采集装置。其中,图像采集装置,用于采集障碍物的多个视角的图像;控制器,用于根据所述多个视角的图像识别所述障碍物的类型;分别确定所述多个视角中各个视角的图像对应的所述障碍物的第一障碍物边界;根据所述障碍物的类型和各个所述第一障碍物边界,获得所述障碍物的第二障碍物边界;所述控制器还用于,根据标记有所述第二障碍物边界的地图,控制所述清洁机器人。
所述清洁机器人的各个部件具体可用于实现第一方面所描述的方法。
第三方面,本申请实施例提供了一种清洁机器人,包括图像获取模块、图像识别模块、障碍物边界处理模块、地图处理模块(也可称为SLAM模块或SLAM系统)、控制指令模块,所述清洁机器人的各个功能模块具体可用于实现第一方面所描述的方法。
第四方面,本申请实施例提供了一种非易失性存储介质,用于存储程序指令,当该程序指令应用于清洁机器人时,可用于实现第一方面所描述的方法。
第五方面,本申请实施例提供了一种计算机程序产品;该计算机程序产品包括程序指令,当该计算机程序产品被清洁机器人执行时,该清洁机器人执行前述第一方面所述方法。该计算机程序产品可以为一个软件安装包,在需要使用前述第一方面的任一种可能的设计提供的方法的情况下,可以下载该计算机程序产品并在清洁机器人上执行该计算机程序产品,以实现第一方面所述方法。
可以看到,本申请实施例的清洁机器人在清扫作业过程中,一方面可从不同的视角观察障碍物,以便于获得完整准确的障碍物轮廓;另一方面可根据障碍物的类型,对障碍物轮廓进行膨胀得到可标记于地图的障碍物边界,提高清洁机器人所建立地图中的障碍物边界的可信度。从而,清洁机器人能够根据所述地图,为不同的障碍物制定适宜的工作策略(如运动策略、清扫策略等)。这样,既可实现清洁机器人对垃圾的清扫无遗漏,提高清扫覆盖率,又能避免清洁机器人陷入危险状况和对周围环境的物品造成危害,降低风险或负面影响。从而,提高了清洁机器人自动完成清洁作业的效率,提升了清洁机器人的智能化程度和清扫效果。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1A为本申请实施例示例性提供的清洁机器人的俯视示意图;
图1B为本申请实施例示例性提供的清洁机器人的仰视示意图;
图2为本申请实施例示例性提供的清洁机器人的结构示意图;
图3为本申请实施例示例性提供的清洁机器人的控制器功能结构示意图;
图4为本申请实施例提供的一种清洁机器人的控制方法的流程示意图;
图5为本申请实施例提供的又一种清洁机器人的控制方法的流程示意图;
图6为本申请实施例提供的一种场景中障碍物的图像区域和虚拟边界的示意图;
图7为本申请实施例提供的一种场景中障碍物的虚拟边界的示意图;
图8为本申请实施例提供的一种场景中障碍物的栅格化的虚拟边界的示意图;
图9为本申请实施例提供的一种场景中对第一障碍物进行不同程度膨胀处理的示意图;
图10为本申请实施例提供的一种场景中获取障碍物的多个视角图像的示意图;
图11为本申请实施例提供的一种场景中获取障碍物的4个视角的障碍物边界的示意图;
图12为本申请实施例提供的一种场景中对障碍物的多个障碍物边界进行叠加获得第二障碍物边界的示意图;
图13为本申请实施例提供的一些场景中对不同类型的障碍物进行膨胀处理获得第二障碍物边界的示意图;
图14为本申请实施例提供的一种清洁机器人的控制方法的流程示意图;
图15为本申请实施例提供的一种场景中对第一障碍物边界进行不同程度膨胀处理的示意图;
图16为本申请实施例提供的一种场景中获取障碍物的4个视角的膨胀后的第一障碍物边界的示意图;
图17为本申请实施例提供的一种场景中对障碍物的多个障碍物边界进行叠加获得第二障碍物边界的示意图;
图18为本申请实施例提供的一种清洁机器人的控制方法的流程示意图;
图19为本申请实施例提供的一种场景中对障碍物的叠加后的障碍物边界进行栅格化的示意图;
图20为本申请实施例提供的一种场景中对栅格化的障碍物边界进行不同程度膨胀处理获得第二障碍物边界的示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
需要说明的是,在本申请实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
图1A和图1B是本申请的一个实施例提供的一种清洁机器人10的结构示意图,其中图1A示出了该清洁机器人10的俯视图,图1B示出了该清洁机器人10的仰视图。如图1A和图1B所示,该清洁机器人10包括:机身主体101以及与所述机身主体101连接的清扫装置,清扫装置例如可包括一个或多个边扫(如图示中清扫装置包括边扫1021和边扫1022)。可选的实施例中,清扫装置还可包括中扫1041。
清洁机器人10包括轮子装置,如图示中轮子装置包括主动轮1031、主动轮1032和从动轮1033。其中主动轮1031及主动轮1032中一个为左轮子装置,一个为右轮子装置。主动轮1031及主动轮1032分别以对称的方式居中地布置在机器主体101的底部的相对侧。在执行清洁期间执行包括向前运动、向后运动及旋转的运动操作。在一些实施例中,从动轮1033可设置在机器主体101前部。
清洁机器人10还包括位于壳体上的图像采集装置1051,图像采集装置1051例如包括摄像头。
在一具体实现中,图像采集装置1051可以包括深度传感器、RGB图像传感器或结构光图像传感器中的一个或多个。
深度传感器包括:二维摄像头,其捕获待捕获对象的图像;以及红外传感器。而且深度传感器输出二维摄像头捕获的图像和红外传感器获得的距离信息。
RGB传感器可以拍摄RGB图像,RGB图像也称为彩色图像。例如利用RGB传感器对充电桩进行拍摄得到包括充电桩的RGB图像。
结构光图像传感器包括红外线收发模组。例如,红外线收发模组可以测量得到清洁机器人到障碍物的距离。
图像采集装置1051可以进一步包括图形处理器,其根据需要处理捕获的图像。如改变摄像头捕获的图像的尺寸或分辨率。
图像采集装置1051可设置于机身主体的壳体上面的前方位置(即前置摄像装置),用于实现对清洁机器人在前进方向行进中遭遇的障碍物进行拍摄或录像功能,并将图像或视频传输至容纳于壳体中的相关部件,相关部件基于图像或视频实现清洁机器人10的路线规划。其中,容纳于壳体中的相关部件可参考图2实施例的描述,这里不再赘述。
在一些实施例中,除了安装有前置摄像装置之外,还可以在机身主体的后部、底部等其他部位安装摄像装置,用于采集机身主体周边的环境图像,并将采集的环境图像存储于存储器315中。
在一具体实现中,清洁机器人10的壳体可以呈圆形,也可以是其他形状(如方形、椭圆等),这里不做限定。
在一具体实现中,轮子装置可与壳体固定连接,轮子装置用于基于机身主体的相关部件的驱动而进行运动。具体的,可用于前进、后退、调整前进方向等运动以及用于加速、减速、匀速、暂停等运动。举例来说,如图1B所示,主动轮1031和主动轮1032可用于前进或后退,从动轮1033可用于调整前进方向。主动轮1031和主动轮1032还可用于实现加速、减速、匀速、暂停等运动。需要说明的是,本申请对轮子装置设置在壳体下面的具体位置不作限定。
在一具体实现中,边扫可设置于壳体下面的前方位置,用于在清洁机器人10行进中进行垃圾清扫。举例来说,如图1B所示,边扫包括边扫1021和边扫1022,且边扫1021和边扫1022皆相较于壳体前伸出一定的相对距离,以扩大清扫范围和实现本申请实施例所描述的清洁机器人的控制方法。在一实例中,边扫可与壳体进行固定连接,此时,边扫的边缘相对壳体的距离是固定的。在又一实例中,边扫可与壳体进行可伸缩连接,此时,边扫的边缘相对壳体的距离是可以改变的,即可根据处理方式需要而改变清扫距离。
在一具体实现中,中扫1041可设置于壳体底部的位置,用于在清洁机器人10行进中与地面形成干涉,将地面上的垃圾进行清扫和回收。举例来说,如图1B所示,中扫1041可以是以滚轮形进行转动的鼓形转刷,在壳体内部还设置有尘盒(图未示),尘盒与中扫1041接合,用于收集经中扫1041所回收的垃圾。
在一具体实现中,清洁机器人10还包括障碍物检测装置(图未示出)用于对清洁机器人的周侧环境进行检测,从而发现障碍物、墙面、台阶和用于对清洁机器人进行充电的充电桩等环境物体。障碍物检测装置还用于向控制器提供清洁机器人的各种位置信息和运动状态信息。障碍物检测装置可包括悬崖传感器、超声传感器、红外传感器、磁力计、三轴加速度计、陀螺仪、里程计、LDS、超声波传感器、摄像头、霍尔传感器等。本实施例对障碍物检测装置的个数及所在位置不作限定。
在一具体实现中,清洁机器人10还包括控制器(图中未示出)。控制器设置在清洁机器人的机体内的电路板上,可以根据障碍物检测装置反馈的周围环境物体的信息和预设的定位算法,绘制清洁机器人所处环境的即时地图。控制器还可以根据图像采集装置1051、悬崖传感器、超声传感器、红外传感器、磁力计、加速度计、陀螺仪、里程计等装置反馈的距离信息和速度信息综合判断清洁机器人当前所处的工作状态。控制器可以被一个或多个应用专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理设备(DSPD)、可编程逻辑器件(PLD)、现场可编程门阵列(FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行本公开实施例中的自主充电方法。
清洁机器人10还包括存储器(图中未示出)。存储器用于存储指令和数据,所述数据包括但不限于:地图数据、控制清洁机器人操作时产生的临时数据,如清洁机器人的位置数据、速度数据等等。控制器可以读取存储器中存储的指令执行相应的功能。存储器可以包括随机存取存储器(Random Access Memory,RAM)和非易失性存储器(Non-VolatileMemory,NVM)。非易失性存储器可以包括硬盘驱动器(Hard Disk Drive,HDD),固态硬盘(Solid State Drives,SSD),硅磁盘驱动器(Silicon disk drive,SDD),只读存储器(Read-Only Memory,ROM),只读光盘(Compact Disc Read-Only Memory,CD-ROM),磁带,软盘,光数据存储设备等。
可以理解的是,在一个或者多个实施例中,清洁机器人还可以包括输入输出单元、位置测量单元、无线通信单元、显示单元等。
需要说明的是,实际应用中,清洁机器人10还可包括其他模块或组件,例如清洁机器人10还包括回充座,用于实现清洁机器人10的自主智能充电等等,本申请实施例不作限定。
参见图2,图2为本申请实施例提供的清洁机器人10的一种具体实现方式的结构框图。如图2所示,清洁机器人10可包括:芯片310、存储器315(一个或多个计算机可读存储介质)、外围系统317。这些部件可在一个或多个通信总线314上通信。
外围系统317主要用于实现SLAM终端300和用户/外部环境之间的交互功能,具体实现中,外围系统317可包括:运动管理模块318、摄像头管理模块319、清扫管理模块320以及传感器管理模块321中的若干个部件。其中,各个管理模块可与各自对应的外围设备如轮子装置323、摄像头324、清扫装置325以及障碍物检测装置326等耦合。所述运动管理模块318、所述清扫管理模块320、所述轮子装置323。其中:
在一些实施例中,轮子装置323可进一步包括主动轮和从动轮,主动轮和从动轮的功能可参考上文的描述。
在一些实施例中,摄像头324包括但不限于单目摄像头、双目摄像头、深度摄像头中的至少一种。
在一些实施例中,清扫装置325可进一步包括边扫和中扫,边扫和中扫的功能可参考上文的描述。
在一些实施例中,障碍物检测装置326的描述可参考上文描述。
需要说明的,外围系统317还可以包括其他I/O外设,这里不做限定。
芯片310可集成包括:一个或多个控制器311(或称处理器)、时钟模块312以及可能的电源管理模块313。集成于芯片310中的时钟模块312主要用于为控制器311产生数据传输和时序控制所需要的时钟。集成于基带芯片310中的电源管理模块313主要用于为控制器311以及外围系统提供稳定的、高精确度的电压。
存储器315与控制器311的描述可参考上述实施例的描述。
存储器315与控制器311耦合,用于存储各种数据(如图像数据、地图数据、障碍物的类型、运动模式数据、清扫模式数据,等等)、各种软件程序和/或多组程序指令、存储清洁机器人10的行进区域的地图。具体实现中,存储器315可包括高速随机存取的存储器,并且也可包括非易失性存储器,例如一个或多个磁盘存储设备、闪存设备或其他非易失性固态存储设备。存储器315还可以存储一个或多个应用程序,如SLAM系统程序、深度学习图像算法等。控制器311包括,但不限于:中央处理器、单片机、数字信号处理器、微处理器等。
一些实施例中,所述地图包括全局位置图、行进区域中各个房间的位置、测量物的位置信息、测量物的类型等等。在清洁机器人10的行进过程中,基于各种传感器感测到的数据,更新所述地图中的数据。
应当理解,具体应用场景中,清洁机器人10可具有比图2示出的部件更多或更少的部件,可以组合两个或更多个部件,或者可具有部件的不同配置实现。
本申请具体实施例中,所述控制器311可用于控制图像采集装置1051采集图像,还用于调用存储器中的程序指令和数据,以实现下文所描述的清洁机器人的控制方法。比如,图像采集装置1051可用于执行下述步骤201,控制器311可用于执行下述步骤202-步骤205;又比如,图像采集装置1051可用于执行下述步骤401,控制器311可用于执行下述步骤402-步骤408;又比如,图像采集装置1051可用于执行下述步骤501,控制器311可用于执行下述步骤502-步骤508;又比如,图像采集装置1051可用于执行下述步骤601,控制器311可用于执行下述步骤602-步骤608,等等。为了说明书的简洁,这里不赘述。
需要说明的是,清洁机器人中的各单元或组件之间的连接关系不限于图2所示的连接关系,图2所示的只是一种示例说明,不是对清洁机器人的实现的限制。例如,在其他实施例中,可以没有外围系统。
下面进一步描述控制器311的相关功能模块。参见图3,图3是控制器311的一种具体实现方式的结构框图,如图3所示,控制器311进一步包括图像获取模块401、图像识别模块403、障碍物边界处理模块405、地图处理模块407(也可称为SLAM模块或SLAM系统)、控制指令模块409,其中:
图像获取模块401,用于获取通过图像采集装置1051采集的障碍物的多个视角的图像。
图像识别模块403用于,根据所述多个视角的图像识别所述障碍物的类型。
障碍物边界处理模块405,用于分别确定各个视角的图像对应的所述障碍物的第一障碍物边界;根据所述障碍物的类型和各个所述第一障碍物边界,获得所述障碍物的第二障碍物边界。
地图处理模块407,用于基于所述第二障碍物边界生成地图(如三维SLAM地图或栅格地图)。所述地图中存储有障碍物的边界。
控制指令模块409,用于根据地图,生成控制指令来控制所述清洁机器人。具体的,控制指令模块409可将与运动模式和清扫模式相关的指令发送至图2所示的相关驱动装置,例如运动管理模块318和清扫管理模块319,从而通过运动管理模块318进一步驱动该轮子装置323进行运动,通过清扫管理模块319进一步驱动清扫装置325进行清扫。
上述各个模块具体用以实现下文所描述的清洁机器人的控制方法,为了说明书的简洁,这里不赘述。
参见图4,基于上文所描述清洁机器人,下面描述本申请实施例提供的一种清洁机器人的控制方法,该方法以清洁机器人的清扫装置包括边扫为例进行详细说明,该方法包括但不限于以下步骤:
步骤201、清洁机器人采集障碍物的多个视角的图像。
其中,本文中所描述的障碍物为清洁机器人在行进过程中在清洁机器人的图像采集装置1051(如摄像头)的图像采集范围内的任意可能会对清洁机器人的运动造成影响的物体。
具体的,障碍物可以是凸起地面的物体,例如家具、家电、玩具、手提包、瓶装物、动物粪便、墙壁、电线、茶几布帘、门槛、鞋子、垃圾桶等等;障碍物也可以是紧贴地面的物体,例如地面的水渍、粉末堆等等;障碍物可以是从地面凹陷下去的物体,例如楼梯、凹槽等等。
清洁机器人在沿前进方向行进中,通过其自身的摄像头对环境进行拍摄,可以理解的,当清洁机器人前方及周侧有障碍物时,在图像采集装置1051的拍摄范围能拍摄到前方及周侧的障碍物时,图像采集装置1051所拍摄的图像或录像中就会存在障碍物的图像。本申请实施例中,清洁机器人可以通过在不同位置、以不同视角对障碍物进行拍摄,从而获得不同视角的障碍物的图像。
步骤202、清洁机器人根据所述多个视角的图像识别所述障碍物的类型(简称障碍物类型)。
本申请实施例中,障碍物类型表征了障碍物的清扫属性,所述清扫属性用于表征该障碍物是否能够被清扫以及被清扫时的策略。具体实现中,可以先根据图像确定障碍物的物体类型,也就是根据图像识别障碍物具体是什么物体。然后,根据障碍物的物体类型确定障碍物对应的清扫属性。
其中,一可能实施例中,清洁机器人可以预先配置物体类型与清扫属性之间的对应关系(如配置映射表)。又一可能实施例中,清洁机器人可预先配置训练好的机器学习模型(例如神经网络模型),将物体类型输入至该机器学习模型,即可获得该障碍物对应的清扫属性(即障碍物类型)。
举例来说,可将障碍物类型分为以下几种:
危险类障碍物,如花瓶、宠物粪便、水渍、回充座、电线、楼梯等易碎/易损坏的物体或易对清洁机器人造成污染/损害的物体。
非危险类障碍物,如墙壁、家具、窗帘、拖鞋、手提包等较为坚固且不会对清洁机器人造成污染/损害的物体。
需要说明的是,上述障碍物类型仅仅作为示例,实际应用中,对障碍物类型的划分种类可以是多种多样的,用户或者厂商可根据实际的清扫需要进行更多或更少的障碍物类型的预设置。例如,还可对上述障碍物的类型根据规则进一步分类,比如可将危险类障碍物划分为:低危险类障碍物(如水渍、电线等)和高危险类障碍物(如花瓶、宠物粪便、回充座、楼梯等);又比如,还可将危险类障碍物划分为:易妨害扫地机的障碍物(如电线、楼梯等)、易损易坏障碍物(如花瓶、玻璃等)、易对环境或清洁机器人造成污染障碍物(如宠物粪便,地面水渍),等等,本申请对此不做限定。
在具体实施例中,清洁机器人在行进过程中,通过摄像头获得障碍物的图像后,可根据该图像通过预先训练好的深度学习模型(或称深度学习算法)进行识别,从而识别出该障碍物对应的障碍物类型。举例来说,通过深度学习模型识别出当前拍摄的障碍物为花瓶,进而确定该障碍物的类型表示危险类障碍物。
需要说明的是,在其他可能的实施方式中,也可通过其他图像识别算法或传感器方法来识别障碍物的类型。
步骤203、清洁机器人分别确定各个视角的图像对应的所述障碍物的第一障碍物边界。
本申请一具体实施例中,清洁机器人根据所拍摄的障碍物的图像进行特征提取,从而获得障碍物的最外边缘的位置特征,可该位置特征的虚拟边界作为该障碍物的第一障碍物边界。
可以理解的,由于清洁机器人通过各个视角拍摄的图像各有差异,所以根据不同的图像获得的第一障碍物边界也是各有差异的。
在一具体实施例中,清洁机器人获取障碍物检测装置(例如激光雷达,红外传感器等等)探测到的障碍物的边界,结合获取的障碍物检测装置及图像采集装置1051采集的图像,确定障碍物的第一障碍物边界。将其他传感器与图像传感器相结合,更能准确地确定出障碍物的边界,从而提供准确的包含障碍物边界的地图。
需要说明的是,步骤202和步骤203之间没有必然的先后顺序。也就是说,步骤202可能在步骤203之前执行,也可能在步骤203之后执行,步骤202和步骤203还可能同时执行。
步骤204、清洁机器人根据所述障碍物的类型和各个所述第一障碍物边界,获得所述障碍物的第二障碍物边界。
本申请一些实施例中,不同的障碍物类型可对应不同的边界膨胀距离,边界膨胀距离用于表征障碍物的虚拟边界向外膨胀的程度。清洁机器人可根据障碍物的类型确定对应的边界膨胀距离,进而根据各个视角的第一障碍物边界和对应的边界膨胀距离,获得所述第二障碍物边界,所述第二障碍物边界即为可被标注于清洁机器人所构建的SLAM地图的障碍物边界。
例如,当障碍物的类型包括危险类障碍物和非危险类障碍物时,为了降低危险类障碍物的风险,提高非危险类障碍物的清扫覆盖率,可以配置危险类障碍物对应的边界膨胀距离(这里可称为第一边界膨胀距离)大于非危险类障碍物对应的边界膨胀距离(这里可称为第二边界膨胀距离)。
又例如,当危险类障碍物被进一步被细分为低危险类障碍物和高危险类障碍物时,为了降低高危险类障碍物的风险,提高低危险类障碍物的清扫覆盖率,可以配置高危险类障碍物对应的边界膨胀距离(这里可称为第三边界膨胀距离)大于低危险类障碍物对应的边界膨胀距离(这里可称为第四边界膨胀距离)。
需要说明的是,上述实例仅用于解释本申请的技术方案而非限定。
需要说明的是,在可能的应用场景中,清洁机器人还可根据一些预设因素对边界膨胀距离进行修正,这些预设因素例如包括清洁机器人的运动速度、图像清晰度等中的至少一个。比如,清洁机器人的运动速度较大时(如大于某一预设阈值),可适当增大边界膨胀距离,运动速度较小时(如小于又一预设阈值),可适当减少边界膨胀距离;又比如,图像清晰度较低时(如低于预设图像清晰度阈值),则可适当增加边界膨胀距离,等等。
本申请一些实施例中,可通过如下方式实现根据障碍物的多个视角的第一障碍物边界和边界膨胀距离获得障碍物的第二障碍物边界:
在一种实现方式中,清洁机器人在根据障碍物的类型确定边界膨胀距离后,根据边界膨胀距离分别对各个所述第一障碍物边界进行膨胀处理,获得多个膨胀后的第一障碍物边界。然后,利用所述多个膨胀后的第一障碍物边界在同一位置进行叠加处理,获得叠加的障碍物边界,进而根据所述叠加的障碍物边界获得第二障碍物边界。
在又一种实现方式中,清洁机器人在获得多个视角的第一障碍物边界后,先使用所述多个第一障碍物边界进行叠加处理,获得叠加后的第一障碍物边界。然后,清洁机器人根据障碍物的类型对应的边界膨胀距离,对所述叠加后的第一障碍物边界进行膨胀处理,从而获得所述第二障碍物边界。
通过上述方式确定的第二障碍物边界,一方面考虑到了多个视角的障碍物边界的差异性,所以能够较为准确地反映障碍物的真实完整轮廓。另一方面,第二障碍物边界是根据边界膨胀距离进行膨胀后得到的,且不同的障碍物类型可具有不同的边界膨胀距离,这有助于清扫机器人在针对障碍物的清扫覆盖率与清扫风险之间取得较好的平衡。
步骤205、清洁机器人根据标记有所述障碍物的标识以及第二障碍物边界的地图,控制所述清洁机器人进行运动和清扫。
清洁机器人在运动过程中,可根据所述第二障碍物边界,利用自身的SLAM系统,建立用于定位与导航的地图。所述地图可包括三维SLAM地图和二维栅格地图中的一种。
其中,SLAM(Simultaneous Localization and Mapping,中文:同时定位与建图)系统可用于,当清洁机器人在未知环境中从一个未知位置开始移动时,在移动过程中根据位置估计和地图进行自身定位,同时在自身定位的基础上建造增量式地图,从而实现清洁机器人的自主定位和导航。
具体实施例中,清洁机器人可根据该地图中的障碍物的类型制定清扫策略,并根据障碍物的第二障碍物边界制定运动策略,从而,根据运动策略驱动清洁机器人的轮子装置运动,根据清扫策略驱动清洁机器人的清扫装置清扫。
举例来说,如果当前的障碍物的类型表示危险类障碍物,则可根据该地图控制所述清洁机器人不靠近或不清扫所述障碍物,以避免对障碍物清洁机器人造成损害,减低清扫风险;如果所述障碍物的类型为非危险类障碍物,则控制所述清洁机器人靠近或接触所述障碍物并清扫,以提高障碍物的清扫覆盖率。
可以看到,本申请实施例的清洁机器人在清扫作业过程中,一方面可从不同的视角观察障碍物,以便于获得完整准确的障碍物轮廓;另一方面可根据障碍物的类型,对障碍物轮廓进行膨胀得到可标记于地图的障碍物边界。从而,清洁机器人能够根据所述地图,为不同的障碍物制定适宜的工作策略(如运动策略、清扫策略等)。这样,既可实现清洁机器人对垃圾的清扫无遗漏,提高清扫覆盖率,又能避免清洁机器人陷入危险状况和对周围环境的物品造成危害,降低风险或负面影响。从而,提高了清洁机器人自动完成清洁作业的效率,提升了清洁机器人的智能化程度和清扫效果。
参见图5,基于前文描述的清洁机器人,下面进一步描述本申请实施例提供的又一种清洁机器人的控制方法,如图5所示,该方法包括但不限于以下步骤:
步骤401、清洁机器人采集障碍物的图像。
清洁机器人在沿前进方向行进中,通过其自身的摄像头对环境进行拍摄,可以理解的,当清洁机器人的图像采集装置1051(如摄像头)的图像采集范围内有障碍物时,其所拍摄的图像或录像中就会存在障碍物的图像。
步骤402、清洁机器人根据所述图像识别所述障碍物的类型。
具体的,清洁机器人可在获取图像后,在图像上圈出障碍物的大致范围,并根据所圈定的范围识别障碍物的物体类型,进而根据障碍物的物体类型确定障碍物对应的清扫属性(障碍物类型)。
步骤402的详细实施内容可参考前述图4实施例步骤202的相关描述,为了说明书的简洁,这里不再赘述。
步骤403、清洁机器人根据图像确定对应的所述障碍物的栅格化的虚拟边界,所述栅格化的虚拟边界作为所述障碍物的第一障碍物边界。
下面描述一些实施场景中根据图像确定对应的所述障碍物的第一障碍物边界的可能实现方式。
举例来说,在一种针对二维地图(如栅格地图)的实施场景中,清洁机器人通过图像采集装置1051(如RBGD传感器),获得环境中障碍物的颜色图像和深度图像,根据所述颜色图像和深度图像进行特征提取,获得障碍物的三维点云数据,从而根据障碍物的点云数据获得障碍物的最外边缘的位置特征,可将障碍物的最外边缘的位置特征作为该在障碍物的三维空间坐标系(如XYZ坐标系)中虚拟边界,那么,可选取XY坐标轴对应的平面坐标系中的虚拟边界作为障碍物的虚拟边界。考虑到该虚拟边界包括连续的轮廓形态,难以标记于栅格地图,那么,可对该平面坐标系中的虚拟边界进行栅格化处理,得到栅格化的虚拟边界,所述栅格化的虚拟边界即为所述障碍物的第一障碍物边界。
又举例来说,参见图6,图6示出了又一种针对二维地图(如栅格地图)的实施场景。清洁机器人通过图像采集装置1051(如光学摄像头),获得环境中障碍物的颜色图像,然后,清洁机器人可在拍摄的颜色图像中框定障碍物所在的图像区域,并可根据采集到图像时的清洁机器人所在的位置、图像采集装置1051在清洁机器人的安装位置及参数,提取出包含所述障碍物的图像区域映射到三维空间坐标系(如图6中(1)所示)。然后,清洁机器人可对所述图像区域进行细粒度裁剪,使得图像区域的边缘贴合障碍物的实际轮廓,从而将贴合障碍物的实际轮廓的图像区域的边缘作为障碍物在三维空间坐标系(如XYZ坐标系)中的虚拟边界(如图6中(2)所示),那么,可选取两个坐标维度中的虚拟边界作为障碍物的虚拟边界。例如,参见图7,可选取XY坐标轴对应的平面坐标系中的虚拟边界作为障碍物的虚拟边界。考虑到图7所示的虚拟边界包括连续的轮廓形态,难以标记于栅格地图,那么,可对该平面坐标系中的虚拟边界进行栅格化处理,得到栅格化的虚拟边界(如图8所示),所述栅格化的虚拟边界即为所述障碍物的第一障碍物边界。
其中,本申请所描述的栅格地图中,可将障碍物内部区域及障碍物的轮廓区域标记为障碍物区域(如图8所示的灰色区域)。在障碍物区域中,各栅格中所存的数据包括该栅格中存在障碍物的概率值,此概率值可根据清洁机器人中的图像采集装置1051的检测精度而定。
在一种概率值的获取方式中,可根据某一时刻清洁机器人在栅格地图中的位置,标记障碍物在栅格地图中所占据的栅格,计算此时标记的各个栅格中心与清洁机器人的当前位置之前的距离,则栅格的中心与清洁机器人的当前位置之前的距离与栅格中心所在栅格存在障碍物的概率值反相关。即栅格的中心与清洁机器人的当前位置之前的距离越大,则对应的概率值越小。
在又一种概率值的获取方式中,可根据栅格被标记属于障碍物区域的次数来设定概率值。例如,如果对于栅格地图中的某一栅格,被图像采集装置1051采集到了M次,而其中有K次被标记为属于障碍物区域,那么此栅格中存在障碍物的概率值为K/M。
步骤404、清洁机器人根据所述障碍物的类型确定边界膨胀距离,根据所述边界膨胀距离对第一障碍物边界进行膨胀处理,获得膨胀后的第一障碍物边界。
具体的,边界膨胀距离用于表征障碍物的虚拟边界向外膨胀扩充的程度,举例来说,在栅格地图中,边界膨胀距离具体可为障碍物的栅格化的虚拟边界向外膨胀的T个栅格单位,T≥0。
举例来说,参见图9,图9示出了根据边界膨胀距离对第一障碍物边界进行膨胀扩充处理的示意图。其中,图9中的(1)示例性示出了在一应用场景中障碍物对应的障碍物区域(例如非危险障碍物);图9的(2)所示场景中,边界膨胀距离为1栅格单位,则对障碍物区域(例如易损易坏障碍物)中的轮廓区域以1栅格单位向外膨胀扩充后,获得新的障碍物区域,该新的障碍物区域中的边界即为膨胀后的第一障碍物边界。图9的(3)所示场景中,边界膨胀距离为2栅格单位,则对障碍物区域(例如易造成二次污染障碍物)中的轮廓区域以2栅格单位向外膨胀扩充后,获得新的障碍物区域,该新的障碍物区域中的边界即为膨胀后的第一障碍物边界。
需要说明的是,上述示例仅用于解释本申请的技术方案而非限定。
本申请实施例中,不同的障碍物类型可对应不同的边界膨胀距离。在一些实施例中,可在清洁机器人中预先配置障碍物类型与边界膨胀距离的映射表,那么,在确定当前的障碍物的类型后,即可查询该映射表获得对应的边界膨胀距离。在又一些实施例中,可将该障碍物类型输入至预先训练好的机器学习模型,从而获得该障碍物类型对应的边界膨胀距离。此外,在可能的应用场景中,清洁机器人还可根据一些预设因素对边界膨胀距离进行修正,这些预设因素例如包括清洁机器人的运动速度、图像清晰度等中的至少一个。
举例来说,障碍物的类型包括非危险类障碍物、低危险类障碍物和高危险类障碍物时,可以配置高危险类障碍物对应的边界膨胀距离大于低危险类障碍物对应的边界膨胀距离,低危险类障碍物对应的边界膨胀距离大于非危险类障碍物对应的边界膨胀距离。这样,有利于后续针对不同障碍物类型进行不同程度的边界膨胀操作,实现降低高危险类障碍物和低危险类障碍物的清扫风险,提高低危险类障碍物和非危险类障碍物的清扫覆盖率。
步骤405、清洁机器人将膨胀后的第一障碍物边界添加至地图(如栅格地图)。
需要说明的是,在本申请的一些实施例中,可以对步骤404与步骤405的内容和执行顺序进行调整。比如,在步骤403根据图像确定对应的所述障碍物的第一障碍物边界后,也可以先将所述第一障碍物边界添加到地图,然后,根据障碍物的类型确定边界膨胀距离,根据边界膨胀距离对第一障碍物边界进行膨胀处理,获得膨胀后的第一障碍物边界。
步骤406、清洁机器人针对该障碍物,调整清洁机器人的位置和视角。然后,重复执行前述步骤401-步骤405,即对环境进行拍摄,获得障碍物的图像,根据障碍物的图像获得不同的视角的膨胀后的第一障碍物边界添加到地图。
在一些实施方式中,当清洁机器人执行预先规划的全局运动路径(例如弓形运动路径、螺旋形运动路径等)时,可在不同的时间、不同的位置经过障碍物附近,即可获得与前次拍摄不同的拍摄视角,从而实现以迭代的方式不断获得不同的视角的膨胀后的第一障碍物边界添加到地图。
在又一些实施方式,参见图10,清洁机器人在沿预先规划的运动路径运动过程中,在前进方向上检测到障碍物时,清洁机器人对所述障碍物执行上述步骤401-步骤405。在距该障碍物的距离小于等于一定值时,可在地图中标定清洁机器人的当前位置为临时中断点。然后,确定针对障碍物的运动路径,调整运动方向,运动到该障碍物附近不同的位置并朝向障碍物进行拍摄,从而重复执行上述步骤401-步骤405。可以理解的,通过上述操作,即可获得针对障碍物不同位置、视角的膨胀后的第一障碍物边界,示例性地,清洁机器人可获得包括如图11所示的障碍物前方、后方、左方、右方的膨胀后的第一障碍物边界,并将这些障碍物边界添加到地图。在完成沿针对障碍物的运动路径的运动后,清洁机器人即可回到原先标定的临时中断点位置,继续控制清洁机器人沿原先预设的运动路径执行之前中断的动作,其中所述预设的运动路径可以是清洁机器人预先通过SLAM系统进行全局路线规划而得到的。
步骤407、清洁机器人将所述多个膨胀后的第一障碍物边界进行叠加,获得所述第二障碍物边界。
由于视角的遮挡关系,在单一时刻,清洁机器人不能检测出完整的障碍物轮廓。本申请实施例中,清洁机器人在移动过程中,在不同的位置、以不同的视角对同一障碍物进行拍摄,获得不同视角的膨胀后的第一障碍物边界。由于视角不同,所以每次获得到的膨胀后的第一障碍物边界也不同。那么,清洁机器人将在相同的地图位置将所述多个膨胀后的第一障碍物边界进行叠加处理,从而获得第二障碍物边界,即获得完整的障碍物轮廓。
例如,如图12所示,清洁机器人获得包括4个不同的视角的膨胀后的第一障碍物边界后,可对这些障碍物边界对应的障碍物区域进行叠加处理。对栅格地图中的栅格而言,各个障碍物区域重叠的次数越多,表示障碍物的可信度越大,即障碍物区域的栅格存在障碍物的概率值越大,则可根据概率值大于预设阈值的栅格获得新的障碍物区域,新的障碍物区域的边界即为第二障碍物边界,例如,如图12所示的栅格地图中栅格颜色的越深表示存在障碍物的概率值越大,则可设置图示中的正方形区域的边界作为该障碍物的第二障碍物边界。
可以理解的是,本申请实施例中障碍物边界的叠加过程可以是一种不断的迭代修正过程。随着清洁机器人对障碍物的观测次数的增加,第二障碍物边界所对应栅格中的概率值会逐渐收敛,所以,实施本发明实施例有利于通过持续修正获得应用效果较佳的第二障碍物边界。
步骤408、清洁机器人根据基于标记有障碍物的标识以及第二障碍物边界的地图,控制所述清洁机器人进行运动和清扫。
可以理解的,环境中存在多种障碍物时,地图(如栅格地图)可包括多种障碍物的标识以及对应的第二障碍物边界。如图13所示,图13示例性示出了一种栅格地图中的多种障碍物类型分别对应的第二障碍物边界、膨胀扩充程度(如图示中的灰色区域),这些多种障碍物类型如包括常规障碍物、易妨害清洁机器人的障碍物、易造成二次污染障碍物、易损易坏障碍物,等等。可以看到,不同的障碍物类型对应的膨胀扩充程度可以是各有差异的。
在一具体实施例中,清洁机器人可根据栅格地图中标记的各个栅格中存在障碍物的概率值进行运动策略的制定,以及根据障碍物的标识(障碍物类型)进行清扫策略的制定。例如,清洁机器人可将运动模式中的运动路径配置为直线路径、曲线路径、沿墙路径、弓字形路径、螺旋路径中的一种或多种的组合;清洁机器人可将清扫策略可配置为:驱使清扫装置调节该清扫装置相关部件(如边扫、中扫)的清扫速度、清扫高度中的至少一项,以实施对该区域的障碍物的清扫或不清扫。
可以看到,本申请实施例的清洁机器人在清扫作业过程中,一方面可通过不同的视角观察障碍物,获得各个视角的第一障碍物边界(如栅格化的虚拟边界);另一方面可根据障碍物的类型,对各个视角的第一障碍物边界进行膨胀得到膨胀后的第一障碍物边界。清洁机器人可基于障碍物的位置,不断将各个视角的膨胀后的第一障碍物边界标记到地图(如栅格地图),对各个膨胀后的第一障碍物边界进行叠加,获得第二障碍物边界,第二障碍物边界既能够反映真实完整的障碍物轮廓,又能够体现不同障碍物属性的边界膨胀程度。从而,清洁机器人能够根据所述第二障碍物边界,为不同的障碍物制定适宜的工作策略(如运动策略、清扫策略等)。这样,既可实现清洁机器人对垃圾的清扫无遗漏,提高清扫覆盖率,又能避免清洁机器人陷入危险状况和对周围环境的物品造成危害,降低风险或负面影响。从而,提高了清洁机器人自动完成清洁作业的效率,提升了清洁机器人的智能化程度和清扫效果。
参见图14,基于前文描述的清洁机器人,下面进一步描述本申请实施例提供的又一种清洁机器人的控制方法,如图14所示,该方法包括但不限于以下步骤:
步骤501、清洁机器人采集障碍物的图像。具体实施过程可参考图5实施例步骤401的描述,这里不再赘述。
步骤502、清洁机器人根据所述图像识别所述障碍物的类型。具体实施过程可参考图5实施例步骤402的描述,这里不再赘述。
步骤503、清洁机器人根据图像确定对应的所述障碍物的虚拟边界,所述的虚拟边界作为所述障碍物的第一障碍物边界。
下面描述一些实施场景中根据图像确定对应的所述障碍物的第一障碍物边界的可能实现方式。
举例来说,在一种针对三维地图(如三维SLAM地图)的实施场景中,清洁机器人通过图像采集装置1051(如RBGD传感器),获得环境中障碍物的颜色图像和深度图像,根据所述颜色图像和深度图像进行特征提取,获得障碍物的三维点云数据,从而根据障碍物的点云数据获得障碍物的最外边缘的位置特征,可将障碍物的最外边缘的位置特征作为该障碍物的三维虚拟边界,所述三维虚拟边界作为所述障碍物的第一障碍物边界。
又举例来说,在又一种针对三维地图(如三维SLAM地图)的实施场景。清洁机器人通过图像采集装置1051(如光学摄像头),获得环境中障碍物的颜色图像,然后,清洁机器人可在拍摄的颜色图像中框定障碍物所在的图像区域,并可根据采集到图像时的清洁机器人所在的位置、图像采集装置1051在清洁机器人的安装位置及参数,提取出包含所述障碍物的图像区域映射到三维空间坐标系(如图6中(1)所示)。然后,清洁机器人可对所述图像区域进行细粒度裁剪,使得图像区域的边缘贴合障碍物的实际轮廓,从而将贴合障碍物的实际轮廓的图像区域的边缘作为障碍物的三维虚拟边界(如图6中(2)所示),所述三维虚拟边界作为所述障碍物的第一障碍物边界。
又举例来说,如果清洁机器人采用的是二维地图(如栅格地图),那么,通过上述方式获得三维空间坐标系(如XYZ坐标系)中障碍物的三维虚拟边界后,可选取两个坐标维度中的虚拟边界作为障碍物的虚拟边界。例如,如图7所示,可选取XY坐标轴对应的平面坐标系中的虚拟边界作为障碍物的二维虚拟边界,所述二维虚拟边界作为所述障碍物的第一障碍物边界。
步骤504、清洁机器人根据所述障碍物的类型确定边界膨胀距离,根据所述边界膨胀距离对第一障碍物边界进行膨胀处理,获得膨胀后的第一障碍物边界。
边界膨胀距离用于表征障碍物的虚拟边界向外膨胀扩充的程度,举例来说,边界膨胀距离具体可为障碍物的虚拟边界向外膨胀的T个距离单位,T≥0。
举例来说,参见图15,图15示出了根据边界膨胀距离对第一障碍物边界进行膨胀扩充处理的示意图。其中,图15中的(1)所示场景中,边界膨胀距离的值对应到现实环境中的距离为5厘米,则对障碍物区域(例如常规障碍物)中的轮廓区域以该边界膨胀距离向外膨胀扩充后,获得新的障碍物区域,该新的障碍物区域中的边界即为膨胀后的第一障碍物边界。图15中的(2)所示场景中,边界膨胀距离的值对应到现实环境中的距离为10厘米,则对障碍物区域(例如易损易坏障碍物)中的轮廓区域以该边界膨胀距离向外膨胀扩充后,获得新的障碍物区域,该新的障碍物区域中的边界即为膨胀后的第一障碍物边界。图15中的(3)所示场景中,边界膨胀距离的值对应到现实环境中的距离为15厘米,则对障碍物区域(例如易造成二次污染障碍物)中的轮廓区域以该边界膨胀距离向外膨胀扩充后,获得新的障碍物区域,该新的障碍物区域中的边界即为膨胀后的第一障碍物边界。
同理,本申请实施例中,不同的障碍物类型可对应不同的边界膨胀距离。在一些实施例中,可在清洁机器人中预先配置障碍物类型与边界膨胀距离的映射表,那么,在确定当前的障碍物的类型后,即可查询该映射表获得对应的边界膨胀距离。具体内容可参考图5实施例中的步骤404的相关描述,为了说明书的简洁,这里不再赘述。
步骤505、清洁机器人将膨胀后的第一障碍物边界添加至地图(如栅格地图)。
需要说明的是,在本申请的一些实施例中,可以对步骤504与步骤505的内容和执行顺序进行调整。比如,在步骤503根据图像确定对应的所述障碍物的第一障碍物边界后,也可以先将所述第一障碍物边界添加到地图,然后,根据障碍物的类型确定边界膨胀距离,根据边界膨胀距离对第一障碍物边界进行膨胀处理,获得膨胀后的第一障碍物边界。
步骤506、清洁机器人针对该障碍物,调整清洁机器人的位置和视角。然后,重复执行前述步骤501-步骤505,即对环境进行拍摄,获得障碍物的图像,根据障碍物的图像获得不同的视角的膨胀后的第一障碍物边界添加到地图。具体内容可参考图5实施例步骤406的相关描述,这里不再赘述。
步骤507、清洁机器人将所述多个膨胀后的第一障碍物边界进行叠加,获得叠加后的障碍物边界,并对叠加后的障碍物边界进行栅格化处理,获得所述障碍物的第二障碍物边界。
由于视角的遮挡关系,在单一时刻,清洁机器人不能检测出完整的障碍物轮廓。本申请实施例中,清洁机器人在移动过程中,在不同的位置、以不同的视角对同一障碍物进行拍摄,获得不同视角的膨胀后的第一障碍物边界。由于视角不同,所以每次获得到的膨胀后的第一障碍物边界也不同。那么,清洁机器人将在相同的地图位置将所述多个膨胀后的第一障碍物边界进行叠加处理,从而获得叠加后的障碍物边界,即获得完整的障碍物轮廓。
例如,如图16所示,在一种应用场景中,清洁机器人获得包括4个不同的视角的膨胀后的第一障碍物边界后,可对这些障碍物边界对应的障碍物区域进行叠加处理。那么,各个障碍物区域重叠的次数越多,那么多个障碍物区域的重叠部分表示障碍物的可信度越大,即重叠部分存在障碍物的概率值越大,则可根据概率值大于预设阈值的重叠部分获得新的障碍物区域,新的障碍物区域的边界即为叠加后的障碍物边界,例如,对于如图16所示的场景中,多个障碍物区域叠加后,图示中的多个矩形区域叠加次数较多,那么可设置图示中的多个矩形区域的边界作为该障碍物的叠加后的障碍物边界。
在一些实施例中,如果清洁机器人采用的地图为栅格地图,考虑到图17所示的叠加后的障碍物边界包括连续的轮廓形态,难以标记于栅格地图,那么,可对该平面坐标系中的虚拟边界进行栅格化处理,得到栅格化的虚拟边界,所述栅格化的虚拟边界即为所述障碍物的第二障碍物边界。
例如,参见图17,图17为一种实施例中对如图16所示的叠加后的障碍物边界及其包围的障碍物区域(可称为叠加后的障碍物区域)进行栅格化处理的示意图。在该叠加后的障碍物区域中,各栅格中所存的数据包括该栅格中存在障碍物的概率值(例如图示中不同深浅的颜色代表不同的概率值),此概率值可根据清洁机器人中的图像采集装置1051的检测精度而定。比如,清洁机器人在运行过程中,环境中某一障碍物的轮廓被检测到N次,如与障碍物区域对应的某一栅格被A个检测到的障碍物轮廓所包含,那么该栅格中存在障碍物的概率值为A/N。
同理,可以理解的是,本申请实施例中障碍物边界的叠加过程可以是一种不断的迭代修正过程。随着清洁机器人对障碍物的观测次数的增加,障碍物的真实的覆盖范围所对应栅格中的概率值会逐渐收敛,所以,实施本发明实施例有利于通过持续修正获得应用效果较佳的第二障碍物边界。
步骤508、清洁机器人根据基于标记有障碍物的标识以及第二障碍物边界的地图,控制所述清洁机器人进行运动和清扫。具体实施过程可参考图5实施例步骤408的相关描述,为了说明书的简洁,这里不再赘述。
可以看到,本申请实施例的清洁机器人在清扫作业过程中,一方面可通过不同的视角观察障碍物,获得各个视角的第一障碍物边界;另一方面可根据障碍物的类型,对各个视角的第一障碍物边界进行膨胀得到膨胀后的第一障碍物边界。清洁机器人可基于障碍物的位置,不断将各个视角的膨胀后的第一障碍物边界标记到地图(如栅格地图),对各个膨胀后的第一障碍物边界进行叠加以及栅格化,获得第二障碍物边界,第二障碍物边界既能够反映真实完整的障碍物轮廓,又能够体现不同障碍物属性的边界膨胀程度。从而,清洁机器人能够根据所述第二障碍物边界,为不同的障碍物制定适宜的工作策略(如运动策略、清扫策略等)。这样,既可实现清洁机器人对垃圾的清扫无遗漏,提高清扫覆盖率,又能避免清洁机器人陷入危险状况和对周围环境的物品造成危害,降低风险或负面影响。从而,提高了清洁机器人自动完成清洁作业的效率,提升了清洁机器人的智能化程度和清扫效果。
参见图18,基于前文描述的清洁机器人,下面进一步描述本申请实施例提供的又一种清洁机器人的控制方法,如图18所示,该方法包括但不限于以下步骤:
步骤601、清洁机器人采集障碍物的图像。具体实施过程可参考图5实施例步骤401的描述,这里不再赘述。
步骤602、清洁机器人根据所述图像识别所述障碍物的类型。具体实施过程可参考图5实施例步骤402的描述,这里不再赘述。
步骤603、清洁机器人根据图像确定对应的所述障碍物的虚拟边界,所述的虚拟边界作为所述障碍物的第一障碍物边界。具体实施过程可参考图14实施例步骤503的描述,这里不再赘述。
步骤604、清洁机器人将第一障碍物边界添加至地图(如栅格地图)。
步骤605、清洁机器人针对该障碍物,调整清洁机器人的位置和视角。然后,重复执行前述步骤601-步骤605,即对环境进行拍摄,获得障碍物的图像,根据障碍物的图像获得不同的视角的第一障碍物边界添加到地图。具体内容可参考图5实施例步骤406的相关描述,这里不再赘述。
步骤606、清洁机器人将多个第一障碍物边界进行叠加,获得叠加后的障碍物边界,并对叠加后的障碍物边界进行栅格化处理,获得栅格化的障碍物边界。
同理,由于视角的遮挡关系,在单一时刻,清洁机器人不能检测出完整的障碍物轮廓。本申请实施例中,清洁机器人在移动过程中,在不同的位置、以不同的视角对同一障碍物进行拍摄,获得不同视角的第一障碍物边界。由于视角不同,所以每次获得到的第一障碍物边界也不同。那么,清洁机器人将在相同的地图位置将所述多个第一障碍物边界进行叠加处理,从而获得第二障碍物边界,即获得完整的障碍物轮廓。
例如,在一种应用场景中,清洁机器人获得包括4个不同的视角的第一障碍物边界后,可对这些障碍物边界对应的障碍物区域进行叠加处理。那么,各个障碍物区域重叠的次数越多,那么多个障碍物区域的重叠部分表示障碍物的可信度越大,即重叠部分存在障碍物的概率值越大,则可根据概率值大于预设阈值的重叠部分获得新的障碍物区域,新的障碍物区域的边界即为叠加后的障碍物边界,例如,一种叠加后的叠加后的障碍物边界如图19中的(1)所示,多个第一障碍物区域叠加后,图示中的多个矩形区域叠加次数较多,那么可设置图示中的多个矩形区域的边界作为该障碍物的叠加后的障碍物边界。
在一些实施例中,如果清洁机器人采用的地图为栅格地图,那么,可对该平面坐标系中的虚拟边界进行栅格化处理,得到栅格化的虚拟边界,所述栅格化的虚拟边界即为所述障碍物的第二障碍物边界。
例如,如图19中的(2)所示,图19中的(2)表示一种实施例中对如图19中的(1)所示的叠加后的障碍物边界及其包围的障碍物区域(可称为叠加后的障碍物区域)进行栅格化处理的示意图。在该叠加后的障碍物区域中,各栅格中所存的数据包括该栅格中存在障碍物的概率值(例如图示中不同深浅的颜色代表不同的概率值),此概率值可根据清洁机器人中的图像采集装置1051的检测精度而定。比如,清洁机器人在运行过程中,环境中某一障碍物的轮廓被检测到N次,如与障碍物区域对应的某一栅格被B个检测到的障碍物轮廓所包含,那么该栅格中存在障碍物的概率值为B/N。
同理,可以理解的是,本申请实施例中障碍物边界的叠加过程可以是一种不断的迭代修正过程。随着清洁机器人对障碍物的观测次数的增加,障碍物的真实的覆盖范围所对应栅格中的概率值会逐渐收敛,所以,实施本发明实施例有利于通过持续修正获得应用效果较佳的栅格化的障碍物边界。
步骤607、根据障碍物的类型确定边界膨胀距离,根据边界膨胀距离对栅格化的障碍物边界进行膨胀处理,获得第二障碍物边界
边界膨胀距离用于表征障碍物的虚拟边界向外膨胀扩充的程度,举例来说,边界膨胀距离具体可为障碍物的虚拟边界向外膨胀的T个栅格单位,T≥0。
举例来说,参见图20,其中,图20中的(1)示出了未对栅格化的障碍物边界进行膨胀处理的场景,这种场景下,该栅格化的障碍物边界即可视为第二障碍物边界。图20中的(2)所示场景中,边界膨胀距离为1栅格单位,则对障碍物区域(例如易损易坏障碍物)中的轮廓区域以1栅格单位向外膨胀扩充后,获得新的障碍物区域,该新的障碍物区域中的边界即为障碍物的第二障碍物边界。图20的(3)所示场景中,边界膨胀距离为2栅格单位,则对障碍物区域(例如易造成二次污染障碍物)中的轮廓区域以2栅格单位向外膨胀扩充后,获得新的障碍物区域,该新的障碍物区域中的边界即为障碍物的第二障碍物边界。
在上述图20的(2)和(3)所示场景中,对于经膨胀处理而膨胀出来部分的障碍物区域(可称为膨胀区域部分),位于膨胀区域部分的栅格存在障碍物的概率值可根据该栅格为处于膨胀过程中的第几圈栅格而定,相同圈次膨胀出的栅格可设以相同的概率值,概率值的大小可与栅格圈次成负相关关系,即随着膨胀过程中栅格圈次的增加,栅格的概率值可逐渐递减。
需要说明的是,上述示例仅用于解释本申请的技术方案而非限定。
同理,本申请实施例中,不同的障碍物类型可对应不同的边界膨胀距离。在一些实施例中,可在清洁机器人中预先配置障碍物类型与边界膨胀距离的映射表,那么,在确定当前的障碍物的类型后,即可查询该映射表获得对应的边界膨胀距离。具体内容可参考图5实施例中的步骤404的相关描述,为了说明书的简洁,这里不再赘述。
步骤608、根据基于所述第二障碍物边界生成的地图,控制所述清洁机器人。具体实施过程可参考图5实施例步骤408的相关描述,为了说明书的简洁,这里不再赘述。
可以看到,本申请实施例的清洁机器人在清扫作业过程中,一方面可通过不同的视角观察障碍物,获得各个视角的第一障碍物边界并添加到地图(如栅格地图),并对多个第一障碍物边界进行叠加以及栅格化处理;另一方面可根据障碍物的类型,对栅格化处理后的障碍物边界进行膨胀得到第二障碍物边界,第二障碍物边界既能够反映真实完整的障碍物轮廓,又能够体现不同障碍物属性的边界膨胀程度。从而,清洁机器人能够根据所述第二障碍物边界,为不同的障碍物制定适宜的工作策略(如运动策略、清扫策略等)。这样,既可实现清洁机器人对垃圾的清扫无遗漏,提高清扫覆盖率,又能避免清洁机器人陷入危险状况和对周围环境的物品造成危害,降低风险或负面影响。从而,提高了清洁机器人自动完成清洁作业的效率,提升了清洁机器人的智能化程度和清扫效果。
需要说明的是,本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质包括只读存储器(Read-Only Memory,ROM)、随机存储器(Random AccessMemory,RAM)、可编程只读存储器(Programmable Read-only Memory,PROM)、可擦除可编程只读存储器(Erasable Programmable Read Only Memory,EPROM)、一次可编程只读存储器(One-time Programmable Read-Only Memory,OTPROM)、电子抹除式可复写只读存储(Electrically-Erasable Programmable Read-Only Memory,EEPROM)、只读光盘(Compact Disc Read-Only Memory,CD-ROM)或其他光盘存储器、磁盘存储器、磁带存储器、或者能够用于携带或存储数据的计算机可读的任何其他介质。
在上述的实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详细描述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一个设备(可以是个人计算机,服务器,或者网络设备、机器人、单片机、芯片等)等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器、随机存取存储器、磁碟或者光盘等各种可以存储程序代码的介质。
以上对本申请实施例公开的进行了详细介绍,本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
Claims (16)
1.一种清洁机器人,其特征在于,所述清洁机器人包括:
图像采集装置,用于采集障碍物的多个视角的图像;
控制器,用于根据所述多个视角的图像识别所述障碍物的类型;分别确定所述多个视角中各个视角的图像对应的所述障碍物的第一障碍物边界;根据所述障碍物的类型,确定边界膨胀距离;根据预设因素,修正所述边界膨胀距离,其中,所述预设因素包括所述清洁机器人的运动速度和图像清晰度中的至少一个,在所述运动速度大于第一速度阈值时,增大所述边界膨胀距离,在所述运动速度小于第二速度阈值时,减小所述边界膨胀距离,在所述图像清晰度低于清晰度阈值时,增大所述边界膨胀距离;根据各个所述第一障碍物边界和所述边界膨胀距离,获得第二障碍物边界;
所述控制器还用于,根据标记有所述第二障碍物边界的地图,控制所述清洁机器人。
2.根据权利要求1所述的清洁机器人,其特征在于,所述控制器具体用于:
根据所述边界膨胀距离分别对各个所述第一障碍物边界进行膨胀处理,获得多个膨胀后的第一障碍物边界;
对所述多个膨胀后的第一障碍物边界进行叠加,获得所述第二障碍物边界。
3.根据权利要求1所述的清洁机器人,其特征在于,所述控制器具体用于:
对各个所述第一障碍物边界进行叠加,获得叠加后的第一障碍物边界;
根据所述边界膨胀距离对所述叠加后的第一障碍物边界进行膨胀处理,获得所述第二障碍物边界。
4.根据权利要求1-3任一项所述的清洁机器人,其特征在于,所述控制器将所述障碍物的类型识别为以下一种:
危险类障碍物;
非危险类障碍物。
5.根据权利要求4所述的清洁机器人,其特征在于,
当所述障碍物的类型表示危险类障碍物时,所述边界膨胀距离为第一边界膨胀距离;所述控制器具体用于根据各个所述第一障碍物边界和所述第一边界膨胀距离,获得所述第二障碍物边界;
当所述障碍物的类型表示非危险类障碍物时,所述边界膨胀距离为第二边界膨胀距离;所述控制器具体用于根据各个所述第一障碍物边界和所述第二边界膨胀距离,获得所述第二障碍物边界;
其中,所述第一边界膨胀距离大于所述第二边界膨胀距离。
6.根据权利要求1、2、3、5中任一项所述的清洁机器人,其特征在于,所述图像采集装置具体用于通过以下方式采集所述障碍物的多个视角的图像:
当所述清洁机器人执行预先规划的全局运动路径,经过所述障碍物附近的多个位置时,所述图像采集装置具体用于,在所述多个位置中的每个位置处对所述障碍物进行图像采集,获得所述障碍物的多个位置处对应的多个视角的图像。
7.根据权利要求1、2、3、5中任一项所述的清洁机器人,其特征在于,所述图像采集装置具体用于通过以下方式采集所述障碍物的多个视角的图像:
当所述清洁机器人执行预先规划的全局运动路径遇到所述障碍物,并调整运动方向运动到所述障碍物附近的多个位置时,所述图像采集装置具体用于,在多个位置中的每个位置处对所述障碍物进行图像采集,获得所述障碍物的多个位置处对应的多个视角的图像。
8.根据权利要求1、2、3、5中任一项所述的清洁机器人,其特征在于,所述地图包括三维SLAM地图和二维栅格地图中的一种。
9.一种清洁机器人的控制方法,其特征在于,所述方法包括:
采集障碍物的多个视角的图像;
根据所述多个视角的图像识别所述障碍物的类型;
分别确定所述多个视角中各个视角的图像对应的所述障碍物的第一障碍物边界;
根据所述障碍物的类型,确定边界膨胀距离;
根据预设因素,修正所述边界膨胀距离,其中,所述预设因素包括所述清洁机器人的运动速度和图像清晰度中的至少一个,在所述运动速度大于第一速度阈值时,增大所述边界膨胀距离,在所述运动速度小于第二速度阈值时,减小所述边界膨胀距离,在所述图像清晰度低于清晰度阈值时,增大所述边界膨胀距离;
根据各个所述第一障碍物边界和所述边界膨胀距离,获得第二障碍物边界;根据标记有所述第二障碍物边界的地图,控制所述清洁机器人。
10.根据权利要求9所述的方法,其特征在于,所述根据各个所述第一障碍物边界和所述边界膨胀距离,获得所述第二障碍物边界,包括:
根据所述边界膨胀距离分别对各个所述第一障碍物边界进行膨胀处理,获得多个膨胀后的第一障碍物边界;
对所述多个膨胀后的第一障碍物边界进行叠加,获得所述第二障碍物边界。
11.根据权利要求9所述的方法,其特征在于,所述根据各个所述第一障碍物边界和所述边界膨胀距离,获得所述第二障碍物边界,包括:
对各个所述第一障碍物边界进行叠加,获得叠加后的第一障碍物边界;
根据所述边界膨胀距离对所述叠加后的第一障碍物边界进行膨胀处理,获得所述第二障碍物边界。
12.根据权利要求9-11任一项所述的方法,其特征在于,所述控制器将所述障碍物的类型识别为以下一种:
危险类障碍物;
非危险类障碍物。
13.根据权利要求12所述的方法,其特征在于,
当所述障碍物的类型表示危险类障碍物时,所述边界膨胀距离为第一边界膨胀距离;相应的,所述根据各个所述第一障碍物边界和所述边界膨胀距离,获得所述第二障碍物边界包括:根据各个所述第一障碍物边界和所述第一边界膨胀距离,获得所述第二障碍物边界;
当所述障碍物的类型表示非危险类障碍物时,所述边界膨胀距离为第二边界膨胀距离;相应的,所述根据各个所述第一障碍物边界和所述边界膨胀距离,获得所述第二障碍物边界包括:根据各个所述第一障碍物边界和所述第二边界膨胀距离,获得所述第二障碍物边界;
其中,所述第一边界膨胀距离大于所述第二边界膨胀距离。
14.根据权利要求9、10、11、13中任一项所述的方法,其特征在于,所述采集所述障碍物的多个视角的图像,包括:
当所述清洁机器人执行预先规划的全局运动路径,经过所述障碍物附近的多个位置时,在所述多个位置中的每个位置处对所述障碍物进行图像采集,获得所述障碍物的多个位置处对应的多个视角的图像。
15.根据权利要求9、10、11、13中任一项所述的方法 ,其特征在于,所述采集所述障碍物的多个视角的图像,包括:
当所述清洁机器人执行预先规划的全局运动路径遇到所述障碍物,并调整运动方向运动到所述障碍物附近的多个位置时,在多个位置中的每个位置处根据多个位置对应的多个视角对所述障碍物进行图像采集,获得所述障碍物的多个位置处对应的多个视角的图像。
16.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有程序指令,所述程序指令被执行时实现如权利要求9-15中任意一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910831571.2A CN110522359B (zh) | 2019-09-03 | 2019-09-03 | 清洁机器人以及清洁机器人的控制方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910831571.2A CN110522359B (zh) | 2019-09-03 | 2019-09-03 | 清洁机器人以及清洁机器人的控制方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110522359A CN110522359A (zh) | 2019-12-03 |
CN110522359B true CN110522359B (zh) | 2021-09-03 |
Family
ID=68666717
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910831571.2A Active CN110522359B (zh) | 2019-09-03 | 2019-09-03 | 清洁机器人以及清洁机器人的控制方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110522359B (zh) |
Families Citing this family (30)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112568812A (zh) * | 2019-09-29 | 2021-03-30 | 北京石头世纪科技股份有限公司 | 驱动轮模组及自移动机器人 |
CN111179413B (zh) * | 2019-12-19 | 2023-10-31 | 中建科技有限公司深圳分公司 | 三维重建方法、装置、终端设备及可读存储介质 |
CN110850885A (zh) * | 2019-12-20 | 2020-02-28 | 深圳市杉川机器人有限公司 | 自主机器人 |
CN111123932A (zh) * | 2019-12-24 | 2020-05-08 | 深圳乐动机器人有限公司 | 一种机器人清洁的方法及机器人 |
CN111067440A (zh) * | 2019-12-31 | 2020-04-28 | 深圳飞科机器人有限公司 | 一种清洁机器人控制方法以及清洁机器人 |
CN111067439B (zh) * | 2019-12-31 | 2022-03-01 | 深圳飞科机器人有限公司 | 障碍物处理方法以及清洁机器人 |
WO2021136234A1 (zh) * | 2020-01-03 | 2021-07-08 | 苏州宝时得电动工具有限公司 | 自移动设备及其自动移动和工作的方法、及存储介质 |
CN113156928A (zh) * | 2020-01-03 | 2021-07-23 | 苏州宝时得电动工具有限公司 | 自移动设备、终端、服务器自动更新数据模型的方法 |
CN113077413A (zh) * | 2020-01-06 | 2021-07-06 | 苏州宝时得电动工具有限公司 | 自移动设备及其控制方法 |
CN111522346A (zh) * | 2020-05-07 | 2020-08-11 | 国网四川省电力公司电力科学研究院 | 一种基于深度学习的智能避障方法 |
CN111528737A (zh) * | 2020-05-08 | 2020-08-14 | 小狗电器互联网科技(北京)股份有限公司 | 一种扫地机控制方法及装置 |
CN111743463A (zh) * | 2020-06-18 | 2020-10-09 | 小狗电器互联网科技(北京)股份有限公司 | 一种针对目标物的清扫方法、装置、可读介质及电子设备 |
CN111726591B (zh) * | 2020-06-22 | 2021-11-23 | 珠海格力电器股份有限公司 | 地图更新方法、装置、存储介质及电子设备 |
CN112000093B (zh) * | 2020-07-15 | 2021-03-05 | 珊口(深圳)智能科技有限公司 | 移动机器人的控制方法、控制系统及存储介质 |
CN112022002A (zh) * | 2020-08-21 | 2020-12-04 | 苏州三六零机器人科技有限公司 | 扫地机地图编辑方法、装置、设备及存储介质 |
CN112015181B (zh) * | 2020-08-28 | 2021-08-10 | 上海高仙自动化科技发展有限公司 | 一种避障方法、装置、设备及计算机可读存储介质 |
CN112162551B (zh) * | 2020-09-10 | 2021-11-16 | 珠海格力电器股份有限公司 | 障碍物探测方法、装置、设备及计算机可读介质 |
CN114527736B (zh) * | 2020-10-30 | 2023-10-13 | 速感科技(北京)有限公司 | 困境规避方法、自主移动设备和存储介质 |
CN112380942B (zh) * | 2020-11-06 | 2024-08-06 | 北京石头创新科技有限公司 | 一种识别障碍物的方法、装置、介质和电子设备 |
US11882985B2 (en) * | 2020-11-30 | 2024-01-30 | The Boeing Company | Smart industrial vacuum cleaner to reduce foreign object debris |
US11885638B2 (en) * | 2020-12-28 | 2024-01-30 | Bear Robotics, Inc. | Method, system, and non-transitory computer-readable recording medium for generating a map for a robot |
CN112890692A (zh) * | 2021-02-08 | 2021-06-04 | 美智纵横科技有限责任公司 | 设置清洁禁区的方法、装置、清洁设备及存储介质 |
CN113670292B (zh) * | 2021-08-10 | 2023-10-20 | 追觅创新科技(苏州)有限公司 | 地图的绘制方法和装置、扫地机、存储介质、电子装置 |
CN113907663B (zh) * | 2021-09-22 | 2023-06-23 | 追觅创新科技(苏州)有限公司 | 障碍物地图构建方法、清洁机器人及存储介质 |
CN113867349B (zh) * | 2021-09-28 | 2024-04-09 | 浙江大华技术股份有限公司 | 一种机器人的避障方法、系统及智能机器人 |
CN114063613A (zh) * | 2021-10-25 | 2022-02-18 | 浙江小族智能科技有限公司 | 游乐车及其控制方法、装置、存储介质、终端 |
CN114287832A (zh) * | 2021-12-30 | 2022-04-08 | 安徽协创物联网技术有限公司 | 一种扫地机器人系统 |
CN115381335B (zh) * | 2022-04-26 | 2024-01-02 | 深圳市普森斯科技有限公司 | 一种扫地机器人的路径控制方法、装置、设备及存储介质 |
CN114663316B (zh) * | 2022-05-17 | 2022-11-04 | 深圳市普渡科技有限公司 | 确定沿边路径的方法、移动设备及计算机存储介质 |
CN115629612A (zh) * | 2022-12-19 | 2023-01-20 | 科大讯飞股份有限公司 | 一种避障方法、装置、设备及存储介质 |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105231950A (zh) * | 2015-10-08 | 2016-01-13 | 深圳市宝乐机器人技术有限公司 | 一种擦窗机器人及其清扫方式 |
CN106933243A (zh) * | 2015-12-30 | 2017-07-07 | 湖南基石信息技术有限公司 | 一种基于双目视觉的无人机实时避障系统及方法 |
CN107139666A (zh) * | 2017-05-19 | 2017-09-08 | 四川宝天智控系统有限公司 | 越障识别系统及方法 |
CN107305380A (zh) * | 2016-04-20 | 2017-10-31 | 上海慧流云计算科技有限公司 | 一种自动避障方法和装置 |
CN107328419A (zh) * | 2017-06-21 | 2017-11-07 | 上海斐讯数据通信技术有限公司 | 一种清扫机器人的清扫路径的规划方法及清扫机器人 |
CN107752910A (zh) * | 2017-09-08 | 2018-03-06 | 珠海格力电器股份有限公司 | 区域清扫方法、装置、存储介质、处理器及扫地机器人 |
CN108344414A (zh) * | 2017-12-29 | 2018-07-31 | 中兴通讯股份有限公司 | 一种地图构建、导航方法及装置、系统 |
CN109491394A (zh) * | 2018-12-17 | 2019-03-19 | 中新智擎科技有限公司 | 一种虚拟避障方法、装置、存储介质及机器人 |
CN109990782A (zh) * | 2017-12-29 | 2019-07-09 | 北京欣奕华科技有限公司 | 一种避开障碍物的方法及设备 |
CN110083157A (zh) * | 2019-04-28 | 2019-08-02 | 深兰科技(上海)有限公司 | 一种避障方法及装置 |
CN110161510A (zh) * | 2019-06-27 | 2019-08-23 | 北京智行者科技有限公司 | 基于超声波雷达的障碍物定位方法及装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108673510A (zh) * | 2018-06-20 | 2018-10-19 | 北京云迹科技有限公司 | 机器人安全行进系统及方法 |
-
2019
- 2019-09-03 CN CN201910831571.2A patent/CN110522359B/zh active Active
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105231950A (zh) * | 2015-10-08 | 2016-01-13 | 深圳市宝乐机器人技术有限公司 | 一种擦窗机器人及其清扫方式 |
CN106933243A (zh) * | 2015-12-30 | 2017-07-07 | 湖南基石信息技术有限公司 | 一种基于双目视觉的无人机实时避障系统及方法 |
CN107305380A (zh) * | 2016-04-20 | 2017-10-31 | 上海慧流云计算科技有限公司 | 一种自动避障方法和装置 |
CN107139666A (zh) * | 2017-05-19 | 2017-09-08 | 四川宝天智控系统有限公司 | 越障识别系统及方法 |
CN107328419A (zh) * | 2017-06-21 | 2017-11-07 | 上海斐讯数据通信技术有限公司 | 一种清扫机器人的清扫路径的规划方法及清扫机器人 |
CN107752910A (zh) * | 2017-09-08 | 2018-03-06 | 珠海格力电器股份有限公司 | 区域清扫方法、装置、存储介质、处理器及扫地机器人 |
CN108344414A (zh) * | 2017-12-29 | 2018-07-31 | 中兴通讯股份有限公司 | 一种地图构建、导航方法及装置、系统 |
CN109990782A (zh) * | 2017-12-29 | 2019-07-09 | 北京欣奕华科技有限公司 | 一种避开障碍物的方法及设备 |
CN109491394A (zh) * | 2018-12-17 | 2019-03-19 | 中新智擎科技有限公司 | 一种虚拟避障方法、装置、存储介质及机器人 |
CN110083157A (zh) * | 2019-04-28 | 2019-08-02 | 深兰科技(上海)有限公司 | 一种避障方法及装置 |
CN110161510A (zh) * | 2019-06-27 | 2019-08-23 | 北京智行者科技有限公司 | 基于超声波雷达的障碍物定位方法及装置 |
Also Published As
Publication number | Publication date |
---|---|
CN110522359A (zh) | 2019-12-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110522359B (zh) | 清洁机器人以及清洁机器人的控制方法 | |
US12038756B2 (en) | Intelligent cleaning robot | |
US11960304B2 (en) | Localization and mapping using physical features | |
CN109890573B (zh) | 移动机器人的控制方法、装置、移动机器人及存储介质 | |
CN111067439B (zh) | 障碍物处理方法以及清洁机器人 | |
CN108290294B (zh) | 移动机器人及其控制方法 | |
CN111035327B (zh) | 清洁机器人、地毯检测方法及计算机可读存储介质 | |
CN109730590B (zh) | 清洁机器人以及清洁机器人自动返回充电的方法 | |
EP3104194B1 (en) | Robot positioning system | |
KR101776622B1 (ko) | 다이렉트 트래킹을 이용하여 이동 로봇의 위치를 인식하기 위한 장치 및 그 방법 | |
CN106037591B (zh) | 限制移动机器人的运动 | |
CN111067440A (zh) | 一种清洁机器人控制方法以及清洁机器人 | |
CN110393482A (zh) | 地图处理方法以及清洁机器人 | |
CN110801180A (zh) | 清洁机器人的运行方法及装置 | |
CN106569489A (zh) | 具有视觉导航功能的扫地机器人及其导航方法 | |
CN111182174B (zh) | 一种扫地机器人补光的方法及装置 | |
CN211933898U (zh) | 清洁机器人 | |
CN110794831A (zh) | 一种控制机器人工作的方法及机器人 | |
CN113675923B (zh) | 充电方法、充电装置及机器人 | |
KR101333496B1 (ko) | 과거 지도 데이터 기반의 이동 로봇 제어 장치 및 방법 | |
CN112308033A (zh) | 一种基于深度数据的障碍物碰撞警告方法及视觉芯片 | |
KR102249485B1 (ko) | 로봇 자율주행 시스템 및 방법 | |
CN110412993A (zh) | 自主充电的方法以及移动机器人 | |
JP7354528B2 (ja) | 自律移動装置、自律移動装置のレンズの汚れ検出方法及びプログラム | |
CN114911223A (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 | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20220805 Address after: 201600 555 Guangfulin East Road, Songjiang District, Shanghai Patentee after: SHANGHAI FLYCO ELECTRICAL APPLIANCE Co.,Ltd. Address before: 518109 area 401f, building D, gangzhilong Science Park, 6 Qinglong Road, Qinghua community, Longhua street, Longhua District, Shenzhen City, Guangdong Province Patentee before: SHENZHEN FEIKE ROBOT Co.,Ltd. |