Optical flow를 통한 video inpainting 방법
[arXiv]
[Github]
Abstract
Deep Flow Completion network를 이용한 flow-guided video inpainting
Introduction
인페인팅을 위해 RGB 픽셀을 채우는 대신 flow 기반 접근 방법 제시.
영상의 대부분의 개체는 추적 가능한 동작을 가지므로 시간적 일관성이 자연스럽게 유지됨.
Optical flow를 채우기 위해 DFC-Net(Deep Flow Completion Network) 설계.
- Coarse-to-fine refinement: 3개의 하위 네트워크(DFC-S)를 쌓아 단계적으로 복구
- Temporal coherence maintenance: 하위 네트워크가 매번 단일 프레임만 예측하더라도 자연스럽게 전역 시간적 일관성을 장려하도록 설계됨.
- Hard flow example mining 전략 도입
최첨단 성능, 이전 방법들에 비해 런타임 속도가 훨씬 빠르며 특정한 가정이 필요하지 않음.
Methodology
Flow를 완성하는 단계, 픽셀을 전파하는 단계로 나누어짐.
Deep Flow Completion Subnetwork (DFC-S)
FlowNet2.0을 사용하여 flow field를 추출하고 마스크 된 부분을 부드럽게 보간하여 초기화.
첫 번째 DFC-S의 입력 채널은 33(x축, y축 flow map, mask 11개씩)
ResNet backbone +
- conv1 입력 채널 수정
- 해상도를 높이기 위해 stride를 줄이고 conv4, 5를 dilated convolution으로 교체
- 업샘플링 모듈 추가. 예측을 flow field에 투영하기 위해 마지막 활성화함수 제거
Refine Flow by Stacking
해상도가 낮을수록 좋은 초기 결과를 얻기 때문에 초기 DFC-S의 입력 크기는 작게 했다가 다른 DFC-S에 입력될 때 점점 확대하여 세부 정보 포착.
두 번째 DFC-S의 입력에는 역방향 flow map도 추가.
세 번째 DFC-S는 크기만 다르고 두 번째 DFC-S와 같음.
Training
비디오 시퀀스에서 마스크를 무작위로 생성하고 모델 출력과 ground truth와 비교.
각 하위 네트워크는 개별 학습한 다음 공동으로 fine-tuning.
Hard Flow Example Mining (HFEM)
대부분의 flow 영역이 매끄럽기 때문에 경계 부분이 흐려지는 불균형 문제가 생길 수 있음.
모든 픽셀의 손실을 내림차순으로 정렬한 다음 상위 픽셀을 hard example로 지정하고 해당 영역에 높은 가중치를 부여.
Flow Guided Frame Inpainting
Flow Guided Pixel Propagation
Flow의 유효성 검사: 순방향, 역방향 진행을 하면 원래 위치로 돌아가야 함.
(x = location, f = flow, ε = 매우 작은 임계값)
Flow의 신뢰할 수 있는 유효한 부분을 기반으로 픽셀을 전파.
여기서 따로 모듈 같은 것을 사용하지 않는데, 어떤 프레임에서 보이지 않던 부분이 다른 프레임에서 보일 수 있기 때문에, optical flow의 성질에 따라 픽셀을 채워 넣을 수 있다.
Inpaint Unseen Regions in Video
픽셀 전파로 다 채우지 못한 부분은 비디오 시퀀스에서 다 채워지지 않은 프레임 하나를 선택하여 contextual attention을 통해 채운 다음, 추정된 optical flow를 기반으로 다른 프레임으로 전파.
모든 프레임의 모든 픽셀이 채워질 때까지 인페인팅과 전파를 반복. (마스크가 12%인 경우 평균 1.1회 전파)
Experiments
'논문 리뷰 > etc.' 카테고리의 다른 글
Online normalizer calculation for softmax (1) | 2023.10.23 |
---|---|
Towards An End-to-End Framework for Flow-Guided Video Inpainting (E2FGVI) (1) | 2023.10.12 |
Flow-edge Guided Video Completion (FGVC) (3) | 2023.10.11 |
Generative Image Inpainting with Contextual Attention (1) | 2023.10.10 |
Flow Straight and Fast: Learning to Generate and Transfer Data with Rectified Flow (Rectified Flow) (0) | 2023.09.25 |
Simple and Controllable Music Generation (MusicGen) (0) | 2023.06.15 |