본문 바로가기

논문 리뷰/etc.

Flow-edge Guided Video Completion (FGVC)

Flow edge를 먼저 완성, non-local flow connection 도입

 

[Project Page]

[arXiv]

[Github]

 

Abstract

새로운 flow-based video completion algorithm 제시

  • 모션의 가장자리를 먼저 완성하여 flow completion을 안내
  • 시간적으로 멀리 떨어진 프레임에 non-local flow connection을 도입하여 비디오 콘텐츠 전파

 

 

 

Introduction

현재까지 inpainting에서 가장 성공적인 방법은 flow 기반 모델.

하지만 기존 모델은 날카로운 가장자리를 잘 합성하지 못함.

 

기존 모델의 또 다른 한계는 시간적으로 먼 프레임에 대한 연결이 약하고 색상을 직접 전파하여 현실에서의 다양한 색상 노이즈(노출, 그림자, 조명 변화 등)를 반영하지 못함.

 

반면 본 논문에서는

  • Flow edges: 흐름 가장자리를 명시적으로 완료함
  • Non-local flow: 인접하지 않은 시간적으로 먼 프레임을 참조
  • Seamless blending: Gradient domain에서 작업

 

 

 

Method

Overview

  1. Flow completion: 먼저 인접 프레임과 그렇지 않은(non-local) 프레임 집합 사이의 순방향, 역방향 흐름을 계산하고 누락된 영역을 완성. 이 과정에서 edge를 먼저 추출하고 완성함.
  2. Temporal propagation: 누락된 영역에 대한 후보 픽셀 세트를 여러 개 얻고 신뢰도와 유효성 추정.
  3. Fusion: Gradient domain에서 융합

모든 과정이 끝난 뒤에도 누락된 픽셀(e.g. 모든 프레임에서 누락되는 물체)은 단일 이미지 완성 기술을 통해 채움.


Edge-guided Flow Completion

Flow computation

FlowNet을 이용하여 flow 추출.

 

Non-local frame에 대해서는 flow 추정 전 큰 움직임(e.g. 카메라 이동)에 대한 보상으로 homography warp H를 사용하고 원래 프레임 사이의 flow를 잊지 않기 위해 inverse homography flow field Hi→j 추가.

 

Flow edge completion

추정된 flow field에서 누락된 부분이 약간 확장되기 때문에(a) 마스크를 15픽셀 확장하고

 

flow의 특성으로 인해 매끄러워지는 edge를 보존하기 위해 Canny edge detector와 EdgeConnect를 활용하여 edge map(b)을 만듦.

 

Flow completion

누락된 영역의 edge가 생겼으므로 edge를 제외한 모든 gradient를 최적화하여 완성된 flow field 얻음.


Local and Non-local Temporal Neighbors

완성된 flow field에 대해 색상 전파를 수행하고

일관성 검사: 순방향, 역방향 진행을 하면 픽셀이 원래 위치로 돌아가야 함.

D가 임계값 이하인 인접 프레임의 유효한 알려진 픽셀을 local temporal neighbor라고 부름.

 

폐색 등의 이유로 인해 인접한 유효한 이웃이 없는 고립된 픽셀의 경우 non-local temporal neighbor 도입.

Homography warp를 활용해 non-local frame 간 flow를 계산한다.

(이웃 frame에서 보이지 않던 부분이 다른 frame에서 보일 수 있기 때문에 유용하다.)


Fusing Temporal Neighbors

유효한 이웃 픽셀 값의 가중합으로 색상 결정.

(가중치 w는 D가 작을수록 높음)

 

Gradient-domain processing

색상 전파 후에도 비디오의 미묘한 색상 변화에서 기인한 눈에 거슬리는 부분이 많음. 

 

따라서 gradient 최적화 진행.

(유효한 이웃 프레임들의 gradient와 현재 프레임의 gradient를 같게 함)


Iterative Completion

모든 프레임에서 가려져 유효한 이웃이 없는 특수한 경우 이미지 완성 작업으로 취급하고 Deepfill로 채움.

하지만 이러한 방법으로 모든 프레임을 채우면 시간적 일관성이 없으므로 가장 빈 공간이 많은 단일 프레임만 채운 다음 해당 픽셀들을 '알려진 픽셀'로 정의하고 지금까지의 파이프라인을 반복함.

 

 

 

Experimental Results

솔직히 이런 작업은 영상으로 안 보면 의미 없음. Project Page에서 보삼.