-
[논문 읽기] (2019) Segmenting Unknown 3D Objects from Real Depth Images using Mask R-CNN Trained on Synthetic Data논문 읽기 2022. 3. 14. 14:58
목표
목표 키워드 : 합성 데이터, Wisdom-sim DB, Mask-RCNN, Novel Object Picking, Depth Image
해당 논문 읽는 이유 : 32만개의 합성 데이터를 라벨 링해서 구성한 Wisdom-sim DB를 통해 일반 Mask-RCNN으로도 Novel Object Picking이 가능한 것을 보여주었다.
요약
Depth 이미지에서 모르는 객체를 segment하는 능력은 로봇의 파지와 객체 트래킹 기술을 발전시키는데 잠재적 힘이 있다. 최근 컴퓨터 비전 연구에서는 상당량의 손으로 레이블한 데이터셋이 주어질 경우, Mask R-CNN으로 RGB 이미지에서 객체를 구체적 카테고리로 분류하게끔 학습할 수 있다고 발표되었다. 이러한 데이터셋을 생성하기란 상당한 시간이 소요되기에, 우리는 synthetic depth image로 훈련시켰다. 많은 로봇은 현재 depth sensor를 사용하고 있고, 최근 결과에서는 synthetic depth data를 사용한 학습이 실제로 매우 성공적인 것으로 드러났다. 우리는 데이터셋을 자동으로 생성하는 방법을 제시하고, 3D CAD 모델의 simulated heaps를 사용하여 5만개의 depth 이미지와 32만개의 객체 마스크의 합성 훈련 데이터셋을 신속히 생성한다. 우리는 손으로 레이블한 데이터 없이 category-agnostic instance segmentation을 수행하기 위해, 생성한 데이터셋에 domain randomization으로 다양한 Mask R-CNN을 훈련시킨다. 또한, 우리는 Synthetic Depth Mask R-CNN라고 부르는 훈련 네트워크를 평가한다. 해당 네트워크는 다양하게 분포된 객체를 담고 있는 매우 도전적인 bin의 실제 고해상도의 depth 이미지로 평가한다. SD Mask R-CNN은 COCO benchmark에서 point cloud clustering baselines보다 15% average precision과 20% average recall 능가하는 성과를 보여주었다. 또한, 다량의 손으로 레이블된 RGB 데이터셋으로 훈련하고, 실제 이미지로 미세조정된 Mask R-CNN과도 비슷한 성과를 보였다. 우리는 로봇 적용에 유용하다는 것을 알리기 위해 instance-specific 파지 파이프라인에 이 모델을 사용했다. 코드, 합성 훈련 데이터셋, 그리고 보충 자료는 다음의 주소에서 구할수 있다. https://bit.ly/2letCuE
I. 소개
Category-agnostic instance segmentation, 혹은 객체 클래스에 무관하게 scene 안에서의 각 객체에 속하는 픽셀을 mask하는 능력은 instance-specific grasping과 같은 로봇 인식 파이프라인의 성능 향상에 크게 기여할 수 있다. 목표 객체가 복잡한 환경의 모르는 객체 사이에서 목표 객체를 특정하고 잡아내야한다. 예를 들어, 모르는 객체를 잡아내는 최근 연구에 따르면 다량의 이미지, grasp, reward label 데이터셋으로버퉈 로봇 파지 정책을 수립하기 위해 딥러닝을 사용해왔다 [1][2]. 앞선 방법이 다양한 객체에 있어 일반화하기에는 매우 효과적이지만, 이는 전체 scene에 있어 고품질의 파지 행동 유도 방법을 찾기만 할뿐, 잡아내는 객체들을 분류하지는 않는다. 그럼에도 불구하고, 이 방법들은 category-agnostic instance segmentation으로 생성된 object mask의 파지 계획에 제한을 걸어 특정 목표 객체의 파지로 나아갈 수 있다.
객체의 이전 모델 없이 객체 분할하는 것은 센서 잡음과 occlusion 때문에 매우 힘들다. category-agnostic object proposal[3][4]을 생성하는 컴퓨터 비전 기술은 자주 oversegment하고, 독립된 객체를 타당하게 찾아내기 위해 두번째 pruning 단계를 필요로 한다. 다양한 최신 방법에 따르면 다량의 손으로 레이블된 데이터셋으로 DNN을 훈련시켜 사람이나 자전거 그리고 자동차 같은 semantic class로 RGB 이미지를 정확하게 분리해내는 능력을 발표했다. 이 기술은 훈련 데이터를 만드는데 사람이 직접 레이블을 다는 등 상당한 시간이 소요된다. 그리고 기존 데이터셋은 물류 창고에서 쉽게 만날 수 있는 복잡한 scene과는 상당히 다른 자연스러운 scene의 RGB 이미지로 구성되어있다. 새로운 종류의 환경에 맞는 새로운 객체 클래스를 더하거나 데이터를 생성하기 위해서는 손으로 추가적인 레이블을 필요로 한다. 그러므로, 로봇에서는 픽셀단위의 객체 분할은 자주 무시되거나 아주 적은 객체 클래스에 사용된다. 이러한 경우 semantic segmentation network나 predefined feature가 사용될 수 있다.
이 문제를 해결하기 위해, 우리는 Mask R-CNN을 훈련시키기 위한 방법과 데이터셋을 제시한다. Mask R-CNN은 유명한 instance segmentation network이다. 손으로 레이블한 데이터로 학습하지 않고 실제 depth 이미지에 category-agnostic instance segmentation을 수행하기 위해. 그리고, 사실상, 실제 데이터 전혀 없이 훈련시킨다. 우리는 최신 연구에서 다음과 같은 성과를 제안한다. 먼저 synthetic depth image로 훈련시킨 네트워크가 몇몇 도메인에서 시뮬레이션부터 현실에 이르기까지 성과가 좋다. 다음으로 depth 신호가 simulated 이미지에서 instance segmentation을 잘 수행토록 한다. 시뮬레이션부터 현실에 이르기까지 잘 수행되는 instance segmentation network를 학습시키기 위해, 우리는 domain randomiation으로 다량의 depth 이미지 합성 데이터셋으로 훈련시키기를 제안한다.
이 논문은 다음과 같이 기여한다:
1) depth 이미지와 segmentation mask 합성 데이터셋을 빠르게 생성하는 방법. 시뮬레이션부터 현실에 이르기까지 모두 잘 수행되도록 domain randomization을 사용하여.
2) Warehouse Instance Segmentation Dataset for Object Manipulation (WISDOM) : 빈피킹에서 category-agnostic 객체 분할을 훈련시키고 평가하기 위해 디자인된 하이브리드 sim/real 데이터셋
3) SD Mask R-CNN : WISDOM-Sim으로 훈련되고, depth 이미지에 deep category-agnostic 객체 분할을 수행하도록 만들어진 Mask R-CNN
4) SD Mask R-CNN의 sim-to-real 일반화 능력을 평가하기 위한 실험과 baseline instance segmentation 방법과 비교하기 위한 performance benchmark
WISDOM-Real의 고해상도 데이터셋의 실험적 평가에서, SD Mask R-CNN은 상당히 높은 average precision과 recall을 달성했다. WISDOM-Real 훈련 이미지로 미세조정된 baseline 학습 방법보다. 그리고 또한 저해상도 센서로도 일반화가능하다. 우리는 instance-specific 파지 파이프라인의 한 부분으로서 SD Mask R-CNN을 ABB YuMi 로봇에 사용하였고, 표준 point cloud segmentation 기술보다 20% 더 높은 성공률을 보였다.
II. 관련 연구
이 연구는 다음과 같은 이전의 연구로부터 발전되었다. region proposal generation, image seg를 위한 neural architecture, 컴퓨터 비전과 로봇에서 학습 모델을 위한 합성 데이터의 사용. 이 연구는 로봇 파지, 조작, 빈피킹 업무에 관한 연구이다.
a) Box and Region Proposals : 컴퓨터 비전 분야에서의 초창기 연구는 이미지에서 box and region proposal을 위해 bottom-up 방식을 사용하는데 집중하였다. 이런 기술들은 hierarchical seg를 얻기 위해 이미지에서 윤곽선을 탐지해왔다. hierarchical seg로부터 얻은 region은 서로 결합하기도 하고, 이미지에서 객체를 감싸기 위한 region의 리스트를 생산하기 위해 사용되기도 하였다. 이러한 기술에 대한 집중은 high recall을 얻을 수 있었고, region proposal의 결과는 관심있는 객체를 탐지하고 segment하기위해 분류기와 함께 사용되었다.
더 최근에는, 이미지 표현을 학습하는데 이점이 주어지자, 연구자들은 bounding box proposals과 region proposal을 생산하는데 있어 이러한 문제를 해결하기위해 feature 학습 기술을 사용해왔다. (특히 CNN 기반 모델들) bottom-up seg 방식과 달리, 이러한 기술들은 객체 seg를 제안하고 분류하기 위해 고차원의 semantic marker를 학습하는 data-driven 방식을 사용한다. 이러한 몇몇 학습 기반의 region proposal 기술들은 이미지 분할을 위한 모델에서의 이점 위에서 발달하였고, 고품질의 region을 생산하기 위해 CNN에서 초기 레이어로부터 미세조정한 정보를 사용하고 있다.
컴퓨터 비전에서의 대부분의 작업은 이러한 문제를 해결하기위해 RGB 이미지를 사용해왔지만, 연구자들은 depth data에서도 비슷한 문제를 해결하기 위해 연구해왔다. 다시 한번 말하지만 region proposal을 사용하는 geometry 기반의 저레벨 cue를 사용하는 bottom-up 기술들이 있다. 또한, scene에서 객체를 담는 이미지 seg나 3D bounding box의 형태로 proposal을 생산하기 위해 top-down 학습기반 기술들도 있다. Shao et al.은 색깔과 depth 특성을 결합하였고, simulated RGBD 이미지에서 객체 instance seg mask를 만들기 위해 객체의 특성을 뽑아내거나 특성을 군집화하기도 하였다.
평행선 상에 있는 연구의 흐름에서는 class-specific seg의 문제를 해결해왔다. 몇몇 이 연구들은 객체 instance를 무시하고 semantic seg를 연구해왔다. 다른 연구들은 instance 간 구분을 노력해왔지만. 비슷한 연구가 depth 센서로부터 받은 입력값을 통해 진행되어왔다.
b) 학습 모델을 위한 합성 데이터 : 우리의 연구는 다수의 최근 연구와 관계가 있다. 다소 제한되거나 인간의 레이블링 없는 이미지와 ground truth mask를 가진 다량의 학습 데이터셋을 빠르게 얻어내는 연구. 가장 자연스러운 방법은 simulation에서 수집된 합성 color and depth 이미지로 학습을 augment하는 것이다. 이와 같은 아이디어는 semantic seg 네트워크나 자율주행 혹은 인간이나 객체의 포즈를 예측하기 위해 상당히 발전되어왔다. 또다른 연구는 interface를 사용하여 3D 모델을 이미지에 hand-aligning 하거나 최초의 RBD 이미지에 3D CAD 모델의 세트를 알고리즘으로 매칭하여 학습 데이터셋의 사이즈를 키우기 위해 자기지도학습을 사용한다. 그리고 나서 알려진 6-DOF 포즈와 함께 카메라 관점에서 각 3D 모델을 다량의 이미지에 projecting 한다. 대조적으로, 우리는 로봇 빈피킹에 있어 category-agnostic 객체 분할을 위해 합성 학습 데이터셋을 발생시킨다.III. 문제 설정
우리는 depth 기반의 category-agnostic instance segmentation의 문제를 고찰하였다. 또한 단일 depth 이미지에서 유일하면서 모르는 객체에 해당하는 픽셀들의 집합을 찾는 문제를 고찰하였다. category-agnostic instance segmentation의 형식을 갖추기 위해, 우리는 다음과 같은 정의를 내렸다.
1) States : x는 ground truth state를 나타낸다. (A)(B)(C)로 구성됨.
(A) 환경에서 앞으로 나와있는 m개의 객체 세트
(B) 뒤에 있는 n개의 객체 세트 (bins, tables)
(C) depth camera
여기서 각 객체 state O나 B는 객체의 위치와 6-DOF 포즈로 정의된다. C는 고유 매트릭스 K와 6-DOF 포즈로 정의된다.
2) Observations : y는 depth 이미지 observation이다. 높이 H, 너비 W로 C에서 발생한 state x의.
3) Object Mask : M은 앞으로 나와있는 객체 O에 대한 mask. 혹은 y 안에 있는 픽셀들의 집합
매 state x는 눈에 보이며 앞에 나와있는 객체 mask에 일치한다. category-agnostic object instance segmentation의 목표는 depth image y가 주어졌을때 M을 찾는 것이다.
IV. 합성 데이터셋 생성 방법
segmentation을 효과적으로 학습하기 위해서, 우리는 합성 훈련 데이터셋을 생성한다. 해당 데이터셋은 N개의 짝지어진 depth 이미지와 ground truth object mask로 구성되어있다. D = (y,M). 제안된 데이터셋 생성 방법은 두가지 분포를 사용하여 훈련 예시를 든다 : task-specific sate distribution p(x),
'논문 읽기' 카테고리의 다른 글