-
Self6D: Self-Supervised Monocular 6D Object Pose Estimation 리뷰공부기록/논문리뷰 2022. 9. 26. 21:35
# Title
Self-Supervised : lable같은 것 없이 자신의 feature같은걸 이용해서 학습하겠다.
Monocular : 단안 카메라를 사용했다?
# Abstract
CNN이 6D pose estimate에서 성능이 좋긴 한데 데이터에 영향을 너무 많이 받고, 적절한 annotation을 하는데 비용이 너무 많이 든다.
synthetic RGB데이터로 supervised learning된 우리 네트워크를 사용하면, unannotated된 real RGB-D데이터에 대해 self-supervised learning할 수 있다.
visually and geometrically하게 맞게 align된 상태로.
다른 방법들보다 evaluation이 잘나온다. 우리 방식을 쓰면 원래 있던 모델의 성능을 끌어올릴 수 있다.
# Figures
(a) 실제로 6D annotaion하지 않기 위해서, 모델을 synthetic RGB데이터로 먼저 학습시킨다.
(b) unlabled real RGB-D 데이터를 모델에 많이 집어넣는다
(c) 성능이 매우 좋아진다!
사진 위쪽
모델을 먼저 synthetic RGB데이터로 rotation R, translation(위치) t, object mask $M^p$ 를 학습시킨다.
그리고 다량의 unlabeled RGB-D image를 사용한 self-supervised learning을 통해 모델을 향상시킨다.
RGB-D image와 mask를 Render한다.
사진 아래쪽
다양한 constraints(제약)을 통해 visually, geometrically하게 6D pose를 align한다.
# Introduction
6D pose estimation은 training data가 많이 필요하고 2D vision task(classification, object detection...)와 다르게 annotation이 더 힘들다.
그래서 주로 synthetic image를 사용하지만, real inference때는 성능이 별로다. domain adaptation, photorealistic rendering등도 별로다.
그래서 unsupervised방식을 도입했다. Fig1. 처럼 synthetic data로 학습하고, unannotated RGB-D를 사용해 self-supervised learning하게 했다.
이를 위해선 2D image에서 3D property를 이해하는 것이 필요하다. Graphics에 사용되는 *rendering* 이란 방식을 써보려고 했는데, rasterization이 미분불가능해서 argmax같은게 불가능하다. 그래서 real gradient는 근사치에 불과하다.
우리의 contribution은
1. 6D label 없이 최초로 self-supervised learning함
2. neural rendering을 사용해 visual, geometric alignment를 계산함
3. 실험적으로 아주 큰 격차로 sota임을 증명함
# Conclusion
self-supervised방식. neural rendering을 통한 constraints 학습. 현 sota보다 성능 많이 좋음.
# Appendix
## Monocular 6D Pose estimation
3D CAD 모델을 이용해 2D-3D관계를 만들거나(PnP, CNN 방식) pose embedding을 학습하는 방식(Augmented Auto Encoder 등)이 주로 사용되고, 직접 6D pose를 regress하는 모델들도 있긴하다. 그렇지만 세 모델 모두 annotation이나 overfittng 같은 문제들이 존재함
## Neural Rendering
rasterization은 discrete해서 gradient flow를 막아버림. 테일러 근사, 확률분포등을 이용해 gradient flow를 바꾸는 시도들이 있었음. 그러나 이런건 계산할때 cost가 많이 필요함. DIB-R이 지금 sota라 논문에선 DIB-R을 사용함
## Recent trends in Self-Supervised Learning
## Domain Adaptation for 6D Pose Estimation
synthetic이랑 real 차이를 메꾸기 위해서 GAN등을 사용하기도함. 아니면 아예 domain randomization을 하거나.
# About Model
neural rendering을 사용하면 real하고 rendered image를 보고 어떤 coherence(일관성)을 self-supervised 학습할 수 있음.
먼저 synthetic RGB데이터로만 학습한 뒤에 real RGB-D data를 씀.
synthetic에서는 unseen 영역에도 depth값을 가지고 있는데, 일관성 있는 학습을 위해 unseen영역의 depth를 제거함.
우리는 DIB-R을 쓰는데, 원래는 RGB랑 object mask만 예측함. 우린 depth map까지 예측하게 확장했음.
camera projection을 real perspective projection을 하기 위해 수정함.
R : 3D rotattion
t : 3D translation
M : 3D CAD model render함
렌더링 말고도 3D rotation이나 transrender함
렌더링 말고도 3D rotation이나 trans
K : camera intrinsic matrix
라고 할 때, $I^R, D^R, M^R$을 render함
Object mask가 필요한데, annotation이 없어서 ROI-10D가 detection하게 했음.
우리 모델은 FPN기반의 ResNet50을 쓰는 object detector FCOS를 기반으로함
# Self Questions
## What did authors try to accomplish?
## Key elements of the approach?
## What can you use yourself?
## Other references want to follow?
# Questions'공부기록 > 논문리뷰' 카테고리의 다른 글
Pyramid Scene Parsing Network 리뷰 (0) 2022.09.28 Efficient RGB-D Semantic Segmentation for Indoor Scene Analysis 리뷰 (0) 2022.09.26 Interactive Robotic Grasping with Attribute-Guided Disambiguation 리뷰 (0) 2022.09.26 Neural Architectures for Named Entity Recognition(2016) (0) 2022.06.09 Efficient Estimation of Word Representations in Vector Space(Word2Vec) (0) 2021.07.07