[20′ CVPR] Dynamic Scene Deep Homography Estimation : Deep Homography Estimation for Dynamic Scenes 핵심 리뷰

This entry is part 8 of 10 in the series Deep Homography Estimation

내용 요약

Dynamic scene에 대해 robust 한 deep homography estimation network를 설명합니다.

1. 들어가며

이번 논문은 Deep Homography Estimation 방법론에 관한 논문입니다. Dynamic scene에 대해 robust 한 deep homography estimation network를 만들기 위해 dynamic scene을 사용한 데이터셋 제작 방법을 설명합니다. 이를 학습하기 위한 네트워크 구조에 대해 설명합니다.

2. 제안 방법

제안 방법을 살펴보겠습니다.

2-1. Dataset generation

먼저 저자들은 기존의 homography estimation을 위한 data 제작 방식에 대한 문제점을 제기합니다. 하나의 이미지를 warping 하여 학습 데이터를 만들기 때문에 dynamic scene에 대해서는 제대로 작동하지 않는다는 것입니다. 이 문제를 해결하기 위해서는 dynamic scene을 사용하여 학습 데이터를 제작해야 합니다. 하지만 dynamic scene homography ground truth dataset이 없기 때문에 직접 제작하는 방안을 제안합니다.

2-1-1. Static video clip detection

먼저 유튜브에서 영상 클립을 추출합니다. 이제 이 중에서 static 한 scene 만을 추출해야 합니다. 이때 static scene이란 주요 물체는 가만히 있고 배경에서만 움직이는 물체들이 있는 경우를 의미합니다. 예를 들어 영상의 중앙에 벤치가 있고 뒤로 자전거 탄 사람이 지나가는 경우가 이에 해당합니다.

이를 위해 먼저 두 프레임 사이에 camera motion이 있었는지 확인해야 합니다. 이를 계산하기 위해 두 프레임 사이에 boundary area가 변하는지를 측정했습니다. 또한 optical flow를 계산하여 threshold를 넘어가는 경우 static하지 않다고 판단했습니다. 이렇게 두 개의 조건으로 static scene을 찾았고, 총 32,385개의 비디오 클립을 모았습니다.

2-1-2. Static video clip detection

그 다음은 기존 방식과 동일하게 제작했습니다.

2-2. Homography estimation neural network

다음은 network를 살펴보겠습니다.

2-2-1. Multi scale neural network

제안 방법의 첫 번째 특징은 multi scale의 input에 대해 학습을 한다는 점입니다.

1.multi-scale-neural-network
1.multi-scale-neural-network

Image pair I1, I2에 대해 down sampling을 해가며 k개의 image pair를 만들고, 각각의 네트워크를 통과시킵니다. 각 네트워크는 output으로 4 corners offset값인 8개의 실수 값을 냅니다. 이는 ground truth를 사용하여 regression loss로 학습합니다. 이때 각각 down sampling 된 image pair에서의 H matrix는 다음 식으로 계산할 수 있습니다.

2.down-sampling-H-matrix
2.down-sampling-H-matrix
  • H2 : original H
  • H1 : down sampling image H
  • S : scaling matrix

사용한 네트워크는 DeTone et al., 2016 과 유사한 구조를 사용합니다.

3.network-architecture
3.network-architecture

각각의 네트워크는 down sampling 된 정도에 따라 convolutional layer 개수를 조절합니다. 각 스케일 별로 나온 output은 각각의 ground truth와 L2 loss를 계산하여 최종적으로 summation 합니다.

2-2-2. Mask augmented deep neural network

다음으로는 mask generation 부분을 살펴보겠습니다.

4.mask-generator-architecture
4.mask-generator-architecture

Dynamic scene에서 homography estimation을 수행하기 위해서는 dynamic content를 이해하는 능력이 필수입니다. 이를 위해 dynamic map을 학습하는 task를 multi task learning으로 학습했습니다. 이때의 mask estimator network는 h estimator와 동일한 구조이면서 dynamic map을 regress 하도록 sub network로 구성했습니다. Mask estimator의 output은 mask ground truth와 binary cross entropy loss로 학습합니다.

5.binary-cross-entropy-loss
5.binary-cross-entropy-loss
  • Mp : predicted mask
  • Mg : ground truth mask

이때 mask의 ground truth를 제작하는 방법을 살펴보겠습니다. 저자들은 optical flow가 threshold보다 크면 moving object라고 정의했습니다. Threshold로는 1 pixel을 사용했으며, 따라서 optical flow가 1 pixel보다 큰 픽셀 값은 1로 ground truth를 제작했습니다. 위에서 image scaling에서 사용한 같은 수식을 사용하여 image scale마다의 mask ground truth를 계산하여 제작할 수 있습니다.

2-2-3. Total loss

위에서 나온 2가지의 loss를 합친 최종 loss는 다음과 같습니다.

6.total-loss
6.total-loss
  • lf : homography loss
  • ld : mask loss

3. 실험 결과

다음은 이렇게 제안한 방법의 실험 결과를 살펴보겠습니다.

3-1. Evaluation on static scenes

먼저 static scene에서의 성능입니다.

7.evaluation-on-static-scenes
7.evaluation-on-static-scenes

다른 모델들보다 성능이 좋으며 특히 mask까지 적용한 MHNm의 성능이 가장 좋은 모습입니다.

3-2. Evaluation on dynamic scenes

다음은 dynamic scene에서의 성능입니다.

8.evaluation-on-dynamic-scenes
8.evaluation-on-dynamic-scenes

마찬가지로 제일 성능이 좋은 모습입니다.

3-2-1. Effect of training sets

Static dataset으로 학습한 모델과 dynamic dataset으로 학습한 모델의 성능 차이를 확인해보겠습니다.

9.effect-of-training-sets
9.effect-of-training-sets

확실히 dynamic scene (VidSetd)로 학습한 모델의 성능이 static scene (VidSets)로 학습한 모델보다 성능이 좋은 모습을 볼 수 있습니다.

3-2-2. Effect of the dynamic area size

학습 데이터에 dynamic area가 얼마나 많은지에 따른 성능을 비교해보겠습니다.

10.effect-of-dynamic-area-size
10.effect-of-dynamic-area-size

다른 모델에 비해 dynamic scene이 많아져도 잘 학습하는 모습을 볼 수 있습니다.

4. Ablations

다음은 ablations를 살펴보겠습니다.

4-1. Scale selection

먼저 down sampling 횟수에 따른 성능을 비교해보겠습니다.

11.scale-selection
11.scale-selection

Down sampling을 많이 하여 다양한 scale을 사용할수록 성능이 올라가긴 하는데, 3개를 사용할 때 가장 성능이 좋은 모습입니다.

4-2. Real world videos

다음은 real world video로 test 한 결과를 살펴보겠습니다.

12.real-world-videos
12.real-world-videos

NUS stabilization benchmark로 test해도 잘 동작하는 모습을 볼 수 있습니다. 특히 마지막의 mask prediction 결과를 보면 moving object를 잘 찾아내는 모습을 볼 수 있습니다.

4-3. Parallax

다음은 mask를 정말 잘 찾는지 살펴보겠습니다.

13.parallax
13.parallax

두 이미지 간의 optical flow를 계산하여 실제 moving part를 측정해보고 predicted mask와 비교해봤습니다. 확실히 moving area를 잘 찾아내는 모습을 볼 수 있습니다.

Series Navigation<< [20′ ECCV] Content Aware Deep Homography Estimation : Content-Aware Unsupervised Deep Homography Estimation 핵심 리뷰[21′ CVPR] Perceptual Loss for Robust Unsupervised Homography Estimation 핵심 리뷰 >>
0 0 votes
Article Rating
Subscribe
Notify of
guest

0 Comments
Inline Feedbacks
View all comments
0
Would love your thoughts, please comment.x
()
x
Scroll to Top