728x90
반응형

Paper : https://arxiv.org/abs//2306.05422

GitHub : https://omnimotion.github.io/ 

 

Tracking Everything Everywhere All at Once

Tracking Everything Everywhere All at Once

omnimotion.github.io

 

 

Google Research가 연구에 참여한 Tacking Everything Everywhere All at Once 논문은 비디오 프레임 내에 있는 full-length motion trajectory를 추정하는 새로운 방법을 제안하였습니다.

 

이전 optical flow 또는 particle video tracking 알고리즘 같은 경우 일반적으로 제한된 window 내에서 작동하여 occlusion을 통해 tracking 하고, 추정된 motion trajectory의 global consistency를 유지하는데 어려움을 겪는다고 하네요. 즉, pair-wise optical flow의 경우 long temporal window에서 motion trajectory를 추적하지 못하고, sparse tracking은 모든 픽셀의 움직임을 모델링하지 않는다고 합니다. 그래서 여태껏 많은 방법들이 모색되어 왔는데요, 2개의 frame optical flow field를 단순히 연결하는 방법 부터 여러 프레임에 걸쳐 per-pixel trajectory를 직접 예측하는 방법까지 다양한 방법이 나왔다고 합니다.

 

하지만 이러한 방법들은 모두 모션을 추정할 때 제한된 context를 사용하고 시간적 또는 공간적으로 멀리 떨어진 정보를 무시한다고 합니다. 이러한 locality는 long trajectory에 걸쳐 누적된 오류와 모션 추정치의 spatio-temporal inconsistency를 초래할 수 있다고 합니다. 기존 연구들이 long-range context를 고려할지라도 2D 영역에서 작동하기 때문에 occlusion이 발생하는 동안 tracking loss가 발생한다고 하네요. 그래서 이러한 것들을 해결하기 위해서는 아래와 같은 것들을 고려하는게 중요합니다. 

 

1. long sequence에서 정확하게 tracking을 유지하는 것 

2. occlusion을 통해 point를 tracking하는 것

3. space and time에서의 일관성을 유지하는 것 

 

 

 

 

그래서 본 논문에서는 OmniMotion이라고 하는 complete 및 globally consistent motion representation을 제안합니다. OmniMotion은 quasi-3D(거의 3D) canonical volume을 사용하여 비디오를 나타내고, local space와 canonical space 사이의 bijection을 통해 pixel-wise tracking을 수행하게 됩니다. 여기서 bijection은 카메라와 장면 모션의 조합을 모델링하여 dinamic multiview geometry를 유연하게 완화하는 역할을 수행합니다. 즉, local coordinate frame에서 canonical 3D coordinate frame으로 3d point를 매핑하게 됩니다. 

 

이러한 representation은 cycle consistency를 보장하고, occlusio이 일어난 동안에도 모든 픽셀들에 대해 tracking이 가능하다고 합니다. 그래서 Everything, Everywhere라고 이름을 붙였다고 하네요. 

 

또한 All at Once 를 위해 video 당 representation을 최적화 합니다. 최적화가 되면 비디오의 모든 연속적인 coordinate에서 representation을 query하여 전체 비디오에 걸친 motion trajectory를 수신하게 됩니다. 또한 point가 occlusion 된 지점을 식별해내고, occlusion을 통해 point를 추적한다고 합니다. 즉 아래와 같이 수행된다고 하네요. 

 

1. 전체 비디오의 모든 지점에 대해 전역적으로 일관된 full-length motion trajectory를 생성 

2. occlusion을 통해 point를 tracking

3. 카메라와 장면 모션의 모든 조합으로 in-the-wild video 처리 가능 

 

이러한 방법은 TAP-Vid 벤치마크에서 SOTA를 달성한다고 합니다. 

 

 

실험 결과는 다음과 같습니다. 

 

 

project page에서 point를 직접 찍어 demo를 볼 수 도 있습니다. 

 

아래와 같이 식별된 점은 ● 표시로 나타나지만, 가려졌다면 + 십자 표시로 나타납니다. 포인트를 사람이 아닌 다른 객체에 잘못 찍었더니 다른 객체에 그대로 붙어있네요;; 

 
 
 
 
 
 
 
728x90
반응형