在《铁甲钢拳》里,机器人可以完美地模仿人类的动作,不论是热舞还是打拳,都几乎分毫不差,让人大呼过瘾。
不过在现实中要这样控制机器人还是很困难的。特别是如果控制机器人的操作员不在机器人身边,而是远程控制,那就难上加难了。
困难的事情才有挑战性,而且还很有意义。比如在现实中,手术机器人通常就是由一个外科医生远程控制,让机器人精确地捕捉到人的双手运动信息。然后,将捕捉到的运动信息映射到机器人的运动上,才能实现远程操作。不过,现有的手势捕捉方法有些复杂,主要通过数据手套、腕带和光学标记。这些方法不仅价格昂贵,而且校准起来很费时费力。
说到动作捕捉,有XBOX的玩家可能会问,Kinect能否一战?
答案是不能。
微软的Kinect虽然不错,但它只能捕捉到人体的运动,对精细的手部动作也无能为力。其实也不是Kinect特别拉跨,大多数手机应用程序也都只能估算2D手势。
所以这双手运动捕捉可是个老大难问题,就像在计算机视觉领域里摸黑找路。为什么呢?嗯,因为左右手长得太像了,就像双胞胎一样,让人傻傻分不清楚。再加上手势种类多,每个人的手都不一样,这就让检测和区分双手变得更加困难。
▍还得靠神经网络
那有人就要问啦:“那怎么办呢?”别急,科学家们想出了一个好办法:从单张RGB图像中估计3D手势。但这个方法也不是那么容易实现的,因为手势和手势之间的相似性很高,经常让人眼花缭乱。而且手势还会自遮挡。最最关键的是,图像里缺乏深度信息,要猜出3D手势究竟长什么样,真让人脑壳疼。
为了解决这些问题,中山大学联合香港中文大学(深圳)的科研团队提出了一种方便又便宜的好方法。他们先用视觉传感器捕捉操作员双手的位置和姿势。然后,双手运动信息会映射到仿生双臂机器人的运动上。在这个系统中,包括一种通过视觉的双手运动捕捉方法,该方法由DuHandLocaNet和3DHandPoseNet两个部分组成。
DuHandLocaNet用于检测和定位双手的位置,并分辨左右手,这些信息可以映射到机器人的手上。而3DHandPoseNet可以从所捕捉到的人类手部的图片中估计双手的3D姿态,这些3D手势信息可以映射到五指灵巧机械手上。该研究论文以Dual-Hand Motion Capture by Using Biological Inspiration for Bionic Bimanual Robot Teleoperation为名发表在中国科技期刊卓越行动计划高起点新刊《Cyborg and Bionic Systems》上。
除了关注人类操作员的手部动作,这个方法还有一个机智的操作,那就是它也同时捕捉人类身体的位置和动作,用来辅助判断手的姿势和左右手。
对啊,在身体左边的是左手,在身体右边的是右手,之前怎么就没想到呢?!
▍先找到双手的位置
DuHandLocNet 可以在RGB图像上检测双手并区分左右手。它使用并行网络,其中一个子网络用于手部检测,另一个子网络用于身体姿势估计,它通过使用身体正向运动学树(body forward kinematic (FK) tree)来输出所估计的双手位置和手性。
DuHandLocNet的表现:下图中从左到右分别是人类操作员手部动作的原始图像,不同人的手有大有小,所做的手势也不一样。手部检测子网络和身体姿势子网络可以准确地检测出的手部和身体的动作。
▍再估计3D手势
在检测到双手后,定位手部的RGB图像会被送进3DHandPoseNet里,这样就能解析出3D手势了。为了能更准确地估计3D手势,这个网络采用了一种级联结构,还引入了损失函数来衡量模型预测结果和真实结果之间的差距。这个网络是由三个模块组成的:一个是特征提取模块(FEM),负责提取2D手关节点的特征;一个是级联模块(CaM),负责微调2D手关节点的特征;最后一个是3D姿势回归模块(PRM),负责回归3D手势。
有了这一顿操作,3DHandPoseNet就能帮我们准确地解析出3D手势了。
从原始图像、输出的2D手势、从相机视角输出的3D手势和从另一个视角输出的3D手势:
▍给Baxter机器人换上一双巧手
Baxter机器人在双臂机器人里早就是红人了(红色的机器人),它能做的事情还真不少,甚至还会叠起衣服这种软绵绵的东西。
但它人生最大的痛是跟人划拳总是输,谁让它只有两根指头呢。
这就等于输在了起跑线上了,那怎么行啊!可让科学家们操碎了心。所以一直有好事者尝试给它装上像人类一样的手掌和5根指头,好让它享受更多自由(成为合格的打工人):
这不,中山大学团队也一样,给Baxter换上了一双灵巧的小手:
既然都这样了,那啥也别说了,开始搬砖吧:用双手搬运一个大箱子,还有用双手将一个杯子另一个杯子,看这架势以后也可以去奶茶店试试运气?
实验效果来看,团队所提出的DuHandLocNet和3DHandPoseNet可以很精确地把人类操作员的动作映射到机器人上,证明了这种方法的有效性。未来他们将继续研究更为精准和稳健的双手运动捕捉方法,通过基于视频的手部检测和手部姿态估计技术来提高整体的运动捕捉精度和鲁棒性,甚至还将引入混合现实和共享控制方法,与仿生双臂机器人遥操作相结合,以增强用户的沉浸感和操作效率。
文章链接:
https://spj.science.org/doi/10.34133/cbsystems.0052