0 . Abstract
- 생략
1. Introduction
- Semantc scene understanding은 많은 적용에 있어서 그리고 자율 주행차에서는 필수적인 부분이다.
- 현재, 소위 고화질 지도(high definition maps)에 대표되는 그러한 이해는 주로 측량 차량을 이용하여 미리 생성된다.
- 하지만, 자율 주행 자동차는 또한 지도가 없는 지역에서 운전할 수 있어야 하고 환경에 변화가 있을 때 그들의 행동을 적응시킬 수 있어야 한다.
- 대부분의 차량은 다량의 다른 sensor를 이용하여 환경을 인식한다.
- 카메라 이외에도, light detection and range(LiDAR) 센서는 빛에 영향을 받지 않고 정확한 거리 측정을 제공하기 때문에 주로 이용된다.
-공개적으로 사용 가능한 데이터 세트와 벤치마크는 연구의 경험적 평가에 중요하다. 그들은 주로 세 가지 목적을 달성한다.
(1) reproducible하고 comparable할 수 있는 결과를 제공할 수 있기 때문에 progress를 측정할 수 있는 기초를 제공한다.
(2) 그들은 현재 기술의 단점을 발견하고 따라서 새로운 접근법과 연구 방향을 위한 길을 닦는다.
(3) 데이터를 먼저 정성들여 수집하고 레이블을 붙일 필요 없이 접근 방식을 개발할 수 있게 한다.
- image-based semantic segmentation을 위한 여러 개의 대규모 데이터 세트는 존재해 왔지만,공개적으로 사용 가능한 3차원 point-cloud에 대한 포인트별 annotation(주석)이있는 데이터 세트는 표 1에 표시된 것처럼 여전히 비교적 작다.
- 이러한 차이를 줄이기 위해, 본 논문에서는 28개의 클래스가 있는 point-wise annotation에서 전례 없는 세부 정보를 보여주는 대규모 데이터 데이터셋을 제안하는데, 이는 다양한 task에 적합하다.
- 본 논문에서는 주로 laser-based semantic segmentation뿐만 아니라, semantic scene completion에도 중점을 둔다.
- 본 데이터셋은 sequence에 대한 정확한 스캔별 주석(scan-wise annotation)을 제공하기 때문에, 다른 laser dataset와 구별된다 .
- 전체적으로, 본 논문에서는 4300개 이상의 스캔들로 구성된 KITTI Vision Benchmark의 주행 거리 측정 벤치마크(odometry benchmark) 22개의 sequence에 모두 주석을 달았다.
-게다가, 회전하는 레이저 센서의 완전한 수평 360도 시야에 label를 붙였다. ( 그림 1 참고)
* Summary :
- 본 논문에서는 각 스캔에 대해 전례 없는 수의 class와 보이지 않는 세부 수준을 가진 point cloud sequence의 point-wise annotation이 달린 dataset을 제시한다.
- 또한 point cloud의 semantic segmentation을 위한 최첨단 방법에 대한 평가를 제공한다.
- 본 논문에서는 다중 scans을 사용하여 semantic segmentation을 위한 sequence 정보의 사용을 조사한다.
- 움직이는 자동차의 sequence에 대한 annotation을 기반으로 semantic scene completion을 위한 실제 데이터 세트를 추가로 소개하고 기준 결과를 제공한다.
- 벤치마크 웹 사이트와 함께 포인트 클라우드 레이블링 툴도 공개적으로 사용할 수 있으므로 다른 연구자가 향후 다른 레이블링된 데이터 세트를 생성할 수 있다.
2. Related Work
- 생략
3. The SemanticKITTI Dataset
- 본 논문의 데이터 세트는 KITTI Vision Benchmark의 주행 거리 데이터 세트(odometry dataset)를 기반으로 하며, 도심 교통, 주거 지역뿐만 아니라 독일 카를스루에 주변의 고속도로 장면과 시골길도 보여준다.
- 원래 주행 거리 측정 데이터 세트는 22개의 sequence구성되어 있으며, sequence를 00에서 10으로 train set로 분할하고 test set로 11에서 21로 분할한다. 원래 벤치마크와의 일관성을 위해 train및 test set에 동일한 분할을 채택하였다.
- 또한, 본 논문에서는 train data에 대해서만 label를 제공하여 원래의 주행 거리 benchmark를 방해하지 않는다.
- 전반적으로, 우리는 교육을 위해 23201개의 전체 3D scan과 test를 위해 20351개를 제공하는데, 이는 공개적으로 사용 가능한 dataset 중 가장 큰 규모이다.
- 자동차로 캡처한 raw point cloud data의 가장 큰 컬렉션을 활용할 수 있기 때문에, 우리의 labeling effort를 위해 KITTI 데이터 세트를 기반으로 사용하기로 결정했다. 또한 주석과 기존 벤치마크 사이에 잠재적인 시너지 효과가 있을 것으로 예상하며, 이를 통해 레이저 기반 주행 거리 추정을 위한 의미론 사용과 같은 추가 연구 방향을 조사하고 평가할 수 있을 것이다.
- 다른 데이터 세트와 비교하여(cf. Table 1), 본 논문에서는 일반적으로 사용되는 자동차 LiDAR, 즉 Velodyne HDL64E로 생성된 순차적 포인트 클라우드에 대한 레이블을 제공한다. Paris-Lille-3D 또는 Wachtberg와 같은 공개적으로 사용 가능한 다른 데이터 세트도 이러한 센서를 사용하지만, 획득된 전체 시퀀스의 집계된 포인트 클라우드 또는 전체 시퀀스의 일부 개별 스캔만 각각 제공한다.
- 전체 시퀀스의 개별 검색을 제공하기 때문에 여러 연속 검색을 집계하는 것이 의미 분할의 성능에 어떤 영향을 미치는지 조사하고 정보를 사용하여 움직이는 물체를 인식할 수 있다.
우리는 28개의 클래스에 주석을 달았는데, 여기서 우리는 Mapillary Vista 데이터 세트 및 Cityscapes 데이터 세트와 클래스의 큰 중복을 보장하고 희소성과 수직 시야를 설명하기 위해 필요한 경우 수정했다. 좀 더 구체적으로 말하면, 우리는 차량을 타는 사람과 차량을 구분하지 않고, 차량과 그 사람을 자전거 또는 오토바이 운전자로 표시한다.
- 본 논문에서는 28개의 classes로 annotaed하였고, 여기서 Mapillarty Vista data set및 Cityscapes 데이터 세트와 class의 큰 중복을 보장하고 희소성(sparsity)과 수직 시야(vertical field-of-view)를 설명하기 위해 필요한 경우 수정을 하였다.
- 좀 더 구체적으로 말하면, 본 논문에서는 차량을 타고 있는 사람과 차량을 구분하지 않고, vehicle과 사람을 각각 bicyclist와 motorcyclist로 라벨링한다.
- 또한 이동 차량과 비이동 차량 및 인간을 구분했다. 즉, 그림 2의 하단에 표시된 것처럼 차량 또는 인간이 관찰하는 동안 일부 스캔에서 이동하면 해당 이동 클래스를 얻을 수 있다.
- 주석 처리된 모든 클래스는 그림 3에 나열되어 있으며, 다양한 클래스에 대한 자세한 설명과 정의는 보충 자료에서 확인 할 수 있음. 요약하면, 우리는 28개의 클래스가 있는데, 여기서 6개의 클래스는 속성 이동 또는 비이동으로 할당되며, 반사 또는 기타 효과로 인한 잘못된 레이저 측정에 대해 하나의 특이치 클래스가 포함된다.
3.1 Labeling Process
- point cloud sequence의 label을 실용적으로 만들기 위해 여러 스캔을 서로 중첩하여, 반대로 여러 스캔에 레이블을 일관되게 지정할 수 있다.
- 이러한 목적에 맞게, 본 논문에서는 먼저 기성 레이저 기반 SLAM 시스템을 사용하여 sequence를 등록하고 loop close를 한다.
- 관성 항법 시스템(INS)의 정보 제공으로 지도 불일치가 발생하는 경우가 많으므로, 이러한 단계가 필요하다. 즉, 일정 시간 후에 다시 방문하는 거리는 높이가 다르다.
--------> SLAM, loop close, ins가 뭔지 알아내기
3개의 시퀀스에 대해, 우리는 주석을 위한 일관된 포인트 클라우드를 얻는 데 필수적이기 때문에 루프 폐쇄 궤적을 정확하게 얻기 위해 루프 폐쇄 제약 조건을 수동으로 추가해야 했다. 루프 클로즈드 포즈는 그림 2와 같이 특정 위치에 대해 겹치는 모든 점 구름을 로드하고 함께 시각화할 수 있습니다.
- 세개의 sequences에 대해, 본 논문에서는 정확한 loop closed trajectories를 얻기 위해 수동으로 loop closure constraints를 넣었는데, 왜냐면 이는 annotation을 위한 일관된 point clouds을 얻기위해 필수적이기 떄문이다.
- loop closed pose는 그림 2와 같이 특정 위치에 대해 겹치는 모든 point cloud을 로드하고 함께 시각화할 수 있도록 합니다.
- 본 논문에서는 point clouds의 sequence를 100m by 100m의 tiles로 분할하였다. 각 타일에 대해 타일과 겹치는 스캔만 로드한다. 이를 통해 시간적으로 먼 loop closure가 발생하는 경우에도 모든 스캔에 레이블을 일관되게 지정할 수 있습니다.
- 둘 이상의 타일과 겹치는 스캔의 일관성을 유지하기 위해 각 타일 내부의 모든 점과 인접 타일과 겹치는 작은 경계를 표시 한다. 따라서 인접 타일의 레이블을 계속 사용할 수 있다.
- image-based annotation과 비교하여, point-cloud를 사용한 annotation process는 annotator가 종종 관점을 변경해야 하기 때문에 더 복잡하다. annotator는 가장 복잡한 scenery에 해당하는 주거 지역에 레이블을 지정할 때 타일당 평균 4.5시간이 필요하며, highway tile 레이블 지정에는 평균 1.5시간이 필요하다.
- 요약하면, 전체 데이터 세트는 518개의 타일로 구성되며, 1400시간 이상의 라벨링 작업이 타일당 10~60분의 추가 검증 및 수정과 함께 투자되어 총 1700시간 이상이 소요되었다.
3.2 Dataset Statistics
- Figure 3은 다른 class들의 분포를 보여준다.
- 불균형 클래스 수는 자연 환경에서 캡처된 데이터 세트에 대해 일반적이며, 일부 클래스는 자주 발생하지 않기 때문에 항상 과소 표현된다.
- 전체적으로, 클래스 간의 분포와 그리고 상대적으로 차이점은 상당히 다른 데이터셋(예를 들어 cityscapes)과 유사하다.
4. Evaluation of Semantic Segmentation
- 이 섹션에서는 단일 스캔의 의미 분할을 위한 몇 가지 최첨단 방법에 대한 평가를 제공한다. 본 논문에서는 또한 여러 스캔 시퀀스에 의해 제공되는 정보를 이용하는 실험을 제공한다.
4.1 Single Scan Experiments
Task and Metrics.
- 포인트 클라우드의 의미론적 분할에서, 우리는 각 3차원 포인트의 레이블을 유추하고자 한다. 따라서 평가된 모든 방법에 대한 입력은 3차원 점의 좌표 목록과 그 제거(remission), 즉 부딪힌 표면의 특성에 따라 달라지는 반사 레이저 빔의 강도이다.
- 그런 다음 각 방법은 스캔의 각 지점, 즉 회전 LiDAR 센서를 한 바퀴 완전히 회전시키는 라벨을 출력해야 한다.
- labeling performance를 평가하기 위해, 본 논문에서는 일반적으로 적용되는 mean Jaccard Index 또는 mean intersection-over-Union(mIoU) metric에 의존한다.
- other structure과 other object classes는 몇 가지 포인트만 가지고 있고 클래스 내 변동이 커서 너무 다양하기 때문에, 이러한 클래스를 평가에 포함하지 않기로 결정했다. 따라서 훈련 및 추론 중에 outler, other-structure, other-object를 무시하고 28개의 클래스 대신 25개를 사용한다.
- 게다가, 이 Velodyne LiDAR는 도플러 효과를 이용하는 레이더와 같은 속도를 측정할 수 없기 때문에, 본 논문에서는 한 번의 스캔으로 움직이지 않는 천체들과 구별하기를 기대할 수 없다. 따라서 이동 클래스와 해당 비이동 클래스를 결합하여 훈련 및 평가를 위한 총 19개의 클래스를 생성한다.
State of the Art
- 생략
Baseline approaches
- 본 논문에서는 데이터 세트에서 포인트 클라우드의 의미론적 분할을 위한 6가지 최첨단 아키텍처의 결과를 제공한다. pointNet, PointNet++, Tangent Convolutions, SPLATNet, SuperpointGraph, SqueezeSeg(V1 and V2). 또한, 본 논문에서는 squeezeSeg의 두 가지 확장을 조사한다. : DarkNet21Seg 및 DarkNet53Seg.
* PointNet and Point Net++
- PointNet과 PointNet++은 순서가 지정되지 않은 원시 포인트 클라우드 데이터를 입력으로 사용한다. 이러한 접근 방식의 핵심은 모양과 몇 가지 다른 벤치마크의 의미론적 분할에 놀라울 정도로 잘 작동하는 순서 불변 연산자(order-invariant operator)를 얻기 위한 max pooling이다.
- 이러한 성질 때문에, 그러나, PointNet은 feature들 사이의 공간적 관계를 포착하는데 실패한다. 이러한 문제를 완화하기 위해, PointNet++은 개별 PointNet을 local neighborhoods에 적용하고 hierarchical approach(계층적 접근방식)을 사용하여 결과를 결합한다. 이를 통해 local fine-grained 정보와 global contextual 정보를 모두 capture하는 복잡한 계층적 기능을 구축할 수 있다.
* Tanget Convolutions
- Tanget Convolution은 또한 표면에 직접 컨볼루션 신경망을 적용하여 구조화되지 않은 포인트 클라우드를 처리한다.
- 이것은 데이터가 매끄러운 표면에서 샘플링되었다고 가정하고 tanget convolution을 각 점에서 접선 평면(tangent plane)으로의 국부 표면 투영(local surface projection)에 적용되는 컨볼루션으로 정의함으로써 달성된다.
* SPLATNet
- 앞서 언급한 voxelization 방법과 유사한 접근 방식을 취하며, 고차원 희소 격자로 point cloud를 나타낸다. voxel-based method와 마찬가지로, 이는 계산과 메모리 비용 모두에서 잘 확장되지 않으므로 occupied lattice parts에서만 작동하는 bilateral convolutions을 사용하여 이 표현의 sparsity(희소성)을 활용한다.
* Superpoint Graph
- PointNet과 마찬가지로 local res
* SqueezeSeg
Results and Discussion
- 표 2는 포인트 클라우드 정보를 직접 사용하거나 포인트 클라우드의 투영을 사용하여 다양한 접근 방식에 대한 기본 실험 결과를 보여준다. 결과는 포인트 클라우드 의미 분할에 대한 현재 기술이 데이터 세트의 크기와 복잡성에 미치지 못한다는 것을 보여준다.
- 본 논문에서는 이러한 접근 방식의 매개 변수 수가 선도적인 이미지 기반 의미 분할 네트워크에 사용되는 매개 변수 수보다 훨씬 낮기 때문에, 이는 주로 사용된 아키텍처의 제한된 용량(표 7 참조)에서 기인한다고 믿는다. 위에서 언급한 대로, 우리는 이 가설을 테스트하기 위해 DarkNet21Seg와 DarkNet53Seg를 추가했고, 결과는 이 간단한 수정이 SqueezeSeg의 정확도를 29.5%에서 DarkNet21Seg의 47.4%, DarkNet53Seg의 49.9%로 향상시킨다는 것을 보여준다.
-또 다른 이유는 LiDAR에 의해 생성된 포인트 클라우드가 특히 센서와의 거리가 증가함에 따라 상대적으로 희박하기 때문이다. 이는 회전 스캐너가 데이터를 캡처하여 조밀한 범위 이미지를 생성하는 방법을 활용하는 SqueezeSeg에서 부분적으로 해결되며, 각 픽셀은 스캔의 한 지점에 대략적으로 대응된다.
- 이러한 영향은 그림 4에서 더 분석된다. 여기서 mIoU는 센서까지의 거리에 따라 표시됩니다. 모든 접근 방식의 결과는 거리가 증가할수록 악화된다는 것을 보여준다. 이는 희소성이 멀리 떨어진 곳에서 더 나쁜 결과의 주된 이유라는 우리의 가설을 더욱 확인시켜 준다.
- 그러나 결과는 또한 SPGraph와 같은 일부 방법이 거리 의존적 희소성의 영향을 덜 받고 이것이 두 패러다임의 강도를 결합하기 위한 향후 연구의 유망한 방향이 될 수 있음을 보여준다.
4.2 Multiple Scan Experiments
Task and Metrics.
- 이 작업에서는 여러 개의 과거 검색 시퀀스의 정보를 활용하여 현재 검색의 세분화를 개선할 수 있는 방법을 허용한다. 또한 이동 클래스와 비이동 클래스를 구분하는 방법을 원한다. 즉, 25개의 클래스가 모두 예측되어야 한다.
- 이 작업에 대한 평가 메트릭은 단일 검색 사례와 동일하다. 즉, 결과를 계산하는 데 사용된 과거 검색 수에 관계없이 현재 검색의 평균 IoU를 평가한다.
Baselines.
- 우리는 5개의 스캔을 단일 대형 포인트 클라우드에 결합함으로써 순차적 정보를 활용한다. 즉, 타임스탬프 t에서의 현재 스캔과 타임스탬프 t - 1, ..., t - 4 이전의 스캔이다. 이러한 접근 방식은 포인트 클라우드의 다운샘플링 없이 더 많은 수의 포인트를 처리할 수 있고 합리적인 시간 내에 여전히 훈련될 수 있기 때문에 DarkNet53Seg와 TangentConv를 평가한다.
Results and Discussions.
- 나머지 정적 클래스의 성능은 단일 검색 결과와 유사하다.
- 투영 방법이 포인트 기반 방법보다 더 잘 수행된다는 일반적인 추세는 여전히 명백하며, 이는 단일 스캔 사례에서처럼 매개 변수의 양이 더 많기 때문이기도 하다. 두 가지 접근 방식 모두 이동 중인 개체와 이동하지 않는 개체를 분리하는 데 어려움을 나타내며, 이는 여러 검색을 단일 대형 포인트 클라우드로 집계하려는 설계 결정으로 인해 발생할 수 있다. 그 결과는 특히 자전거와 오토바이 운전자는 일반적으로 더 희박한 물체 점 구름의 결과일 가능성이 높은 비이동 클래스를 결코 정확하게 배정받지 못한다는 것을 보여준다.
- 본 논문에서는 새로운 접근 방식이 아키텍처에 대한 여러 입력 스트림을 사용하거나 심지어 시간 정보를 설명하기 위해 반복 신경망을 사용하여 순차적 정보를 명시적으로 활용할 수 있으며, 이는 다시 새로운 연구 라인을 열 수 있을 것으로 예상한다.
5. Evaluation of Semantic Scene Completion
-
의미론적 포인트 클라우드 분할을 위해 일련의 과거 스캔을 활용한 후, 이제 향후 스캔을 활용하는 시나리오를 보여준다. 순차적 특성으로 인해, 우리의 데이터 세트는 3D 의미 장면 완성 작업을 위해 확장할 수 있는 고유한 기회를 제공한다.
- 이것은 이 작업에 대한 첫 번째 실제 실외 벤치마크라는 점을 주의하라. 기존 포인트 클라우드 데이터 세트는 공간과 시간 모두에서 충분히 밀도가 높은 레이블이 지정된 포인트 클라우드를 집계할 수 없기 때문에 이 작업을 해결하는 데 사용할 수 없다.
- semantic scene completion에서, 하나의 근본적인 문제는 실제 세계에서 gt 값을 얻는 걷이다.
- NYUv2의 경우, CAD 모델은 키넥트 센서에 의해 캡처된 RGB-D 이미지를 사용하여 현장에 장착되었다. 새로운 접근 방식은 종종 더 크지만 합성적인 SUNCG 데이터 세트에 대한 효과를 입증하는 데 의존한다.
- 그러나, 그러나 합성 데이터 세트의 규모와 실제 데이터 사용을 결합한 데이터 세트는 여전히 누락되어 있다.
- 우리가 제안한 데이터 세트의 경우, LiDAR을 실은 차가 장면의 3D 물체를 지나쳐 이동하며, 따라서 self-occlusion으로 인해 초기 스캔에 숨겨져 있는 뒷면을 기록한다. 이것은 시맨틱 장면 완성에 정확히 필요한 정보이다. 시맨틱은 모든 객체의 완전한 3D 형상을 포함하지만 시맨틱은 우리의 밀도 높은 주석으로 제공된다.
Dataset Generation.
- 자동차 앞의 미리 정의된 영역에 미래의 레이저 스캔 수를 모두 중첩함으로써 의미론적 장면 완료 작업에 해당하는 입력 및 대상 쌍을 생성할 수 있다. Song 등이 제안한 바와 같이, 장면 완료 작업에 대한 우리의 데이터 세트는 3D 장면의 voxelized 표현이다.