Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

[124]자율주행과 기계학습

6,980 views

Published on

자율주행과 기계학습

Published in: Technology
  • Hello! Get Your Professional Job-Winning Resume Here - Check our website! https://vk.cc/818RFv
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here

[124]자율주행과 기계학습

  1. 1. 자율주행과 기계학습 정성균 Autonomous Driving
  2. 2. CONTENTS 1. 자율주행차 구현을 위한 기술들 2. 자율주행을 위한 기계학습 연구 3. 이미지 기반 차선변경 학습 알고리듬
  3. 3. 자율주행차 구현을 위한 기술들
  4. 4. ControlLocalization Perception
  5. 5. 자율주행차 구현을 위한 기술들 측위 (Localization & Mapping) - 현재 차량의 위치를 알아내기 위한 기술들 - GPS, 고정밀지도, … 일반지도 정밀지도
  6. 6. 자율주행차 구현을 위한 기술들 인식 (Perception) - 차 주변의 사물과 교통 상황을 파악하는 기술들 - Computer vision, sensor fusion, …
  7. 7. 자율주행차 구현을 위한 기술들 제어 (Control) - 도로 상황에 맞게 차량을 이동하기 위한 기술들 - 경로계획, 차량 제어 기술
  8. 8. ControlLocalization PerceptionPerception Control
  9. 9. 자율주행을 위한 기계학습 연구
  10. 10. 자율주행을 위한 기계학습 연구 기존 자율주행 연구에서 기계학습의 역할 - (영상)입력을 해석하는 제한된 용도로만 사용됨 영상 입력 제어 알고리듬 제어 명령인식 알고리듬 - 인식 알고리듬: 사물 인식, 추적, 차선 인식,… - 제어 알고리듬: 차선 이탈 경고 (LDW), 전방 추돌 경고 (FCW), 앞차 추종 제어 (ACC)
  11. 11. 자율주행을 위한 기계학습 연구 기계학습을 활용한 자율주행 연구들 - (영상/주행기록) 입력 데이터로 부터 제어명령을 위한 로직을 직접 학습함 영상 입력 제어 명령 인식 알고리듬
 + 제어 알고리듬
  12. 12. Pixels to Actuator End-to-end learning for self-driving cars [Nvidia; Udacity] - 입력 영상에 상응하는 조향값을 이용하여 CNN을 학습 - 72시간 분량의 주행영상을 사용
  13. 13. Pixels to Actuator
  14. 14. Pixels to Actuator 단점 - Behavior cloning 은 도로위의 이상상황에 대한 대응 (디버깅)이 어렵다 영상 입력 제어 명령CNN
  15. 15. Pixels to Actuator 단점 - Behavior cloning 은 도로위의 이상상황에 대한 대응 (디버깅)이 어렵다 ?? !!!!!CNN
  16. 16. Mediated Perception DeepDriving[Princeton; AutoX] - 인식결과를 주행(제어)에 필요한 정보로 직접 변환해서 제공 - 헤딩방향, 차선내 오프셋, 차간 거리, …
  17. 17. Mediated Perception 시스템 구현 - TORCS (게임 시뮬레이터)을 통해서 학습 데이터를 생성
  18. 18. Mediated Perception 장점 - 간략한 형태로 전방의 도로상황을 효율적으로 묘사함 - 인간이 해석 가능한 중간 결과물 생성 단점 - 실제환경에서 학습 데이터를 취득하기 어려움 - 정확도
  19. 19. Mediated Perception 결과
  20. 20. Generic Driving Model Large-scale video datasets [Berkeley] - 블랙박스 (dashcam) 영상을 활용하여 - 다양한 운전자의 주행기록과 - 다양한 도로 상황에 대한 데이터를 확보 - 일반적인 운전자 모델 학습을 목표
  21. 21. Generic Driving Model 접근방법 - N-gram 언어 모델에서 착안 - 주어진 히스토리를 이용하여 다음에 나올 단어(글자)가 나타날 확률을 통계적으로 계산 S T U D E N … P(Z |STUDEN ) = 0.002 P(T |STUDEN ) = 0.98 … P(A|STUDEN ) = 0.001
  22. 22. Generic Driving Model 접근방법 - N-gram 언어 모델에서 착안 - 주어진 히스토리를 이용하여 다음에 나올 단어(글자)가 나타날 확률을 통계적으로 계산 S T U D E N T … P(Z |STUDEN ) = 0.002 P(T |STUDEN ) = 0.98 P(A|STUDEN ) = 0.001 …
  23. 23. Generic Driving Model 접근방법 - N-gram 언어 모델에서 착안 - 주어진 히스토리를 이용하여 다음에 나올 단어(글자)가 나타날 확률을 통계적으로 계산 - 과거의 주행기록/영상을 이용해서 다음 움직임을 예측
  24. 24. Generic Driving Model 결과 예측 결과 정답 Go Stop RightLeft
  25. 25. Generic Driving Model 결과 Go Stop RightLeft
  26. 26. 기존 연구들은 시뮬레이터에서 구현됨 특수한 차량 플랫폼이 필요함 성능이 조금 아쉽…
  27. 27. 이미지기반 차선 변경 학습 알고리듬
  28. 28. 차선변경 운행중인 자동차와 같은 방향인 인접 차선으로 차량을 이동하는 조작
  29. 29. 운전자 보조시스템 후방 추돌 경보 시스템 (BLIS, BSD, …) - 레이더, 초음파 센서를 이용한 측후방 사각 추돌 위험시 알람 - 고가의 센서들이 범퍼에 매립되어 유지관리비용 증가
  30. 30. 교통사고 발생원인 2% 3% 4% 7% 9% 11% 5%2% 56% 1% 앞지르기 방법위반 앞지르기 금지위반 부당한 회전 진로양보 의무 불이행 안전운전 의무 불이행 차로 위반 과속 중앙선 침범 신호위반 안전거리 미확보 서행 및 일시정지 위반 교차로 통행방법 위반 보행자 보호의무 위반 직진 및 우회전차의 통행 방해 기타 - 출처: 교통사고분석시스템 (TAAS), 2016년
  31. 31. 교통사고 발생원인 2% 3% 4% 7% 9% 11% 5%2% 56% 1% 앞지르기 방법위반 앞지르기 금지위반 부당한 회전 진로양보 의무 불이행 안전운전 의무 불이행 차로 위반 과속 중앙선 침범 신호위반 안전거리 미확보 서행 및 일시정지 위반 교차로 통행방법 위반 보행자 보호의무 위반 직진 및 우회전차의 통행 방해 기타 - 출처: 교통사고분석시스템 (TAAS), 2016년
  32. 32. 차선 변경을 실행하는데 걸리는 시간 - 출처: 미 도로교통안전국(NHTSA), 2009년 2초
  33. 33. 저렴하고 빠르게 정확하고
  34. 34. 카메라 빠르게 정확하고
  35. 35. 카메라 빠르게 딥러닝
  36. 36. 카메라 간단한 문제 딥러닝
  37. 37. 연구차량 플랫폼
  38. 38. 이미지기반 차선변경 학습 알고리듬 데이터 취득과 태깅 - 실험차량을 고속화도로와 도심에서 운전하면서 총 50,044 장의 좌/우 측후방 영상을 취득 - 아래의 기준에 따라서 취득된 데이터를 분류 - BLOCKED: 차량이 물리적으로 해당 차선으로 이동(진입)이 불가능한 경우 - FREE: 차량이 이동하기에 충분한 공간이 확보된 경우 - UNDEFINED: 특수한 도로, 차량이 이미 차선변경에 진입한 상태의 경우
  39. 39. 데이터셋 BLOCKED
  40. 40. 데이터셋 FREE
  41. 41. 데이터셋 UNDEFINED
  42. 42. 학습 - VGG16을 이용해서 이진 분류기 (Binary classifier) 를 만듦 Conv FC{좌 영상 / 차선변경?} Conv FC{우 영상 / 차선변경?} {0/1} {0/1}
  43. 43. 학습 - VGG16을 이용해서 이진 분류기 (Binary classifier) 를 만듦 - 오른쪽 영상을 좌/우반전 시켜 학습 데이터 양 증가
  44. 44. 학습 - VGG16을 이용해서 이진 분류기 (Binary classifier) 를 만듦 - 오른쪽 영상을 좌/우반전 시켜 학습 데이터 양 증가 Conv FC{영상 / 차선변경?} {0/1}
  45. 45. Class Activation Map [CVPR’16] - 입력: {이미지, 클래스} -> 출력:{클래스, 위치} - 네트워크가 결정을 할때 어느 영역의 영상 특징을 주로 사용하는지 알 수 있음 Mc(x, y) = ∑ k wc k fk(x, y) Conv5.shape = (512, 7, 7) Class Activation Map
  46. 46. 결과 Classification CAM
  47. 47. 그런데... Classification CAM - 차선 폭이 다른 도로에서는 어쩌지? - 빠르게 다가오는 차량에도 대응할 수 있을까?
  48. 48. 자동차를 가르쳐보자!
  49. 49. Weakly-Supervised Learning Positive samples Exceptions Negative samples
  50. 50. Weakly-Supervised Learning
  51. 51. Transfer Learning Conv FC{영상 / 자동차?} {0/1}
  52. 52. Transfer Learning Conv FC{영상 / 차선변경?} {0/1}
  53. 53. Transfer Learning From scratch Transfer learning (car class)
  54. 54. 감사합니다

×