자율주행 기반 쌓기

자율주행 기반 쌓기

autonomous driving, lidar, camera

자율주행을 이해하기 위한 기본적인 지식과 더불어, 카메라 기반의 자율주행을 주장하는 테슬라의 기술을 간단하게 살펴본다.

자율주행에서의 waymo와 tesla

  1. 자율주행에서의 waymo와 tesla
  2. AI for Full-Self Driving at Tesla
  3. Tesla의 Fleet Learning
  4. Andrej Karpathy(Tesla) CVPR 2021 Workshop on Autonomous Vehicles
    1. vision만으로도 자율주행 가능 & vision의 성능을 향상하기 위한 데이터 구축 방법

컨셉 차이 - 어떤 센서를 메인으로 사용하는지?

  • waymo: 라이다
    • 정밀 지도가 있어야 운행 가능 → 제한된 지역에서만 주행4단계
    • 라이다는 가격이 비쌈
    • 라이다 센서로 주의 환경을 미리 매핑(고해상도 지도 HD map) - 차량 360도 주변의 거리 검색 → 포인트 클라우드 생성
  • tesla: 카메라 (전방 레이더 & 12개의 초음파 센서 → 거리 측정)
    • 더 저렴함 (waymo와 대략 3배 차이)
    • occlusion이나 날씨로 인해 발생하는 문제 → 레이더 이용
    • 단점: 실제 차에서 동작할 때 power가 많이 들어감, 특히 8개의 카메라, 문제 발생 시 새로운 데이터 이용하여 재학습 하는 방식
    • 영상 데이터 기반; dl 학습 완료하는 데에는 꽤 복잡하지만, 학습 완료 → 비슷한 환경에서는 자율주행 가능 → 범용적으로 낮은주행단계
    • 전 세계 곳곳에 서비스 제공 가능, 어느 지역에서든 일반화 가능

AI for Full-Self Driving at Tesla

  • 테슬라의 오토파일럿: NoA(Navigation on Autopilot)
  • Smart Summon: 주차되어 있는 자동차를 나의 위치까지 호출하는 기능
    • SLAM 기술통해 실시간 지도 그려서 본 기능 대응
  • 컴퓨터 비전 기반의 테슬라 방식
    • 웨이보; lidar point cloud - 라이다가 인식한 물체의 좌표들을 점의 형태로 나타낸 것, 자차의 현재 위치를 찾는 localize문제 해결 가능
    • nn의 역할
      • 자율주행, 디스플레이에 표시하여 사용자에게 보여주기 위함
    • fleet으로부터 corner case(까다로운,특이한 케이스)에 해당하는 이미지 획득
      • data engine process를 계속 반복하면서 데이터 구축
      • 학습 후, OTA(Over The Air)로 학습결과 배포

Tesla의 Fleet Learning

  • fleet: 전 세계에서 양산되어 돌아다니고 있는 테슬라 차량
  • fleet learning: 전 세계의 고객 차량으로부터 수집한 데이터 이용 → 딥러닝 학습 진행

  • 데이터셋 조건 3가지
    • large dataset, varied dataset, real dataset(실제 도로 (낮, 밤, 공사 현장 등) 환경의 데이터)
  • fleet learning process
  1. train: 기존 보유중인 dataset → dnn

  2. deploy: 학습 완료된 dnn 네트워크를 무선네트워크인 OTA를 통해 자동으로 업데이트
    • 고객 차량에서 쉐도우 모드로 사용할 nn배포
  3. inaccuracy: auto pilot, FSD와 같은 자율주행 기능 사용하는 중,
    • 내부 시스템적으로 인식이 잘 안된다고 판단
    • 고객이 시스템을 끄고 중간에 개입한다고 판단 → 그 상황의 이미지 → Unit Tests로 전송
    • 뉴럴넷의 부정확성을 찾아내는 도구필요(221개의 트리거) → 네트워크가 잘못 동작하는 시나리오 확인 가능
  4. Unit Tests: 이렇게 전송된 데이터는 테슬라 내부적으로 확인
    • 실제 인식이 잘 안된 데이터인지
    • 플리들로부터 확보해야 하는 데이터인지
  5. boost: fleet들로부터 더 수집해야 하는 데이터로 판단 → 고객들로부터 익명으로 데이터 수집
  6. label: 취득한 다양한 데이터 → 라벨링 → 데이터셋에 추가
  • Shadow 모드
    • 데이터 자동화 수집
    • 각 fleet에서 테스트 한 후, 필요한 데이터 → 테슬라 서버로 업로드
    • e.g. 데이터 추가 수집이 필요한 ‘끼어들기 상황(cut-in)’일때, fleet내부적으로 동작하는 logic이 끼어들기 정확히 예측 → o
    • 예측과 틀린경우 → 데이터 테슬라 팀으로 전달
    • 난폭한 운전자가 아닌 정상 운전자라고 판단되는 사용자에 한해, 데이터 수집

Andrej Karpathy(Tesla) CVPR 2021 Workshop on Autonomous Vehicles

vision만을 이용해 어떻게 테슬라에서 자율주행을 하는가?

vision만으로도 자율주행 가능 & vision의 성능을 향상하기 위한 데이터 구축 방법

  • meat computer(사람) vs. silicon computer(컴퓨터)
  • 테슬라에서 제공하는 자율주행 시스템
    • AEB(Autonomous Emergency Braking 긴급제동)
    • Traffic Control Warning
    • PMM(Pedal Misapplication Mitigation 운전자 페달 오조작 완화)
  • 테슬라에서 사용하는 센서 현황
    • 카메라, 초음파 센서, 오도메터리 센서, GPS
    • 8대의 카메라: 전방3개, 측방2개, 후측방2개, 후방1개
    • nn을 통해 사람의 인식과 비슷하게끔 물체의 범위 및 깊이를 예측함
    • 데이터 수집 조건
      • large: 수백만개의 비디오 데이터
      • clean: 질 좋게 labeling 되어야 함, 물체 인식할 때 필요한 depth, velocity, acceleration등이 포함되어야 함
      • diverse: 일반적인 상황의 데이터 뿐만 아니라, 예외적인 상황까지 포함되어야 함
    • 데이터 수집의 자동화; data auto labelling
      • 별도의 nn이 동작; 이 뉴럴넷의 예측을 통해 데이터 라벨링을 부분적으로 자동화 o
      • 별도로 고객 차량에서 data auto labelling 수행; 쉐도우 모드
      • but, 무분별한 데이터 수집 방지를 위해: 221개의 trigger를 사용 - 만족할 때 수집하는 방식
    • 테슬라에서 레이더를 포함한 센서 퓨전의 결과 vs. 비전만을 이용한 결과 레이더를 사용하지 않게 된 이유 (레이더가 해상도가 작아서 생기는 문제)
      • 감속이 심하게 발생 → 물체를 추적하는 tracker의 끊김 발생
      • 수직 방향의 해상도가 좁음 → 물체 오인식
      • 고속 상황에서 정차된 차량 인식률 ↓

Continue with AI Day 01



해당 포스트는 아래를 참고하여 작성되었습니다.