[arXiv] Range Conditioned Dilated Convolutions for Scale Invariant 3D Object Detection

논문: Range Conditioned Dilated Convolutions for Scale Invariant 3D Object Detection

그림 1. (위) 참고, RGB object detection (아래) 제안된 RCD layer

Waymo에서 CVPR2020을 앞두고 challenge[1]를 하는 것을 익히 알고 있을 겁니다. 또한 저희 연구실에서도 Waymo에서 공개한 데이터셋 전체를 다운 받아 활용하고 있습니다. Waymo 팀에서 이 데이터셋 중 3D 데이터(LiDAR)를 활용해 object dectection을 하는 새로운 방법을 제시하였습니다.

그림 2. 네트워크 구조

이 논문은 LiDAR에서 수집한 데이터로 occlusion과 상당한 scale 변화 등의 상황이 정확도를 떨어뜨리는 것이라 보고, Range Conditioned Dilated block (이하 RCD) layer를 제안하여 dilated rate를 지속적으로 적응하여 scale에 강인하게 만들고, soft range gating을 사용하여 occlusion을 완화 시키는 방법을 제안합니다. 그림 2와 같이 제안된 모델은 노란색, 빨간색, 파란색의 1번째 stage와 녹색의 2번째 stage로 구성되어 있고, 저자의 contribution은 아래와 같습니다:

  1. 측정된 거리를 사용하여 dynamic 하게 조정한 후 어느 거리에서는 convolution kernel에 대해 일관된 scale을 제공
  2. 2번째 stage에서는 RCNN을 기본으로하여 range image-based 3D object detection의 맥락을 파악
  3. Range image-based 3D object detection의 새로운 baseline을 제안하여 RCD 기반 모델은 원거리에서 특히 잘 동작
그림 3. RCD block

RCD에 데이터를 입력하기 위해서는 그림 2의 노란색과 같이 range image를 64 x 2650의 크기에 8개의 channel(거리, 빛의 강도, 길쭉한 정도, 경사도, 방위각, x, y, z)을 구성해 줍니다.

이후 그림 2의 빨간색과 같이 RCD layer를 적용하게 되는데 overview는 그림 3과 같습니다. Pattern transformer를 통해 입력된 range image가 각 공간에 배열되어 있다는 점을 감안하여 적용할 scale rate를 설정하기 위해 물체의 크기와 물체까지의 거리를 삼각관계를 이용하여 구합니다(그림 4 참고). 그리고, pointwise convolution과 sampler를 통해 정보의 bottleneck을 만들어 공간적 차별 특성의 학습을 유도하게 됩니다. 마지막으로 soft range gating을 통해 범위를 명시적으로 사용하여 center의 reference pixel에 비해 꽤 다른 거리의 것을 억제해주게 됩니다.

그림 4. (a) 거리 (b) 감마에 따른 RCD (c) 일반 convolution (d) 제안된 convolution

그림 2의 파란색과 같이 RCD block을 적용한 결과는 2D 네트워크에 들어오게 되는데 backbone은 LaserNet[2]에서 영감을 얻어 downsample 할 때 더 aggresive하게 하는 것이 개선점입니다. 그림 5와 같이 64 x 2650의 range image 구조에 더 적합하게 구성되어 있고, 성능과 더 적은 연산을 위해 ResNet bottleneck 디자인을 적용했습니다.

그림 5. 2D CNN backbone

마지막으로 그림 2의 녹색 부분인 2번째 stage는 RCNN과 비슷한 faster RCNN[3], point RCNN[4]의 아이디어를 적용하였습니다. 네트워크의 결과는 12 x 8 x 6의 grid로 crop된 box를 나누게 되고, 이것을 3D convolution을 적용하여 최종적으로 6 x 4 x 3 크기의 box를 얻어 classification score와 box의 파라미터를 얻습니다.

구조의 전체를 쭉 훑어보면 제안된 방법은 크게 보면 RCNN의 2 stage 전략과 동일합니다. 다만, 1번째 stage에서 RPN의 역할을 제안된 RCD를 적용한 것만 다르다고 보면 좋을 것 같습니다.

식 1. Total loss

모델의 훈련은 LaserNet[2]의 loss처럼 1번째 stage에서 classification과 regression loss를 각각 얻고, 2번째 stage에서도 classification과 regression loss를 얻어 식 1과 같이 모든 loss를 합하여 계산해주게 됩니다.

표 1. 정량적 결과

표 1의 결과는 가장 좋은 성능이 파란색, 그 다음 좋은 성능이 빨간색으로 표시하고 있습니다. 우선 LaserNet[2]에 비해 월등히 좋은 성능을 보여주고 있지만 PV-RCNN[5]에 비해 일부 성능이 떨어지는 것을 볼 수 있습니다. 이 논문에서 제안한 모델은 원거리, 특히 거리가 더 멀어질 수록 성능이 점점 더 좋아지는 것을 알 수 있습니다.

이 논문이 challenge[1]의 종료를 2주 남겨진 시점에 공개된 것으로 보아 Google과 Waymo 내부 팀에서도 성능을 올리기 위해 참여한 것으로 보입니다. 원거리에 있는 3D object에 대한 detection이 부정확하다는 문제점을 개선했다는 점에 대해 새로운 아이디어를 얻을 수 있었습니다.

참고:
[1] Challenge: Waymo Open Dataset
[2] LaserNet: An Efficient Probabilistic 3D Object Detector for Autonomous Driving
[3] Faster R-CNN: Towards Real-Time Object Detection with Region Proposal Networks
[4] PointRCNN: 3D Object Proposal Generation and Detection from Point Cloud
[5] PV-RCNN: Point-Voxel Feature Set Abstraction for 3D Object Detection

Author: rcvlab

RCV연구실 홈페이지 관리자 입니다.

2 thoughts on “[arXiv] Range Conditioned Dilated Convolutions for Scale Invariant 3D Object Detection

  1. 64 x 2650×8 의 LiDAR 입력이 주어진다고 하였는데, 논문에서 해당 데이터의 전처리와 관련된 내용은 따로 언급되지 않았나요? 아니면 해당 데이터가 전처리된 데이터인지 질문드립니다. 추가로 일반적으로 라이다 데이터들이 해당 포맷을 지녔는지 궁금합니다.

    1. 논문의 섹션 3.1 Input Range Image에서는 따로 전처리에 대해 언급하고 있지 않습니다. Waymo의 데이터셋에서 제공되는 range image가 본문에서 언급한 8가지 요소와 함께 64 x 2650 x 8 의 형태로 제공되는 것으로 생각합니다. 저희 서버에 데이터셋이 있지만 3D 부분 데이터셋을 살펴보지 않았지만 이 부분을 확인해 보고 제공된 데이터의 형태가 논문과 일치하는지 그렇지 않다면 명확한 설명이 빠진 부분인지 알 수 있습니다.

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 항목은 *(으)로 표시합니다