Introduction
GSNet 모델은 6DoF pose estimation task에 대한 모델이다.
6DoF pose estimation task은 3개의 점 좌표와 3개의 회전값의 6D에서 물체의 위치와 방향 등의 추정하는 task이다. 해당 task에 대해서는 아래 링크 글의 본문에서 좀 더 쉽게 확인할 수 있다.
쉽게 말해, 어떤 물체가 어디에 있는지에 대한 3D 좌표 (x,y,z )와 어떤 방향으로 회전시켰는지에 대한 정보를 가지고 물체를 예측하는 것이다.
https://www.materic.or.kr/community/rising_mterview/content.asp?f_id=77
GSNet은 이러한 task를 object detection과 3D reconstructure를 활용하여 해결하고자 제안된 모델이다.
input image로 street view를 받아 자동자 객체를 인식한 후, 3D 모형으로 제구성해준다.
해당 모델은 Apollocar3D 데이터 셋에서 SOTA를 달성하였다. 해당 데이터셋은 주행 이미지, 3D car model이 포함되어 있으며 각자 다른 자동차 객체에 대하여 labeled data이다. 해당 데이터셋을 활용하여 다양한 시각적 feature를 추출하고 혼합하여 3D 이미지로 구성하였다.
여기서 mesh라는 개념이 나온다. 3D reconstructure는 생소한 task였기에 의미를 다시 한번 짚고 넘어가보고자 한다.
mesh는 쉽게 말해 여러 개의 폴리곤이 모여 만든 3차원 물체이다. 즉, 3차원 공간상의 객체라고 할 수 있다.
Model Architecture
모델 아키텍처는 다음과 같다. 해당 모델은 input 이미지를 분석하여 4개의 feature를 추출한다.
- ROI (Region of Interest): 관심 있는 객체가 있는 region
- Detected Boxed : 객체를 탐지하여 이가 있는 pixel들을 의미
- 2D keypoints: 전체 이미지에서의 global location
- Heatmap: sub- region에서의 local positions
4개의 feature를 추출한 후, Fusion Scheme를 활용하여 조합한다. 이렇게 조합한 feature들을 활용하여 multi-task prediction을 수행하는데 해당 과정은 3D Translation , 3D rotation, Dense 3D Shape Reconstructure로 나뉘어 진다.
6DoF Pose estimation을 수행하기 위해서는 위치를 탐지하고 질감 등을 예측하는 과정이 필요하다.
해당 과정을 통해 객체 탐지 후 3D 모델로 재구성한다.
Loss
예측 과정에서 3가지 prediction을 수행하기 때문에 각각의 prediction에서 loss가 계산된다.
이러한 3가지의 loss를 활용하여 객체의 위치를 계산하는 loss와 객체를 정확하게 인식했는지 계산하는 loss를 계산하는데 이를 Scene-aware loss와 geometric consistency loss로 정의하였다. 두 loss를 조합하여 계산한 최종 loss 식은 다음과 같다.
Experiment
training과 실험에는 Apollocar3D 데이터셋을 활용하였다. 해당 데이터셋에서는 5,277개의 고품질 3D car image가 포함되어 있는데, train: validation: test= 4,036:200: 1041 의 비율로 나누어 활용하였다. 그 결과 SOTA를 달성하였다.
object detection과 3D Reconstructure 를 함께 다룬 연구에서는 최고 성능이라고 할 수 있다.
Ablation study에서는 4개의 feature들의 사용 조합에 따른 결과를 확인하였는데, 4개의 feature를 모두 사용했을 때 객체 탐지와 3D 모델링 모두 좋은 성능을 보였다.
구현 결과
구현 결과는 해당 링크에서 확인해볼 수 있다. 흥미로운 task이기도 하고 , pretrained weight를 공개하고 있어 시간이 되면 구현해보고 싶다.
https://github.com/lkeab/gsnet
아직 CV 쪽 공부를 깊게 해보지는 않았지만 Object detection과 3D reconstructure를 합쳐 다양하게 연구가 되고 있는 것 같아 흥미롭게 읽었다.