CN109416538A - 用于对机器人进行初始化以沿着训练路线自主行进的系统和方法 - Google Patents
用于对机器人进行初始化以沿着训练路线自主行进的系统和方法 Download PDFInfo
- Publication number
- CN109416538A CN109416538A CN201780041844.2A CN201780041844A CN109416538A CN 109416538 A CN109416538 A CN 109416538A CN 201780041844 A CN201780041844 A CN 201780041844A CN 109416538 A CN109416538 A CN 109416538A
- Authority
- CN
- China
- Prior art keywords
- robot
- route
- image
- orientation
- initialization object
- 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 77
- 238000012549 training Methods 0.000 title description 16
- 238000012545 processing Methods 0.000 claims description 36
- 238000001514 detection method Methods 0.000 claims description 32
- 238000004140 cleaning Methods 0.000 claims description 26
- 238000003860 storage Methods 0.000 claims description 22
- 230000009471 action Effects 0.000 claims description 14
- 238000012360 testing method Methods 0.000 description 23
- 230000000007 visual effect Effects 0.000 description 18
- 230000008859 change Effects 0.000 description 13
- 238000005259 measurement Methods 0.000 description 12
- 238000010586 diagram Methods 0.000 description 11
- 239000011159 matrix material Substances 0.000 description 10
- 230000003287 optical effect Effects 0.000 description 10
- 230000009023 proprioceptive sensation Effects 0.000 description 10
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 10
- 238000007514 turning Methods 0.000 description 9
- 238000001228 spectrum Methods 0.000 description 8
- 230000008901 benefit Effects 0.000 description 7
- 230000005540 biological transmission Effects 0.000 description 7
- 238000005516 engineering process Methods 0.000 description 7
- 230000006870 function Effects 0.000 description 7
- 238000003384 imaging method Methods 0.000 description 7
- 230000008569 process Effects 0.000 description 7
- 238000001429 visible spectrum Methods 0.000 description 7
- 229910002056 binary alloy Inorganic materials 0.000 description 6
- 238000004590 computer program Methods 0.000 description 6
- 238000006073 displacement reaction Methods 0.000 description 6
- 230000004888 barrier function Effects 0.000 description 5
- 230000001413 cellular effect Effects 0.000 description 4
- 239000007921 spray Substances 0.000 description 4
- 230000003068 static effect Effects 0.000 description 4
- 238000013519 translation Methods 0.000 description 4
- 238000004458 analytical method Methods 0.000 description 3
- 238000004891 communication 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
- 230000000694 effects Effects 0.000 description 3
- 238000005286 illumination Methods 0.000 description 3
- 238000007689 inspection Methods 0.000 description 3
- 238000004519 manufacturing process Methods 0.000 description 3
- 238000010295 mobile communication Methods 0.000 description 3
- 238000004088 simulation Methods 0.000 description 3
- 230000009466 transformation Effects 0.000 description 3
- 239000013598 vector Substances 0.000 description 3
- 241000406668 Loxodonta cyclotis Species 0.000 description 2
- 241001417527 Pempheridae Species 0.000 description 2
- 230000006399 behavior Effects 0.000 description 2
- 238000005452 bending Methods 0.000 description 2
- 230000037237 body shape Effects 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 239000003086 colorant Substances 0.000 description 2
- 238000001914 filtration Methods 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 230000000670 limiting effect Effects 0.000 description 2
- 238000010801 machine learning Methods 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 238000010422 painting Methods 0.000 description 2
- 238000012797 qualification Methods 0.000 description 2
- 230000002829 reductive effect Effects 0.000 description 2
- 230000011218 segmentation Effects 0.000 description 2
- 241000251468 Actinopterygii Species 0.000 description 1
- 208000015976 Corneal dystrophy-perceptive deafness syndrome Diseases 0.000 description 1
- 241001465754 Metazoa Species 0.000 description 1
- 241001112258 Moca Species 0.000 description 1
- 240000007594 Oryza sativa Species 0.000 description 1
- 235000007164 Oryza sativa Nutrition 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 230000001680 brushing effect Effects 0.000 description 1
- 239000003795 chemical substances by application Substances 0.000 description 1
- 239000000571 coke Substances 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 238000005094 computer simulation Methods 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000013481 data capture Methods 0.000 description 1
- 238000013144 data compression Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000036425 denaturation Effects 0.000 description 1
- 238000004925 denaturation Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 235000013399 edible fruits Nutrition 0.000 description 1
- 230000008030 elimination Effects 0.000 description 1
- 238000003379 elimination reaction Methods 0.000 description 1
- 230000002708 enhancing effect Effects 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 230000003628 erosive effect Effects 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 239000004744 fabric Substances 0.000 description 1
- 238000003702 image correction Methods 0.000 description 1
- 230000006698 induction Effects 0.000 description 1
- 230000000977 initiatory effect Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000004807 localization Effects 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 230000000873 masking effect Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 229910044991 metal oxide Inorganic materials 0.000 description 1
- 150000004706 metal oxides Chemical class 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000000877 morphologic effect Effects 0.000 description 1
- 238000011017 operating method Methods 0.000 description 1
- 238000003909 pattern recognition Methods 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000001141 propulsive effect Effects 0.000 description 1
- 238000011946 reduction process Methods 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 210000001525 retina Anatomy 0.000 description 1
- 230000002207 retinal effect Effects 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 235000009566 rice Nutrition 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000035945 sensitivity Effects 0.000 description 1
- 241000894007 species Species 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 230000017105 transposition Effects 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
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/0088—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots characterized by the autonomous decision making process, e.g. artificial intelligence, predefined behaviours
-
- 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
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J11/00—Manipulators not otherwise provided for
- B25J11/008—Manipulators for service tasks
- B25J11/0085—Cleaning
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J19/00—Accessories fitted to manipulators, e.g. for monitoring, for viewing; Safety devices combined with or specially adapted for use in connection with manipulators
- B25J19/02—Sensing devices
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1602—Programme controls characterised by the control system, structure, architecture
- B25J9/161—Hardware, e.g. neural networks, fuzzy logic, interfaces, processor
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1628—Programme controls characterised by the control loop
- B25J9/163—Programme controls characterised by the control loop learning, adaptive, model based, rule based expert control
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1656—Programme controls characterised by programming, planning systems for manipulators
- B25J9/1664—Programme controls characterised by programming, planning systems for manipulators characterised by motion, path, trajectory planning
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1694—Programme controls characterised by use of sensors other than normal servo-feedback from position, speed or acceleration sensors, perception control, multi-sensor controlled systems, sensor fusion
- B25J9/1697—Vision controlled systems
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05D—SYSTEMS FOR CONTROLLING OR REGULATING NON-ELECTRIC VARIABLES
- G05D1/00—Control of position, course, altitude or attitude of land, water, air or space vehicles, e.g. using automatic pilots
- G05D1/02—Control of position or course in two dimensions
- G05D1/021—Control of position or course in two dimensions specially adapted to land vehicles
- G05D1/0212—Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory
- G05D1/0221—Control of position or course in two dimensions specially adapted to land vehicles with means for defining a desired trajectory involving a learning process
-
- 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
- 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/0268—Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means
- G05D1/0272—Control of position or course in two dimensions specially adapted to land vehicles using internal positioning means comprising means for registering the travel distance, e.g. revolutions of wheels
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Automation & Control Theory (AREA)
- General Physics & Mathematics (AREA)
- Aviation & Aerospace Engineering (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Mechanical Engineering (AREA)
- Robotics (AREA)
- Electromagnetism (AREA)
- Artificial Intelligence (AREA)
- Evolutionary Computation (AREA)
- Multimedia (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Medical Informatics (AREA)
- Business, Economics & Management (AREA)
- Game Theory and Decision Science (AREA)
- Health & Medical Sciences (AREA)
- Fuzzy Systems (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Control Of Position, Course, Altitude, Or Attitude Of Moving Bodies (AREA)
- Numerical Control (AREA)
- Manipulator (AREA)
Abstract
公开用于对机器人进行初始化以沿着路线自主行进的系统和方法。在一些示范性实施方案中,机器人可以检测初始化对象,然后确定它相对于所述初始化对象的方位。接着,所述机器人可以通过用户演示学习路线,其中所述机器人将沿着所述路线的动作与相对于所述初始化对象的方位相关联。随后,所述机器人可以再次检测所述初始化对象,并确定它相对于所述初始化对象的方位。然后所述机器人可以沿着所述学习路线自主行走,并执行与相对于所述初始化对象的方位相关联的动作。
Description
优先权
本申请要求标题相同的在2016年5月11日申请的共同未决的第15/152,436号美国专利申请的优先权,上述申请以全文引用的方式并入本文中。
版权
此专利文献的公开内容的一部分包含受版权保护的材料。版权所有者不反对任何人对专利文献或专利公开内容在专利和商标局的专利文件或记录中出现的内容进行传真复制,但保留所有其它版权。
技术领域
本申请大体上特别涉及机器人系统和其方法。确切地说,在一个方面中,本公开涉及用于对机器人进行初始化和操作以沿着训练路线行进的系统和方法。
背景技术
目前,编程机器人通常会涉及预测或试图预测机器人可能遇到的每种情形的穷举译码。这种方式不仅在时间、能量和计算机资源方面较为昂贵,而且还会限制机器人的能力。例如,许多机器人只能在具有可预测或预限定条件的受控环境中有效。这些机器人在动态变化的环境和/或没有对机器人进行专门编程的新环境中可能无效。当机器人被编程有一般能力时,机器人可以用于许多不同任务,但是在那些任务中的任何特定任务中可能是无效或低效的。另一方面,编程成有效且高效地执行特定任务的机器人可能仅限于那些任务,而不能执行其它任务。类似地,目前许多机器人可能需要专业技术人员和其他高技能工人来对它们进行编程和操作。这一要求可能会增加操作机器人的时间和成本。
这些挑战在将机器人编程成沿着路线行进时尤其突出。例如,为了将机器人编程成沿着从第一点到第二点的期望路径自主行走,编程器可能需要编程地图,并且识别地图上机器人应该行进的每个点,以及机器人应该行进到那些点的次序或逻辑。编程器可能需要针对每一环境对机器人进行编程,并且输入所需的每一个路线,以及环境地图。在替代方案中,如果编程器为机器人编程确定路线的一般规则和逻辑,那么这个机器人在沿循任何特定路线时可能是缓慢且低效的。在任一情况下,此类编程可为耗时的,并且可能需要有高技能工人来操作机器人。
在将机器人编程成沿着路线行进时可能存在的另一挑战是对机器人进行初始化,使得机器人可以相对快速地确定它们在环境中的方位。能够进行此类确定对于通过向机器人通知它们在环境中的位置来使机器人精确地沿着路线行走来说可能是至关重要的。确定方位的常规系统和方法涉及用户和/或技术员首先编程开始位置和/或每次使机器人在同一点处启动。在一些情况下,这些系统和方法的实施可能是费时的,和/或这些系统和方法可能不具有使机器人以一种用户友好的方式在环境中行走的稳健性。
因此,需要改良的用于将机器人编程成沿着路线行进的系统和方法。
发明内容
本公开满足上述需要,且特别提供用于对机器人进行初始化和操作以沿着训练路线行进的系统和方法。本文中所描述的实例实施方案具有创新特征,其中没有一个是必不可少的或仅对其所需属性负责。在不限制权利要求的范围的情况下,现在将概述一些有利特征。
在本公开的一些实施方案中,公开用于检测相对于初始化对象的方位的系统和方法。有利的是,此类检测可有助于机器人学习演示路线,然后沿着演示路线自主行走。
在第一方面中,公开一种机器人。在一个示范性实施方案中,机器人包含:相机,其配置成在机器人处于第一位置时拍摄初始化对象的第一图像并在机器人处于第二位置时拍摄初始化对象的第二图像;里程计单元,其配置成确定机器人相对于初始化对象的方位;以及控制器。控制器被配置成:当机器人处于第一位置时,相对于至少部分地根据第一图像确定的初始化对象对里程计单元进行初始化;从第一位置开始,通过用户演示学习路线;当机器人处于第二位置时,相对于至少部分地根据第二图像确定的初始化对象对里程计单元进行初始化,在所述第一位置,学习路线将机器人的动作与机器人相对于通过里程计单元确定的初始化对象的方位相关联;以及当至少部分地基于机器人相对于通过里程计单元确定的初始化对象的方位,指示机器人执行一个或多个相关联的动作时,使机器人从第二部位开始沿着学习路线的至少一部分自主行走。
在一个变化形式中,里程计单元包含加速度计、惯性测量单元、激光雷达、里程表、陀螺仪、视觉里程表和速度计中的至少一个。
在另一变化形式中,机器人包含用户界面,所述用户界面配置成在机器人处于第二位置时提示用户发起机器人沿着学习路线的自主行走。
在另一变化形式中,机器人是地板清洁器。
在另一变化形式中,机器人包含传感器,所述传感器配置成拍摄场景的扫描激光雷达图像,其中控制器还被配置成将扫描激光雷达图像与初始化对象相关联,并使用扫描激光雷达图像来验证初始化对象。
在第二方面中,公开一种用于操作机器人的方法。在一个示范性实施方案中,用于操作机器人的方法包含:当机器人处于第一位置时拍摄初始化对象的第一图像;当机器人处于第一位置时,至少部分地基于第一图像确定机器人相对于初始化对象的第一开始方位;从第一位置开始,通过用户演示学习路线,在所述第一位置,学习路线将机器人的动作与机器人相对于初始化对象的方位相关联,其中至少部分地根据第一开始方位来确定所述方位;当机器人处于第二位置时拍摄初始化对象的第二图像;当机器人处于第二位置时,至少部分地基于第二图像确定机器人相对于初始化对象的第二开始方位;当至少部分地基于机器人相对于初始化对象的方位,指示机器人执行一个或多个相关联的动作时,使机器人从第二位置开始沿着学习路线的至少一部分自主行走,其中至少部分地根据第二开始方位来确定所述方位。
在一个变化形式中,拍摄第一图像和拍摄第二图像各自包含用传感器生成数据并以数据结构形式存储数据。
在另一变化形式中,方法还包含至少部分地基于用户输入和初始化对象的特性中的至少一个来开始自主行走。
在另一变化形式中,方法还包含从存储在存储器中的多个路线中选择学习路线。
在第三方面中,公开一种非暂时性计算机可读存储媒体。在一个示范性实施方案中,公开一种其上存储有多个指令的非暂时性计算机可读存储媒体。指令可由处理设备执行以操作机器人,所述指令配置成在由处理设备执行时使处理设备进行以下操作:至少部分地基于图像,确定机器人相对于初始化对象的开始方位;以及通过用户演示学习路线,其中学习路线将机器人的动作与机器人相对于初始化对象的方位相关联,其中至少部分地根据开始方位来确定所述方位。
在一个变化形式中,非暂时性计算机可读存储媒体包含还被配置成在由处理设备执行时使处理设备指示机器人沿着学习路线自主行走的指令。
在另一变化形式中,非暂时性计算机可读存储媒体包含还被配置成在由处理设备执行时使处理设备辨识预定动作序列并至少部分地基于所述预定动作序列而沿着学习路线自主行走的指令。
在第四方面中,公开一种机器人擦洗器。在一个示范性实施方案中,机器人擦洗器被配置成至少部分地基于第一初始化对象的检测而沿着第一学习路线自主行走,并且至少部分地基于第二初始化对象的检测而沿着第二学习路线自主行走。
在一个变化形式中,用户向机器人擦洗器演示第一学习路线和第二学习路线。在另一变化形式中,第一初始化对象的检测和第二初始化对象的检测是来自初始化位置。在另一变化形式中,第一初始化对象的检测是来自第一初始化位置,且第二初始化对象的检测是来自第二初始化位置,并且在用户控制下使机器人擦洗器处于第一初始化位置和第二初始化。
在第五方面中,公开一种初始化对象。在一个示范性实施方案中,初始化对象配置成由机器人检测。当机器人检测到初始化对象时,机器人对相对于初始化对象的方位进行初始化。
在一个变化形式中,初始化对象是二进制图像。在另一变化形式中,初始化对象是不对称的。在另一变化形式中,初始化对象与至少一个学习路线相关联。在另一变化形式中,初始化对象被配置成在机器人检测到初始化对象时使机器人自主行走。
本公开中还描述了另外的方面和实施方案。例如,本公开的一些实施方案可包含自主行走机器人,所述自主行走机器人包括:相机,其配置成在机器人处于第一位置时拍摄初始化对象的第一图像并在机器人处于第二位置时拍摄初始化对象的第二图像;里程计单元,其配置成确定机器人相对于初始化对象的方位;以及控制器,其配置成进行以下操作:当机器人处于第一位置时,相对于至少部分地根据第一图像确定的初始化对象对里程计单元进行初始化;从第一位置开始,通过用户演示学习路线,在所述第一位置,学习路线将机器人的动作与机器人相对于通过里程计单元确定的初始化对象的方位相关联;当机器人处于第二位置时,相对于至少部分地根据第二图像确定的初始化对象对里程计单元进行初始化;以及当至少部分地基于机器人相对于通过里程计单元确定的初始化对象的方位,指示机器人执行一个或多个相关联的动作时,使机器人从第二位置开始沿着学习路线的至少一部分自主行走。
在一些实施方案中,里程计单元包括加速度计、惯性测量单元、激光雷达、里程表、陀螺仪、视觉里程表和速度计中的至少一个。在一些实施方案中,初始化对象是二进制图像。在一些实施方案中,初始化对象是图片。
在一些实施方案中自主行走机器人还包括用户界面,所述用户界面配置成在机器人处于第二位置时提示用户发起机器人沿着学习路线的自主行走。
在一些实施方案中,一个或多个相关联的动作中的至少一个包括机器人的转动。在一些实施方案中,一个或多个相关联的动作中的至少一个包括启动配置成打开机器人的刷子的开关。在一些实施方案中,机器人是地板清洁器。
在一些实施方案中,第一位置和第二位置大体上类似。在一些实施方案中,一个或多个相关联的动作还与机器人的轨迹相关联。
在一些实施方案中,自主行走机器人还包括传感器,所述传感器配置成拍摄场景的扫描激光雷达图像,其中控制器还被配置成将扫描激光雷达图像与初始化对象相关联并使用扫描激光雷达图像来验证初始化对象。
作为另一实例,本公开的一些实施方案可包含用于操作机器人的方法,所述方法包括:当机器人处于第一位置时拍摄初始化对象的第一图像;当机器人处于第一位置时,至少部分地基于第一图像确定机器人相对于初始化对象的第一开始方位;从第一位置开始,通过用户演示学习路线,在所述第一位置,学习路线将机器人的动作与机器人相对于初始化对象的方位相关联,其中至少部分地根据第一开始方位来确定所述方位;当机器人处于第二位置时拍摄初始化对象的第二图像;当机器人处于第二位置时,至少部分地基于第二图像确定机器人相对于初始化对象的第二开始方位;当至少部分地基于机器人相对于初始化对象的方位,指示机器人执行一个或多个相关联的动作时,使机器人从第二位置开始沿着学习路线的至少一部分自主行走,其中至少部分地根据第二开始方位来确定所述方位。
在一些实施方案中,拍摄第一图像和拍摄第二图像各自包括用传感器生成数据并以数据结构形式存储数据。
在一些实施方案中,用于操作机器人的方法还包括至少部分地基于用户输入和初始化对象的特性中的至少一个来开始自主行走。
在一些实施方案中,一个或多个相关联的动作中的至少一个包括使机器人转动。在一些实施方案中,一个或多个相关联的动作中的至少一个包括打开刷子。在一些实施方案中,使机器人自主行走还包括在机器人检测到初始化对象之前一直使机器人自主行走。
在一些实施方案中,用于操作机器人的方法进一步包括从存储在存储器中的多个路线中选择学习路线。
在一些实施方案中,一个或多个相关联的动作中的至少一个包括将机器人的动作与轨迹相关联。
作为另一实例,本公开的一些实施方案可包含其上存储有多个指令的非暂时性计算机可读存储媒体,所述指令可由处理设备执行以操作机器人,所述指令配置成在由处理设备执行时使处理设备进行以下操作:至少部分地基于图像,确定机器人相对于初始化对象的开始方位;以及通过用户演示学习路线,其中学习路线将机器人的动作与机器人相对于初始化对象的方位相关联,其中至少部分地根据开始方位来确定所述方位。
在一些实施方案中,初始化对象是二进制图像。在一些实施方案中,相关联的动作包括转动。在一些实施方案中,相关联的动作包括打开刷子。
在一些实施方案中,非暂时性计算机可读存储媒体包含还被配置成在由处理设备执行时使处理设备指示机器人沿着学习路线自主行走的指令。
在一些实施方案中,非暂时性计算机可读存储媒体包含还被配置成在由处理设备执行时使处理设备辨识预定动作序列并至少部分地基于所述预定动作序列而沿着学习路线自主行走的指令。
在一些实施方案中,非暂时性计算机可读存储媒体的指令还被配置成在由处理设备执行时进行以下操作:确定机器人在机器人的确定位置处的动作;以及执行所述动作;其中所述动作包括机器人的转动动作。
在一些实施方案中,非暂时性计算机可读存储媒体的指令还被配置成在由处理设备执行时进行以下操作:确定机器人在机器人的确定位置处的动作;以及执行所述动作;其中所述动作包括启动配置成打开刷子的开关。
作为另一实例,本公开的一些实施方案包含机器人擦洗器,所述机器人擦洗器配置成至少部分地基于第一初始化物体的检测而沿着第一学习路线自主行走,并且至少部分地基于第二初始化物体的检测而沿着第二学习路线自主行走。
在一些实施方案中,用户向机器人擦洗器演示第一学习路线和第二学习路线。在一些实施方案中,第一初始化对象的检测和第二初始化对象的检测是从初始化位置检测的。在一些实施方案中,第一初始化对象的检测是来自第一初始化位置,且第二初始化对象的检测是来自第二初始化位置,并且在用户控制下使机器人擦洗器处于第一初始化位置和第二初始化位置。
在参考附图考虑以下描述及所附权利要求书之后,本公开的这些及其它目标、特征和特性以及相关结构元件的操作方法和功能及各部分的组合和制造经济性将变得更加清楚,附图、以下描述及所附权利要求书全都形成本说明书的一部分,其中相同参考标号在各图中指代对应部分。然而,应明确地理解,图式仅用于说明和描述目的,且不意图作为本公开的限制的定义。除非上下文另外明确规定,否则在本说明书和权利要求书中使用时,单数形式“一”及“所述”包含多个指示物。
附图说明
将在下文中结合附图来描述所公开的方面,提供附图是为了说明而不是限制所公开的方面,其中相同符号表示相同元件。
图1A是根据本公开的实施方案的机器人自主行走的实例路线的顶视图。
图1B是根据本公开的实施方案的说明用户正在向机器人演示路线的图1A中所说明的实例路线的顶视图。
图1C是根据本发明的一些原理的图1A和1B中示出的机器人自主行走的替代性实例路线的顶视图,其中机器人避开物体。
图1D是根据本公开的一些实施方案的用于对机器人进行初始化的实例初始位置的顶视图,所述实例初始位置是地板上的位置。
图2是根据本公开的一些实施方案的用于训练机器人沿着路线自主行走的示范性方法的过程流程图。
图3A是根据本公开的一些实施方案的示范性机器人的功能框图。
图3B是根据本公开的一些实施方案的图3A的功能框图,其中实例相机被包含为外感受性传感器的一部分。
图3C是根据本公开的一些原理的说明图3B的机器人检测初始化对象的侧面视图。
图4A说明根据本公开的一些原理的地板擦洗器的示范性主体形式的各个侧面视图。
图4B说明根据本公开的原理的机器人的示范性主体形式的各个侧面视图。
图5说明根据本公开的一些原理的可用作初始化对象的二进制图像的各个侧面视图。
图6是根据本公开的一些实施方案可以用来对机器人进行初始化以沿着学习路线自主行走的示范性方法的过程流程图。
图7是根据本公开的一些实施方案的定位成相对于初始化对象成某一角度的机器人的顶视图,其中机器人的传感器测量从传感器上的实例点到初始化对象上的点的距离和角度。
图8是根据本公开的一些实施方案的初始化对象的图像表示的侧面视图。
图9A是根据本公开的一些原理的用于从用户接收输入以开始学习路线或选择用于行走的路线的实例用户界面。
图9B是根据本公开的一些原理的用户在教示路线时控制机器人的侧面视图。
图10是根据本公开的一些原理的可用于路线选择的实例用户界面。
图11是根据本公开的一些原理的具有多个初始化对象的环境的顶视图。
图12是根据本公开的原理的用于操作机器人的示范性方法的过程流程图。
本文中所公开的所有图均为2017Brain Corporation。版权所有。
具体实施方式
在下文中参考附图更完整地描述本文中公开的新颖系统、设备和方法的各个方面。然而,本公开可以许多不同形式来体现,且不应被解释为限于贯穿本公开所呈现的任何特定结构或功能。相反地,提供这些方面以使得本公开将透彻且完整,并且将向所属领域的技术人员充分传达本公开的范围。基于本文中的教示,所属领域的技术人员应了解,本公开的范围意图涵盖无论是独立于本公开的任何其它方面而实施还是与之组合实施的本文中所公开的新颖系统、设备和方法的任何方面。例如,可以使用本文中所阐述的任何数目个方面来实施设备或实践方法。此外,本公开的范围意图涵盖使用除本文中所阐述的本公开的各个方面之外的或不同于本文中所阐述的本公开的各个方面的其它结构、功能性或结构与功能性来实践的此类设备或方法。应理解,本文中所公开的任何方面可通过权利要求的一个或多个要素来实施。
尽管本文描述了特定实施方案,但这些实施方案的许多变化和排列都属于本公开的范围。尽管提及了实施方案的一些益处和优点,但本公开的范围并不意图限于特定益处、用途和/或目标。详细描述和图式仅说明本公开,且不具有限制性,本公开的范围由所附权利要求书和其等效物限定。
本公开提供改良的操作机器人以进行自主行走的系统和方法。更确切地说,本公开包含用于对机器人的位置进行初始化以进行训练和/或自主行走的系统和方法。
如本文中所使用,机器人可包含配置成自动实行一系列复杂动作的机械或虚拟实体。在一些情况下,机器人可为由计算机程序或电子电路系统引导的机电机器。在一些情况下,机器人可包含配置成进行自主行走的机电机器,其中机器人可以在几乎没有用户控制的情况下从一个位置移动到另一位置。此类自主行走机器人可包含自动驾驶汽车、地板清洁器(例如,地板擦洗器、真空吸尘器等)、飞行器、无人机、人形机器人等等。在一些实施方案中,本公开中所描述的系统和方法中的一些可实施在虚拟环境中,其中虚拟机器人可以在具有物理世界的特性的模拟环境中(例如,在计算机模拟中)检测初始化对象。在检测初始化对象之后,机器人可以学习路线,然后在模拟环境中和/或在现实世界中使用本公开中所公开的系统和方法沿着学习路线自主行走。
现提供本公开的系统和方法的各种实施例和变化形式的详细描述。虽然主要在机器人地板清洁器的上下文中进行论述,但是应了解,本文中包含的所述系统和方法可用于其它机器人,包含例如任何自主行走的机器人。鉴于本公开的内容,所属领域的技术人员将容易想到本文中所描述的技术的多种其它实例实施方案或用途。
有利的是,本公开的系统和方法至少:(i)减少对环境特定编程的需要;(ii)减少对高技能技术人员进行机器人编程的需要;(iii)提供一般编程机器人的专用性能;(iv)实现机器人的有效自主行走;以及(v)实现以一种快速且用户友好的方式对机器人进行初始化以自主行走。鉴于本公开的内容,所属领域的普通技术人员可以容易地辨别出其它优点。
例如,通过演示来训练机器人沿着路线行进,用户可能无需事先对每条路线进行编程。有利的是,这可使得用户能够将机器人训练成在用户事先没有预料到的环境中行走。并且,用户不需要用任何特定的专业知识来训练机器人。例如,用户可以不必了解计算机科学和/或了解如何对机器人进行编程。相反地,用户只需了解如何执行他/她想要机器人执行的任务。例如,如果机器人是地板清洁器,那么用户只需了解如何清洁地板,这一清洁操作他/她可以演示给机器人。
此外,训练可以学习可行走路线的机器人可使得机器人能够进行专门编程以在特定环境中高效地行走,同时也能够进行一般编程以在许多环境中执行。有利的是,这允许此类机器人具有在特定应用中有所优化同时能够灵活地用于各种应用的益处。
在本公开的一些实施方案中,机器人可以对初始化对象进行初始化,这可以促进它的路线学习和自主行走。值得注意的是,所公开的关于初始化对象的初始化显著改进了机器人技术和/或自主行走,因为它使得机器人能够精确地确定它在环境中的位置和/或它的轨迹,并且能够至少部分地基于所述定位和/或轨迹来执行动作。有利的是,具有快速且有效的初始化方式可使得机器人能够将动作与沿着其学习路线的方位相关联。随后,机器人可以在它沿着学习路线自主行走时复制那些动作。
并且,本公开的一些实施方案使得机器人能够针对固定位置行走和/或执行动作,从而可以提供一致性和/或可复制性。在许多行业中可能都需要一致性和/或可复制性,例如地板清洁,其中机器人反复执行大体上类似的任务。
当前许多感测机器人的方位的方式在传感器、处理功率和/或能量的成本方面可能相当昂贵。在本公开中所描述的一些实施方案中,可以使用相对简单的传感器(例如,相机)来检测初始化对象。这些相对简单的传感器可以利用更低的处理功率来检测初始化对象,并且在这个过程中消耗的功率会更低。有利的是,这可允许机器人更具成本效益,占用空间更少,和/或消耗的运行功率更低。
并且,具有可以快速简单地检测初始化对象的机器人可以改善用户与机器人的交互。在一些情况下,初始化对象可以是符号、图像、形状、物品(例如,家具、雕像、电器等)和/或任何其它对象。接着,用户可以使用所述初始化对象来开始机器人路线学习和/或开始机器人的自主行走。在一些情况下,具有可见初始化对象可在操作机器人时向用户提供一种可预测性,其中用户可具有使机器人到达初始化对象并以可预测方式观察机器人的行为的可见反馈。在一些实施方案中,可存在多个初始化对象,其中特定初始化对象可以与特定路线相关联。这可使得用户能够基于初始化对象而直观地选择路线,这在操作者可能无法了解特定语言或不会使用复杂的用户界面的环境中可能尤其有利。
在一些实施方案中,机器人可以学习使用多个路线在大体上类似的多个环境中行走。因此,使用初始化对象可通过过滤和/或缩小机器人可以选择的路线和/或环境的数目来促进特定环境中的行走。这会降低机器人和/或用户选择错误地路线的几率,例如通过选择与不同环境相关联的路线。例如,建筑物可具有大体上类似但具有一些变化的多个楼层。每个楼层可具有它自己的初始化对象。当机器人从初始化对象进行初始化时,它可以至少部分地基于所述初始化对象来过滤它可以行走的路线,所述初始化对象可以仅与地板和/或特定路线相关联。因此,机器人和/或用户可以从过滤的路线列表中选择期望路线。
在一些情况下,当前的机器人行走可涉及多个机器人可检测的符号,其中机器人朝向那些符号中的每一个移动。在一些情况下,例如在零售环境中,周围有过多符号可能会使顾客产生负面感知。因此,可能需要具有能够使机器人在具有减少的无吸引力的符号或没有无吸引力的符号的情况下自主行走的系统和方法。具有可能已经也可能尚未存在于环境中的初始化对象可以是有利的,因为客户可能不会轻易地注意到初始化对象和/或被它们转移注意力,所述初始化对象可包含符号、图像、形状、物品等。此外,即使使用机器人符号,机器人也可从更少的符号,在某些情况下为单个符号,进行初始化,并且能够自主行走。
图1A通过本公开的实施方案说明机器人102自主行走的实例路线106的顶视图。机器人102可以在环境100中自主行走,环境100可包括各种物体108、110、112、118。机器人102可在初始位置处启动并在结束位置114处结束。初始位置可以通过它与初始化对象150之间的关系来确定。在本公开的一些实施方案中,初始位置可以是机器人102可以检测初始化对象150的任何方位。然而,在一些情况下,用户可使机器人102处于地板上的特定地点(例如,由用户标定和/或记住的地方),如图1D中所说明,在所述特定地点,初始位置104是地板上的方位。使机器人102处于地板上的特定地点,例如,初始位置104,可以是有利的,因为它使得机器人102极有可能检测到初始化对象150并进行初始化。使机器人102处于地板上的特定地点,例如,初始位置104,还可有助于用户在操作机器人102时具有惯例性和可预测性。
初始化对象150可包含有形物体(例如,家具、雕像、电器等)、标记和/或数字显示器。在一些实施方案中,初始化对象150可以由机器人102使用至少部分地为外感受性的传感器300来检测和/或辨识,这将参考图3A-B以及在本公开中的其它地方进行更详细的描述。当机器人102检测到初始化对象150时,通过实施本公开,机器人102可以确定机器人102相对于初始化对象150(和/或其中的点)的方位,这尤其可以使机器人102对机器人102的里程计进行初始化,例如至少部分地使用里程计单元326、本体感受传感器308和其它传感器的里程计,这将参考图3A-3B以及在本公开中的其它地方进行更详细的论述。如本文中所使用,术语方位具有其普通和惯用含义。例如,在一些情况下,方位可包含物体、机器人102等在位移、坐标等方面的位置。在一些情况下,方位还可包含物体、机器人102等的定向。因此,在一些情况下,术语方位和位姿可互换使用,以包含位置、位移和定向中的一个或多个。有利的是,当机器人102继续学习路线时,例如学习图1B中所说明的环境100中的路线116时,确定机器人102的方位可以使机器人102将初始化对象150(和/或其中的点)用作机器人102的里程计和/或传感器的参考点。初始化对象150(和/或其中的点)作为参考点的这一用途在之后机器人102沿着学习路线116自主行走时可再次被机器人102用作路线106。并且,有利的是,机器人102可能难以标定参考点,或此类标定可涉及在整个环境中放置许多无吸引力的符号或物品。在一些实施方案中,允许机器人102从初始化对象150进行初始化可减少或消除对无吸引力的符号的使用。
举例来说,在一些实施方案中,机器人102可以是机器人地板清洁器,例如机器人地板擦洗器、真空吸尘器、蒸汽机、拖把、清扫器等等。环境100可以是具有希望清洁的地板的空间。例如,环境100可以是商店、仓库、办公楼、住宅、储存设施等。物体108、110、112、118中的一个或多个可以是货架、显示器、物体、物品、人、动物或可位于地板上或以其它方式阻碍机器在环境中行走的任何其它实体或事物。路线106可以是机器人102自主行进的清洁路径。路线106可沿循在物体108、110、112、118之间穿行的路径,如实例路线106中所说明。例如,如果物体108、110、112、118是商店里的货架,那么机器人102可以沿着商店的过道前进并清洁过道的地板。然而,还设想了其它路线,例如但不限于沿着开放的地板区域来回穿行和/或用户将用来清洁地板的任何清洁路径(例如,如果用户是手动操作地板清洁器的话)。因此,分别在图1A、1B和1C中说明的路线106、116、126中的一个或多个仅仅是作为说明性实例并且可以不同方式呈现,如所说明。并且,如所说明,示出了环境100的一个实例,但是应了解,环境100可采用任何数目个形式和布置(例如,房间或建筑物的任何大小、配置和布局),且不受本公开的实例说明限制。
在路线106中,机器人102可开始于初始位置,在初始位置,它检测初始化对象150,初始化对象150可以是机器人102的起点。接着,机器人102可以沿着路线106自主清洁(例如,几乎没有用户904的控制),直到它到达它可以停止清洁的结束位置114为止。之后参考图9B描述,结束位置114可以由用户904指定。在一些情况下,结束位置114可以是路线106中的某一位置,在这一位置之后,机器人102已经清洁完期望地板区域。在一些情况下,结束位置114可以与初始位置相同或大体上类似,使得机器人102大体上成闭环进行清洁,且在它位于初始位置处的起点附近结束。在一些情况下,结束位置114可以是存放机器人102的位置,例如临时停车场、储藏室/壁橱等等。在一些情况下,结束位置114可以是用户904决定停止执行动作和训练机器人102的点。例如,在地板清洁器(例如,地板擦洗器、真空清洁器等)的上下文中,机器人102可以在沿着路线106的每个点处进行清洁,也可以不在沿着路线106的每个点处进行清洁。举例来说,如果机器人102是机器人地板擦洗器,那么机器人102的清洁系统(例如,水流、清洁刷等)可以仅在路线106的一些部分中操作,而在路线106的其它部分中不操作。例如,机器人102可将一些动作(例如,转动、打开/关闭水、喷水、打开/关闭真空吸尘器、移动真空软管位置、挥动臂、抬起/降低升降器、移动传感器、打开/关闭传感器等)与沿着演示路线的特定方位和/或轨迹(例如,当沿着特定方向移动或沿着路线106以特定顺序移动时)相关联。在地板清洁器的上下文中,当只要清洁地板的一些区域而不用清洁其它区域和/或沿着一些轨迹清洁时,此类关联可以是合乎需要的。在这些情况下,机器人102可在用户904为机器人102演示要清洁的区域中打开清洁系统,并在其它区域中关闭清洁系统。
图1B说明在实例机器人102沿着环境100中的实例路线106自主行进之前实例用户904向实例机器人102演示路线116的顶视图。在演示路线116时,用户可以在初始位置(例如,相对于初始化对象150和/或初始位置104内的初始位置)处启动机器人102。接着,机器人102可在物体108、110、112、118周围穿行。机器人102最后可以在结束位置114处结束。在一些情况下,路线106可以与路线116完全相同。在一些情况下,路线106可能不与路线116完全相同,但是可以大体上类似。例如,当机器人102自主行走时,机器人102使用它的传感器(例如,传感器300、308,如将参考图3A-3B以及在本公开中的其它地方所描述)来感测机器人102在它行走时相对于机器人102的周围环境的位置。在一些情况下,此类感测可为不精确的,从而可能至少部分地使得机器人102无法沿着所演示的且机器人102被训练沿循的精确路线116行走。在一些情况下,改变环境100,例如移动货架和/或改变货架上的物品,可能会使机器人102在它自主行走时偏离路线116。作为另一实例,如图1C中所说明,当沿着路线126自主行走时,机器人102可以通过掉头来避开物体130、132,路线126可以是机器人102至少部分地基于所演示的路线116行进的另一路线。当用户演示路线116时,物体130、132可能已经不存在(和/或未被避开)。例如,物体130、132可为临时放置的和/或暂时性的物体/物品,和/或对环境100的暂时性和/或动态改变。作为另一实例,用户904可能已经糟糕地演示了路线116。例如,用户904可能已经撞上和/或撞到墙壁、搁架、物体、障碍物等。在这些情况下,机器人102可在存储器(例如,存储器302)中存储它可以校正的一个或多个动作,例如撞上和/或撞到墙壁、搁架、物体、障碍物等。然后当机器人102沿着演示为路线126的路线116自主行走时,机器人102可以校正此类动作,并且在它自主行走时不执行它们(例如,不撞上和/或撞到墙壁、搁架、物体、障碍物等)。
如先前所提及,当用户904演示路线116时,用户904可以执行同样可以在机器人102学习行走时向机器人102演示并且被机器人102习得的一个或多个动作。这些动作可包含机器人102可以执行的任何动作,例如转动、打开/关闭水、喷水、打开/关闭真空吸尘器、移动真空软管位置、挥动臂、抬起/降低升降器、移动传感器、打开/关闭传感器等。例如,用户904可以打开和关闭机器人102的清洁系统,以便训练机器人102沿着路线116在哪儿进行清洁(和随后当机器人102沿着路线106、126自主清洁时在哪儿进行清洁)和/或以什么轨迹进行清洁。机器人102可在存储器302(随后在图3A中描述中)记录这些动作,并且随后在自主行走时执行这些动作。例如,在一些实施方案中,机器人102可将相对于初始化对象150的一个或多个方位与学习动作相关联。
图2说明用于训练机器人102沿着路线(例如,路线106、126)自主行走的实例方法200的过程流程图。部分202可包含定位机器人102以检测初始化对象150。机器人102到相对于初始化对象150的初始位置中的这一第一放置可由用户904执行,用户904可以是清洁工、管理员或任何其他人,他们驱动、远程控制、推动或以其它方式控制机器人102以将其移动到一位置(例如,初始位置)来检测初始化对象150。
部分204可包含向机器人102演示行走路线。举例来说,通过使用图1B,用户904可以通过不限于沿着路线116驱动、远程控制、推动或以其它方式控制机器人102的方式向机器人102演示。通过这种方式,用户904可以向机器人102演示期望的行进路线。同时,用户904可以向机器人102演示动作(例如,转动、打开/关闭水、喷水、打开/关闭真空吸尘器、移动真空软管位置、挥动臂、抬起/降低升降器、移动传感器、打开/关闭传感器等)以在沿着路线行进时执行这些动作。在一些情况下,这些动作可以与沿着学习路线的方位和/或轨迹相关联,例如相对于初始化对象150的方位和/或轨迹。在机器人地板清洁器的上下文中,演示路线116可以是清洁地板的期望路线。通过这种方式,用户904可训练机器人102如何清洁地板。
部分206可包含再次定位机器人102以检测初始化对象150。用于检测初始化对象150的机器人102的这一第二放置可在部分204之后的稍后时间点进行,例如大体上正好在部分204的演示之后,或在稍后的某一时间,例如数小时后、数天后、数周后,或每当用户904想要清洁地板时。
部分208可包含发起自主行走。在一些情况下,在用户发起自主行走之后,机器人102可以沿着路线106(或在一些情况下,沿着路线126)行进,路线106可以大体上类似于演示路线116。在一些实施方案中,用户904可以在用户界面318上选择演示路线,如将参考图10以及在本公开中的其它地方所描述。举例来说,通过使用图1A,机器人102可以接着沿着路线106(或大体上类似于路线106的路线)从初始位置自主行走到结束位置114。
图3A说明在一些实施方案中的实例机器人102的功能框图。如图3A中所说明,机器人102可包含控制器304、存储器302、用户界面318、外感受性传感器300、里程计单元308、本体感受传感器308以及其它组件和子组件(例如,其中一些可能没有说明)。鉴于本公开的内容,所属领域的普通技术人员将容易清楚,尽管在图3A中说明了特定实施方案,但是应了解,架构在某些实施方案中可以变化。
控制器304可控制由机器人102执行的各种操作。控制器304可包含一个或多个处理器(例如,微处理器)和其它外围设备。如本文中所使用,处理器、微处理器和/或数字处理器可包含任何类型的数字处理装置,例如且不限于数字信号处理器(“DSP”)、精简指令集计算机(“RISC”)、通用(“CISC”)处理器、微处理器、门阵列(例如,现场可编程门阵列(“FPGA”))、可编程逻辑装置(“PLD”)、可重新配置的计算机结构(“RCF”)、阵列处理器、安全微处理器、专用处理器(例如,神经形态处理器)和专用集成电路(“ASIC”)。此类数字处理器可包含在单个整体集成电路管芯上或分布在多个组件上。
控制器304可以操作方式和/或以通信方式耦合到存储器302。存储器302可包含任何类型的集成电路或配置成存储数字数据的其它存储装置,包含但不限于只读存储器(“ROM”)、随机存取存储器(“RAM”)、非易失性随机存取存储器(“NVRAM”)、可编程只读存储器(“PROM”)、电可擦除可编程只读存储器(“EEPROM”)、动态随机存取存储器(“DRAM”)、移动DRAM、同步DRAM(“SDRAM”)、双倍数据速率SDRAM(“DDR/2SDRAM”)、扩展数据输出RAM(“EDO”)、快速页面模式RAM(“FPM”)、减少时延DRAM(“RLDRAM”)、静态RAM(“SRAM”)、“闪存”存储器(例如,NAND/NOR)、忆阻器存储器、伪静态RAM(“PSRAM”)等。存储器302可向控制器304提供指令和数据。例如,存储器302可以是其上存储有多个指令的非暂时性计算机可读存储媒体,所述指令可由处理设备(例如,控制器304)执行以操作机器人102。在一些情况下,指令可配置成在由处理设备执行时使处理设备执行本公开中所描述的各种方法、特征和/或功能性。因此,控制器304可基于存储在存储器302内的程序指令来执行逻辑和算术运算。
在一些实施方案中,存储器302可存储初始化对象150的图像的库324。在一些实施方案中,这个库324可包含初始化对象150和/或大体上类似于初始化对象150的对象在不同光照条件、角度、大小、距离、清晰度(例如,模糊、遮挡/遮蔽、部分偏离帧等)、颜色、周围环境等下的图像。库324中的图像可以由传感器(例如,相机304或任何其它相机)拍摄或自动生成,例如用配置成生成/模拟(例如,在虚拟世界中)初始化对象150或大体上类似的对象在不同光照条件、角度、大小、距离、清晰度(例如,模糊、遮挡/遮蔽、部分偏离帧等)、颜色、周围环境等下的库图像的计算机程序(例如,其可以完全以数字方式或从初始化对象或大体上类似的对象的实际图像开始生成/模拟这些库图像)。库324可用于训练机器人102在许多条件下识别初始化对象150和/或识别机器人102的方位,如将参考图6以及贯穿本公开更详细地论述。库324中的图像的数目可至少部分地取决于以下中的一个或多个:初始化对象150和/或大体上类似的对象的可用图像的数目、机器人102将在其中操作的周围环境的可变性、初始化对象150和/或大体上类似的对象的复杂度、初始化对象150和/或大体上类似的对象的外观的可变性,以及可用存储空间(例如,在存储器302中或在服务器上)的量。例如,库324可含有大致1、5、10、100、1000、10,000、100,000、1,000,000、10,000,000或任何数目个初始化对象150和/或大体上类似的对象的图像。在一些实施方案中,库324可存储在网络(例如,云、服务器等)中,并且可以不保存在存储器302内。
在一些实施方案中,外感受性传感器300可包括可以检测机器人102内和/或机器人102周围的特性的系统和/或方法。外感受性传感器300可包括多个传感器和/或传感器的组合。外感受性传感器300可包含在机器人102内部或外部的传感器,和/或具有部分在内部和/或部分在外部的组件。在一些情况下,外感受性传感器300可包含外感受性传感器,例如声纳、激光雷达、雷达、激光、相机(包含摄像机、红外相机、3D相机等)、天线、麦克风和/或本领域中已知的任何其它传感器。在一些实施方案中,外感受性传感器300可收集原始测量值(例如,电流、电压、电阻门逻辑等)和/或变换后的测量值(例如,距离、角度、障碍物中的检测点等)。在一些实施方案中,外感受性传感器300可配置成检测初始化对象150。外感受性传感器300可至少部分地基于地测量来生成数据。此类数据可以数据结构形式存储,例如矩阵、阵列等。在一些实施方案中,传感器数据的数据结构可以被称作图像。
在一些实施方案中,里程计单元326可配置成确定机器人102的测距。例如,里程计单元326可包含本体感受传感器308,本体感受传感器308可包括传感器,例如加速度计、惯性测量单元(“IMU”)、里程表、陀螺仪、速度计、相机(例如,使用视觉里程计)、时钟/定时器等等。本体感受传感器308可供里程计单元326用于测距,以促进机器人102的自主行走。此测距可包含机器人102相对于初始位置(例如,相对于初始化对象150和/或初始位置104内的初始位置)的方位(例如,其中方位包含机器人的位置、位移和/或定向,并且有时可与如本文所使用的术语位姿互换)。在一些实施方案中,本体感受传感器308可收集原始测量值(例如,电流、电压、电阻门逻辑等)和/或变换后的测量值(例如,距离、角度、障碍物中的检测点等)。此类数据可以数据结构形式存储,例如矩阵、阵列等。在一些实施方案中,传感器数据的数据结构可以被称作图像。
在一些实施方案中,用户界面318可配置成使得用户(例如,用户904)能够与机器人102交互。例如,用户界面318可包含触控面板、按钮、小键盘/键盘、端口(例如,通用串行总线(“USB”)、数字视频接口(“DVI”)、显示器端口、E-Sata、Firewire、PS/2、串行、VGA、SCSI、音频端口、高清多媒体接口(“HDMI”)、个人计算机内存卡国际协会(“PCMCIA”)端口、存储卡端口(例如,安全数字(“SD”)和miniSD)和/或计算机可读媒体的端口)、鼠标、滚球、控制台、振动器、音频转换器和/或供用户输入和/或接收数据和/或命令的任何界面,不管是以无线方式耦合还是通过导线耦合。用户界面318可包含显示器,例如但不限于液晶显示器(“LCD”)、发光二极管(“LED”)显示器、LED LCD显示器、平面内切换(“IPS”)显示器、阴极射线管、等离子显示器、高清(“HD”)面板、4K显示器、视网膜显示器、有机LED显示器、触摸屏、表面、画布和/或任何显示器、电视、监视器、面板和/或本领域中已知的用于视觉呈现的装置。在一些实施方案中,用户界面318可定位在机器人102的主体中。在一些实施方案中,用户界面318可以远离机器人102的主体定位,但是可以直接或间接(例如,通过网络、服务器和/或云)以通信方式耦合到机器人102(例如,通过包含传输器、接收器和/或收发器的通信单元)。
无线耦合可包含配置成发送/接收传输协议的无线传输,例如 Wi-Fi、感应无线数据传输、射频、无线电传输、射频标识(“RFID”)、近场通信(“NFC”)、全球移动通信系统(“GSM”)、红外、网络接口、例如3G(3GPP/3GPP2)的蜂窝技术、高速下行链路包接入(“HSDPA”)、高速上行链路包接入(“HSUPA”)、时分多址(“TDMA”)、码分多址(“CDMA”)(例如,IS-95A、宽带码分多址(“WCDMA”)等)、跳频扩频(“FHSS”)、直接序列扩频(“DSSS”)、全球移动通信系统(“GSM”)、个人局域网(“PAN”)(例如,PAN/802.15)、全球微波接入互操作性(“WiMAX”)、802.20、长期演进(“LTE”)(例如,LTE/LTE-A)、时分LTE(“TD-LTE”)、全球移动通信系统(“GSM”)等)、窄带/频分多址(“FDMA”)、正交频分复用(“OFDM”)、模拟蜂窝、蜂窝数字包数据(“CDPD”)、卫星系统、毫米波或微波系统、声学、红外(例如,红外数据协会(“IrDA”)),和/或任何其它形式的无线数据传输。
如本文中所使用,网络、服务器和/或云可包含网络接口。网络接口可包含具有组件、网络或过程的任何信号、数据或软件接口,包含但不限于那些火线(例如,FW400、FW800、FWS800T、FWS1600、FWS3200等)、通用串行总线(“USB”)(例如,USB 1.X、USB 2.0、USB 3.0、USB C型等)、以太网(例如,10/100、10/100/1000(千兆以太网)、10-Gig-E等)、同轴电缆多媒体联盟技术(“MoCA”)、Coaxsys(例如,TVNETTM)、射频调谐器(例如,带内或00B、电缆调制解调器等)、Wi-Fi(802.11)、WiMAX(例如,WiMAX(802.16))、PAN(例如,PAN/802.15)、蜂窝(例如,3G、LTE/LTE-A/TD-LTE/TD-LTE、GSM等)、IrDA系列等。如本文中所使用,Wi-Fi可包含以下中的一个或多个:IEEE-Std.802.11、IEEE-Std.802.11的变型、与IEEE-Std.802.11有关的标准(例如,802.11a/b/g/n/ac/ad/af/ah/ai/aj/aq/ax/ay),和/或其它无线标准。
有线耦合可包含有线连接,例如具有信号线路和接地的任何电缆。例如,此类电缆可包含以太网电缆、同轴电缆、通用串行总线(“USB”)、火线和/或本领域中已知的任何有线连接。此类协议可供机器人102使用以与内部系统通信(例如,机器人102的任何组件和/或子组件之间的通信)和/或与外部系统(例如,计算机、智能电话、平板电脑、数据捕获系统、移动电信网络、云、服务器等等)通信。
在本公开的一些实施方案中,外感受性传感器300包含相机306。图3B说明图3A的功能框图,其中实例相机306包含在实例外感受性传感器300中。相机306可以是用于记录图像的光学仪器。在一些情况下,图像可以是静止相片,或形成视频或电影的一系列图像(例如,帧)。作为相机306可如何拍摄图像的说明性实例,光可以通过镜头314进入封闭的盒子(例如,相机306的主体)。光可以作为图像记录在光敏介质上。介质可在一些情况下以数字方式或以模拟形式存储图像。在一些实施方案中,相机306的快门机构可控制光可以进入相机306的时间长度。如果相机306是摄像机,那么相机306可以连续拍摄一系列这样的图像,例如每秒24帧或更多帧。拍摄的每个图像可包括像素。
在一些实例实施方案中,相机306可以是红色、绿色、蓝色(“RGB”)相机,其可配置成感测三个基本颜色分量(例如,红色、绿色和蓝色)。接收到的光可以暴露到成像传感器312上,成像传感器312可包括电荷耦合装置(“CCD”)、互补金属氧化物半导体(“CMOS”)或其它材料。成像传感器312可针对图像的每个像素将光转换成电子(例如,累积电荷)以存储图像。在一些实施方案中,相机306还可为其它相机,例如可测量深度的相机,包含测距相机、闪光激光雷达、飞行时间(“ToF”)相机和RGB-深度(“RGB-D”)相机。相机306还可包括用于拍摄可见光谱之外的图像的其它专用相机,例如红外相机、超光谱相机、双光谱相机和可以对可见光谱之外的能量进行成像和/或处理的其它相机。
相机306可具有数种物理和性能性质/特性。例如,相机306可包括镜头314。镜头314可包括广角镜头、标准镜头、中摄远/肖像镜头、摄远镜头、微距镜头、鱼眼镜头和/或本领域中已知的任何其它镜头。镜头314可具有特性焦距316。焦距316可包含在对象(例如,初始化对象150)处于焦点时镜头314和图像传感器312之间的距离。在许多情况下,焦距316可以以毫米表示(例如,15mm、28mm、30mm、50mm、100mm、150mm、210mm、300mm或镜头的任何焦距)。如果镜头314是变焦镜头,那么焦距314可以在一定范围(例如,10mm到100mm等)中调整。水平视角310可以是相机306可以通过镜头314观看的最大视角,并且以度表示。在一些情况下,视角310可随着焦距316而变化。水平视角可以以度为单位进行测量,例如6度、12度、34度、47度、63度、90度、94度、180度等等。类似地,相机306可具有其它视角,例如在竖直和对角线方向上测量的视角,以及水平视角310。共同地,这些视角可形成如视场320示出的锥形或其它形状,视场320的实例在图3C中说明。
镜头314还可具有其它性质/特性,例如光学中心,所述光学中心可以是在镜头314的主轴线上的点,光通过这个点且不具有任何偏差。镜头314还可具有镜头失真效果,其中相机306使用镜头314拍摄的图像可能会呈现出弯曲和/或具有相对于它们自然外观的其它偏差。镜头失真效果可具有径向和切向分量。例如,径向失真可能是由于更远离镜头314的中心的光线比更接近中心的光线弯曲得多。切向失真可能是由于镜头314与成像平面(例如,投影平面)不完全平行而导致的缺陷。
在一些实施方案中,相机306还可具有将接收到的光缩窄到一个或多个光谱带的一个或多个滤光器。例如,相机306可具有红外滤光器,所述红外滤光器允许相机306将红外光谱中的光成像并且可以反射其它光谱中的光。
图3C说明实例机器人102检测初始化对象150的侧视图。如所说明,机器人102可以是配置成清洁商店、仓库、办公楼、住宅、储存设施等的地板的地板清洁器(例如,地板擦洗器、真空吸尘器、清扫器等)。因此,机器人102可具有配置成清洁在机器人102下方和/或周围的地板的刷子322。刷子322可以通过开关打开/关闭。
所属领域的技术人员应该了解,机器人102可具有许多不同外观/形式,即使机器人102是地板擦洗器也如此。图4A说明地板擦洗器的实例主体形式。这些是意在进一步说明体型多样性的非限制性实例,但是并不将机器人102限于任何特定的体型,甚至是地板擦洗器。实例主体形式402具有带小框架的直立形状,其中用户可以在后面推动主体形式402来清洁地板。在一些情况下,主体形式402可具有可以帮助用户进行清洁同时还可允许主体形式402进行自主移动的机动推进力。主体形式404具有比主体形式402大的结构形状。主体形式404可以是机动的,使得它除了转向之外的移动几乎不用用户在主体形式404上施力。用户可以在主体形式404移动时使其转向。主体形式406可包含座椅、操作杆和方向盘,其中当主体形式406进行清洁时,用户可以像车辆一样驾驶主体形式406。主体形式408可具有大于主体形式406的形状,并且可具有多个刷子。主体形式410可具有部分或完全包覆的区域,用户在他/她驾驶主体形式410时坐在所述区域中。主体形式412可具有平台,当用户驾驶主体形式412时他/她站在所述平台上。
又另外,如本公开中所描述,机器人102可能根本不是地板擦洗器。为了进一步说明,且不作为限制,图4B说明机器人102的主体形式的一些额外实例。例如,主体形式414说明其中机器人102是站立式车间真空吸尘器的实例。主体形式416说明其中机器人102是具有大体上类似于人体的外观的人形机器人的实例。主体形式418说明其中机器人102是具有螺旋桨的无人机的实例。主体形式420说明其中机器人102具有带轮子和乘客舱的车辆形状的实例。主体形式422说明其中机器人102是飞行器的实例。
返回到图3C,在此说明性实例中,初始化对象150是具有定位在墙壁350上的图像的标志,所述图像例如独特的图片。然而,如贯穿本公开所提到,初始化对象150不限于图像,但是可包含符号、图像、形状、物品(例如,家具、雕像、电器等)和/或任何其它对象。
初始化对象150还可包含有形对象,例如椅子、柱子、饰品等。初始化对象150可包含人类可读符号,例如文本。例如,文本可以描述初始化对象150的特性,例如位置、与位置(例如,包含位置1、2、3、4、位置A、B、C、D、位置1A、1B、1C等)相关联的文字数字、与初始化对象150相关联的路线的描述,和/或初始化对象150的任何其它特性和/或方面。在一些实施方案中,初始化对象150可以是屏幕。例如,屏幕可包含显示器,例如但不限于LCD、LED显示器、LED LCD显示器、IPS显示器、阴极射线管、等离子显示器、HD面板、4K显示器、视网膜显示器、有机LED显示器、触摸屏、表面、画布、丝网油墨技术和/或任何显示器、电视、监视器、面板和/或本领域中已知的用于视觉呈现的装置。有利的是,屏幕可以显示可以变化的图像。这种变化能力可以使用户灵活地改变路线和/或通过初始化对象150初始化的其它动作。例如,在一些实施方案中,通过初始化对象150显示的图像可对应于特定路线。用户904可以在初始化对象150的屏幕上选择对应于路线的图像。接着,机器人102可以检测屏幕上的图像。举例来说,如果机器人102正在学习路线,那么机器人102可以将路线与它在屏幕上检测的图像相关联(例如,用户904形成的和/或从多个路线中选择的路线)。如果机器人102沿着路线自主行走,那么它可以重新调用与在屏幕上检测的图像相关联的路线(例如,用户904形成的和/或从多个路线中选择的路线)。在一些实施方案中,如果屏幕是触摸屏,那么用户904可以在屏幕上绘制图像。例如,用户904可以用图说明他/她想要与学习路线相关联的任何符号、图像等,并且随后可以通过选择或重新绘制大体上类似的符号、图像等来重新调用路线。在每一种情况下,初始化对象150可以是机器人102可以通过传感器300辨识的对象。
在一些实施方案中,如果初始化对象150是图像,那么初始化对象150可以在可见光谱中实例化(例如,人类可见),就像相机306是RGB相机的情况,或者它可以在可见光谱之外实例化(例如,人类不可见),其中相机306和/或传感器300可以使用红外相机、超光谱相机和/或可以对可见光谱之外的能量进行成像或检测的其它相机和/或传感器来检测初始化对象150。在一些实施方案中,初始化对象150可以传输信号,例如无线电传输(例如,)或其它信号协议以使得机器人102能够检测初始化对象150。在一些实施方案中,初始化对象150可以发出声音,例如啁啾声、哔哔声、噪声和/或任何其它声音。在一些情况下,声音对于初始化对象150来说可以是唯一的,其中其它初始化对象可以发出其它声音。声音可以由传感器300(例如,麦克风)检测,传感器300可以使用所述声音来对初始化对象150的位置进行识别和/或三角测量。在一些实施方案中,初始化对象150可同时包含人类可见和人类不可见的要素。有利的是,同时具有人类可见和人类不可见的要素可有助于用户指示机器人102检测初始化对象150。在一些情况下,可见部分可以比不可见部分小和/或比其更不显眼。如所说明,传感器300可以定位在离地面高度330处,其中高度330可以至少部分地基于初始化对象150的预期方位和/或为捕获视场320内的初始化对象150传感器300所应该位于的位置来确定。
图5说明在实例初始化对象150是具有图像的标志的情况下可以使用的实例二进制图像502、504、506。实例二进制图像502、504、506仅用于说明,且并不意图限于在初始化对象150是标志的情况下可以使用的图像。例如,初始化对象150可包含任何对称或不对称图像。
举例来说,二进制图像502具有白色边框508,白色边框508框定具有黑色背景546的白色形状510、512。在一些情况下,白色边框508可以具有可有助于检测的拐角和/或边缘。通过白色边框508,黑色背景546可以更清楚地与周围环境区分开以便机器人102进行检测。然而,例如实例二进制图像504的一些二进制图像可能不具有边框。在一些情况下,白色形状510、512可以是机器生成的块状形状,其中所述形状由大体上为方形和/或矩形的连续块构成。在一些情况下,二进制图像可具有一个或多个不同(例如,不连续)的形状。例如,二进制图像506包括一个白色形状514。二进制图像504包括白色形状516、518、520。
将二进制图像502、504、506中的一个用作初始化对象150可以是有利的,因为每个二进制图像都是不太可能以其它方式出现在周围环境中的独特图像。并且,因为二进制图像502、504、506是二进制的(例如,黑色和白色),所以它们可不同于会出现的自然颜色。图像502、504、506的块状白色形状和二进制颜色还使得它们易于被如相机306的低分辨率RGB相机检测到。并且,二进制图像502、504、506不具有旋转对称性,使得初始化对象150的旋转也可以被检测到。二进制图像502、504、506的一般检测能力可使得机器人102能够以低硬件成本(例如,比较便宜的组件)和低处理成本(例如,涉及相对较少的计算能力)检测二进制图像502、504、506中的任一个。此外,二进制图像502、504、506的制造成本可能较低,并且可以具有许多组合,其中多个组合可以通过计算机随机生成。具有许多组合可使得不同二进制图像能够放置在与不同的可行走路线相关联的不同位置处。
初始化对象150可具有多个侧面和拐角,包含右侧、左侧、顶侧、底侧、左上角、右上角、左下角、右下角,或任何侧面、拐角和/或边缘的任何其它相对指定。作为说明性实例,二进制图像502可具有左侧530、右侧534、顶侧532和底侧536,如所说明。二进制图像502还可具有左上角540、右上角544、左下角538和右下角542。
如所提到,初始化对象150可包含除二进制图像(例如,二进制图像502、504、506)之外的其它图像。例如,初始化对象150可以大体上类似于二进制图像(例如,二进制图像502、504、506),除了使用除黑色和/或白色之外的不同颜色,或多种颜色,包含在可见光谱中可见的颜色和/或在可见光谱中不可见的颜色(例如,可通过机器或在机器辅助下使用UV、IR等看到)。有利的是,在可见光谱中不可见的颜色可以减少或阻止非所要的人类对初始化对象的观看。在一些实施方案中,初始化对象150可以是场景、物体、个人等的图像。在任何情况下,同样如先前在本公开中所描述,初始化对象150可以是任何图像、标志、物体和/或可以被计算机辨识出的任何对象。
图6说明可以用来对机器人102机械能初始化以沿着学习路线自主行走的实例方法600的过程流程图。例如,在教示阶段614中的部分602、604、606中,机器人102可以学习由用户904演示的路线116。随后,在自主行走阶段616中的部分608、610、612中,机器人102可以沿着如路线106、126或大体上类似的路线的路线116自主行走。
部分602可包含机器人102检测初始化对象150。初始化对象150的这一第一检测可开始机器人102的初始化过程。使用外感受性传感器300得到的初始化对象150的外观可以存储在存储器302中,以便机器人102识别初始化对象150。例如,如果初始化对象150是二进制图像(例如,二进制图像502、504、506中的一个),那么二进制图像可以存储在存储器302中。
在一些实施方案中,传感器300可以感测它的周围环境(例如,在传感器300的视角内),并且控制器304可以处理从传感器300获得的数据并分析所述数据以检测初始化对象150。例如,如果传感器300包含相机306,那么相机306可以拍摄其周围环境的图像(例如,单个图像和/或视频中的一系列图像)。控制器304可以分析每一个拍摄的图像(例如,由传感器300(例如,相机306)拍摄的图像),并针对初始化对象150分析那些拍摄的图像。在二进制图像(例如,二进制图像502、504、506)的情况下,分析可包括图像处理。举例来说,控制器304可获得由相机306拍摄的图像,并执行一系列图像处理技术以使得二进制图像可以被检测到。
在一些实施方案中,库324可包括初始化对象150和/或大体上类似的对象的一个或多个图像,所述一个或多个图像可用于在拍摄的图像中识别初始化对象150。例如,库324可用于监督或非监督机器学习算法,以供控制器304学习在拍摄的图像中识别初始化对象150。例如,初始化对象150和/或大体上类似的对象的位置可以在库324中的一个或多个图像中识别出(例如,由用户标记(例如,手动标记)或自动标记,例如用配置成生成/模拟初始化对象150和/或大体上类似的对象的库图像和/或标记那些库图像的计算机程序)。在一些实施方案中,库324中的这些图像可包含初始化对象150和/或大体上类似的对象在不同光照条件、角度、大小(例如,距离)、清晰度(例如,模糊、遮挡/遮蔽、部分偏离帧等)、颜色、周围环境等下的图像。根据库324中的这些图像,控制器304可首先训练成在许多不同情形中识别初始化对象150和/或大体上类似的对象,然后使用所述训练在给定拍摄的图像中识别初始化对象150。
在一些实施方案中,控制器304可以比较拍摄的图像与库324中的标记图像。如果拍摄的图像和库324中的一个或多个图像之间大体匹配,那么控制器304可至少部分地基于初始化对象150和/或在库324中标记的大体上类似的对象的一个或多个图像来识别初始化对象150。
在一些实施方案中,拍摄的图像和库324中的一个或多个图像之间的匹配程度可以通过比较来确定。例如,可以获得拍摄的图像和来自库324的一个或多个图像之间的差异。这种差异可以至少部分地在差分图像中表示出。接着,可以评估差分图像以确定拍摄的图像和来自库324的一个或多个图像之间的相似度。举例来说,控制器304可以取差分图像的多个像素的总和(例如,算术总和、绝对值的总和等),并比较所述总和与预定阈值,其中预定阈值可以至少部分地基于假阳性的稳健性和容差来确定。如果差的总和超过预定阈值,那么控制器304可以确定尚不存在匹配,因为差过大。作为另一实例,可使用图像比较器,所述图像比较器执行比较图像以确定它们的相似度并在一些情况下确定相似度百分比的方法。这些比较器可以逐像素地、逐区域地和/或基于图像的形状或不同特征来分析拍摄的图像和来自库324的一个或多个图像,以寻找相似性和/或差异。
在一些实施方案中,可使用初始化对象150和/或大体上类似的对象的图像的库324,以及用于在每一个拍摄的图像中搜索初始化对象150的其它图像处理技术。例如,在一些实施方案中,控制器304可以执行边框跟随和/或轮廓跟踪以提取拍摄的图像中的边界。初始化对象150的边框可以特别容易地检测初始化对象150对比它周围环境的位置。例如,如果初始化对象150具有不同于它周围环境的唯一图案或颜色,那么初始化对象150可以与它的周围环境形成对比,并且可以容易地识别出它的边框。作为说明性实例,二进制图像(例如,二进制图像502、504、506)的黑色和白色可以在许多环境中突显,并与周围环境形成对比。
在一些实施方案中,控制器304可对拍摄的图像执行分割。例如,如果初始化对象150是二进制图像,那么自适应阈值处理可以分割二进制图像。有利的是,分割可以减少假阳性并减少拍摄的图像中的噪声。拍摄的图像在分割之后和/或之前还可以利用形态图像处理(例如,用于去除噪声的侵蚀和扩张)、滤光器等进行进一步清理。在一些情况下,如果初始化对象150的形状是不同的(例如,如二进制图像502、504、506的方形和/或矩形),那么可以从拍摄的图像中去除不具有大体上相同的形状(或从各种成像角度可以看到的形状的变形/变换形式)的对象。例如,如果初始化对象150是方形和/或矩形的,那么拍摄的图像中不具有凹形轮廓的对象和/或具有四个不同拐角的对象可以被忽略和/或不进行处理。接着,库324的一个或多个图像可用于通过比较来检测拍摄的图像中的初始化对象150。在一些情况下,在通过相机306获得的所拍摄图像中的每一二进制图像内的白色形状(例如,白色形状516、518、520)的确切图案可以通过控制器304与库324的一个或多个图像进行比较。通过这种方式,初始化对象150的存在和位置可以在拍摄的图像中识别出。
在一些实施方案中,可存在多个初始化对象。在一些情况下,多个初始化对象可各自指示学习路线和自主行走路线的不同初始位置。例如,不同初始化对象可用于建筑中的不同楼层,其中机器人102至少部分地基于那些不同的初始化对象的检测而在不同楼层上沿着不同路线行进。作为另一实例,不同初始化对象可以在相同楼层上,但是至少部分地表示不同初始位置,并因此至少部分地表示机器人102可以行进的不同路线。因而,不同初始化对象具有不同外观以免错误识别可能是有利的。在二进制图像的情况下,白色形状的图案对于不同初始化对象来说可为不同的。
在一些实施方案中,初始化对象150的检测可以与通过其它传感器进行检测配对。有利的是,使用通过其它传感器进行的检测可以解决初始化对象150移动和/或环境已显著改变的情形。其它传感器的这种使用可以实现信号冗余和/或增强的安全性。举例来说,另一传感器可以是配置成使场景成像的激光扫描激光雷达。在一些情况下,图像可以是从获自扫描激光雷达的数据压缩的3D图像或2D图像。一个或多个扫描激光雷达图像可以与对初始化对象150的有效检测相关联。在初始化对象150的检测与通过其它传感器进行的检测配对的这些情况下,机器人102既可以确定是否已检测到初始化对象150,又可以确定扫描激光雷达图像是否大体上类似于与初始化对象150的检测相关联的一个或多个扫描激光雷达图像。通过这种方式,机器人102(例如,机器人102的控制器304)可以使用扫描激光雷达图像来验证初始化对象150。
部分604可包含机器人102确定它相对于在部分602中检测到的初始化对象150的方位(例如,其中方位包含机器人位置、位移和/或定向,并且有时可与如本文所使用的术语位姿互换)。作为说明性实例,图7说明以相对于实例初始化对象150成一实例角度定位的实例机器人102的顶视图,其中实例传感器300测量实例传感器300上的实例点794到实例初始化对象150的实例点792的实例距离724和实例角度718。点796可以是定位在机器人102上的另一个点,例如中心、质量中心、另一传感器上的方位(例如,在本体感受传感器308上的点),或机器人102上的任何其它点。
点792可以是初始化对象150上的参考点。例如,点792可以是中心(例如,在初始化对象150的竖直和水平方向上的中点)、拐角点(例如,左上角(例如,二进制图像502的左上角540)、右上角(例如,二进制图像502的右上角544)、左下角(例如,二进制图像502的左下角538)、右下角(例如,二进制图像502的右下角542)、边缘中点(例如,右侧(例如,二进制图像502的右侧534)的中点、左侧(例如,二进制图像502的左侧530)的中点、底侧(例如,二进制图像502的底侧536)的中点、顶侧(例如,二进制图像502的顶侧532)的中点),或安置在初始化对象150上和/或在初始化对象150中的任何方位。点794可以是传感器300的测量系统的一部分,例如镜头312的中心(例如,物理中心和/或光学中心)或在传感器300上和/或在传感器300中的任何其它点。
如所说明,机器人102可包含具有多个侧面的主体,例如前侧702、右侧708、左侧706和后侧704。机器人102还可具有顶侧764和底侧(未绘出)。所属领域的技术人员应该了解,机器人102同样可以具有对应于机器人102的表面的其它侧面,所述其它侧面可以根据形状(例如,矩形、锥形、人形或任何设计的形状)而变化。举例来说,前侧702可定位在机器人102的前向侧上,其中前向侧在机器人102的向前移动方向上向前。后侧704可定位在机器人102的后向侧上,其中后向侧是面向与例如前侧702的前向侧大体上相反的方向的侧。右侧708可以是前侧702的右手侧,且左侧706可以是前侧702的左手侧。如图7中所说明,机器人102可具有额外的传感器,例如额外的外感受性传感器700A-700C,它们可以大体上类似于外感受性传感器300或任何其它传感器,及额外的本体感受传感器710,它们可以大体上类似于本体感受传感器308或任何其它传感器。因此,机器人102可利用一个或多个传感器(例如,传感器300、700A-700C)来检测初始化对象150和/或相对于初始化对象150对机器人102进行初始化。例如,如果初始化对象150定位在右侧708、左侧706、前侧702、后侧704、顶侧764或底侧中的一个或多个的近侧,那么可以使用定位在那些侧面上和/或在那些侧面周围的传感器来检测初始化对象150,并确定机器人102相对于初始化对象150的方位。在一些情况下,将机器人102定位在便于开始行走的相对于初始化对象150的一位置处可为有利的。例如,使初始化对象150在右侧708或左侧706的近侧,其中机器人102面向它将要沿着路线行走的方向,可使得机器人102能够在行走之前最大限度地减少操纵(例如,掉头)。在一些情况下,初始化对象150可定位在天花板上。
机器人102可测量点794和点792之间的距离724,距离724可以是使用标准单位的绝对距离测量,所述标准单位例如英寸、英尺、米或任何其它测量单位(例如,公制测量、US或其它测量系统)。在一些实施方案中,距离724可以以相对和/或非绝对单位进行测量,所述相对单位例如刻度、像素、传感器范围的百分比等等。在一些实施方案中,距离724可以表示为相对于原点的x和y坐标,所述原点例如点792、点794、点796或任何其它确定的位置。在这些情况下,x坐标可以是相对于第一轴到原点的距离,y坐标可以是沿着第二轴到原点的距离,第二轴正交于第一轴,从而形成直角坐标系。因此,距离724可以是点792和点794的x坐标和y坐标之间的差。在一些情况下,距离724可以表示为三个维度,所述三个维度包含前述x和y坐标,以及z坐标,其中z坐标可以是沿着第三轴到原点的距离。
机器人102还可估计它的定向。在一些实施方案中,机器人102可估计点794和点792之间的相对角度718。角度718可以度、弧度或任何单位的形式来测量。在一些实施方案中,角度718可以相对于2D平面来测量,所述2D平面例如水平面(例如,前述距离724或其它测量的直角坐标系)在一些实施方案中,还可以测量额外的角度,例如点792相对于点794的倾斜角、偏航角和俯仰角中的一个或多个。因此,通过机器人102确定相对于初始化对象150的方位可包含确定从机器人102上的点到初始化对象150上的点的距离,以及那些点之间的定向。
在一些实施方案中,为了确定点794相对于点792的方位,机器人102可以识别检测到初始化对象150的传感器300的性质/特性。在一些实施方案中,这些性质/特性可以表示为详述传感器300的各方面的校准参数。
作为说明性实例,如果传感器300包含相机306,那么相机306的性质/特性可以确定为校准参数。这些校准参数可包含焦距、失真、视角、失真效果、高宽比、地面高度等。基于相机306的规格和/或相机306的设置/定位,这些校准参数可以是用户已知的。例如,镜头314和相机306可以按照可被机器人102(和/或其组件和/或子组件中的任一个)或用户得知的规范制造。在一些情况下,机器人102的用户904可测量此类校准参数例如通过测量相机306离地面的高度。
在一些情况下,相机306(包含镜头314)的性质/特性中的一个或多个可以根据相机306拍摄的一个或多个图像估计。例如,通过相机306拍摄的图像和相机306的性质/特性之间的关系可能是已知的。作为说明性实例,图8说明在实例图像800中表示的实例初始化对象150。在一些情况下,相机306可以拍摄包含例如初始化对象150的对象的场景的图像800。初始化对象150(在图8中说明为在墙壁350上具有二进制图像的实例标志)处于在坐标系804中具有坐标(x,y,z)的三维空间。在坐标系802中具有坐标((x图像,y图像)的二维空间中,视场320中的场景可以在图像800中捕获。因此,场景中的坐标中的至少一些可以在具有坐标(x图像,y图像)的像素位置处在图像800中捕获,其中x图像=fx(X/Z)+cx,且y图像=fy(Y/Z)+cy,其中fx和fy可以分别是x图像和y图像方向上的焦距。常量cx和cy可以分别是在x图像和y图像方向上图像800上的坐标中心相对于光轴的位移。知道这些关系可使得相机306能够校准,例如由计算机实施的校准,使得可以校正失真的图像。这些关系和校准它们的方式论述于J.Heikkila和O.Silven的《具有隐式图像校正的四步相机校准程序(A four-step cameracalibration procedure with implicit image correction)》,计算机视觉和模式识别,1997,。会议记录,1997年IEEE计算机学会会议,San Juan,1997,第1106-1112页,其以全文引用的方式并入本文中以及本领域中的其它地方。可以存在其它用于从图像800查找校准参数和/或校准相机306的系统和方法。本公开的实施方案不限于任何特定系统或方法。应注意,并非视场320中的所有坐标都会出现在图像800中。例如,仅视场320的一部分可显现为图像800。如图8中所说明,视场320被说明为圆形,但是图像800是矩形的。在所说明的非限制性实例中,图像800表示视场320的矩形部分。所属领域的技术人员应了解,图像800是为了说明,并且图像800可以包括具有不同于所说明的特性(例如,角度、亮度、失真、遮挡/遮蔽、部分图片等)的其它视图。
然后,对点794(和/或点796)相对于点792的方位的估计可以利用位姿估计系统和方法。例如,此类位姿估计系统和方法可包含分析或几何方法和/或基于学习的方法。
例如,如果使用分析或几何方法,那么图像800中的每一2D点的位置可以被视为从3D场景(例如,视场320中的场景)到2D图像的映射。通过这种方式,初始化对象150可以是投影到图像800上。因为相机306的校准参数和初始化对象150的几何结构同样可能是已知的,所以可以找到将包含初始化对象150的场景中的3D点与2D图像800关联的函数。存在许多此类函数,其中的一些在本领域中是众所周知的。例如,投影相机模型可以采用P-CS形式,其中P是表示图像中的2D点(例如,像素)的矩阵,S是表示场景中的3D点的矩阵,C是相机矩阵,并且-至少部分地指示公式的左侧、右侧等于非零标量乘法。
在一些情况下,C可另外包括至少部分地基于相机306的各种校准参数的值,所述校准参数例如焦距、切向和径向失真系数、光学中心、高宽比等中的一个或多个。在一些情况下,C自身可以表示为多个矩阵的乘积。例如,在一些情况下,C=A[R t],其中A是相机内在矩阵(例如,含有相机306的特性),且[R t]包含外在参数(表示为矩阵形式),例如将场景坐标(例如,坐标系804)与2D图像坐标(例如,坐标系802)关联的旋转和平移。旋转R和转变t可以得到初始化对象150的方位。因此,至少部分地基于已知的相机内在函数和图像800中的初始化对象150的位置来估计[R t]可使得机器人102能够找到机器人102相对于初始化对象150的方位。例如,在一些实施方案中,A可以是3x3矩阵,表达为:
在上方A的矩阵中,(μ0,ν0)可以是主点(例如,坐标系(x图像,y图像)中的图像中心和/或光学中心)的坐标,α和β可以分别是图像和y图像轴线的比例因数,f可以是焦距,γ可以表示图像坐标的轴线的偏斜度。R可以是3x3旋转矩阵,t可以是3维平移向量。因此,在一些实施方案中,
在一些实施方案中,t可以是表示为以3D相机为中心的坐标系的坐标的场景坐标系(例如,坐标系804)的原点的方位,其中相机306的镜头314的孔可以是原点。使用变换,平移t可以变换成场景坐标。在一些情况下,M可以是描述镜头314的孔在场景坐标中的位置的列向量。RC可以是相机306相对于场景坐标轴的定向,且RC=RT,其中RT是矩阵R的转置。因此,在一些实施方案中,平移向量可以通过关系式t=-RM表达为M的乘积。
在一些实施方案中,控制器304可由此针对Itc、M、R、t或任何其它参数中的一个或多个对形式P-CS的表达式进行求解,由此找到场景坐标(例如,其中坐标可以以例如点792、794、796中的一个或初始化对象150、机器人102或环境中的其它地方上的另一个点的点为中心)中的相机306的方位。控制器304可以使用熟知的包含直接线性变换(“DLT”)等等的数学方法来求解出方位。还可在非线性模型中考虑镜头314的失真(例如,径向和/或平移),其中非线性模型可以通过非线性估计技术来求解。
鉴于本公开的内容,所属领域的技术人员将了解可以使用其它相机模型,包含其它针孔相机模型和/或本领域中已知的用于3D到2D投影的其它模型。然后,这些模型可以基于找到相机306相对于场景坐标系(例如,坐标系804)中的点(例如,点792、点794或点796)的方位/位姿来进行求解。
作为另一说明性实例,基于学习的方法可供机器人102用于查找点794、796中的一个或多个相对于点792的方位,如图7中所说明。作为说明性实例,库324可包括初始化对象150和/或大体上类似的对象的实例图像,所述实例图像至少部分地描绘在各个方位(例如,坐标系中的距离和/或定向/角度)的初始化对象150和/或大体上类似的对象。接着,库324可以用于监督或非监督的机器学习算法,以供控制器304学习从拍摄的图像(例如,图像800)中识别/关联点794、796中的一个或多个相对于点792的方位。库324的图像可以用它们相应的对应的测得的点794、796中的一个或多个相对于点792的方位来进行识别(例如,由用户标记(例如,手动标记)或自动标记,例如用配置成生成/模拟初始化对象150和/或大体上类似的对象的库图像和/或标记那些库图像的计算机程序)。在一些实施方案中,库324还可包含初始化对象150和/或大体上类似的对象在不同光照条件、角度、大小(例如,距离)、清晰度(例如,模糊、遮挡/遮蔽、部分偏离帧等)、颜色、周围环境等下的图像。根据这些图像,控制器304可以首先训练成至少部分地基于库324中初始化对象150和/或大体上类似的对象在许多不同情形中的对应图像来识别点794、796中的一个或多个相对于点792的方位。然后,机器人102可以使用所述训练在拍摄的图像中识别点794、796中的一个或多个相对于初始化对象150的方位。
在一些实施方案中,控制器304可以处理每一个拍摄的图像(例如,图像800),并比较所述拍摄的图像与库324中的一个或多个图像(例如,库图像)。在一些情况下,如果拍摄的图像大体上匹配(例如,使用先前参考部分602描述的匹配系统和方法中的任一个)库324中的一个图像或多个图像,控制器304可以根据拍摄的图像将点794、796中的一个或多个相对于点792的方位识别为与匹配的图像或来自库324的多个图像相关联的方位大体上相同。在一些情况下,如果拍摄的图像大体上不匹配库324中的图像,那么控制器304可以至少部分地基于可能并不完全匹配的库324中的类似图像来估计点794、796中的一个或多个相对于点792的方位。在一些情况下,控制器304可以对对应于库324中的类似图像的多个位置求平均(和/或至少部分地基于所述所述多个位置而执行其它统计估计),以提供在拍摄的图像上点794、796中的一个或多个相对于点792的方位的估计。
因此,根据用于部分604的任何系统或方法,机器人102可以确定点794、796中的一个或多个相对于点792的方位。在一些情况下,如果点794相对于点792的方位是已知的,那么还可以找到点796相对于点792的方位。例如,因为可以测量出点794相对于点796的定位(例如,以x、y、z坐标和/或角度形式),所以还可以找到点796相对于点792的方位。举例来说,点796相对于点792的方位可以至少部分地基于点794相对于点792的方位并使用算术来计算,例如通过将点796和点794之间的角度和/或点796和点794之间的x、y和/或z坐标的差与点794相对于点792的方位相加。
在一些实施方案中,场景坐标系的原点可以被视为点792、点794、点796或任何其它点。有利的是,将点792标识为原点可以提供潜在静止的对象作为原点,从而可以实现路线106、116、126和/或从初始化位置开始行走的任何其它路线的原点相对于初始化对象150之间的一致性。
在已知点794、796中的一个或多个相对于点792的方位的情况下,机器人102还可对其里程计单元326中的里程计进行初始化。在一些情况下,机器人102可以对本体感受传感器308初始化。例如,知道点794、796中的一个或多个相对于点792的初始位置可允许机器人102知道其初始位置。接着,它可以跟踪它相对于初始位置和/或点792移动到的其它方位。这可允许机器人102确定它沿着演示路线116行进的方位中的一个或多个,以及它例如沿着路线106、126自主行走的时间。
返回到图6,部分606可包含机器人102学习路线。在一些实施方案中,用户904可发起路线学习,例如通过借助实例界面900指示机器人102学习路线。图9A说明用于从用户接收输入以开始学习(例如,从用户904的教示)路线或选择路线的实例界面900。例如,用户904可以在用户界面318上的界面900上选择输入972,其中输入972可允许用户选择机器人102的记录路线。在一些实施方案中,机器人102可通过检测到初始化对象150而自动开始学习路线。例如,如果机器人102没有路线存储在存储器302中,那么它可以自动开始学习用户904执行的任何动作和/或路线,以及那些动作相对于初始化对象150和/或本公开中所描述的任何其它点的方位和/或轨迹。
至少部分地基于用户904的输入,机器人102可以对路线学习进行初始化。机器人102可以开始学习从机器人102检测到初始化对象150的初始位置开始的路线。作为说明性实例,图9B说明用户904在教示路线时控制机器人102的侧视图。用户904可以是清洁工、管理员和/或可以使用机器人102的任何人或机器人。如所说明,机器人102可以是配置成清洁商店、仓库、办公楼、住宅、储存设施等的地板的地板清洁器。因此,机器人102可具有刷子908和刮板912,所述刷子908和刮板912配置成清洁在机器人102下方和/或周围(例如,在刷子908和刮板912的触及范围内)的地板。
用户904可以向机器人102演示路线116(在图1B中说明)。沿着所述路线,机器人102还可以学习与沿着路线116的方位(例如,相对于参考点,例如点792中的一个或多个或任何其它点)和/或轨迹(例如,当在特定方向上移动或沿着路线106以特定顺序移动时)相关联的动作和/或致动器指令,例如使刷子908致动以清洁地板。机器人102可以用任何数目个方式进行配置以供用户904控制。如所说明,当机器人102在机动动力下向前移动时,用户904可以走在机器人102后面和/或使用方向盘910使机器人102转向。在其它实施方案中,机器人102可以是骑乘式地板清洁器(未绘出),其中用户904可骑在机器人102的座椅或站立平台上并控制机器人102。在一些实施方案中,用户904可以用远程控制器远程控制机器人102,所述远程控制器例如无线电遥控、移动装置、操纵杆和/或本领域中已知的用于导航的任何其它设备。此控制可包含向左转、向右转、向前移动(例如,使用油门踏板或告知机器人102向前走)、向后移动(例如,使用倒档踏板或告知机器人102向后走)、打开/关闭、抬起/降低刷子、打开/关闭水等。在一些实施方案中,用户904可以控制一个或多个致动器,所述致动器可以控制机器人102的仪器,例如打开/关闭水、喷水、打开/关闭真空吸尘器、移动真空软管位置、挥动臂、抬起/降低升降器、转动相机306、使传感器300、308、700A-700C致动等。机器人102还可学习相对于它的路线116(例如,机器人102沿着路线116的方位和/或轨迹)控制此类仪器。例如,如果机器人102是学习路线116的地板清洁器,那么机器人102还可学习何时沿着路线116使机器人102上的这些不同仪器致动,例如刷子908和/或刮板916。在一些实施方案中,如果动作和/或致动器指令与方位和/或轨迹相关联,那么在自主行走时,机器人102可在它经过一方位时和/或在一些情况下,在它沿着相同方向和/或在与学习路线相同的相对时间经过所述方位时执行那些动作和/或致动器指令。因此,在这些实施方案中,机器人102在它每次经过一方位(例如,它环绕所述方位且多次经过相同的物理位置)时将不执行那些动作和/或致动器指令,而是仅在它沿着特定方向或沿着路线在特定时刻经过所述位置时才执行此类动作和/或此类致动器指令。
接着,机器人102可以在存储器302中存储路线116和沿着路线116的任何相关联的动作,包含沿着路线116的位置测量的机器人102的方位和/或轨迹。机器人102还可使用传感器300、700A-700C中的一个或多个来记录在机器人102的周围环境中感测到的物体(例如,物体906)。例如,一个或多个传感器300、700A-700C可发射能量波960A-C来检测机器人102周围的物体。以此方式,机器人102可以在学习路线116时同时使用它的里程计(例如,具有里程计单元326的本体感受传感器308)和它的外感受性传感器(例如,外感受性传感器300、700A-C)来感测它的周围环境。例如,机器人102可以学习与它相对于点792的方位和/或轨迹相关的任何控制。举例来说,机器人102可以学习在某些方位处,和/或在它沿着某些方向到达某些方位和/或相对于学习路线处于某些点时转弯。机器人102可以学习在处于某些方位时,和/或在它沿着某些方向到达某些方位和/或相对于学习路线处于某些点时,使刷子908致动。机器人102可以学习将任一种动作与相对于点792或任何其它点的特定方位和/或轨迹相关联。传感器300、700A-700C可以检测物体,使得机器人102可以在存储在存储器302中的地图上绘制那些物体的位置,和/或在它遇到物体时可以避开。机器人102可以使用同时定位与地图绘制(“SLAM”)、扩增现实、尺度不变特征变换(“SIFT”)和/或其它系统和方法来绘制环境100和/或路线116。
如所提到,当演示路线116时,用户904可以开始于相对于初始化对象150的初始位置,并结束于结束位置114。通过这种方式,用户904可以演示整个路线116。在一些实施方案中,结束位置114可以通过检测初始化对象150或不同的初始化对象来确定。通过这种方式,机器人102在结束位置114处的方位可以在结束位置114处进行验证。有利的是,通过验证机器人102在结束位置114处的方位,机器人102可以比较机器人102的里程计与验证的方位,并确定里程计的偏离。这可以在机器人102绘制环境和/或路线时促进错误的识别和校正。如果机器人102在初始位置和结束位置114处都检测到初始化对象150,机器人102的路线可大体上为闭环。
返回到图6,部分608包含再次检测初始化对象150。此第二检测可与机器人102到相对于初始化对象150的初始位置中的第二放置一致。此检测可在部分606之后的稍后时间点进行,例如大体上正好在部分606的演示之后,或在稍后的某一时间,例如数小时后、数天后、数周后,或每当用户904想要清洁地板时。在部分608中,机器人102可以通过一种大体上类似于相对于部分602的机器人102检测初始化对象150的方式的方式来检测初始化对象150。
接着,部分610可包含机器人102以一种大体上类似于机器人102确定它相对于在部分602中检测到的初始化对象150的方位的方式的方式来确定机器人102相对于在部分608中检测到的初始化对象150(例如,点792)的方位。
部分612可包含机器人102选择自主行走的记录路线。在一些实施方案中,机器人102对记录路线(例如,路线116)的选择可以至少部分地基于用户输入。例如,用户904可以在用户界面318上的用户界面900(在图9A中说明)上选择输入972,其中输入972可使得用户能够选择机器人102的记录路线。在选择输入972之后,可以呈现图10中所说明的界面1000。图10说明可用于路线选择的实例界面1000。界面1000可呈现显示为可选择输入1002A-1002F的多个路线以供选择。在用户界面318包含触摸屏和/或用户界面318的任何其它输入机构的情况下,用户904可以通过触摸选择可选择输入1002A-1002F中的一个。例如,在一些实施方案中,输入1002F可与路线116和/或在部分606中学习的任何其它路线对应。当用户904选择输入1002F时,机器人102可以接着选择并至少部分地基于用户904的选择而重新调用对应的学习路线。在一些情况下,当机器人102检测初始化对象150时,它可以过滤存储器中的路线,以便仅呈现用于选择的与初始化对象150相关联的那些路线。这一能力可以有利地避免混淆并防止用户904选择不可从相对于初始化对象150的特定方位行走的路线。
在一些实施方案中,机器人102可以基于它在部分608中检测到的初始化对象来自动选择记录路线。例如,初始化对象150可以仅与演示路线116相关联。
图11说明具有多个实例初始化对象150、1150A-1150C的实例环境100。例如,初始化对象150可以仅与演示路线116相关联。类似地,机器人102可具有定位在环境100中的一个或多个位置处的其它初始化对象1150A-C,每一初始化对象与其它演示路线相关联,且每一初始化对象150、1150A-1150C可通过唯一特性与其它初始化对象区分。有利的是,具有多个初始化对象150、1150A-1150C可允许用户演示,并允许机器人102验证各种路线自主移动。此外,通过使机器人102基于初始对象而自动选择记录路线,机器人102可以更快速地开始自主行走,同时额外的用户输入最少。当存在多个楼层和/或环境时,额外的初始化对象可为有利的。每一楼层和/或环境可具有它自己的初始化对象,所述初始化对象可通过唯一特性与其它初始化对象区分。在一些情况下,多个初始化对象中的每一个自身可与多个用户可选择的路线相关联。
一旦通过用户选择或自动地选定路线,机器人102就可以沿着所述路线自主行走。例如,机器人102可沿着路线106和/或路线126自主行走。在一些实施方案中,用户可以至少部分地基于预定动作和/或机器人102的预定动作序列来选择路线,例如至少部分地在用户控制下的动作,而不是使用用户界面来选择。例如,在一些实施方案中,用户904可以输入与路线相关联的一系列动作(例如,向左转、向右转、倒车、向前移动等)。当机器人102接收此类动作序列时,它可以重新调用特定路线,并沿着所述路线行走。作为另一实例,用户904可以特定方式控制机器人102,例如以8字形、方形和/或以一个或多个字母或数字(例如,“B”“R”、“7”和/或任何其它字母或数字)的形状控制。此控制可以至少部分地与路线相关联。当机器人102检测到已以此类一个或多个字母或数字的形状控制机器人102时,它可以重新调用与受控制的形状相关联的路线并沿着所述路线行走。
图12说明用于操作实例机器人102的实例方法1200。部分1202包含在机器人处于第一位置时拍摄初始化对象的第一图像。部分1204包含当机器人处于第一位置时,至少部分地基于第一图像确定机器人相对于初始化对象的第一开始方位。部分1206包含从第一位置开始,通过用户演示学习路线,其中学习路线将机器人的动作与机器人相对于初始化对象的方位相关联,其中至少部分地根据第一开始方位来确定所述方位。部分1208包含在机器人处于第二位置时拍摄初始化对象的第二图像。部分1210包含当机器人处于第二位置时,至少部分地基于第二图像确定机器人相对于初始化对象的第二开始方位。部分1212包含当至少部分地基于机器人相对于初始化对象的方位,指示机器人执行一个或多个相关联的动作时,使机器人从第二位置开始沿着学习路线的至少一部分自主行走,其中至少部分地根据第二开始方位来确定所述方位。
如本文中所使用,计算机和/或计算装置可包含但不限于个人计算机(“PC”)和微型计算机(不论是台式电脑、膝上型计算机还是其它)、大型计算机、工作站、服务器、个人数字助理(“PDA”)、手持式计算机、嵌入式计算机、可编程逻辑装置、个人通信器、平板电脑、移动装置、便携式助航设备、配备J2ME的装置、蜂窝电话、智能电话、个人集成通信或娱乐装置,和/或能够执行指令集并处理传入数据信号的任何其它装置。
如本文中所使用,计算机程序和/或软件可包含执行功能的任何序列或人类或机器可识别的步骤。此类计算机程序和/或软件可以用任何编程语言或环境来呈现,包含例如C/C++、C#、Fortran、COBOL、MATLABTm、PASCAL、Python、汇编语言、标记语言(例如,HTML、SGML、XML、VoXML)等等,以及面向对象的环境,例如公共对象请求代理结构(“CORBA”)、JAVATM(包含J2ME、Java Bean等)、二进制运行环境(例如,BREW)等等。
如本文中所使用,连接、链路、传输信道、延迟线和/或无线可包含任何两个或更多个实体(不论是物理的还是逻辑/虚拟的)之间的因果关系,它能够实现实体之间的信息交换。
将认识到,虽然按照方法的步骤的特定顺序描述本公开的某些方面,但这些描述仅说明本公开中的较广泛方法,且可根据特定应用的需要加以修改。在某些情况下,某些步骤可能是不必要的或是任选的。此外,可将某些步骤或功能性添加至所公开的实施方案,或置换执行两个或更多个步骤的次序。认为所有此些变化皆涵盖于本文中公开和要求保护的公开内容内。
虽然以上详细描述已展示、描述并指出适用于各种实施方案的本公开的新颖特征,但应了解,所属领域的技术人员可在不背离本公开的情况下对所说明的装置或方法的形式及细节作出各种省略、替换及改变。先前描述为当前涵盖的进行本公开的最佳模式。此描述绝不意味着限制,而是应被视为对本公开的一般原理的说明。应参考权利要求书来确定本公开的范围。
虽然已经在图式和上述说明中详细展示并描述了公开内容,但是此类说明和描述应该视为说明性或示范性的而不是限制性的。本公开不限于所公开实施例。所属领域的技术人员在实践要求保护的公开内容时,可根据对图式、公开内容和所附权利要求书的研究来理解并实现所公开实施例的变化形式。
除非另外定义,否则所有术语(包含技术和科学术语)应该是指所述术语的对所属领域的普通技术人员来说普通和惯用的含义,并且除非本文中如此明确地定义,否则不限于特殊或自定义含义。应注意,当描述本公开的某些特征或方面时特定术语的使用不应被视为暗示所述术语在本文中重新定义以限于包含本公开的与那个术语相关联的特征或方面的任何特殊特性。除非另外明确陈述,否则在本申请中,尤其是在所附权利要求书中所使用的术语和短语及其变化形式应被理解为开放式的,而不是限制性的。作为上述内容的实例,术语“包含”应理解为“包含且不限于”、“包含但不限于”等等;如本文所使用的术语“包括”与“包含”、“含有”或“特征在于”同义,且是包含性或开放式的,并不排除额外的、未列出的元件或方法步骤;术语“具有”应解译为“至少具有”;术语“例如”应理解为“例如且不限于”;术语“包含”应理解为“包含但不限于”;术语“实例”用于在论述时提供物品的示范性实例,而不是物品的穷举性或限制性列表,并且应理解为“例如但不限于”;例如“熟知的”、“通常的”、“标准的”的形容词和具有类似含义的术语不应被理解为将所描述的物品限于给定时间段或限于截至给定时间可用的物品,而是应理解为涵盖现在或在将来的任何时间可为可用的或已知的熟知的、通常的或标准的技术;以及如“优选地”、“优选的”、“期望”或“合乎需要的”的术语及具有类似含义的词语的使用不应理解为暗示某些特征对于本公开的结构或功能来说是关键的、必不可少的或甚至是至关重要的,而是仅仅旨在突显可以用于也可以不用于特定实施例的替代方案或额外特征。同样地,除非另外明确陈述,否则用连接词“和”连在一起的一组项不应被理解为要求那些项中的每个项都存在于所述组中,而是应被理解为“和/或”。类似地,除非另外明确陈述,否则用连接词“或”连在一起的一组项不应被理解为在那一组中需要相互排斥,而是应被理解为“和/或”。术语“约”或“大致”等等是同义的,且用于指示由所述术语修饰的值具有与其相关联的理解范围,其中所述范围可以是±20%、±15%、±10%、±5%或±1%。术语“大体上”用于指示结果(例如,测量值)接近目标值,其中接近可意味着例如结果在值的80%内、值的90%内、值的95%内或值的99%内。并且,如本文所使用,“限定”或“确定”可包含“预限定”或“预定”和/或以其它方式确定的值、条件、阈值、测量等等。
Claims (26)
1.一种自主行走机器人,包括:
相机,其配置成在所述机器人处于第一位置时拍摄初始化对象的第一图像,并在所述机器人处于第二位置时拍摄所述初始化对象的第二图像;
里程计单元,其配置成确定所述机器人相对于所述初始化对象的方位;以及
控制器,其配置成进行以下操作:
当所述机器人处于所述第一位置时,相对于至少部分地根据所述第一图像确定的所述初始化对象对所述里程计单元进行初始化,
从所述第一位置开始,通过用户演示学习路线,其中所述学习路线将所述机器人的动作与所述机器人相对于通过所述里程计单元确定的所述初始化对象的方位相关联,
当所述机器人处于所述第二位置时,相对于至少部分地根据所述第二图像确定的所述初始化对象对所述里程计单元进行初始化,以及
当至少部分地基于所述机器人相对于通过所述里程计单元确定的所述初始化对象的方位,指示所述机器人执行一个或多个相关联的动作时,使所述机器人从所述第二位置开始沿着所述学习路线的至少一部分自主行走。
2.根据权利要求1所述的自主行走机器人,其中所述里程计单元包括加速度计、惯性测量单元、激光雷达、里程表、陀螺仪、视觉里程表和速度计中的至少一个。
3.根据权利要求1所述的自主行走机器人,其中所述初始化对象是二进制图像。
4.根据权利要求1所述的自主行走机器人,还包括用户界面,所述用户界面配置成在所述机器人处于所述第二位置时提示用户发起所述机器人沿着所述学习路线的自主行走。
5.根据权利要求1所述的自主行走机器人,其中所述一个或多个相关联的动作中的至少一个包括所述机器人的转动动作。
6.根据权利要求1所述的自主行走机器人,其中所述一个或多个相关联的动作中的至少一个包括启动配置成打开所述机器人的刷子的开关。
7.根据权利要求1所述的自主行走机器人,其中所述机器人是地板清洁器。
8.根据权利要求1所述的自主行走机器人,其中所述第一位置和所述第二位置大体上类似。
9.根据权利要求1所述的自主行走机器人,其中所述一个或多个相关联的动作还与所述机器人的轨迹相关联。
10.一种用于操作机器人的方法,包括:
在所述机器人处于第一位置时拍摄初始化对象的第一图像;
当所述机器人处于所述第一位置时,至少部分地基于所述第一图像确定所述机器人相对于所述初始化对象的第一开始方位;
从所述第一位置开始,通过用户演示学习路线,其中所述学习路线将所述机器人的动作与所述机器人相对于所述初始化对象的方位相关联,其中至少部分地根据所述第一开始方位来确定所述方位;
在所述机器人处于第二位置时拍摄所述初始化对象的第一图像;
当所述机器人处于所述第二位置时,至少部分地基于所述第二图像确定所述机器人相对于所述初始化对象的第二开始方位;
当至少部分地基于所述机器人相对于所述初始化对象的方位,指示所述机器人执行所述一个或多个相关联的动作时,使所述机器人从所述第二位置开始沿着所述学习路线的至少一部分自主行走,其中至少部分地根据所述第二开始方位来确定所述方位。
11.根据权利要求10所述的方法,其中拍摄所述第一图像和拍摄所述第二图像各自包括用传感器生成数据并以数据结构形式存储所述数据。
12.根据权利要求10所述的方法,还包括至少部分地基于用户输入和所述初始化对象的特性中的至少一个来开始自主行走。
13.根据权利要求10所述的方法,其中所述一个或多个相关联的动作中的至少一个包括使所述机器人转动。
14.根据权利要求10所述的方法,其中所述一个或多个相关联的动作中的至少一个包括打开刷子。
15.根据权利要求10所述的方法,其中使所述机器人自主行走还包括在所述机器人检测到所述初始化对象之前一直使所述机器人自主行走。
16.根据权利要求10所述的方法,还包括从存储在存储器中的多个路线中选择所述学习路线。
17.根据权利要求10所述的方法,其中所述一个或多个相关联的动作中的至少一个包括将所述机器人的动作与所述机器人的轨迹相关联。
18.一种其上存储有多个指令的非暂时性计算机可读存储媒体,所述指令可由处理设备执行以操作机器人,所述指令配置成在由所述处理设备执行时使所述处理设备进行以下操作:
至少部分地基于图像,确定所述机器人相对于初始化对象的开始方位;以及
通过用户演示学习路线,其中所述学习路线将所述机器人的动作与所述机器人相对于所述初始化对象的方位相关联,其中至少部分地根据所述开始方位确定所述方位。
19.根据权利要求18所述的非暂时性计算机可读存储媒体,其中所述指令还被配置成在由所述处理设备执行时进行以下操作:
确定所述机器人在所述机器人的确定位置处的动作;以及
执行所述动作;
其中所述动作包括所述机器人的转动动作。
20.根据权利要求18所述的非暂时性计算机可读存储媒体,其中所述指令还被配置成在由所述处理设备执行时进行以下操作:确定所述机器人在所述机器人的确定位置处的动作;以及执行所述动作;其中所述动作包括启动配置成打开刷子的开关。
21.根据权利要求18所述的非暂时性计算机可读存储媒体,其中所述指令还被配置成在由所述处理设备执行时使所述处理设备指示所述机器人沿着所述学习路线自主行走。
22.根据权利要求18所述的非暂时性计算机可读存储媒体,其中所述指令还被配置成在由所述处理设备执行时使所述处理设备辨识预定动作序列并至少部分地基于所述预定动作序列而沿着所述学习路线自主行走。
23.一种机器人擦洗器,其配置成至少部分地基于第一初始化对象的检测而沿着第一学习路线自主行走,并且至少部分地基于第二初始化对象的检测而沿着第二学习路线自主行走。
24.根据权利要求23所述的机器人擦洗器,其中用户向所述机器人擦洗器演示所述第一学习路线和第二学习路线。
25.根据权利要求23所述的机器人擦洗器,其中所述第一初始化对象的所述检测和所述第二初始化对象的所述检测是从初始化位置检测的。
26.根据权利要求23所述的机器人擦洗器,其中所述第一初始化对象的所述检测是来自第一初始化位置,且所述第二初始化对象的所述检测是来自第二初始化位置,并且在用户控制下时所述机器人擦洗器处于所述第一初始化位置和所述第二初始化位置。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/152,436 | 2016-05-11 | ||
US15/152,436 US10241514B2 (en) | 2016-05-11 | 2016-05-11 | Systems and methods for initializing a robot to autonomously travel a trained route |
PCT/US2017/032285 WO2017197197A1 (en) | 2016-05-11 | 2017-05-11 | Systems and methods for initializing a robot to autonomously travel a trained route |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109416538A true CN109416538A (zh) | 2019-03-01 |
Family
ID=60266841
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201780041844.2A Pending CN109416538A (zh) | 2016-05-11 | 2017-05-11 | 用于对机器人进行初始化以沿着训练路线自主行进的系统和方法 |
Country Status (7)
Country | Link |
---|---|
US (3) | US10241514B2 (zh) |
EP (1) | EP3455686A4 (zh) |
JP (1) | JP6942177B2 (zh) |
KR (1) | KR102444658B1 (zh) |
CN (1) | CN109416538A (zh) |
CA (1) | CA3023557A1 (zh) |
WO (1) | WO2017197197A1 (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110365908A (zh) * | 2019-08-01 | 2019-10-22 | 北京鲲鹏神通科技有限公司 | 一种视觉控制方法 |
CN111681451A (zh) * | 2020-06-12 | 2020-09-18 | 苏州博众机器人有限公司 | 一种停车数据处理方法、系统和停车场 |
CN111685634A (zh) * | 2020-03-19 | 2020-09-22 | 广东蓝水花智能电子有限公司 | 一种升降电梯梯门开闭控制方法 |
TWI743705B (zh) * | 2019-03-15 | 2021-10-21 | 日商山葉發動機股份有限公司 | 既定路線行駛車輛 |
Families Citing this family (44)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US12075957B2 (en) | 2014-03-24 | 2024-09-03 | Intelligent Cleaning Equipment Holdings Co. Ltd. | Floor cleaning machines having intelligent systems, associated sub-assemblies incorporating intelligent systems, and associated methods of use |
KR101697857B1 (ko) * | 2015-04-08 | 2017-01-18 | 엘지전자 주식회사 | 이동 로봇 및 그의 위치인식방법 |
US10782686B2 (en) * | 2016-01-28 | 2020-09-22 | Savioke, Inc. | Systems and methods for operating robots including the handling of delivery operations that cannot be completed |
US10282849B2 (en) | 2016-06-17 | 2019-05-07 | Brain Corporation | Systems and methods for predictive/reconstructive visual object tracker |
KR102526083B1 (ko) * | 2016-08-30 | 2023-04-27 | 엘지전자 주식회사 | 이동 단말기 및 그의 동작 방법 |
US10274325B2 (en) | 2016-11-01 | 2019-04-30 | Brain Corporation | Systems and methods for robotic mapping |
US10001780B2 (en) * | 2016-11-02 | 2018-06-19 | Brain Corporation | Systems and methods for dynamic route planning in autonomous navigation |
US10723018B2 (en) | 2016-11-28 | 2020-07-28 | Brain Corporation | Systems and methods for remote operating and/or monitoring of a robot |
US10852730B2 (en) | 2017-02-08 | 2020-12-01 | Brain Corporation | Systems and methods for robotic mobile platforms |
JP6638699B2 (ja) * | 2017-05-30 | 2020-01-29 | トヨタ自動車株式会社 | 誤操作判定装置 |
US10926725B2 (en) | 2018-10-10 | 2021-02-23 | Stocked Robotics, Inc. | Non-destructive kit mounting system for driverless industrial vehicles |
JP2019102047A (ja) * | 2017-11-28 | 2019-06-24 | Thk株式会社 | 画像処理装置、移動ロボットの制御システム、移動ロボットの制御方法 |
WO2019126234A1 (en) * | 2017-12-19 | 2019-06-27 | Learning Resources, Inc. | Toy robot |
US10913154B2 (en) * | 2018-01-02 | 2021-02-09 | General Electric Company | Systems and method for robotic learning of industrial tasks based on human demonstration |
KR102015030B1 (ko) * | 2018-01-09 | 2019-08-27 | 엘지전자 주식회사 | 이동 로봇 및 이동 로봇의 제어방법 |
MX2020007114A (es) * | 2018-01-10 | 2020-12-09 | Simbe Robotics Inc | Método para detectar y responder a derrames y peligros. |
US10635844B1 (en) * | 2018-02-27 | 2020-04-28 | The Mathworks, Inc. | Methods and systems for simulating vision sensor detection at medium fidelity |
CN108381509B (zh) * | 2018-03-19 | 2021-03-02 | 京东方科技集团股份有限公司 | 智能抓取装置及其控制方法、智能抓取控制系统 |
JP7173746B2 (ja) * | 2018-03-30 | 2022-11-16 | 日立造船株式会社 | 飛行体、情報記録方法、飛行体の制御方法、および制御プログラム |
CN111090277B (zh) * | 2018-10-22 | 2021-11-26 | 科沃斯机器人股份有限公司 | 行进控制的方法、设备及存储介质 |
CN111182174B (zh) * | 2018-11-09 | 2020-12-04 | 珠海格力电器股份有限公司 | 一种扫地机器人补光的方法及装置 |
WO2020102946A1 (zh) * | 2018-11-19 | 2020-05-28 | 珊口(深圳)智能科技有限公司 | 构建地图、定位、导航、控制方法及系统、移动机器人 |
US11066088B2 (en) * | 2018-12-13 | 2021-07-20 | Xidian University | Detection and positioning method for train water injection port |
CN109528103B (zh) * | 2019-01-22 | 2023-09-15 | 苏州锐科兰电器有限公司 | 拖地机 |
JP7190919B2 (ja) * | 2019-01-25 | 2022-12-16 | 株式会社ソニー・インタラクティブエンタテインメント | 画像解析システム |
US11130235B2 (en) * | 2019-02-15 | 2021-09-28 | Boston Dynamics, Inc. | Work mode and travel mode for mobile robots |
KR102201002B1 (ko) * | 2019-03-26 | 2021-01-12 | 엘지전자 주식회사 | 로봇 청소기 |
US11554495B2 (en) | 2019-05-30 | 2023-01-17 | Lg Electronics Inc. | Method of localization using multi sensor and robot implementing same |
KR102708784B1 (ko) * | 2019-07-05 | 2024-09-23 | 엘지전자 주식회사 | 지능형 로봇 청소기의 주행 방법 |
US11847618B2 (en) | 2020-03-27 | 2023-12-19 | Aristocrat Technologies, Inc. | Gaming service automation machine with kiosk services |
US20210341300A1 (en) * | 2020-05-04 | 2021-11-04 | Here Global B.V. | Method, apparatus, and system for providing a personally relevant navigation route comparison |
US20210397198A1 (en) * | 2020-06-18 | 2021-12-23 | Ford Global Technologies, Llc | Enhanced vehicle operation |
CN113408382A (zh) * | 2020-07-13 | 2021-09-17 | 追创科技(苏州)有限公司 | 自移动设备的控制方法、装置、存储介质及自移动设备 |
US11654566B2 (en) | 2020-08-12 | 2023-05-23 | General Electric Company | Robotic activity decomposition |
US11897134B2 (en) | 2020-08-12 | 2024-02-13 | General Electric Company | Configuring a simulator for robotic machine learning |
EP3968051A1 (en) * | 2020-09-15 | 2022-03-16 | Infineon Technologies AG | Guiding system for a robot, base station including such a guiding system, and method for guiding a robot |
USD1006884S1 (en) | 2020-09-25 | 2023-12-05 | Aristocrat Technologies, Inc. | Gaming services robot |
CA3196451A1 (en) * | 2020-11-30 | 2022-06-02 | Clutterbot Inc. | Clutter-clearing robotic system |
US20220371184A1 (en) * | 2021-04-27 | 2022-11-24 | Nvidia Corporation | Policy layers for machine control |
DE102021204149A1 (de) | 2021-04-27 | 2022-10-27 | BSH Hausgeräte GmbH | Objekterkennung für ein Hausgerät |
WO2023144523A1 (en) * | 2022-01-25 | 2023-08-03 | Gama Healthcare Ltd | Methods for controlling the movement of a robot for disinfection |
WO2023173209A1 (en) * | 2022-03-14 | 2023-09-21 | Anram Holdings | Retrofit kits for enabling autonomous operation in autoscrubbers |
WO2024016101A1 (en) | 2022-07-18 | 2024-01-25 | Intelligent Cleaning Equipment Holdings Co., Ltd. | Systems and methods for robotic navigation, teaching and mapping |
US20240265565A1 (en) * | 2023-02-06 | 2024-08-08 | Walmart Apollo, Llc | Systems and methods for analyzing depth in images obtained in product storage facilities to detect outlier items |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS59121405A (ja) * | 1982-12-14 | 1984-07-13 | Honda Motor Co Ltd | 移動ロボツトの制御装置 |
US5155684A (en) * | 1988-10-25 | 1992-10-13 | Tennant Company | Guiding an unmanned vehicle by reference to overhead features |
US5341540A (en) * | 1989-06-07 | 1994-08-30 | Onet, S.A. | Process and autonomous apparatus for the automatic cleaning of ground areas through the performance of programmed tasks |
US20040158358A1 (en) * | 2003-02-06 | 2004-08-12 | Matsushita Electric Industrial Co., Ltd. | Method of teaching traveling path to robot and robot having function of learning traveling path |
CN101383910A (zh) * | 2007-09-05 | 2009-03-11 | 索尼株式会社 | 图像处理装置及方法 |
US20090228166A1 (en) * | 2006-01-18 | 2009-09-10 | I-Guide, Llc | Robotic Vehicle Controller |
CN102576365A (zh) * | 2009-10-06 | 2012-07-11 | 高通股份有限公司 | 用于在内容递送系统中经由图像匹配进行商品销售交易的系统和方法 |
CN102842041A (zh) * | 2011-05-13 | 2012-12-26 | 国际商业机器公司 | 内部位置识别方法和装置 |
US20150127149A1 (en) * | 2013-11-01 | 2015-05-07 | Brain Corporation | Apparatus and methods for online training of robots |
CN109414142A (zh) * | 2016-05-11 | 2019-03-01 | 云海智行股份有限公司 | 用于训练机器人沿着路线自主行进的系统和方法 |
Family Cites Families (189)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4278142A (en) * | 1978-05-08 | 1981-07-14 | Agency Of Industrial Science And Technology | Automatic guidance system for vehicles |
US5280179A (en) | 1979-04-30 | 1994-01-18 | Sensor Adaptive Machines Incorporated | Method and apparatus utilizing an orientation code for automatically guiding a robot |
US4638445A (en) | 1984-06-08 | 1987-01-20 | Mattaboni Paul J | Autonomous mobile robot |
US5121497A (en) | 1986-03-10 | 1992-06-09 | International Business Machines Corporation | Automatic generation of executable computer code which commands another program to perform a task and operator modification of the generated executable computer code |
US4763276A (en) | 1986-03-21 | 1988-08-09 | Actel Partnership | Methods for refining original robot command signals |
US4852018A (en) | 1987-01-07 | 1989-07-25 | Trustees Of Boston University | Massively parellel real-time network architectures for robots capable of self-calibrating their operating parameters through associative learning |
US4790402A (en) * | 1987-09-28 | 1988-12-13 | Tennant Company | Automated guided vehicle |
EP0366350A3 (en) * | 1988-10-25 | 1991-05-22 | Tennant Company | Guiding an unmanned vehicle by reference to overhead features |
DE69030318T2 (de) | 1989-10-17 | 1997-10-16 | Perkin Elmer Corp | Robotische schnittstelle |
US5646843A (en) | 1990-02-05 | 1997-07-08 | Caterpillar Inc. | Apparatus and method for surface based vehicle control system |
US8352400B2 (en) | 1991-12-23 | 2013-01-08 | Hoffberg Steven M | Adaptive pattern recognition based controller apparatus and method and human-factored interface therefore |
US5673367A (en) | 1992-10-01 | 1997-09-30 | Buckley; Theresa M. | Method for neural network control of motion using real-time environmental feedback |
CA2081519C (en) | 1992-10-27 | 2000-09-05 | The University Of Toronto | Parametric control device |
KR0161031B1 (ko) | 1993-09-09 | 1998-12-15 | 김광호 | 로보트의 위치오차보정장치 |
US5602761A (en) | 1993-12-30 | 1997-02-11 | Caterpillar Inc. | Machine performance monitoring and fault classification using an exponentially weighted moving average scheme |
DE69636230T2 (de) | 1995-09-11 | 2007-04-12 | Kabushiki Kaisha Yaskawa Denki, Kitakyushu | Robotersteuerung |
AU3477397A (en) | 1996-06-04 | 1998-01-05 | Paul J. Werbos | 3-brain architecture for an intelligent decision and control system |
US6366293B1 (en) | 1998-09-29 | 2002-04-02 | Rockwell Software Inc. | Method and apparatus for manipulating and displaying graphical objects in a computer display device |
US6243622B1 (en) | 1998-10-16 | 2001-06-05 | Xerox Corporation | Touchable user interface using self movable robotic modules |
EP1037134A2 (en) | 1999-03-16 | 2000-09-20 | Matsushita Electric Industrial Co., Ltd. | Virtual space control data receiving apparatus and method |
US6124694A (en) | 1999-03-18 | 2000-09-26 | Bancroft; Allen J. | Wide area navigation for a robot scrubber |
KR20010053322A (ko) | 1999-04-30 | 2001-06-25 | 이데이 노부유끼 | 전자 페트 시스템, 네트워크 시스템, 로봇, 및 기억 매체 |
JP3537362B2 (ja) | 1999-10-12 | 2004-06-14 | ファナック株式会社 | ロボットシステム用グラフィック表示装置 |
EP1297691A2 (en) | 2000-03-07 | 2003-04-02 | Sarnoff Corporation | Camera pose estimation |
KR20020008848A (ko) | 2000-03-31 | 2002-01-31 | 이데이 노부유끼 | 로봇 장치, 로봇 장치의 행동 제어 방법, 외력 검출 장치및 외력 검출 방법 |
US8543519B2 (en) | 2000-08-07 | 2013-09-24 | Health Discovery Corporation | System and method for remote melanoma screening |
JP4765155B2 (ja) | 2000-09-28 | 2011-09-07 | ソニー株式会社 | オーサリング・システム及びオーサリング方法、並びに記憶媒体 |
US6678413B1 (en) | 2000-11-24 | 2004-01-13 | Yiqing Liang | System and method for object identification and behavior characterization using video analysis |
US6442451B1 (en) | 2000-12-28 | 2002-08-27 | Robotic Workspace Technologies, Inc. | Versatile robot control system |
JP2002239960A (ja) | 2001-02-21 | 2002-08-28 | Sony Corp | ロボット装置の動作制御方法、プログラム、記録媒体及びロボット装置 |
US20020175894A1 (en) | 2001-03-06 | 2002-11-28 | Vince Grillo | Hand-supported mouse for computer input |
US6917925B2 (en) | 2001-03-30 | 2005-07-12 | Intelligent Inference Systems Corporation | Convergent actor critic-based fuzzy reinforcement learning apparatus and method |
JP2002301674A (ja) | 2001-04-03 | 2002-10-15 | Sony Corp | 脚式移動ロボット及びその運動教示方法、並びに記憶媒体 |
DE60118317T2 (de) | 2001-04-30 | 2006-12-14 | Sony France S.A. | Autonom Roboter |
US6584375B2 (en) | 2001-05-04 | 2003-06-24 | Intellibot, Llc | System for a retail environment |
US6636781B1 (en) | 2001-05-22 | 2003-10-21 | University Of Southern California | Distributed control and coordination of autonomous agents in a dynamic, reconfigurable system |
JP3760186B2 (ja) | 2001-06-07 | 2006-03-29 | 独立行政法人科学技術振興機構 | 二脚歩行式移動装置及びその歩行制御装置並びに歩行制御方法 |
JP4188607B2 (ja) | 2001-06-27 | 2008-11-26 | 本田技研工業株式会社 | 二足歩行移動体の床反力推定方法及び二足歩行移動体の関節モーメント推定方法 |
AU2002322504A1 (en) | 2001-07-13 | 2003-01-29 | Broks Automation, Inc. | Trajectory planning and motion control strategies for a planar three-degree-of-freedom robotic arm |
US6710346B2 (en) | 2001-08-02 | 2004-03-23 | International Business Machines Corporation | Active infrared presence sensor |
AU2002331786A1 (en) | 2001-08-31 | 2003-03-18 | The Board Of Regents Of The University And Community College System, On Behalf Of The University Of | Coordinated joint motion control system |
US6812846B2 (en) | 2001-09-28 | 2004-11-02 | Koninklijke Philips Electronics N.V. | Spill detector based on machine-imaging |
US7243334B1 (en) | 2002-01-16 | 2007-07-10 | Prelude Systems, Inc. | System and method for generating user interface code |
JP3790816B2 (ja) | 2002-02-12 | 2006-06-28 | 国立大学法人 東京大学 | 人型リンク系の運動生成方法 |
US8010180B2 (en) | 2002-03-06 | 2011-08-30 | Mako Surgical Corp. | Haptic guidance system and method |
US20040134337A1 (en) | 2002-04-22 | 2004-07-15 | Neal Solomon | System, methods and apparatus for mobile software agents applied to mobile robotic vehicles |
US7505604B2 (en) | 2002-05-20 | 2009-03-17 | Simmonds Precision Prodcuts, Inc. | Method for detection and recognition of fog presence within an aircraft compartment using video images |
US7834754B2 (en) | 2002-07-19 | 2010-11-16 | Ut-Battelle, Llc | Method and system for monitoring environmental conditions |
US6904335B2 (en) | 2002-08-21 | 2005-06-07 | Neal Solomon | System, method and apparatus for organizing groups of self-configurable mobile robotic agents in a multi-robotic system |
AU2003900861A0 (en) | 2003-02-26 | 2003-03-13 | Silverbrook Research Pty Ltd | Methods,systems and apparatus (NPS042) |
JP3950805B2 (ja) | 2003-02-27 | 2007-08-01 | ファナック株式会社 | 教示位置修正装置 |
US7313279B2 (en) | 2003-07-08 | 2007-12-25 | Computer Associates Think, Inc. | Hierarchical determination of feature relevancy |
SE0301531L (sv) | 2003-05-22 | 2004-11-23 | Abb Ab | A Control method for a robot |
US7212651B2 (en) | 2003-06-17 | 2007-05-01 | Mitsubishi Electric Research Laboratories, Inc. | Detecting pedestrians using patterns of motion and appearance in videos |
US7769487B2 (en) | 2003-07-24 | 2010-08-03 | Northeastern University | Process and architecture of robotic system to mimic animal behavior in the natural environment |
WO2005028166A1 (ja) | 2003-09-22 | 2005-03-31 | Matsushita Electric Industrial Co., Ltd. | 弾性体アクチュエータの制御装置及び制御方法 |
US7342589B2 (en) | 2003-09-25 | 2008-03-11 | Rockwell Automation Technologies, Inc. | System and method for managing graphical data |
JP4592276B2 (ja) | 2003-10-24 | 2010-12-01 | ソニー株式会社 | ロボット装置のためのモーション編集装置及びモーション編集方法、並びにコンピュータ・プログラム |
WO2005081082A1 (ja) | 2004-02-25 | 2005-09-01 | The Ritsumeikan Trust | 浮遊移動体の制御システム |
JP4661074B2 (ja) | 2004-04-07 | 2011-03-30 | ソニー株式会社 | 情報処理システム、情報処理方法、並びにロボット装置 |
EP1622072B1 (en) | 2004-07-27 | 2010-07-07 | Sony France S.A. | An automated action-selection system and method and application thereof for training prediction machines and for driving the development of self-developing devices |
SE0402672D0 (sv) | 2004-11-02 | 2004-11-02 | Viktor Kaznov | Ball robot |
US7211979B2 (en) | 2005-04-13 | 2007-05-01 | The Broad Of Trustees Of The Leland Stanford Junior University | Torque-position transformer for task control of position controlled robots |
US7765029B2 (en) | 2005-09-13 | 2010-07-27 | Neurosciences Research Foundation, Inc. | Hybrid control device |
JP4876511B2 (ja) | 2005-09-29 | 2012-02-15 | 株式会社日立製作所 | ロジック抽出支援装置 |
WO2007041295A2 (en) | 2005-09-30 | 2007-04-12 | Irobot Corporation | Companion robot for personal interaction |
US7668605B2 (en) | 2005-10-26 | 2010-02-23 | Rockwell Automation Technologies, Inc. | Wireless industrial control user interface |
EP2120122B1 (en) | 2005-12-02 | 2013-10-30 | iRobot Corporation | Coverage robot mobility |
US7741802B2 (en) | 2005-12-20 | 2010-06-22 | Intuitive Surgical Operations, Inc. | Medical robotic system with programmably controlled constraints on error dynamics |
KR101146119B1 (ko) * | 2005-12-21 | 2012-05-16 | 재단법인 포항산업과학연구원 | 실내 이동 로봇의 위치 인식 방법 및 장치 |
US7953526B2 (en) * | 2006-01-18 | 2011-05-31 | I-Guide Robotics, Inc. | Robotic vehicle controller |
US8224018B2 (en) | 2006-01-23 | 2012-07-17 | Digimarc Corporation | Sensing data from physical objects |
US7576639B2 (en) | 2006-03-14 | 2009-08-18 | Mobileye Technologies, Ltd. | Systems and methods for detecting pedestrians in the vicinity of a powered industrial vehicle |
US8924021B2 (en) | 2006-04-27 | 2014-12-30 | Honda Motor Co., Ltd. | Control of robots from human motion descriptors |
JP4320363B2 (ja) | 2006-05-25 | 2009-08-26 | 豪洋 石崎 | 作業ロボット |
KR100791382B1 (ko) | 2006-06-01 | 2008-01-07 | 삼성전자주식회사 | 로봇의 이동 경로에 따라 소정 영역의 특성에 관한 정보를수집하고 분류하는 방법 및 상기 영역 특성에 따라제어되는 로봇, 상기 영역 특성을 이용한 ui 구성 방법및 장치 |
WO2007143756A2 (en) | 2006-06-09 | 2007-12-13 | Carnegie Mellon University | System and method for autonomously convoying vehicles |
US8843244B2 (en) | 2006-10-06 | 2014-09-23 | Irobot Corporation | Autonomous behaviors for a remove vehicle |
JP4699426B2 (ja) | 2006-08-08 | 2011-06-08 | パナソニック株式会社 | 障害物回避方法と障害物回避移動装置 |
US8174568B2 (en) | 2006-12-01 | 2012-05-08 | Sri International | Unified framework for precise vision-aided navigation |
JP4267027B2 (ja) | 2006-12-07 | 2009-05-27 | ファナック株式会社 | ロボット制御装置 |
WO2008127863A2 (en) | 2007-03-29 | 2008-10-23 | Irobot Corporation | Robot operator control unit configuration system and method |
US20080274683A1 (en) | 2007-05-04 | 2008-11-06 | Current Energy Controls, Lp | Autonomous Ventilation System |
US8255092B2 (en) | 2007-05-14 | 2012-08-28 | Irobot Corporation | Autonomous behaviors for a remote vehicle |
JP5213023B2 (ja) | 2008-01-15 | 2013-06-19 | 本田技研工業株式会社 | ロボット |
WO2009098855A1 (ja) | 2008-02-06 | 2009-08-13 | Panasonic Corporation | ロボット、ロボットの制御装置及び制御方法、並びに、ロボットの制御装置の制御プログラム |
JP5181704B2 (ja) | 2008-02-07 | 2013-04-10 | 日本電気株式会社 | データ処理装置、姿勢推定システム、姿勢推定方法およびプログラム |
US8175992B2 (en) | 2008-03-17 | 2012-05-08 | Intelliscience Corporation | Methods and systems for compound feature creation, processing, and identification in conjunction with a data analysis and feature recognition system wherein hit weights are summed |
EP2266077A1 (en) | 2008-04-02 | 2010-12-29 | iRobot Corporation | Robotics systems |
JP4715863B2 (ja) | 2008-05-01 | 2011-07-06 | ソニー株式会社 | アクチュエータ制御装置及びアクチュエータ制御方法、アクチュエータ、ロボット装置、並びにコンピュータ・プログラム |
JP5215740B2 (ja) | 2008-06-09 | 2013-06-19 | 株式会社日立製作所 | 移動ロボットシステム |
KR20110074520A (ko) | 2008-09-04 | 2011-06-30 | 아이워크, 아이엔씨. | 하이브리드 지형-적응형 의족 시스템 |
CA2775675C (en) | 2008-10-29 | 2019-04-16 | The Regents Of The University Of Colorado | Long term active learning from large continually changing data sets |
US20100114372A1 (en) | 2008-10-30 | 2010-05-06 | Intellibot Robotics Llc | Method of cleaning a surface using an automatic cleaning device |
JP5242342B2 (ja) | 2008-10-31 | 2013-07-24 | 株式会社東芝 | ロボット制御装置 |
US8428781B2 (en) | 2008-11-17 | 2013-04-23 | Energid Technologies, Inc. | Systems and methods of coordination control for robot manipulation |
EP2209018A1 (en) | 2009-01-15 | 2010-07-21 | Nederlandse Organisatie voor toegepast-natuurwetenschappelijk Onderzoek TNO | A method for estimating an object motion characteristic from a radar signal, a computer system and a computer program product |
US8120301B2 (en) | 2009-03-09 | 2012-02-21 | Intuitive Surgical Operations, Inc. | Ergonomic surgeon control console in robotic surgical systems |
US8423182B2 (en) | 2009-03-09 | 2013-04-16 | Intuitive Surgical Operations, Inc. | Adaptable integrated energy control system for electrosurgical tools in robotic surgical systems |
US8364314B2 (en) | 2009-04-30 | 2013-01-29 | GM Global Technology Operations LLC | Method and apparatus for automatic control of a humanoid robot |
JP4676544B2 (ja) | 2009-05-29 | 2011-04-27 | ファナック株式会社 | 工作機械に対してワークの供給及び取り出しを行うロボットを制御するロボット制御装置 |
US8694449B2 (en) | 2009-05-29 | 2014-04-08 | Board Of Trustees Of Michigan State University | Neuromorphic spatiotemporal where-what machines |
US8774970B2 (en) | 2009-06-11 | 2014-07-08 | S.C. Johnson & Son, Inc. | Trainable multi-mode floor cleaning device |
US8706297B2 (en) | 2009-06-18 | 2014-04-22 | Michael Todd Letsky | Method for establishing a desired area of confinement for an autonomous robot and autonomous robot implementing a control system for executing the same |
CN102448683B (zh) | 2009-07-02 | 2014-08-27 | 松下电器产业株式会社 | 机器人、机器人手臂的控制装置及机器人手臂的控制程序 |
EP2284769B1 (en) | 2009-07-16 | 2013-01-02 | European Space Agency | Method and apparatus for analyzing time series data |
US20110026770A1 (en) | 2009-07-31 | 2011-02-03 | Jonathan David Brookshire | Person Following Using Histograms of Oriented Gradients |
US8250901B2 (en) | 2009-09-22 | 2012-08-28 | GM Global Technology Operations LLC | System and method for calibrating a rotary absolute position sensor |
TW201113815A (en) | 2009-10-09 | 2011-04-16 | Primax Electronics Ltd | QR code processing method and apparatus thereof |
US8679260B2 (en) | 2009-11-11 | 2014-03-25 | Intellibot Robotics Llc | Methods and systems for movement of an automatic cleaning device using video signal |
US8423225B2 (en) | 2009-11-11 | 2013-04-16 | Intellibot Robotics Llc | Methods and systems for movement of robotic device using video signal |
US8521328B2 (en) | 2009-12-10 | 2013-08-27 | The Boeing Company | Control system for robotic vehicles |
TW201123031A (en) | 2009-12-24 | 2011-07-01 | Univ Nat Taiwan Science Tech | Robot and method for recognizing human faces and gestures thereof |
JP5506618B2 (ja) | 2009-12-28 | 2014-05-28 | 本田技研工業株式会社 | ロボットの制御装置 |
JP5506617B2 (ja) | 2009-12-28 | 2014-05-28 | 本田技研工業株式会社 | ロボットの制御装置 |
CN102711586B (zh) | 2010-02-11 | 2015-06-17 | 直观外科手术操作公司 | 在机器人内窥镜的远侧尖端自动维持操作者选择的滚动取向的方法和系统 |
KR101169674B1 (ko) | 2010-03-11 | 2012-08-06 | 한국과학기술연구원 | 원격현전 로봇, 이를 포함하는 원격현전 시스템 및 이의 제어 방법 |
US8660355B2 (en) | 2010-03-19 | 2014-02-25 | Digimarc Corporation | Methods and systems for determining image processing operations relevant to particular imagery |
US9405975B2 (en) | 2010-03-26 | 2016-08-02 | Brain Corporation | Apparatus and methods for pulse-code invariant object recognition |
US9122994B2 (en) | 2010-03-26 | 2015-09-01 | Brain Corporation | Apparatus and methods for temporally proximate object recognition |
US9311593B2 (en) | 2010-03-26 | 2016-04-12 | Brain Corporation | Apparatus and methods for polychronous encoding and multiplexing in neuronal prosthetic devices |
US8336420B2 (en) | 2010-06-02 | 2012-12-25 | Disney Enterprises, Inc. | Three-axis robotic joint using four-bar linkages to drive differential side gears |
FR2963132A1 (fr) | 2010-07-23 | 2012-01-27 | Aldebaran Robotics | Robot humanoide dote d'une interface de dialogue naturel, methode d'utilisation et de programmation de ladite interface |
US20120045068A1 (en) | 2010-08-20 | 2012-02-23 | Korea Institute Of Science And Technology | Self-fault detection system and method for microphone array and audio-based device |
WO2012040554A2 (en) | 2010-09-23 | 2012-03-29 | Stryker Corporation | Video monitoring system |
KR20120035519A (ko) | 2010-10-05 | 2012-04-16 | 삼성전자주식회사 | 먼지 유입 감지 유닛 및 이를 구비하는 로봇 청소기 |
US20120143495A1 (en) | 2010-10-14 | 2012-06-07 | The University Of North Texas | Methods and systems for indoor navigation |
US9015093B1 (en) | 2010-10-26 | 2015-04-21 | Michael Lamport Commons | Intelligent control with hierarchical stacked neural networks |
US8726095B2 (en) | 2010-12-02 | 2014-05-13 | Dell Products L.P. | System and method for proactive management of an information handling system with in-situ measurement of end user actions |
JP5185358B2 (ja) | 2010-12-13 | 2013-04-17 | 株式会社東芝 | 行動履歴検索装置 |
WO2012081197A1 (ja) | 2010-12-17 | 2012-06-21 | パナソニック株式会社 | 弾性体アクチュエータ駆動機構の制御装置及び制御方法、並びに、制御プログラム |
US8380652B1 (en) | 2011-05-06 | 2013-02-19 | Google Inc. | Methods and systems for autonomous robotic decision making |
US8639644B1 (en) | 2011-05-06 | 2014-01-28 | Google Inc. | Shared robot knowledge base for use with cloud computing system |
US9566710B2 (en) | 2011-06-02 | 2017-02-14 | Brain Corporation | Apparatus and methods for operating robotic devices using selective state space training |
US9189891B2 (en) | 2011-08-16 | 2015-11-17 | Google Inc. | Systems and methods for navigating a camera |
US9015092B2 (en) | 2012-06-04 | 2015-04-21 | Brain Corporation | Dynamically reconfigurable stochastic learning apparatus and methods |
US8798840B2 (en) | 2011-09-30 | 2014-08-05 | Irobot Corporation | Adaptive mapping with spatial summaries of sensor data |
US20130096719A1 (en) | 2011-10-13 | 2013-04-18 | The U.S.A. As Represented By The Administrator Of The National Aeronautics And Space Administration | Method for dynamic optimization of a robot control interface |
JP6305673B2 (ja) | 2011-11-07 | 2018-04-04 | セイコーエプソン株式会社 | ロボット制御システム、ロボットシステム及びロボット |
WO2013069291A1 (ja) | 2011-11-10 | 2013-05-16 | パナソニック株式会社 | ロボット、ロボットの制御装置、制御方法、及び制御プログラム |
KR101305819B1 (ko) | 2012-01-04 | 2013-09-06 | 현대자동차주식회사 | 착용식 로봇의 사용자 조작 의도 토크 추출방법 |
US8958911B2 (en) | 2012-02-29 | 2015-02-17 | Irobot Corporation | Mobile robot |
JP5895628B2 (ja) | 2012-03-15 | 2016-03-30 | 株式会社ジェイテクト | ロボットの制御方法及びロボット制御装置、並びにロボット制御システム |
US9221177B2 (en) | 2012-04-18 | 2015-12-29 | Massachusetts Institute Of Technology | Neuromuscular model-based sensing and control paradigm for a robotic leg |
US9031779B2 (en) | 2012-05-30 | 2015-05-12 | Toyota Motor Engineering & Manufacturing North America, Inc. | System and method for hazard detection and sharing |
US9208432B2 (en) | 2012-06-01 | 2015-12-08 | Brain Corporation | Neural network learning and collaboration apparatus and methods |
KR101954144B1 (ko) * | 2012-06-08 | 2019-03-05 | 엘지전자 주식회사 | 로봇 청소기와, 이의 제어 방법, 및 이를 포함한 로봇 청소 시스템 |
US9297658B2 (en) | 2012-06-12 | 2016-03-29 | Trx Systems, Inc. | Wi-Fi enhanced tracking algorithms |
US20130343640A1 (en) | 2012-06-21 | 2013-12-26 | Rethink Robotics, Inc. | Vision-guided robots and methods of training them |
US20130346347A1 (en) | 2012-06-22 | 2013-12-26 | Google Inc. | Method to Predict a Communicative Action that is Most Likely to be Executed Given a Context |
WO2014006234A1 (es) | 2012-07-04 | 2014-01-09 | Repsol, S.A. | Sistema integrado de detección temprana de hidrocarburos en un medio acuoso |
US8977582B2 (en) | 2012-07-12 | 2015-03-10 | Brain Corporation | Spiking neuron network sensory processing apparatus and methods |
US8793205B1 (en) | 2012-09-20 | 2014-07-29 | Brain Corporation | Robotic learning and evolution apparatus |
US9367798B2 (en) | 2012-09-20 | 2016-06-14 | Brain Corporation | Spiking neuron network adaptive control apparatus and methods |
DE102012109004A1 (de) | 2012-09-24 | 2014-03-27 | RobArt GmbH | Roboter und Verfahren zur autonomen Inspektion oder Bearbeitung von Bodenflächen |
US9020637B2 (en) | 2012-11-02 | 2015-04-28 | Irobot Corporation | Simultaneous localization and mapping for a mobile robot |
US8972061B2 (en) | 2012-11-02 | 2015-03-03 | Irobot Corporation | Autonomous coverage robot |
US20140187519A1 (en) | 2012-12-27 | 2014-07-03 | The Board Of Trustees Of The Leland Stanford Junior University | Biomarkers for predicting major adverse events |
EP2752726B1 (de) | 2013-01-08 | 2015-05-27 | Cleanfix Reinigungssysteme AG | Bodenbehandlungsmaschine und Verfahren zum Behandeln von Bodenflächen |
JP6132659B2 (ja) | 2013-02-27 | 2017-05-24 | シャープ株式会社 | 周囲環境認識装置、それを用いた自律移動システムおよび周囲環境認識方法 |
US20140330496A1 (en) * | 2013-02-28 | 2014-11-06 | Austin Crouse | Trainable robotic apparatus, system and method |
US8958937B2 (en) | 2013-03-12 | 2015-02-17 | Intellibot Robotics Llc | Cleaning machine with collision prevention |
US9764468B2 (en) | 2013-03-15 | 2017-09-19 | Brain Corporation | Adaptive predictor apparatus and methods |
US10561470B2 (en) | 2013-03-15 | 2020-02-18 | Intuitive Surgical Operations, Inc. | Software configurable manipulator degrees of freedom |
US9008840B1 (en) | 2013-04-19 | 2015-04-14 | Brain Corporation | Apparatus and methods for reinforcement-guided supervised learning |
US9292015B2 (en) | 2013-05-23 | 2016-03-22 | Fluor Technologies Corporation | Universal construction robotics interface |
US20140358828A1 (en) | 2013-05-29 | 2014-12-04 | Purepredictive, Inc. | Machine learning generated action plan |
US9242372B2 (en) | 2013-05-31 | 2016-01-26 | Brain Corporation | Adaptive robotic interface apparatus and methods |
TWI585561B (zh) | 2013-06-03 | 2017-06-01 | 新智控私人有限公司 | 機器人裝置的離機式導航方法與裝置 |
KR101323705B1 (ko) * | 2013-06-05 | 2013-11-11 | 한경대학교 산학협력단 | 무인 화물 이송로봇을 이용한 무인 화물 이송시스템 |
US9792546B2 (en) | 2013-06-14 | 2017-10-17 | Brain Corporation | Hierarchical robotic controller apparatus and methods |
US9384443B2 (en) | 2013-06-14 | 2016-07-05 | Brain Corporation | Robotic training apparatus and methods |
US20150032258A1 (en) | 2013-07-29 | 2015-01-29 | Brain Corporation | Apparatus and methods for controlling of robotic devices |
JP6227948B2 (ja) * | 2013-09-18 | 2017-11-08 | 村田機械株式会社 | 自律走行式床洗浄機、清掃スケジュールのデータ構造、記憶媒体、清掃スケジュールの生成方法、及びプログラム |
SG2013071808A (en) | 2013-09-24 | 2015-04-29 | Ctrlworks Pte Ltd | Offboard navigation apparatus capable of being coupled to a movable platform |
US9296101B2 (en) | 2013-09-27 | 2016-03-29 | Brain Corporation | Robotic control arbitration apparatus and methods |
US9579789B2 (en) | 2013-09-27 | 2017-02-28 | Brain Corporation | Apparatus and methods for training of robotic control arbitration |
US9315192B1 (en) | 2013-09-30 | 2016-04-19 | Google Inc. | Methods and systems for pedestrian avoidance using LIDAR |
US9144907B2 (en) | 2013-10-24 | 2015-09-29 | Harris Corporation | Control synchronization for high-latency teleoperation |
US10612939B2 (en) | 2014-01-02 | 2020-04-07 | Microsoft Technology Licensing, Llc | Ground truth estimation for autonomous navigation |
US10078712B2 (en) | 2014-01-14 | 2018-09-18 | Energid Technologies Corporation | Digital proxy simulation of robotic hardware |
US9567077B2 (en) | 2014-02-14 | 2017-02-14 | Accenture Global Services Limited | Unmanned vehicle (UV) control system |
US9346167B2 (en) | 2014-04-29 | 2016-05-24 | Brain Corporation | Trainable convolutional network apparatus and methods for operating a robotic vehicle |
US10255319B2 (en) | 2014-05-02 | 2019-04-09 | Google Llc | Searchable index |
US20150339589A1 (en) | 2014-05-21 | 2015-11-26 | Brain Corporation | Apparatus and methods for training robots utilizing gaze-based saliency maps |
US9475195B2 (en) | 2014-09-12 | 2016-10-25 | Toyota Jidosha Kabushiki Kaisha | Anticipatory robot navigation |
US20160121487A1 (en) * | 2014-11-03 | 2016-05-05 | Qualcomm Incorporated | Communicating Configurable Instruction Sets to Robots for Controlling Robot Behavior |
EP4306027A3 (en) | 2015-04-24 | 2024-10-23 | Avidbots Corp. | Apparatus and methods for semi-autonomous cleaning of surfaces |
US20170139551A1 (en) * | 2015-11-16 | 2017-05-18 | Bank Of America Corporation | System for determining user interfaces to display based on user location |
-
2016
- 2016-05-11 US US15/152,436 patent/US10241514B2/en active Active
-
2017
- 2017-05-11 JP JP2019511832A patent/JP6942177B2/ja active Active
- 2017-05-11 CA CA3023557A patent/CA3023557A1/en active Pending
- 2017-05-11 KR KR1020187035946A patent/KR102444658B1/ko active IP Right Grant
- 2017-05-11 WO PCT/US2017/032285 patent/WO2017197197A1/en unknown
- 2017-05-11 EP EP17796891.4A patent/EP3455686A4/en active Pending
- 2017-05-11 CN CN201780041844.2A patent/CN109416538A/zh active Pending
-
2019
- 2019-02-06 US US16/268,861 patent/US20190171210A1/en not_active Abandoned
-
2021
- 2021-08-30 US US17/461,153 patent/US11803185B2/en active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS59121405A (ja) * | 1982-12-14 | 1984-07-13 | Honda Motor Co Ltd | 移動ロボツトの制御装置 |
US5155684A (en) * | 1988-10-25 | 1992-10-13 | Tennant Company | Guiding an unmanned vehicle by reference to overhead features |
US5341540A (en) * | 1989-06-07 | 1994-08-30 | Onet, S.A. | Process and autonomous apparatus for the automatic cleaning of ground areas through the performance of programmed tasks |
US20040158358A1 (en) * | 2003-02-06 | 2004-08-12 | Matsushita Electric Industrial Co., Ltd. | Method of teaching traveling path to robot and robot having function of learning traveling path |
US20090228166A1 (en) * | 2006-01-18 | 2009-09-10 | I-Guide, Llc | Robotic Vehicle Controller |
CN101383910A (zh) * | 2007-09-05 | 2009-03-11 | 索尼株式会社 | 图像处理装置及方法 |
CN102576365A (zh) * | 2009-10-06 | 2012-07-11 | 高通股份有限公司 | 用于在内容递送系统中经由图像匹配进行商品销售交易的系统和方法 |
CN102842041A (zh) * | 2011-05-13 | 2012-12-26 | 国际商业机器公司 | 内部位置识别方法和装置 |
US20150127149A1 (en) * | 2013-11-01 | 2015-05-07 | Brain Corporation | Apparatus and methods for online training of robots |
CN109414142A (zh) * | 2016-05-11 | 2019-03-01 | 云海智行股份有限公司 | 用于训练机器人沿着路线自主行进的系统和方法 |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TWI743705B (zh) * | 2019-03-15 | 2021-10-21 | 日商山葉發動機股份有限公司 | 既定路線行駛車輛 |
CN110365908A (zh) * | 2019-08-01 | 2019-10-22 | 北京鲲鹏神通科技有限公司 | 一种视觉控制方法 |
CN110365908B (zh) * | 2019-08-01 | 2020-06-19 | 北京鲲鹏神通科技有限公司 | 一种视觉控制装置 |
CN111685634A (zh) * | 2020-03-19 | 2020-09-22 | 广东蓝水花智能电子有限公司 | 一种升降电梯梯门开闭控制方法 |
CN111681451A (zh) * | 2020-06-12 | 2020-09-18 | 苏州博众机器人有限公司 | 一种停车数据处理方法、系统和停车场 |
CN111681451B (zh) * | 2020-06-12 | 2022-10-14 | 苏州博众智能机器人有限公司 | 一种停车数据处理方法、系统和停车场 |
Also Published As
Publication number | Publication date |
---|---|
US10241514B2 (en) | 2019-03-26 |
JP6942177B2 (ja) | 2021-09-29 |
WO2017197197A1 (en) | 2017-11-16 |
KR102444658B1 (ko) | 2022-09-20 |
US20170329333A1 (en) | 2017-11-16 |
KR20190030197A (ko) | 2019-03-21 |
US20190171210A1 (en) | 2019-06-06 |
US20220083058A1 (en) | 2022-03-17 |
CA3023557A1 (en) | 2017-11-16 |
US11803185B2 (en) | 2023-10-31 |
EP3455686A1 (en) | 2019-03-20 |
EP3455686A4 (en) | 2020-02-19 |
JP2019515407A (ja) | 2019-06-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109416538A (zh) | 用于对机器人进行初始化以沿着训练路线自主行进的系统和方法 | |
Shivakumar et al. | Pst900: Rgb-thermal calibration, dataset and segmentation network | |
US10908676B2 (en) | Image processing device, object selection method and program | |
Sanna et al. | A Kinect-based natural interface for quadrotor control | |
CN109414142B (zh) | 用于训练机器人沿着路线自主行进的系统和方法 | |
EP3146729B1 (en) | System comprising a helmet, a multi-camera array and an ad hoc arrangement of fiducial marker patterns and their automatic detection in images | |
Tölgyessy et al. | Foundations of visual linear human–robot interaction via pointing gesture navigation | |
CN107004279A (zh) | 自然用户界面相机校准 | |
JP5895569B2 (ja) | 情報処理装置、情報処理方法およびコンピュータプログラム | |
WO2020058669A1 (en) | Task embedding for device control | |
US11170526B2 (en) | Method and apparatus for estimating tool trajectories | |
CN107860390A (zh) | 基于视觉ros系统的非完整机器人远程定点自导航方法 | |
JP6164319B2 (ja) | 情報処理装置、情報処理方法およびコンピュータプログラム | |
EP4261789A1 (en) | Method for displaying posture of robot in three-dimensional map, apparatus, device, and storage medium | |
Mathews et al. | Supervised morphogenesis: morphology control of ground-based self-assembling robots by aerial robots. | |
Vakanski et al. | Robotic learning of manipulation tasks from visual perception using a kinect sensor | |
Linder et al. | Towards training person detectors for mobile robots using synthetically generated RGB-D data | |
Anderson et al. | A Pragmatic Global Vision System for Educational Robotics. | |
Ramík et al. | On Human Inspired Semantic SLAM's Feasibility. | |
Escalona et al. | PRACTICAL CLASSES IN A ROBOTICS AND COMPUTER VISION SUBJECT | |
Zhou et al. | Information-driven 6D SLAM based on ranging vision | |
Kapula | Gesture Based Management of Semi–Humanoid Robot | |
Halodová¹ et al. | Check for updates Adaptive Image Processing Methods for Outdoor Autonomous Vehicles | |
Negrijn et al. | Rockin@ work visual servoing | |
Alenyà Ribas et al. | Active perception of deformable objects using 3d cameras |
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 |