标题:On-line simultaneous learning and recognition of everyday activities from virtual reality performances
作者:Tamas Bates1, Karinne Ramirez-Amaro1, Tetsunari Inamura2, Gordon Cheng1
0.摘要
随着近来虚拟现实头戴式显示器和能够向立体显示器进行高质量渲染的消费级GPU的兴起,我们相信虚拟现实(VR)是一种收集有关人类行为的真实信息的可行方法,而不会遇到通常与捕获有关的困难在物理环境中的自然表演。例如,估算某人是在抓握物体还是简单地触摸它。我们提供了一个用于实验家庭任务(例如洗碗或洗衣服)的VR环境,以及一个语义提取和推理系统,该系统能够利用实时收集的数据向示威者学习新的活动。学习系统对用户的手部动作进行连续的分割,并同时对已知动作进行分类,同时根据需要学习新动作。与以前基于VR的培训系统相比,此增强的系统产生了更准确的结果,将活动的识别率从80%提高到了92%,同时从更复杂和现实的场景中学习了未知的活动。然后,学习系统通过连续观察来构造所有观察到的活动及其关系的图形。所产生的活动和任务数据足够抽象,可以轻松地将知识从VR学习环境转移到物理机器人PR2,并且仍然足够详细,可以用于机器人的计划过程。 该机器人能够利用在VR中学习到的信息来执行多步骤任务,而无需在说明中明确给出每个步骤。
1.介绍
为了改善人机交互,并了解如何在人的空间中行为,对机器人进行真实人类行为示例训练非常重要。构建物理训练环境通常是困难且昂贵的(例如,将加速度计嵌入可以移动的物体中,或者用视觉标记标记所有物体并校准覆盖该空间的跟踪系统),并且如果空间空间较大,则需要解决安全问题在人类和机器人之间共享。一种解决方案是使用虚拟现实(VR)环境,该环境允许快速实现不同的场景[1]。 [2]中提出的系统比以前的基于VR的培训系统[3]提供了更高的真实性和准确性,但是利用VR环境的主要挑战之一是确保虚拟代理学习到的信息可以传输到物理机器人并应用于现实世界。以[2]中的工作为基础,进行了一项实验,以评估在VR中学习的信息对物理机器人的实用性,并确定该信息是否足以帮助物理机器人执行任务计划过程。
记录了多个用户在VR中执行与洗碗相关的任务。 图1显示了用于跟踪和分类其活动的系统的概述。 该系统生成一组观察到的活动和每个对象中使用的对象的本体类(使用默认的KnowROB [4]本体),以及参与者探索的任务空间图。 在任务图中,每个节点代表一个活动,边表示活动之间观察到的过渡,边权重存储每个过渡的观察次数。 在许多观察过程中,结果图表示观察到的用户在VR中的表现所利用的任务空间。 将这些结果提供给PR2机器人,然后命令该机器人执行一些与洗碗有关的简单任务。
2.方法和结果
在PR2上使用了相同的运动分割和分类系统(图1中的“机器人代理ROS节点”)来分析VR中的人的运动,无需修改,即可使机器人估计自己的状态。 这使机器人能够了解其当前动作与整个任务空间之间的关系,并知道可以从其当前状态执行哪些活动。 围绕状态机构建的简单运动计划模块被实现为概念证明,状态与活动相对应,转换功能可确保满足每个活动的先决条件(例如,关闭机器人的抓取器,使其从伸手可及的物体过渡到目标) 拿物体)。 为复杂的活动(例如洗涤)分配了预定义的动作,这些动作是借助MoveIt![5]开发的,这些动作由涉及的对象进行了参数化,并与状态机中的相应状态相关联。
使用活动关系图,可以通过找到从与机器人当前状态匹配的节点到与所需活动匹配的路径来确定执行特定活动所需的步骤。 给定稀疏或不完整的指令,机器人可以通过在指令中每个顺序步骤对之间找到路径来构建完整的任务计划,如图2所示。选择了在节点之间观察到的跃迁数量最多的路径,因此机器人 将采取最常观察到的动作顺序。
通过向机器人展示各种各样的对象(如图3所示)进行了测试,其中一些对象与洗碗活动有关,而另一些则不相关。给定一系列指令,例如“洗碗,然后将其存放在干燥区域”,机器人首先会制定一个计划,其中包含完成所要求任务的所有必要步骤(例如,拿起海绵,将海绵移至在执行清洗动作之前洗碗等),并使用从VR培训课程中学到的活动定义,通过将其本体定义与活动定义中的约束条件匹配来识别要使用的对象(例如,如果活动指定了具有本体的对象)应该使用“ FoodVessel”类,机器人可以自由选择碗或盘子,但不能选择海绵或叉子。只要说明中的活动在机器人的知识库中(即通过虚拟现实中的观察得知),机器人就可以成功执行任务,而不管涉及的步骤数或任务是否需要执行其他活动没有明确包含在说明中。
3.总结
可以通过一个简单的过程将由[2]中所述的系统产生的各个试验的活动定义和任务图进行合并,从而可以将许多试验汇总到一个数据集中,以描述所展示的活动及其在整个任务空间中的关系。 。 活动定义提供了一种简单的方法来确定环境中的哪些对象可以用于活动,并且任务图为高层任务计划提供了有效的数据结构(即,确定应在何时执行哪些活动) 以及应该使用哪些对象)。 一个完整的解决方案还需要一个良好的感官系统(用于定位和分类环境中的对象)和一个强大的运动计划模块(以执行必要的身体运动),但是对于计划该系统的问题,即使给定的系统不完整,其功能也很好 说明。