평범한 필기장

[DEVOCEAN OpenLab] PEEKABOO : Interactive Video Generation via Masked Diffusion 본문

Experience/[DEVOCEAN] Text-to-Video Diffusion Study

[DEVOCEAN OpenLab] PEEKABOO : Interactive Video Generation via Masked Diffusion

junseok-rh 2024. 5. 23. 15:58

https://arxiv.org/abs/2312.07509

 

PEEKABOO: Interactive Video Generation via Masked-Diffusion

Modern video generation models like Sora have achieved remarkable success in producing high-quality videos. However, a significant limitation is their inability to offer interactive control to users, a feature that promises to open up unprecedented applica

arxiv.org

1. Introduction

  •  본 논문에서는 PEEKABOO를 도입한다. 이는 i)U-Net 기반의 video generation의 output에 대해 spatio-temporal과 motion control을 야기함으로써 interactive video generation을 가능하게 하고 ii) training-free이고, iii) 추론 시간에 추가적인 지연을 더하지 않는다.
  • Video generation에서 spatio-temporal control을 평가하는 SSv2-ST, 사람으로부터 interactive input을 평가하는 IMC 데이터셋을 만들었다.
  • 본 논문은 PEEKABOO를 i) 다양한 평가 데이터셋에 대해, ii) 다양한 T2V 모델에 대해, iii) 다양한 평가 메트릭에 대해 평가한다.
  • 정성적인 결과를 보여주고 기존 구조적인 실패 케이스를 극복하는 능력을 보여준다.

2. Preliminaries : Video Diffusion Models

Text Conditioning

 대부분의 최신 text-to-video 방법들은 input으로 text query를 받는 conditional latent diffusion model을 사용한다. Denoising autoencoder는 text caption $c$를 다음과 같이 조건으로 받는다.

여기서 $f_\theta$는 3D UNet이다. 추론동안, input noise는 반복적으로 denoising되고 바래진 text caption을 향해 align된다. 이는 text embedding을 이용한 cross attention을 포함해서 이뤄진다.

3. PEEKABOO

Spatio-temporal conditioning

 Interactive generation을 위해, denoising은 비디오에서 유저가 원하는 객체의 공간적 위치와 움직임에 condition되어야한다. 이는 수식 1에서처럼 전체 latent $z_t$가 text caption $c$에 condition되는 것과 다르게 비디오의 부분은 caption의 부분에 condition되어야하기 때문에 복잡하다.

 학습을 시키는 다른 possible solution이 있지만, 본 논문에서는 froze시킨 $f_\theta$를 이용해 연구한다.

3.1 Masked Diffusion

 본 논문에서는 segmentation 문제와 평행선을 두었다고 한다. 특히 MaskFormer와 Mask2Former로부터 영감을 얻었다고 한다. Mask2Former에서는 각각의 객체를 segmenting하기 위해 local feature를 사용하는 것을 주장했다. 반면에 text-to-video diffusion model들은 수식 1에서와 같이 global context를 조건으로 받아 작동한다. 위 아이디어를 이용해 spatio-temporal conditioned generation의 문제를 해결하기 위해 본 논문에서는 각각의 객체를 생성하기 위한 local context를 사용할 것을 제안한다. 객체의 공간적 위치를 control하기 위해, 본 논문은 diffusion model의 attention 계산을 masked attention으로 수정한다. 이는 추가적인 계산이나 diffusion step없이도 local 생성을 더 잘하게 할 수 있다.

3.2 Masked spatio-temporal mixed attention

 Video에서 foreground 객체에 대한 input bounding box가 주어지면, 본 논문은 그 foreground 객체에 대한 binary mask를 생성하고 latent 크기로 downsample한다. 그리고 다음과 같은 block sparse attention mask를 만든다. Attention을 위한 추가적인 masking을 사용한다.

여기서 $\mathcal{M}$은 추가적인 mask로 $M \in \{ 0,1 \}^{d_q \times d_k}$에 있는 entry들을 지우는 큰 음수를 가진다. 이는 그러한 entry들에 대한 attention score를 낮춘다. $l_{text}, l_{video}, l_{latents}$는 각각 text, video의 길이, latent의 차원을 나타낸다. $T, M^f_{input}$은 text input과 $f$ frame의 input mask를 나타낸다. Input mask와 latent는 편의를 위해 그들의 공간 차원에 대해 flatten됐다고 가정한다. $M_{input}$의 shape는 $l_{video} \times l_{latents}$이다. 함수 $fg(\cdot)$는 pixel 혹은 text token을 input으로 받아 video의 foreground에 해당하면 1, 아니면 0을 return하는 함수이다.

 Foreground token에 각 프레임에 원하는 위치의 픽셀에만 집중하라고 함으로써, 객체의 위치, 크기, 움직임을 컨트롤할 수 있다. 그러나 단순히 cross attention layer에 이 attention 제약만 강화하는 것은 공간 컨트롤에 대해서는 충분하지 않다. 이는 foreground와 background 픽셀들이 공간과 시간 attention을 통해 상호작용하기 때문이다.

Masked Cross Attention

 각 프레임 $f$에 대해, $l_{latents} \times l_{text}$ 크기의 2차원 행렬인 attention mask $M^f_{CA}$를 계산한다. 이 마스크는 각 픽셀-토큰 페어에 대해, 픽셀과 토큰이 모두 foreground이거나, 모두 background이면 1이다.

이는 latents가 정확한 위치에 foreground와 background token에 attend하도록 보장한다.

Masked Spatial Attention

 각 프레임 $f$에 대해, $l_{latents} \times l_{latents}$ 크기의 2차원 행렬인 attention mask $M^f_{SA}$를 계산한다. 각 픽셀 페어에 대해, 이 마스크는 두 픽셀 모두 foreground이거나 모두 background이면 1이다.

이는 foreground와 background가 초기 스텝에 대해 독립적으로 진화하도록 하여 이들이 정확한 위치에 생성된다는 것을 보장하도록 attention을 집중시킨다. 이는 foreground와 background 지역 안에서 충분한 interaction을 이끌기 때문에 생성 퀄리티를 향상시킨다. 

Masked Temporal Attention

 각 latent pixel $i$에 대해, $l_{video} \times l_{video}$ 크기의 2D 행렬인 mask $M^i_{TA}$를 계산한다. 각 프레임 페어에 대해, 이 mask는각 프레임에서 모두 foreground 픽셀이거나 background 픽셀이면 1의 값을 가진다.

이는 시간에 따른 foreground와 background latents에 대한 정확한 local context를 제공하기 때문에 generation에 대한 시간적 일관성을 보장한다.

3.3 Zero-training Pipeline

 Diffusion Pipeline에 이 선택적인 mask들을 넣는 것은 본 논문이 PEEKABOO라고 부르는 zero-training 방식이다. PEEKABOO는 text-to-video 모델들의 3D-UNet 아키텍쳐의 attention layer들에 통합된다. 본 논문의 method에서 고정된 수의 스텝 $t$에 대해 foreground와 background object의 선택적인 생성을 수행하고 그러고 나서 나머지 스탭에 대해 free-generation을 허용한다. 이 free-generation은 foreground와 background 픽셀 서로에게 응집력있게 통합되도록 한다. 본질적으로, 본 논문에서의 method는 볼수 있게되기 전 몇 time 스텝에서 foreground 픽셀은 backgorund 픽셀을 보지 못하고 역도 마찬가지이다.

 Image control 방식들과 다르게, 더 많은 diffusion 스텝에 따른 추가 inference overhead를 필요로하지 않고, 작은 고정된 스텝 $t$로 작동한다. 이는 공간 컨트롤을 제공하는 반면 생성동안의 latency는 없다.

 게다가 PEEKABOO는 zero-training off-the-shelf 기술이기 때문에 모든 diffusion model에서 다용도로 구현할 수 있고 현재뿐만 아니라 미래의 text-to-video모델과 작동할 수 있다. 따라서 공간 기반 데이터 세트에 대해 명시적으로 학습되지 않은 더 나은 품질의 생성 모델에 시공간적 제어를 제공할 수 있다.

3.4 Extensions

 현재 diffusion pipeline의 대다수는 U-Net based 아키텍쳐를 가진다. 이는 PEEKABOO가 다재다능하고 T2V뿐만 아니라 다른 생성 modality에서의 가능성으로 셋업된 T2I에서도 사용될 수 있다.

Automatically Generated Input Masks

 본 논문에서의 method는 input mask와 독립이기 때문에, 주어진 prompt에 상응하는 객체에 대한 input mask를 생성하기 위해 LLM을 이용할 수 있다. 게다가 이는 유저로부터 text prompt만을 필요로한다는 관점에서 end-to-end 가 될 수 있다.

Image Generation

 Image generation diffusion 모델은 temporal attention layer 없이 2D-UNet 구조를 기초로 한다. Text-to-video 셋업과 유사하게 Image Diffusion 모델에 적용할 수 있다. 

4. Experiments

4.1 Quantitative Analysis

4.1.1 Spatial Control

Evaluation Datasets

 본 논문은 일상적인 피사체의 실제 위치를 나타내는 고품질 마스크를 사용하여 공개 비디오 데이터세트에서 얻은 벤치마크를 개발했다. 또한 비디오와 피사체를 제어할 때 사용자의 interactive 입력을 나타내는 일련의 (프롬프트, 마스크) 쌍을 큐레이팅했다.

  • Something-something v2-Spatial-Temporal (SSv2-ST)
  • Interactive Motion Control (IMC)
  • LaSOT
  • DAVIS-16

Experimental Setup

Zeroscope와 ModelScope를 base model로 실험을 진행했다. 모델에 text prompt와 input bbox의 set을 주고 spatio-temporal control과 video 퀄리티를 평가한다.

 

Evaluation methodology

  • Coverage : 생성된 프레임의 50% 이상 OwL-ViT가 bbox를 감지한 생성된 동영상의 비율을 계산
  • mIoU : 감지된 bbox와 input mask의 mIoU를 계산
  • Centroid Distance : 생성된 객체와 input mask의 중앙 사이의 거리 계산 -> 생성 위치의 control을 측정
  • AP50 : 감지된 bbox와 input bbox 사이의 average precision 50%를 계산 -> method에 의해 제공된 공간적인 control을 나타냄

Results

 실험 결과를 통해 본 논문의 method가 모델에 control을 더한다는 것을 보였고, spatio-temporal control을 가능하게 했다는 것을 보였다. 높은 AP50과 낮은 CD를 보이는데 이는 input mask의 실제 중앙과 생성된 객체가 가깝고 그들의 모양과 크기가 input mask와 일치한다는 것을 의미한다. mIoU에서 상당한 점프를 보였는데 이는 우월한 spatio-temporal control을 강조한다. 게다가 높은 converage를 보였는데 이는 base model이 못할 때 객체를 생성할 수 있다는 것을 의미한다. 게다가 최소한의 latency 상승을 가져온다.

4.1.2 Quality Control

FVD score를 통해 quality를 평가한 결과이다. (여기서 FVD score는 이미지 생성에서의 FID score의 video 버전이라고 생각하면 될 것 같다.)

4.1.3 Ablation Analysis

Ablation on individual attention masks

 이 섹션에서는 각 attention layer의 masking을 하나씩 비활성화하면서 실험을 진행했다. 그 결과는 위 이미지와 같다. 하나의 attention mask라도 주어지지 않으면 성능이 상당히 떨어지는 것을 볼 수 있고, $M_{CA}$를 지나지 않을 때 가장 크게 발생했다. 이는 메인 객체의 text token이 bbox 위치에 attention을 집중하지 못한다는 사실로 설명된다. 이는 다른 위치에 객체가 생성되는 결과를 야기한다. $M_{TA}$를 지나지 않을 때 $M_{SA}$를 지나지 않을 때보다 더 안 좋은 AP50 결과를 나타낸다. 이는 temporal attention mask가 없으면 부정확한 위치에 좋은 퀄리티의 객체를 생성하는데 이는 더 낮은 AP50 score를 야기한다. Coverage 결과를 비교하면 $M_{SA}$가 없을 때 더 안 좋은 결과를 나타낸다.

 

Performance on varying Bbox sizes

 위 이미지에서 (b)결과를 보면 bbox 크기에 상관없이 PEEKABOO는 일관성있는 성능 향상을 보여준다. 아래의 이미지는 동일한 prompt에 대한 bbox 크기를 다르게 했을 때의 결과를 보여준다.

4.2 Qualitative Results

 위 이미지는 ZeroScope에 PEEKABOO를 적용해 video를 생성해낸 결과이다. Video는 bbox input을 따른다. 본 논문은 모양, 크기, 위치, 행동을 캡쳐하는 bbox input의 다재다능함을 강조하고, 이 정보를 PEEKABOO가 어떻게 interactively하게 활용하는 지 보여준다.

 

Static Spatial Control

 

 본 논문의 method는 object의 위치를 컨트롤할 수 있고 bbox를 통해 object의 크기를 변경할 수 있다. 

 

Dynamic Spatial Control

  위 이미지에서 main subject가 원하는 경로로 움직이는 것을 보여준다. 본 논문의 method는 다양한 모션 궤적에 대한 현실적인 움직임을 생성한다. 본 논문의 temporal masking은 이미지 1에서 첫 번째 행에서와 같이 중간에 mask가 사라지는 경우도 다룰 수 있으며 spatial과 cross attention masking은 input bounding box와  생성된 프레임의 공간적인 일관성을 보장한다.

 

Overcoming Model Failures

 위 이미지에서 (a)를 보면 기존 모델은 제대로 생성하지 못하지만, PEEKABOO는 원하는 위치에 spider를 잘 생성하는 것을 볼 수 있다. 이는 "spider"라는 단어와의 cross attention을 원하는 지역에 잘 집중하는 것을 볼 수 있다. 또 특정한 위치에 대한 spatial attention mask와 cross attention 덕분에 text에 맞게 원하는 물체의 갯수만큼 물체를 생성하는 것을 볼 수 있다.

5 Conclusion

 본 논문은 interactive video generation을 연구했고, 새로운 벤치마크와 training-free이며 latency overhead가 없는 video model에 spatio-temporal 컨트롤을 주는 method PEEKABOO를 제안한다. Futher work로 image-to-video, video-to-video, long form video generation에 대한 PEEKABOO를 언급한다.

Appendix

Sensitivity to $t$

 $t$를 증가시키면, AP50은 증가하지만 coverage가 감소한다. (시간적, 공간적인 align은 증가하지만, 퀄리티가 떨어지는 것 같음..)

More results on masking

 위 결과를 보면 Cross Attention Mask가 foreground object의 위치를 결정하기 때문에 control의 대부분에 대해 영향이 있다. Coverage score를 보면 Self Attention Mask가 생성된 비디오의 퀄리티에 영향이 크다는 것을 알 수 있다.

Effect of subjects on video generation

 PEEKABOO가 모델의 training bias를 극복하고 video generation에서 control을 향상시켰다고 한다.

Limitations

  • 첫 번째 행 : Input mask가 subject에 비해 너무 작은 경우 실패한다.
  • 두 번째 행 : 텍스트와 모션의 방향이 대립될 경우 실패한다.
  • 세 번째 행 : Base model이 text prompt에 대해 생성 자체를 잘 못하는 경우 실패한다.