논문

하루에도 수만개의 글자를 읽고 있습니다. 하루에도 수백장의 종이를 들춰 읽습니다.
이것은 그 읽기에 대한 일기입니다.

Cross-view Semantic Segmentation for Sensing Surroundings

Problem

Semantic segmentation의 발전이 계속되고 있지만, 아직 로봇이 새로운 환경에서 자유롭게 다니기에는 아직 부족하다. 가장 큰 이유는 first-view 이미지는 주변의 spatial information을 제공하지 않기 때문이다.

Essence

주변의 spatial structure를 얻기 위한 Cross-View Semantic Segmentation을 제안하였다. 이 방법은 first-view 이미지로부터 top-down-view semantic segmentation을 직접 prediction 하는 방법이다. 그 결과로 2.5D 형태로 주변 영역이 표현된다.

한가지 어려운 점은 top-down-view의 semantic annotation을 얻는 것이 어렵다는 점인데, 최근 CARLA나 House3D와 같은 simulation을 사용하여 학습한 뒤, real-world scene으로의 domain adaptation을 이용하였다.

제안하는 모델인 View Parsing Network (VPN) 내에서 view transformer module을 이용하여 여러 first-view 이미지로부터의 정보를 통합하였다.

단점: 카메라마다 별도의 모델이 필요, 카메라 자세에 따른 dependency 존재 예상

Detail

Framework

VPN은 여러 simulator에서 생성된 여러 first-view 이미지로부터 추출된 faeture들을 통합하는 역할을 한다. 각 first-view 이미지들은 개별적으로 encoder로 입력되어 first-view feature map을 생성하고, 생성된 first-view feature map들은 View Transformer Module을 이용하여 하나의 top-down-view feature map으로 통합된다. 이제 통합된 feature map을 top-down-view semantic map으로 decode하게 된다. 마지막으로 VPN을 real-world data에 맞게 knowledge transfer를 수행한다.

View Transfomer Module (VTM)

기존의 encoder-decoder 구조를 그대로 사용하였더니 성능이 잘 나오지 않았다. 그 이유를 입력과 출력의 receptive field가 일치하기 때문이라고 보고, VTM을 이용하여 전체 featre map을 모두 고려한 둘의 연관성을 학습시키기로 하였다.

VTM은 View Relation Module (VRM)과 View Fusion Module (VFM)으로 구성된다.

VRM에서 first-view feature map은 channel은 그대로 두고 flatten되어 사용된다. VRM 모듈R은 flatten된 first-view feature map과 flatten된 top-down-view feature map 사이의 관계를 학습하도록 모델링 하였다.

f_t [ i ] = R_i (f [1], \cdots, f[j], \cdots, f[HW])

여기서i, j \in [0, HW)으로 top-down-view feature와 first-view feature map의 인덱스이다. 따라서R_i는 first-view feature map의 모든 픽셀을 고려한 top-down-view feature의 한 픽셀의 값을 출력하게 된다. 실제로는 VRM은 MLP를 이용하여 구현하였으며, 각 first-view 이미지 마다 VRM을 가져야 한다.

VFM은 단순히 전체를 더하도록 하였다.

Sim-to-real Adaptation

픽셀 수준에서는 synthetic data의 semantic mask와 real-world data의 semantic mask를 이용하여 real-world 입력을 simulation data으로 보이게끔 생성하였다.

또한 adversarial training 방법을 적용하였다. semantic data로 학습된 VPN이 generator가 되고, discriminator가 generator의 feature map을 입력으로 하여 domain을 구분하는 역할을 하도록 하였다.


Add a Comment Trackback