들어가면서.
이 글을 읽고나서 독자들은 자율주행의 개념과 실제 들어가는 기술을 정확하게 분간하고 앞으로의 투자에 좋은 결정을 할 수 있다. 학식들 유입도 많아 보이는데 이글이 전공에 도움이 됐으면 좋겠다.
학습목표.
자율주행에 들어가는 기술에 대한 전반적인 지식을 습득한다.
자율주행에 있어 무엇이 가장 중요한 기술인지 알수 있다.
자율주행에 대한 오해와 앞으로 어떤 문제가 있을지 생각해보자.
1과 자율주행이란?
자율주행은 다양한 센서와 함께 작동하는 컴퓨터 시스템을 통해 사람과 같은 제3의 조작자 입력없이 능동적으로 이동하는 일련의 프로그램을 의미한다. 이를 위해 자율주행에서 중요한 부분은 아래와 같이 3가지로 나뉘어진다.
센서- 주행에 판단이 될수 있는 중요한 혹은 중요하게 될수 있는 외부상황을 인지하는 역이다. 라이다 레이더 카메라가 대표적으로 대부분의 경우 한가지 센서만을 쓰는 곳은 없으며 이 3가지 센서를 조합하여 활용한다.
컴퓨터시스템- 센서 및 서버를 통해 실시간으로 인지된 정보를 바탕으로 현재 상황과 자동차의 조향 혹은 속력을 계산한다. 주로 엔비디아, 인텔, 삼성과 같은 반도체 업체가 이를 위한 전용 반도체을 제작한다.
프로그램- 입력된 목적지로 향하는 경로와 도로 위 달라지는 상황에 대하여 최대한 안전하며 합리적인 결정을 도출한다. 현존하는 많은 자율주행 업체들이 개발에 힘을 쓰고 있으며 앞으로의 결정적 차이는 이 부분에서 날 것이다.
2과 자율주행의 원리.
자율주행은 다음과 같이 이루어진다.
첫번째. 아래와 같은 여러 센서로 도로의 상황을 인지한다.
두번째. 이를 바탕으로 컴퓨터 시스템은 판단에 도움되는 정보들을 산출해낸다.
세번째. 산출된 정보를 바탕으로 차체의 조향 및 속력을 결정짓는다.
3과. 자율주행에 쓰이는 센서
자율주행을 하기 위해서는 정확한 정보인지가 중요하다. 프로그램이 판단하기 이전에 데이터가 오염되거나 잘못 인지할 경우 큰 사고로 이어질 수 있기 때문이다. 때문에 많은 기업들은 자체개발하기 보다는 외부 대기업의 신뢰성있는 부품을 기반으로 재설계하여 사용한다. 또한, 강한 외부충격과 극단적인 자극에도 오류가 없어야 함으로 여기에 있어 솔루션을 제시하는 길이 업체마다 매우 다양하다.
우선, 자율주행에 쓰이는 센서에 대하여 자세하게 알아보자.
1) LIDAR(라이다)
현존하는 가장 강력한 센서인 라이다는 주변의 3D 그림을 그려 차량 주변의 물체 크기와 거리를 300 미터 이상으로 측정 할 수 있다. 라이다 데이터를 사용하면 강한 햇빛으로 인한 역광과 달이 가려져 시야가 확보가 안되는 밤에도 들어오는 물체를 식별 할 수 있다.
이 시스템은 차량을 둘러싼 자동차, 자전거 및 보행자의 조감도를 제공한다. 도시 블록에서 차문을 여는 것을 구별하여 도시 운전의 복잡성을 탐색하는 데 도움이 될뿐만 아니라 고속도로에서 수백 미터 전방의 도로 잔해물을 발견할 수있는 능력을 제공하므로 이에 컴퓨터시스템과 프로그램이 대처할 충분한 시간을 줄 수 있다.
동시에, 대부분의 업체에서 상단 360도 라이다와 함께 측면 주변의 4 개 지점에 추가 배치되어 근접 시야를 제공하는 넓은 시야각으로 비교할 수없는 범위를 제공한다. 이 단거리 라이더는 도시 교통의 틈새를 탐색하고 언덕이 많은 지형의 잠재적 사각 지대를 커버 할 수 있도록 향상된 공간 해상도와 정확성을 제공한다.
2) 카메라
가장 신뢰성이 있는 센서며 극심한 기후 스트레스에도 안정성을 가졌다. 시야확보를 위해 광각카메라를 사용하며 라이다가 작동하지 못하는 거친 주행환경에서도 디테일을 포착하고 선명한 이미지를 제공하도록 설계되었다.
자율주행에 활용되는 카메라는 두 가지로 나뉘는데 망원 카메라와 360도 카메라를 같이 탑재하는 경우가 대부분이다. 망원 카메라를 활용해 훨씬 더 멀리 보이므로 보행자와 같은 중요한 세부 정보를 식별하고 업체에 따라 최대 500 미터 이상 떨어진 정지 신호를 볼 수 있다.
또한 라이다와 함께 쓰여 차량과 가까운 물체에 대한 또 다른 시야를 제공한다. 예를 들어, 라이다가 차량 앞에서 직접 장애물을 정확하게 감지하는 역을 맡고 카메라는 머신 러닝 알고리즘를 통해 물체를 안정적으로 식별하여 교통 상황에 더 많은 맥락을 이해하고 안전하게 추월 할 수 있는지 또는 기다려야하는지 확인할 수 있다.
3) 레이더
높은 해상도 제공하는 라이다가 물체와 카메라를 통해 주변 환경을 이해하는 데 도움이 되는 반면, 레이더는 비, 안개 및 눈과 같은 혹독한 기후 조건에서도 물체의 속도의 변화를 즉시 보고 및 측정할 수 있는 고유한 기능으로 이 라이다를 보완하는 역을 맡는다.
실제 환경에서 수십 년간의 테스트를 통해 자율 주행 차량의 레이더가 필수적이며 컴퓨터 시스템에 전체 주변 환경을 지속적으로 제공하기에 가장 유리하다는 연구결과가 있다. 특히, 레이더와 카메라 및 라이다의 적용 범위를 겹치면 성능이 더욱 향상된다.
기존의 자동차 레이더는 움직이는 물체를 추적 할 수있는 반면, 새롭게 개발되고 있는 이미징 레이더는 해상도가 높고 신호 처리 기능이 향상되어 동적 변화에 더욱 민감해지고 있다.
레이더는 수백 미터 거리까지 원거리에서 물체를 볼 수도 있다. 이는 다른 장거리 센서와 마찬가지로 더 먼 거리에서 물체를 정확하게 감지 할 수 있어 라이다가 더 편안한 경험을 할 수 있도록 반응 시간이 더 길어진다.
4과. 자율주행의 컴퓨터시스템
1) GPU 기반 솔루션
Nvidia PX 플랫폼은 자율 주행을위한 현재 최고의 GPU 기반 솔루션이다. 각 PX 2는 2 개의 Tegra SoC와 2 개의 Pascal 그래픽 프로세서로 구성된다. 각 GPU에는 자체 전용 메모리와 Deep Neural Network 가속에 대한 특수 지침이 있다. 높은 처리량을 제공하기 위해 각 Tegra는 PCI-E Gen 2 x4 버스 (총 대역폭 : 4.0GB / s)를 사용하여 Pascal GPU에 직접 연결된다.
또한, 듀얼 CPU-GPU 클러스터는 기가비트 이더넷을 통해 연결되어 초당 70 기가비트를 제공한다. 최적화 된 I / O 아키텍처 및 DNN 가속을 통해 각 PX2는 초당 24 조 딥 러닝 계산을 수행 할 수 있다. 이는 AlexNet 딥 러닝 워크로드를 실행할 때 초당 2,800 개의 이미지를 처리 할 수 있음을 의미한다.
2) DSP 기반 솔루션
Texas Instruments의 TDA는 자율 주행을위한 DSP 기반 솔루션을 제공한다. TDA2x SoC는 2 개의 부동 소수점 C66x DSP 코어와 4 개의 프로그램 가능한 Vision Accelerator (비전 처리 기능용)로 구성되어 있다. Vision Accelerator는 ARM Cortex-15 CPU와 비교하여 비전 작업에 8 배의 가속을 제공하는 동시에 전력 소비는 줄인다.
마찬가지로 CEVA XM4는 또 다른 DSP 기반 자율 주행 컴퓨팅 컴퓨팅 솔루션이다. 비디오 스트림에서 컴퓨터 비전 작업을 위해 설계되었다. CEVA-XM4 사용의 주요 이점은 에너지 효율이며 초당 30 프레임의 1080p 비디오에 30mW 미만이 필요하다.
3) FPGA 기반 솔루션
Altera의 Cyclone V SoC는 Audi 제품에 사용 된 FPGA 기반 자율 주행 솔루션 중 하나다. Altera의 FPGA는 센서 융합에 최적화되어있어 차량의 여러 센서에서 나온 데이터를 결합하여 매우 안정적인 물체 감지를 실현한다.
마찬가지로 Zynq UltraScale MPSoC는 자율 주행 작업을 위해 설계되었다. Convolution Neural Network 작업을 실행하면 14 이미지 / 초 / 와트를 달성하여 Tesla K40 GPU (4 이미지 / 초 / 와트)를 능가한다. 또한 객체 추적 작업의 경우 라이브 1080p 비디오 스트림에서 60fps에 도달한다.
4) ASIC 기반 솔루션
MobilEye EyeQ5는 자율 주행을위한 최고의 ASIC 기반 솔루션이다. EyeQ5는 이기종의 완전 프로그래밍 가능 가속기를 특징으로, 칩의 4 가지 가속기 유형 각각은 컴퓨터 비전, 신호 처리 및 기계 학습 작업을 포함한 자체 알고리즘 제품군에 최적화되어 있다.
이처럼 다양한 액셀러레이터 아키텍처를 통해 애플리케이션은 모든 작업에 가장 적합한 코어를 사용하여 계산 시간과 에너지를 모두 절약할 수 있다. 여러 EyeQ5 장치로 시스템을 확장할 수 있도록 EyeQ5는 프로세서 간 통신을 위해 2개의 PCI-E 포트를 구현한다.
5과. 자율주행의 프로그램.
1.인식
센서 데이터를 얻은 후, 차량의 환경을 이해하기 위해 데이터를 인식 단계로 전달한다. 자율 주행 인식의 세 가지 주요 작업은 지역화, 물체 감지, 물체 추적이다.
1) 지역화
지역화는 GPS 및 라이다 데이터를 사용하여 고해상도 적외선 반사 그라운드 맵을 생성할 수 있는 센서 융합 프로세스다. 이러한 지도를 기준으로 움직이는 차량을 지역화하기 위해 라이다 측정 값을 지도와 연관시키기 위해 입자 필터 방법을 적용 할 수 있다. 입자 필터 방법은 10 센티미터 정확도로 실시간 지역화를 달성하고 도시 환경에서 효과적이라는 것이 입증되었다.
2) 물체 감지
최근 몇 년 동안, 시각 기반 딥 러닝 기술의 급속한 발전을 통해 상당한 물체 감지 및 추적 정확도를 달성했다. CNN (Convolution Neural Network)은 객체 인식 작업에 널리 사용되는 Deep Neural Network의 한 유형이다. 일반적인 CNN 평가 과정은 일반적으로 다음 단계로 구성된다.
가. 가장 먼저 입력 이미지에서 다른 형상을 추출하기 위한 다양한 필터를 포함하는 Convolution 레이어다. 각 필터에는 훈련 단계 이후에 파생될 "학습 가능한" 매개변수 세트가 포함되어 있다.
나. 두번째로 목표 뉴런의 활성화 여부를 결정하는 활성화 레이어다.
다. 세번째로 Pooling 레이어는 표현의 공간 크기를 감소시켜 파라미터의 수를 줄이고 결과적으로 네트워크에서의 계산을 줄인다.
라. 마지막으로, 뉴런이 이전 레이어의 모든 활성화에 완전히 연결된 Fully Connected 레이어다.
3) 물체 추적
물체 추적은 물체가 움직일 때의 궤도를 자동으로 추정하는 것을 말한다. 추적할 물체가 물체 인식 기술을 사용하여 식별 된 후에, 물체 추적의 목표는 그 후에 물체의 궤적을 자동으로 추적하는 것이다.
이 기술은 현재 이동중인 차량이 움직이는 물체와 충돌하지 않도록 근처의 움직이는 차량과 도로를 건너는 사람들을 추적하는 데 사용할 수 있습니다. 최근 딥 러닝 기술은 기존의 컴퓨터 비전 기술과 비교하여 객체 추적의 장점을 보여주었다.
특히 보조 자연 이미지를 사용하면 스택 된 자동 인코더를 오프라인으로 학습하여 시점 및 차량 위치의 변화에 대해 보다 강력한 일반 이미지 기능을 학습 할 수 있다. 그런 다음 오프라인 학습 모델을 온라인 추적에 적용 할 수 있다.
2. 결정
인식을 마치면 결정으로 차량 환경에 대한 이해를 바탕으로 결정 단계는 안전하고 효율적인 행동 계획을 실시간으로 생성 할 수 있다. 의사 결정 단계의 작업에는 대부분 확률론적 프로세스와 마르코프 연쇄가 포함된다.
1) 예측
교통량을 탐색 할 때 인간 운전자의 주요 과제 중 하나는 자신의 운전 전략에 직접 영향을 미치는 다른 운전자의 가능한 행동에 대처하는 것이다. 이것은 도로에 여러 차선이 있거나 차량이 교통 변경 지점에 있을 때 특히 그렇다.
이러한 환경에서 차량이 안전하게 주행하도록 하기 위해, 결정 유닛은 인근 차량의 예측을 생성하고, 이러한 예측에 기초하여 행동 계획을 결정한다. 다른 차량의 행동을 예측하기 위해 다른 교통 참가자의 도달 가능한 위치 세트의 확률적 모델을 생성하고 이러한 도달 가능한 세트를 확률 분포와 연관시킬 수 있다.
2) 경로 계획
역동적인 환경에서 자율적이고 민첩한 차량의 경로를 계획하는 것은 매우 복잡한 문제다. 특히 차량이 전체 기동 기능을 사용해야하는 경우에 특히 그렇다. 무차별 대입 방식은 가능한 모든 경로를 검색하고 비용 함수를 사용하여 최상의 경로를 식별하는 것이다.
그러나 무차별 대입 방식에는 엄청난 계산 리소스가 필요하며 탐색 계획을 실시간으로 제공하지 못할 수 있다. 결정론적이고 완전한 알고리즘의 계산 복잡성을 회피하기 위해, 효과적인 경로 계획을 제공하기 위해 확률적 플래너가 사용되어왔다.
3) 장애물 회피
자율 주행에서 안전이 가장 중요한 문제이므로 차량이 장애물과 충돌하지 않도록 최소 2 단계의 장애물 회피 메커니즘을 배치해야 한다. 첫 번째 수준은 사전 예방 적이며 교통 예측을 기반으로 한다.
런타임시 교통 예측 메커니즘은 충돌 시간 또는 최소 거리 예측과 같은 측정 값을 생성하며 이 정보를 기반으로 장애물 회피 메커니즘이 트리거되어 로컬 경로 재계획을 수행한다.
사전 메커니즘이 실패하면 레이더 데이터를 사용하는 두 번째 수준의 사후 메커니즘이 대신한다. 레이더가 장애물을 감지하면 장애물을 피하기 위해 현재 컨트롤을 무시한다.
분량조절 실패.
2탄에 이어서...
잘읽었습니다. 전자공학전공인데 이쪽 산업에 뛰어드는것도 괜찮아 보인다는 생각이 드네요 - dc App
감사합니다!
빨리~~
블룸버그님 님이 쓰신 해주갤에 쓰신 테슬라글 윰짤이 안보여여
정보글 ㅊㅊ
형 글 항상 고맙게 일고 있어요 !! 하지만 아직 지식이 짧아서 반복해서 읽어도 좋네요 - dc App