本文经AI新媒体量子位(公众号ID:QbitAI)授权转载,转载请联系出处。
视频动作跟踪,已经精确到了每个像素!
Meta最新推出的视频跟踪工具CoTracker,发布没多久就在GitHub上斩获了1.4k星标。
从官方发布的几个DEMO来看,效果还是很震撼的。
一场马术比赛中,马匹在骑手的操纵下优雅地跨过障碍,画出了优美的弧线。
还有一架帆船乘风破浪,仿佛捉住了风的影子。
另一边,一位跳伞运动员从空中划过,留下了一道绚丽的彩虹……
对这个新“玩具”,有网友评论说,它不仅能改变物体追踪技术,也将在体育(动作)分析、野生动物追踪,甚至电影后期领域掀起一场新的革命。
我们也第一时间上手试玩了一下线上的简易版本,下面就一起来看看吧。
精准记录像素轨迹
首先有请四川知名网红、熊猫界的当红炸子鸡“果赖”隆重登场。
只见花花六亲不认的步伐被CoTracker整个记录了下来,真的是太可爱了。
不过要论戏剧性的话,可能还得是我们的“西直门三太子”萌兰。
看完了可爱的胖达,接下来就要进入整活环节了,来点名场面!
这个就不用再多介绍了吧(确信)。
除了上面的这位老朋友,还有王境泽吃炒饭的镜头。
只见他手上诚实的动作在CoTracker面前暴露无遗。
而在地球的另一边,马斯克正在直播用FSD开着特斯拉去找小扎,准备进行一番亲切友好的交流。
CoTracker的效果就展示到这里了,朋友们如果想看其他效果可以自己玩玩看。
传送门:https://huggingface.co/spaces/facebook/cotracker
不过,在线DEMO是个简易版本,还不支持自定义跟踪位置,只能根据输入的跟踪数量等距分配。
但是如果自己部署、用代码操纵的话,就可以设置任意跟踪点了。
说到这我们正好来看一下CoTracker该怎么部署。
首先是Colab版本,我们刚刚说到的自定义跟踪点也在Colab当中。
传送门:https://colab.research.google.com/github/facebookresearch/co-tracker/blob/master/notebooks/demo.ipynb
Colab的过程不必过多介绍,进入之后运行笔记中的代码就可以了。
而如果想自己动手的话,最简单的方式是从torch.hub中直接调用已完成预训练的版本。
pip install einops timm tqdm
import torch
import timm
import einops
import tqdm
cotracker = torch.hub.load("facebookresearch/co-tracker", "cotracker_w8")
如果要对模型进行评估或训练,那么使用GitHub Repo更为合适。
首先要安装一下程序和相关依赖:
git clone https://github.com/facebookresearch/co-tracker
cd co-tracker
pip install -e .
pip install opencv-python einops timm matplotlib moviepy flow_vis
然后下载模型:
mkdir checkpoints
cd checkpoints
wget https://dl.fbaipublicfiles.com/cotracker/cotracker_stride_4_wind_8.pth
wget https://dl.fbaipublicfiles.com/cotracker/cotracker_stride_4_wind_12.pth
wget https://dl.fbaipublicfiles.com/cotracker/cotracker_stride_8_wind_16.pth
cd ..
有关评估和训练的方式,可以到GitHub项目页来查看,链接放在了文末。
那么,CoTracker又是怎么实现像素级追踪的呢?
评分超过DINOv2
虽然都是追踪,但CoTracker和物体追踪模型有很大区别。
CoTracker并没有基于语义理解对视频中物体进行分割的过程,而是把重点放在了像素点上。
底层方面,CoTracker采用了Transformer架构。
Transformer编码了视频中点的跟踪信息,并迭代更新点的位置。
推理上,CoTracker还采用了一种窗口机制,在时间轴上划分出滑动窗口。
CoTracker使用上个窗口的输出对后面的窗口进行初始化,并在每个窗口上运行多次Transformer迭代。
这样就使得CoTracker能够对更长的视频进行像素级跟踪。
总之,经过一番训练之后,CoTracker取得了一份不俗的成绩单。
在FastCapture数据集测试上,CoTracker的成绩在一众模型中脱颖而出,其中也包括Meta自家的DINOv2。
总之,喜欢的话,就赶紧体验一下试试吧!
论文地址:https://arxiv.org/pdf/2307.07635.pdfGitHub项目页:
https://github.com/facebookresearch/co-tracker