本发明涉及一种用于确定改变的边界的方法、用于执行该方法的计算单元和计算机程序以及一种移动设备,该边界至少部分地对移动设备、尤其至少部分自动化地移动的车辆或机器人、尤其割草机器人的工作区域定界。
背景技术:
1、移动设备或工作设备、诸如至少部分自动化地移动的车辆或机器人典型地在环境、尤其待处理的环境或工作区域、诸如住宅中、在花园中、在工厂车间中或在街道上、在空中或在水中移动。
技术实现思路
1、根据本发明,提出具有独立权利要求的特征的用于确定移动设备的工作区域的改变的边界的方法、用于执行该方法的计算单元和计算机程序以及移动设备。有利的设计方案是从属权利要求以及随后的描述的主题。
2、本发明一般来说涉及在环境中或在那里例如在工作区域中移动或至少能够移动的移动设备。于是也可以谈及移动工作设备。这样的移动设备(或移动工作设备)的示例例如是机器人和/或无人机和/或也部分自动化地或(完全)自动化地(在陆地、水上或在空中)移动的车辆。作为机器人,例如家用机器人、如(例如吸尘和/或拖地机器人形式的)清洁机器人、地面或街道清洁设备、建筑机器人或割草机器人在考虑之内,但是其他所谓的服务机器人同样也在考虑之内,作为至少部分自动化地移动的车辆,例如客运车辆或货运车辆(还有所谓的地面输送车辆,例如在仓库中),以及如所谓的无人机的航空器或水运工具。
3、这样的移动设备尤其具有控制或调节单元和驱动单元,用于移动该移动设备,使得可以在环境中、尤其沿着移动路径移动该移动设备。为此,可以基于该移动路径确定导航信息,即例如确定的指示:该移动设备应朝哪个方向行驶,以便遵循该移动路径。这些导航信息然后可以经由控制或调节单元以及驱动单元来实现。
4、为了导航,例如可以使用环境地图,该环境地图可以是尤其已借助slam获得或确定的。机器人技术中的如下方法被称为slam(“s imul taneous local izat ion andmapping”,大致:同时定位与地图构建),在该方法中移动设备、如机器人可以或必须同时创建其环境的地图并估计其在该地图之内的空间位置。其因此用于识别障碍物并且因此支持自主导航。
5、此外,移动设备或工作设备可以具有一个或多个传感器,借助所述传感器可以检测环境或环境中的信息。这些传感器例如可以是摄像机、激光雷达传感器或惯性传感器,借助这些传感器可以例如二维或三维地检测环境和/或移动设备的移动。
6、此外,这样的移动设备可以配置为借助通信连接接收数据和/或发送数据,即一般来说进行通信或交换数据。以这种方式,可以与移动设备进行通信,例如向移动设备发出指示,向移动设备传送其他数据或从移动设备接收数据或信息。在此尤其无线通信连接在考虑之内。为此,移动设备可以例如具有相应的(必要时不同的)用于无线通信的模块,但是这些模块例如也可以被集成到计算单元中。
7、在这样的移动设备中,也常见的是,存在移动设备可以执行的功能,即移动设备配置为执行一个或多个、优选地不同的功能。代替功能,也可以谈及应用程序。这样的功能可以例如是工作功能或学习功能。
8、工作功能包括例如在环境中自动化地移动该移动设备并且在该环境中在该移动期间至少暂时地,在该环境中执行工作过程。在割草机器人的情况下,工作功能因此可以包括例如(在移动期间)割草。为此,可以例如通过经由无线通信连接发送相应的数据,向移动设备例如发出用于执行工作功能的开始指令。
9、学习功能包括例如在该环境中手动控制地移动该移动设备,尤其当在该环境中不执行工作过程的情况下。在割草机器人的情况下,学习功能因此可以包括例如沿着工作区域的边界(手动)移动或控制,以便将该边界教给割草机器人。为此,可以例如通过经由无线通信连接发送相应的数据,向该移动设备例如(连续地)发出用于在环境中导航或移动的控制指令。在此情况下也谈及学习或所谓的“教学(teach-in)”。
10、该学习的一个方面是应找到或预先给定包围工作区域、即例如花园的边界(或界限)。在工作功能中,然后可以使用该边界来对该移动设备的自动化移动定界。
11、为移动设备提出一种确定用于至少部分地对该移动设备的工作区域定界的这样的边界的可能性。
12、为此,在第一步骤中,提供环境的环境信息,移动设备在该环境中移动或应在该环境中移动。这些环境信息可以例如是例如可以被用于slam的位置、定向等。但是这些环境信息尤其也可以包括例如由移动设备的摄像机检测的或已由移动设备的摄像机检测到的图像或环境图像。在此,这些环境信息(在第一步骤中)已在该移动设备的从外部控制的移动时获得,更确切而言尤其在该移动设备的手动移动时获得,如上面关于学习功能所提及的。在此,该移动设备因此例如可以经由智能手机和蓝牙连接来控制。在此,用户因此例如可以沿着期望的工作区域的边缘至少大致或尽可能好地控制割草机器人并且与此同时跟随割草机器人。在第一步骤的该移动设备的这种移动的情况下,也可以谈及第一移动。
13、基于来自第一步骤的环境信息,然后确定该移动设备的在该环境之内的工作区域的边界。该边界可以是一种临时的或粗略的边界,但是该边界原则上可以被用于工作功能。由于该边界基于对该移动设备的手动控制,所以可能发生:该边界不是非常精确。
14、来自第一步骤的环境信息在此尤其可以借助slam、尤其视觉slam来获得。为此,例如可以相应地处理检测到的图像。优选地,基于来自第一步骤的环境信息在使用循环闭合(loop-closure)的情况下确定和/或细化该边界。
15、所谓的循环闭合是与slam相关的一个方面。在此情况下假设:该移动设备在该环境中或在该工作区域中移动期间到达该环境中的确定位置,该移动设备先前已经在该位置一次。根据环境信息、如图像或例如还有从该移动设备的相应位置来看的间距信息,并且通过这样的环境信息与以前的环境信息的比较,可以确定:该移动设备是否先前已经在一个位置一次,或该移动设备先前已经在一个位置一次。如果这被查明,那么在slam的范围内创建的地图或该移动设备的在该地图中被标记为经过的路径将必须同样说明:该移动设备再次位于相同位置处。但是,由于可能的偏差,经常情况将不是如此。更确切地说,在所创建的地图中,当前位置将偏离以前的位置。这里,现在可以调整地图和因此调整边界,使得这两个分开的位置再次一致。在此情况下谈及所谓的循环闭合。
16、就此而言,也特别适宜的是,该移动设备的从外部控制的移动包括从起点到终点的移动,其中起点和终点至少在预先给定的公差之内是相同的。例如,起点和终点可以在插接站处。因此可以进行循环闭合,并且可以在第一步骤中特别好地确定边界。
17、在第二步骤中,然后提供至少在边界的区域中的环境的环境信息、尤其图像。这些环境信息在此已在该移动设备沿着该边界和/或在该边界之内重新移动时获得。这种重新移动尤其是自动化移动,即例如在所提及的工作功能的范围内,也就是说在此可以执行处理。这例如可以包括(必要时整个)工作区域的第一割草。在第二步骤的该移动设备的这种(重新)移动的情况下,也可以谈及另一移动。
18、基于来自第二步骤的环境信息,然后确认和/或调整(在第一步骤中获得的)边界。如果该边界被确认,则可以继续使用在第一步骤中获得的边界,可以谈及证实。如果该边界被调整,则例如可以基于在第二步骤中获得的环境信息调整在第一步骤中获得的边界。因此,例如可以根据来自第二步骤的环境信息(优选地图像)获得如下信息:在来自第一步骤的边界之外的确定部位处还有一块草坪,使得可以在那里相应地调整该边界。易于理解的是,该边界的部分可以被确认并且该边界的其他部分可以被调整。
19、如所提及的,来自第二步骤的环境信息可以包括环境的图像。在一种实施方式中,确认和/或调整该边界于是包括根据来自第二步骤的图像确定环境的包括该边界的至少一部分的地图。这例如可以在使用正交投影的情况下进行。
20、以这种方式,在第一步骤中不必或至多必须检测和存储少量图像,以便稍后因此创建该地图。更确切而言,该边界的确定仅仅经由(视觉)slam进行。这节省计算资源。来自第二步骤的环境信息、尤其图像然后可以被用于证实或调整。由于第二步骤可以在工作过程的范围内进行,因此总体而言可以比当例如(在工作功能之前)进行用于证实的附加步骤时更快地使用具有实际工作功能的移动设备。
21、但是,替代于这两个步骤,也可能的是提供环境的环境信息和图像,该移动设备在该环境中移动或应在该环境中移动,这些环境信息和图像在该移动设备的从外部控制的移动时获得或已获得。然后基于这些环境信息和图像确定该移动设备的在该环境之内的工作区域的边界。因此在这种情况下此外也检测并且必要时存储和处理图像。这允许在该移动设备的仅仅一个移动过程中确定特别精确的边界,尽管这里更多的计算资源可能是必需的。与上面所描述的具有两个步骤的方式相比,这里仅仅第一步骤是必需的,然而在那里也检测图像。
22、在一种实施方式中,在这种情况下此外也可以提供至少在该边界的区域中的环境的环境信息、尤其图像,这些环境信息在该移动设备沿着边界和/或在该边界之内的另一(尤其自动化的)移动时获得或已获得。在该另一移动的情况下,该移动设备尤其执行处理过程。这可以本身与先前描述的变型方案的第二步骤相对应。利用这些环境信息或图像,然后不必确认和/或调整该边界(尽管情况可能又如此)。更确切地说,以此可以确定环境的地图,该地图包括边界的至少一部分,这可以如上面已经提及的那样例如在使用正交投影的情况下实现。
23、如已表明的,通过该移动设备的有针对性的移动,也可以获得特别精确的边界,更确切而言取决于例如使用这两个步骤还是使用仅仅一个用于确定边界的步骤。
24、在此情况下,提供环境的环境信息和/或图像,该移动设备在该环境中移动或应在该环境中移动。在此,这些环境信息和/或图像已在该移动设备的移动时获得:这种移动可以从外部、手动控制或是自动化的。
25、但是在此,该移动设备的移动包括至少一个移动部段,在该移动部段中该移动设备至少部分地在工作区域之外在地面上移动,该地面与该工作区域(或期望的工作区域)的地面不同。在此例如可以涉及道路或人行道,而(期望的)工作区域具有例如草坪作为地面。换言之,因此有针对性地在(实际的或期望的)工作区域之外移动该移动设备,而这通常仅在(实际的或期望的)工作区域之内进行。
26、然后,基于这些环境信息和/或图像,确定该移动设备的在该环境之内的工作区域的边界。通过该移动设备在(实际的或期望的)工作区域之外的这种有针对性的移动,可能的是,更精确地检测(期望的)工作区域的边界,使得也可以明显更精确地确定该边界(无论是临时的还是最终的边界)。在此情况下应提及的是,这里该边界不必直接基于该移动设备的移动,例如从外部控制的移动,而是必要时可以相应地被调整,以便将该边界限制到(期望的)工作区域。
27、适宜的是,与工作区域的地面不同的地面与工作区域的地面邻接和/或在预先给定的公差之内具有相同的高度。该高度在此情况下尤其与重力方向有关。以此方式,移动设备可以毫无问题地从一个地面移动到另一地面,甚至可以同时在两个地面上移动。
28、应提及的是,经常该边界的仅仅一部分可以以此方式确定,因为例如在(期望的)工作区域之外的地面的部分也可能是不可通行的;例如,在某些地方,栅栏、墙壁或水可能限制(期望的)工作区域。
29、如所提及的,可以在使用正交投影的情况下确定环境的地图,更确切而言视觉地图。视觉地图在此尤其应被理解为图解地示出该环境的地图,而不是具有节点和棱边等的slam地图。在此情况下也可以谈及结构地图,该结构地图因此显示环境的结构,例如具有草坪所在的区域和没有草坪的区域。
30、为此,提供环境的图像,其中所述图像在该移动设备在环境中移动时获得或已获得。这种移动可以是从外部、手动或自动化的。然后确定环境的图像的正交投影视图。基于环境的图像的正交投影视图,然后提供环境的视觉地图;然后可以如上面所解释的那样使用该视觉地图。
31、在一种实施方式中,在使用计算机视觉算法、如尤其分割、例如语义分割的情况下确定环境的视觉地图。通过应用计算机视觉算法,可以对图像进行预处理。尤其,在此可以在图像中确定连贯区域,尤其即使在分割时情况也如此。在此,可以在确定正交投影视图之前对环境的图像进行分割或一般来说借助计算机视觉算法进行处理,以便获得环境的分割后的图像或一般来说被预处理的图像。然后基于环境的分割后的图像或被预处理的图像确定环境的图像的正交投影视图。
32、但是同样也可以在分割或应用计算机视觉算法之前确定环境的图像的正交投影视图。然后对环境的图像的正交投影视图进行分割或预处理。
33、在一种实施方式中,分割借助机器学习算法、例如人工神经网络执行。但是同样可以进行计算机视觉算法的经典应用。
34、如果该移动设备是割草机器人,并且环境的图像包括草地(或草坪)的图像,则在分割或应用计算机视觉算法时可以确定草地的界限。
35、以此方式,因此可以特别精确地确定(期望的)工作区域、即例如草坪的界限,使得视觉地图可以特别精确地呈现工作区域。尤其,但是因此可以特别精确地、即例如经由草地和其他地面之间的界限确定边界。这允许特别精确地确定或调整边界,如上面提及的。
36、在此,图像(或被预处理的或分割后的图像)的正交投影尤其应被理解为图像被投影到地面上,即自顶向下。在此应考虑的是,该移动设备、诸如割草机的摄像机通常至少大致水平地定向。因此,在利用这样的摄像机检测或记录的图像中,地面仅在下边缘处并且失真地被呈现。在考虑到摄像机参数、诸如摄像机在移动设备上的具体布置和视野等的情况下,可以矫正并且在俯视图的意义上呈现图像中的示出地面的部分。在正交投影的这种呈现中,可以明显更好地识别工作区域的具体的和精确的界限。
37、在分割、尤其所谓的语义分割的情况下,可以给图像中的每个图像点(像素)分配多个类别中的一个类别,即对图像点进行标记或分类。为此,典型地首先确定或提取图像点的特征,然后基于这些特征分配类别。这样的特征例如可以是形状、颜色、上下文、模式、光变化和/或图像上下文。因此,例如一个图像点可以被分配颜色绿色,并且周围的图像点同样可以全部是绿色的。这将表明草坪。
38、在此,作为类别,不同的特征在考虑之内。在割草机器人的示例中,可以例如在简单的情况下使用两个类别,即“草坪”和“非草坪”,即针对图像的每个图像点确定是否显示草坪。易于理解的是,也可以使用多于两个的类别,以便例如也识别道路、街道、建筑物、车辆或人并必要时分配给图像点。依据类别“非草坪”,类别“背景”也是可设想的,未被分配给另一类别的所有都被分配给该类别“背景”。通过所有这些标记,与仅识别图像中的对象的纯对象识别相比,添加更多信息。
39、原则上,分类不必针对每个单独的图像点进行,而是该分类也可以针对图像的片段或部分进行,这些片段或部分分别包括多个图像点。这样的片段可以固定地被预先给定,或也可以在语义分割的范围才被形成,必要时在该图像之内也具有不同的大小。为此,优选地使用一个或多个人工神经网络或一般来说基于人工智能的模式识别方法。
40、分割后的图像因此允许更简单和更快速地确定不同地面之间的界限在何处。
41、在一种实施方式中,此外确定改变的、尤其扩展的边界,更确切而言基于来自第一步骤的边界和/或来自第二步骤的环境信息、尤其图像来确定。改变的边界的确定在此尤其自动化地进行。然后,尤其作为地图,尤其为用户提供改变的边界。因此例如可以提供对改变的边界的建议。为此,可以例如在智能手机或其他输入设备上显示改变的边界。
42、在一种实施方式中规定,基于来自第一步骤的边界和/或来自第二步骤的环境信息、尤其图像,确定改变的、尤其扩展的边界。改变的边界的确定在此尤其自动化地进行。在此,改变的边界被确定为调整后的边界。因此,这里可以自动化地进行边界的改进,更确切而言尤其在不通过用户进行改变的情况下进行。
43、改变的边界的确定可以尤其也与已如何精确地获得现有边界无关地进行。为此,可以提供在环境之内的工作区域的现有边界,移动设备在该环境中移动或应在该环境中移动。现有边界在此至少已基于环境的环境信息确定,这些环境信息已在该移动设备的第一次移动时获得。
44、然后,提供至少在现有边界的区域内的该环境的环境信息、尤其图像。这些环境信息然后已在该移动设备沿着现有边界和/或在现有边界之内的重新的尤其自动化的移动时获得。然后,自动化地确定改变的边界,更确切而言基于现有边界和已在该移动设备的重新移动期间获得的环境信息、尤其图像来确定。该改变的边界尤其作为地图(例如所提及的视觉地图)提供,尤其为用户提供。这例如可以在智能手机或其他输入或显示设备上进行。因此,用户可以获得对改进的边界的建议。
45、该改变的边界尤其可以是扩展的边界或改进的边界。因此可能的是,特别简单地和快速地(因为自动化地)获得更好的边界,该更好的边界允许更精确地覆盖期望的工作区域。
46、也可以确定该改变的边界与现有边界之间的偏差是否满足预先给定的标准;例如,可以确定这两个边界的平均间距或累积间距并与阈值进行比较。只有当该偏差满足预先给定的标准时,才提供该改变的边界。因此,例如只有当这显得合理时,才向用户展示建议。
47、此外可以规定:从外部获得校正信息。为此,用户可以基于建议例如进行并传送对该建议的改变。然后,基于边界(取决于存在哪一个,也可以是现有边界和建议的改变的边界)以及基于校正信息确定调整后的边界。
48、在一种实施方式中规定,来自第一步骤的环境信息包括关于环境中的参考点的信息、尤其图像。关于参考点的信息可以然后尤其在边界的确定中和/或在视觉地图的确定中被使用。这样的参考点例如可以是检查点,尤其也是仅仅几个检查点,并不沿着整个路径,但是例如以确定的间距和/或在确定的机动动作(90°弯曲等)时。这实现更精确地证实或调整边界或地图,而在第一步骤中只须存储少量图像。
49、除了上面所提及的确定至少部分地限制工作区域的边界的可能性(这尤其涉及外部边界)之外,还可以从现有边界(该现有边界于是例如已如上述那样确定)出发确定附加边界,尤其内部边界,即例如被现有边界包围的边界。这样的附加边界可以例如将在草坪中存在的树木或其他障碍物从要处理的工作区域中排除。
50、为此,提供环境的环境信息(例如位置、定向)和/或图像,该移动设备在该环境中移动或应在该环境中移动。这些环境信息或图像已在该移动设备移动时获得。该移动设备的移动在此情况下包括从起点开始的移动,其中该起点对应于环境中的点,该移动设备在沿着现有边界或在现有边界处(这可以是边界,如上面所提及的,无论是否已经调整或改变)移动时在该点处被停止或已被停止。该移动设备的移动在此情况下尤其自动化地进行。该移动设备的停止在此情况下主动地和/或手动地、即有意识地进行。
51、然后,基于环境信息和/或图像,必要时还基于现有边界,确定该移动设备的在环境之内的工作区域的附加边界。换言之,该移动设备在其沿着已经存在的边界或至少(短时间地)在这样的现有边界处(自动化)移动期间被停止并从那里例如被控制围绕着障碍物。在此,该移动设备至少部分地从外部(例如手动)控制,例如如上面针对第一步骤所描述的那样。以此方式,对于该附加边界已知的是,该附加边界相对于现有边界的位置如何。
52、优选地,该移动设备的移动此外包括直至终点的移动,其中起点和终点至少在预先给定的公差之内是相同的。因此可以例如借助循环闭合优化该附加边界。
53、优选地,从起点直至中间点的移动包括该移动设备的从外部控制的(例如手动的)移动,而从中间点直至终点的移动于是例如包括该移动设备的自动化移动。尤其,中间点至少在预先给定的公差之内对应于该移动设备在从起点到中间点的移动期间已经经过的点。以此方式确保:该移动设备已完全绕行障碍物。
54、此外,已经关于其他边界阐述的内容于是适用该附加边界,即该附加边界可以例如借助slam来确定。
55、基于环境的边界(必要时还有附加边界和/或改变的或调整后的边界)和/或(必要时视觉)地图,然后可以为移动设备确定导航信息。基于这些导航信息,又可以确定用于移动该移动设备的控制信息。然后可以提供控制信息和/或该移动设备可以基于控制信息来移动。
56、根据本发明的计算单元(即一般来说用于数据处理的系统)、例如移动设备的控制设备或控制单元、或中央服务器或其他计算系统尤其以编程技术配置用于执行根据本发明的方法。
57、本发明也涉及一种移动设备,该移动设备配置为获得控制信息,所述控制信息如上面所提及的那样被确定。此外或替代地,该移动设备具有根据本发明的计算单元。此外,该移动设备具有控制或调节单元和驱动单元,用于移动该移动设备。此外,该移动设备可以具有用于检测环境的环境信息的检测装置,例如所提及的摄像机或多个摄像机,该移动设备在该环境中移动或应在该环境中移动。
58、优选地,该移动设备构成为至少部分自动化地移动的车辆,尤其构成为客运车辆或构成为货运车辆,和/或构成为机器人,尤其构成为家用机器人,例如清洁机器人、地面或道路清洁设备或割草机器人,和/或构成为无人机。
59、以具有用于执行所有方法步骤的程序代码的计算机程序或计算机程序产品的形式实现根据本发明的方法也是有利的,因为这引起特别低的成本,尤其当执行的控制设备还被用于其他任务并且因此总归存在时。最后,设置有一种机器可读存储介质,其具有存储在其上的如上所述的计算机程序。用于提供该计算机程序的合适的存储介质或数据载体尤其是磁、光学和电存储器,诸如硬盘、闪存、eeprom、dvd等。也可以经由计算机网络(互联网、内联网等)下载程序。这样的下载在此可以有线地或线缆连接地或无线地(例如经由wlan网络、3g、4g、5g或6g连接等)进行。