Home / 机器人学习 / 视觉预见:通过预测视频规划动作

016|视觉预见:通过预测视频规划动作

系列首页 · 上一篇 · 下一篇

原论文:Deep Visual Foresight for Planning Robot Motion,Chelsea Finn、Sergey Levine,2016。原文。

先接住前作的问题

手眼协调提供一个阅读起点。Hand-Eye能评价下一次抓取是否容易成功,却不生成物体在候选动作之后怎样移动。Visual Foresight把动作后果显式放进视频预测,再用像素目标规划推动;这是从评分到预测的接口对照,不是同一抓取器的直接升级。

五个前置概念

五个概念有助于理解:前向模型预测动作造成的后果;MPC每次只执行规划序列开头,再用新观测重算;动作条件视频预测让未来画面依赖候选动作;像素输运描述图像信息如何移动;CEM通过精英采样搜索高分动作序列。

一、问题设定:给定像素目标怎样预测并选择推动

一个抓取成功预测器只能给动作打分;一个视频预测模型还能问:“这样推一下,桌上的东西会如何移动?”这篇论文将动作条件视频预测接到模型预测控制,让机器人在预测的未来中挑选动作,再到现实执行第一步。

这是单机器人、视觉观测、模型驱动控制。训练数据来自真实机器人的自主探索,部署以固定模型在线规划;不需要在每个新目标上重新训练一个专用策略。动作是末端任务空间指令,底层机器人控制仍然存在。

无需显式物体姿态不等于任务完全没有监督。测试时指定源像素和目标像素,就是人提供的目标信息。无需显式相机标定也不表示相机可以任意换到一个从未见过的视角。

二、把动作条件视频接到滚动规划

目标用图像上的点表达:指定物体上的像素以及希望它去的位置。训练不用为每条轨迹写任务奖励,机器人通过随机推动收集视觉变化。模型学的是动作后果,测试时再加入具体目标。

模型以最近图像与末端状态,以及候选动作序列为输入,预测未来图像。其视频网络沿用先前动作条件预测工作的主要结构,本文贡献重点在如何把隐含运动表示用于控制,而不是重新发明整个视频模型。

训练可用教学形式表示:

Lvideo=∑t∥It+1−I^t+1∥22.L_{\mathrm{video}} =\sum_{t}\|I_{t+1}-\hat I_{t+1}\|_2^2.

原文用独立高斯像素似然得到均方误差。真实图像像素当然相互关联,这个分布是假设,不能把它解释成对世界所有不确定性的完整建模。

模型通过卷积循环网络产生运动变换与混合掩码。未来图像由当前图像的变换组合构成。重要的是,同样的变换还可以作用于“指定点现在在哪里”的分布,而不只作用于 RGB 值:

Pt+1=F^t⊙Pt.P_{t+1}=\hat F_t\odot P_t.

PtP_t 是指定点位置的二维概率图,F^t\hat F_t 是模型预测的输运算子,⊙\odot 在这里表示算子作用,不是普通逐元素乘法。初始分布集中于指定像素,递推后得到未来位置分布。

若目标像素为 gg,原论文选择让该点到达目标的概率较大的动作:

at:t+H−1⋆=arg⁡max⁡at:t+H−1Pt+H(g).a^\star_{t:t+H-1} =\arg\max_{a_{t:t+H-1}}P_{t+H}(g).

这里时间下标是统一教学记法。多目标点可合并各点对数概率。不要把后续视觉MPC常用的期望距离损失直接说成此文主公式;本文以目标位置概率解释规划。

为什么预测图像并不够

看起来清晰的视频不一定准确表达接触。例如模型可能生成逼真的手臂,但被推动物体位移错误。控制关心动作之间后果差异,所以更关键的检查是:模型能否为“推左端”和“推中间”给出正确的相对效果?

反过来,一些模糊预测也可能保留足够控制信息。这里模型使用运动分布规划,说明图像重建只是训练入口,最终要服务于任务相关预测。视频指标与机器人成功率需要分别评估。

闭环执行与跟踪

预测的点位置只用于想象。真正执行动作后,还要从实际前后两帧用外部光流算法追踪点,更新下一轮起点。这个光流模块并不提供训练期运动监督,却是运行系统的重要组成部分。

这不是学习一个 Actor,也没有 Q Critic。核心学习组件是前向视觉模型,控制器通过在线搜索求动作。不同的计算分配决定了推理预算不能与一次策略前向传播简单对比。

目标概率与期望距离会作出不同决策。教学例:方案A有0.4概率正好到目标、0.6概率停在目标10像素外;方案B一定停在1像素外。按单点目标概率,A优于B;按期望距离,A为6像素、B为1像素,顺序相反。因此不能把后续视觉MPC的距离目标无声替换进本篇公式。原文§IV-B—C

如果允许目标周围2像素的容差,可以对区域 GG 求和 ∑g∈GP(g)\sum_{g\in G}P(g),但这是明确改动了任务定义。这个原创建议还暴露分辨率问题:同一实际容差在不同相机分辨率下对应不同像素区域。读推动实验时,应把像素到达准则与真实三维接触要求分开,图像“看起来到位”不保证力或深度正确。

一个自构例子

未运行的教学例子:长木块有左右两个标记点,目标让左端上移、右端下移。规划器比较从中心推和从边缘推的预测,若模型学到偏心推力会旋转,就可能选择从边缘接触。

若只指定木块中心,纯平移和旋转后的中心位置可能一样,目标本身不足以区分行为。这个例子说明控制问题有两类误差:模型预测错了,以及目标没有把真正意图说完整。后者不能靠增加训练数据自动修正。

三、在新观测上重定位目标点并滚动搜索

候选动作需要先经过视频预测才能得到像素到达成本;执行第一步后,原预测已被新的现实观测取代。跟踪指定点并重规划,正是避免整段开环依赖旧画面的接口。

训练:
    采集随机推动的视频、末端状态、动作
    用真实下一帧监督动作条件视频模型
执行:
    给定源像素和目标像素
    每个控制周期:
        采样候选动作序列
        对每个序列预测像素输运
        将源点分布向未来传播,计算到达目标概率
        用 CEM 保留高分候选并改进采样分布
        只执行最佳序列的第一步
        读取真实图像,用光流更新指定点位置
        重新规划

四、分开检验像素移动与短程推动成功

作者将其视作视觉模型驱动控制的早期探索。实验支持短时推动与部分新物体泛化,并非通用物理推理或长程操作。

原图怎么读: 图6,原论文图注与图像。第一组是遮挡引起指定像素位置漂移,第二组是接触后果预测失准。应分别追踪目标点估计与物体实际运动,不能把两种失败都归为画面不清晰。

Deep Visual Foresight for Planning Robot Motion,图6:第一组是遮挡引起指定像素位置漂移,第二组是接触后果预测失准。应分别追踪目标点估计与物体实际运动,不能把两种失败都归为画面不清晰。
实验图原图摘引:Chelsea Finn、Sergey Levine,2016,HTML S5.F6,图6。原图面板重新排版,数据未改。核对原文。原版权保留。
项目 原文设定及解释
数据 10台机械臂收集5万次推动,包含数百物体
任务 七自由度真实机械臂推动,定量任务包含7个未见测试物体
观测 64×64图像及末端状态,非物体真实三维位姿
测试时域 15步任务;规划时域3步,约800毫秒,约每200毫秒重规划
动作简化 预测时域内绑定相同动作以降低搜索维度
基线 随机动作、直接移向目标、沿当前目标方向并光流重规划
信息差异 几何基线用标定,方法不显式用;重规划基线与方法都用光流跟踪
指标 最终指定像素到目标的图像距离
资源 单台桌面电脑与一块GPU在线计算;完整训练能耗未在这里核实

短规划时域与动作绑定是实际能力边界。虽然架构允许写下长动作序列,本文所展示的主要是反应式短程推动,不是十分钟任务规划。

五处证据如何看

依据原文全文,首次公开2016年,所读版本为2017年的v2。

位置 观察与结论 不能推出
图2、第III节 视频模型的运动变换可以输运指定点 模型具有显式物体或质量参数
Algorithm 1、第IV节 CEM规划、实际光流跟踪组成闭环 全部感知组件端到端共同训练
表I visual MPC距离2.52±1.06,带重规划基线3.19±1.68 像素距离不能直接转成厘米精度
图5 双点相反移动可表达并实现部分旋转 任意三维姿态控制或长程操作
图6 遮挡和错误接触预测造成失败 不能把新物体测试成功泛化为物理理解完备

Deep Visual Foresight for Planning Robot Motion,图2:读图对应本段的“视频模型的运动变换可以输运指定点”;模型具有显式物体或质量参数。
原图摘引:Chelsea Finn、Sergey Levine,2016,HTML S3.F2,图2。核对原文。读图对应本段的“视频模型的运动变换可以输运指定点”;模型具有显式物体或质量参数。
Deep Visual Foresight for Planning Robot Motion,图5:读图对应本段的“双点相反移动可表达并实现部分旋转”;任意三维姿态控制或长程操作。
原图摘引:Chelsea Finn、Sergey Levine,2016,HTML S5.F5,图5。原面板按源顺序重新排版,数据未改。核对原文。读图对应本段的“双点相反移动可表达并实现部分旋转”;任意三维姿态控制或长程操作。

表I中心值差为0.67像素,按基线中心值计算约21%的相对下降,这是自行计算。表中误差量在已核对正文段落未明确说明为标准差还是标准误,因此保留原表符号,不自行补充统计解释。

作者也明确说实验目的不是取得最精确的非抓持操作性能,而是验证数据驱动视觉模型能否提供有用物理预测。与这一路线相关的贡献,不需要夸大成所有推物方法的新纪录。

五、遮挡和预测误差限制长时域外推

其方法贡献在于训练目标与任务目标分离:先从无任务标签交互学后果,再用像素目标重用模型。这是后续机器人世界模型的一条重要线索。不过“世界模型”在这里应理解为有限分布、有限时间尺度的可用预测器,而不是完整世界知识。

图6的遮挡失败特别关键。当光流把原本的物体点跟到手臂上,规划器会认真优化错误对象的位置。更强的动作搜索可能让错误更彻底,所以控制失败不能全归因于视频网络不够大。

另一个限制是投影歧义。同一像素移动可能对应不同三维运动,图像目标也没有直接约束接触力、物体稳定性或避碰。增加更多目标点或更丰富观测可能帮助,但这些是后续设计方向,不能当成本论文已验证的结论。

追问:规划器预测正确但点跟踪偏移时,应该先改世界模型吗?

参考答案:不一定。规划依赖的当前指定点若已跟丢,再准确的动作条件预测也会优化错误对象。可使用相同模型,分别输入人工核对的点和在线跟踪点,比较短时预测及闭环到达误差。这样先区分观测定位误差与动态预测误差;仅用最终任务失败无法定位哪一环节应改。

六、沿机制关系继续读

与PILCO是平行模型控制路线:都学后果,但本篇在像素输运上采样规划;Dreamer在潜在状态中训练可直接执行的策略,构成教学比较,不能仅因都叫世界模型就把控制预算视为相同。

七、自测三题与参考答案

问题1:视频预测误差下降,控制一定更好吗?

答案:不一定。背景像素占比很大,模型可以更准确预测背景却仍预测错接触。应检查目标点运动、动作后果排序以及真实闭环任务,而不仅看整图均方误差。

问题2:既然能预测点位置,为什么执行后还要用光流?

答案:预测会累积误差,实际动作也可能偏离命令。真实图像提供纠偏机会;但光流自身会在遮挡时失效,所以闭环依赖测量质量,并非自动保证正确。

问题3:把预测时域从3步改成30步就得到长程规划了吗?

答案:没有。模型误差会累积,搜索维度和计算量增加,局部像素目标也可能没有描述长期子目标。长程能力需要同时处理预测、搜索和任务表示,不能只改一个数字。