机器人如何在不断变化的世界中“找到”自己?

重磅干货,第一时间送达

想象一下这样的场景:我们遇到了一个从印度旅行回来的朋友,在此之前我们已经在印度旅行了很多次,并推荐我们的朋友到那里度假。当我们见面时,我们的朋友会告诉我们在寺庙前看到一只戴着红帽子的猴子,我们还会记得几年前看到过那只猴子吗?我们便会掏出手机找到照片作为证据,接下来几分钟的谈话可能是这样的:“我知道它就在这里!不,不,这是在我们参观瀑布之前。嗯…这是在海滩之后,我很确定……”令人沮丧,对吧?

通常会有一到两周的假期时间,包括连续拍摄假期照片,在手机上查找很久以前拍摄的某张照片可能会很困难,这可能令人沮丧,但并非不可能。我们直观地重放一系列心理图像,这些图像提供有关我们在任何时间点的位置信息。

位置识别

这种对先前所见信息的识别和回忆构成了位置识别的问题,在手机上找到一只戴着红帽子的猴子的假期照片涉及相同的心理导航。当我们浏览照片时,我们的大脑会回到过去,在脑海中回放假期的时光,确定我们在何时何地看到猴子。

这有另一种解释方式,当我们给某人指路时,通常会说这样的话:“一直往前走,直到你看到著名的汉堡店,向左转,然后你会看到一家药店就在你面前。在那里右转......”。如果他们无法将他们所看到的与我们所描述的相匹配,那么所有这些信息都是没有用的。

在更大的范围内

现在,想象一下,如果我们的手机日夜不停地拍摄照片,要浏览所有照片,找到几个月或几年前拍摄的一组假日照片中戴着红帽子的猴子的一张图片,几乎是不可能的。这正是自动驾驶汽车必须解决的问题,代替手机上的照片,这些机器人必须能够理解在其整个使用寿命内运动时捕获的连续视频序列流(相当于数百万张图像)。

对于机器人来说,大规模观测的成功定位是通过可扩展的位置识别过程实现的。

机器人像人类一样解决问题

作为人类,我们始终在脑海中想象着世界,自动驾驶汽车的情况也类似。为了“在路上”做出有效的决策,自动驾驶汽车必须尽可能快地理解一系列永无止境的图像。

人类和机器人还可以通过GPS导航/定位工具获得外部帮助。然而,GPS 不能对所有场景中的所有任务都十分准确——水下、地下、火星上!当涉及到自动驾驶汽车的可靠性及其做出准确、实时决策的能力时,这是个问题。幸运的是,如果机器人(包括自动驾驶汽车)以前见过一些东西,这些信息应该有助于自我定位。

回想一下我们在一个新城市迷路的时候,随意走动后,我们突然看到了我们之前所注意到的建筑物,可能是因为它的颜色或大小。借助在我们脑海中运行的位置识别算法,我们可以计算出建筑物相对于酒店的位置,从而安全返回。我们不考虑单个图像或场景来识别我们的位置,我们通过播放一系列相连的图像(和记忆)以导航我们回到酒店。

作为澳大利亚机器人视觉中心的一部分,我们将同样的“人类”策略应用于机器人,我们使用可扩展的位置识别来将机器人主动看到的内容与之前观察到的数百万张图像进行匹配。单个图像可能没有足够的信息进行定位,然而,从每张图像中收集点点滴滴的证据,并利用这些证据对序列进行推理,显示出了定位的巨大潜力,即使图像的外观因天气、时间等原因而变化。

机器学习来拯救?

虽然机器学习用于解决机器人领域的大多数问题,但我们对顺序推理的关注走的是一条稍微过时的路线,好消息是,正如我们在 2019 年 ICCV 上的工作所示,顺序推理在解决机器人可伸缩位置识别问题方面优于基于定制深度学习的方法,这也让我们大吃一惊!

当前深度学习方法的一大局限性是无法推广到看不见的场景,相比之下,我们已经展示了我们的方法在各种不同的试验环境中可以直接使用。此外,由于在顺序推理中没有学习到的组件,因此我们的方法不受范围的限制,并且可以在看到数百万张图像后立即获取信息。

未来之路:下一步和挑战

自动驾驶汽车很快就会在我们的道路上成为现实,为了安全导航,这些未来的机器人每次在路上行驶时都需要看到并理解无数的图像。

仍有挑战需要克服,例如,作为人类,即使在不断变化的条件下,我们也不难确定自己的位置,在黑暗或暴风雨的条件下,我们仍然可以在暴风雨的漆黑夜晚看车窗外,并且仍然能够定位我们所在的位置,但是,当某个位置的外观由于外部/环境因素(光线、天气、障碍物等)而发生变化时,机器人仍然难以解读图像。

一个更迫切需要解决的问题是存储,自动驾驶汽车看到的所有图像都需要存储在内存中,以便对其进行顺序推理。

我们当前面临的挑战是提出一种“终身位置识别”方法,该方法将在任何可能的情况下(无论天气或时间)以及大范围内继续运行。我们想结合我们目前对我们的位置的了解来预测我们在下一个瞬间的位置,利用这些信息,我们可以限制需要推理的图像集。其背后的原因是这样的,如果我们知道我们在阿德莱德中央商务区的某个地方,那么在下一刻,我们发现自己在珀斯的某个地方是极不可能的(实际上,在没有远程传送的情况下是不可能的)。因此,让我们只看靠近我们当前位置的图像,并将其他所有内容标记为“不可能”。

我们希望通过将顺序分析与内存管理相结合,我们将能够实现一种方法,使自动驾驶汽车能够在任意大的图像采集上进行自我定位。

想象一下这个未来的场景:自动驾驶汽车可以协同工作,实时捕捉世界在任何给定时刻的样子以及世界每天的变化情况。这种大规模的位置识别方法可以通过所有汽车的组合眼睛来看世界,从而实现对每辆自动驾驶汽车的精确定位。真是激动人心的时刻!

下载1:OpenCV-Contrib扩展模块中文版教程
(0)

相关推荐