Direct Perception for Self-driving Cars
인지자 6강 - Direct Perception 내용 정리
자율주행자동차 구현의 또 다른 접근방식입니다. E2E Learning와 Modular Pipeling을 결합한 Hybrid Model입니다. Intermediate Representation을 중심으로 두 부분으로 나눠집니다. 크게 앞부분은 Perception, 뒷부분은 Control을 담당합니다.
센서 정보를 CNN 네트워크에 입력하여 출력으로 차선 간 거리, 주행 방향의 각도 등의 feature를 추출하고 intermediate representation을 만들어냅니다. 이러한 정보를 바탕으로 자동차를 어떻게 조작할지 결정합니다.
Overview
2015년에 발표된 Direct Perception을 소개하는 논문에서 사용한 구조이다
-
TORCS Simulator 로 주행 환경을 시뮬레이팅했다.
-
Network: AlexNet을 CNN 모델로 사용
-
Training: Affordance indicator trained with L2 loss
Conditonal Affordance Learning
Neural Network를 통해서 affordance라는 더 세밀한 feature(신호등 정보, 표지판 등)를 intermediate representation으로써 추가함으로써 Direct Perception을 개선한 것입니다.
Network는 affordance 계산을 위한 물체들이 있을 만한 곳에 시선을 집중하도록 학습됩니다.
한편 Sensor data뿐만 아니라 주행 방향도 따로 입력으로 주어집니다. 이를 연구한 논문(Sauer et al.)에서는 CARLA Simulator라는 시뮬레이터를 사용했습니다. 레이싱 게임이 아니라서 신호등, 보행자 등의 다양한 상황을 시뮬레이션할 수 있습니다. 이 연구에서는 Robustness를 향상시키기 위해 Data Augmentation도 활용했습니다.
그 결과, 훈련 환경과 다른 새로운 도시나 새로운 날씨 등의 환경에서도 잘 작동하는 모델을 만들 수 있었습니다.
Visual Abstraction & Driving Policy Transfer
이전에 E2E Learning이나 Direct Perception이 사용하던 것들은 raw image들에서 얻어진 low-level feature들이었습니다. Computer Vision 기술, 특히 Sematnic Segmentation 을 활용해 Depth map, Optical flow등의 Segmentation Map을 얻어 Visual Abstraction를 생성하고 이를 활용하여 주행을 결정하는 방법이 제안되었습니다(Zhou et al.).
Visual Abstraction은 Invraint(policy에서 무관계한 variation을 숨김), Universal(다양한 환경에서 잘 작동), 데이터 효율성, Labeling 효율성 등의 장점을 갖고 있습니다. 이중 Universal하다는 특징은 Simulator에서의 실험을 Real world에 일반화하여 적용(Driving Policy Transfer)할 때 유용합니다.
결과, 훈련 시간은 줄어들고 policy success rate는 향상되는 개선을 이루어낼 수 있었습니다.