Prefix: About Why

首先回到2023年8月ming的Hicrisp,为了赶上9月的ICRA,这项工作从idea到experiment都是一再简化,ming本人对于experiment中缺少的perception一直耿耿于怀,我们也讨论几种实现perception的方法,但是存在几个问题:

  • 如果要实现对更多不同场景的泛化,那么除了输入指令要引入LLM以外,perception也必须接入VLM,但当时openAI还没有推出成熟的VLM模型,除了Segment Anything那篇文章以外,我们没有更多的参考,也没有足够的GPU算力来验证method,于是放弃
  • 另一个想法是采用point cloud,用一个双目相机+segment来获取场景信息,当时已经有point clound large model,但是经过尝试后发现泛用性很差,不过是追热点的噱头而已

回头看,如何实现robot的physical vision是很值得研究的工作,Feifei Li最近一直在提这个点,就是要让机器人能够感知物理信息,单纯的二维图像并不能提供足够的物理信息,目前的多模态大模型也没办法理解到符合物理实际的东西,再多的encoder-decoder,也无法学习到这一点。最直观的一点就是,AI生成的图像/视频,很多时候根本就不符合物理定律。

那什么样的场景是符合物理实际的呢?

Step1: Where to start

以上都是本周之前的前情提要。学物理的时候,先学牛顿三定律,牛一和牛二更适合vedio,牛三的作用力与反作用力更加适合用来检查图像中的物理合理性。

Anyway,最重要的还是Force。所以,目前最重要是,让模型学习到/获取到力。那么这个idea就变成了《如何从点云中获得物体间的作用力》。Fine,这里肯定有几个问题:

  • Why point clound?

    因为二维图像没有深度信息,只能通过segment的方法获取物体的前后位置关系,但并不知道物体间是否存在接触,那就没有办法判断是否存在力的关系了。总不能,所有物体间都存在非接触力吧?

  • Dataset?

    按照常规的learning,我们应该有一个dataset,包含当前场景的point clound、object label、forces,然后一起丢进GNN/Transformer去训练,试图让模型从xyz position、object label、forces中学习到关系,最后给它一组point cloud + label,就能输出label之间的力。

    但是,目前并没有人做这种事,也没有这样的dataset,那么我们要自己造data了。

Segment领域,不管是part seg还是semantic seg,最开始都是采用人工标注的方法,但是我们人比较少,不像大牛组(没有特指Feifei Li)有这么大的精力,去给数量庞大的point cloud做force标注。那么该怎样获得数据呢?

Step2: