[자율주행] 3. 자율주행 구현은 어떻게? Camera만 쓴 자율주행은 정말 가능할까?

헐퀴 2019.06.09 19:26:46

시리즈가 완성된 기념으로 목차 답니다. :)

 

[자율주행] 1. 자율주행이란 무엇인가? (부제 Tesla는 왜 자율주행차가 아닌가?)

[자율주행] 2. 자율주행 업계 현황 그리고 그 안에서 Tesla의 위상은?

[자율주행] 3. 자율주행 구현은 어떻게? Camera만 쓴 자율주행은 정말 가능할까?

 

=============================================================

 

드디어 자율주행 시리즈 대망의 마지막 편, 센서와 구현편입니다. 지난 번 편에서는 자율 주행 업계에서 가장 주목을 받는 세 업체의 공개 자료를 비교하고, 이를 통해 Tesla의 2020년까지 L5 주행을 구현하겠다는 발표의 현실성이 얼마나 있는지에 대해서 알아봤죠. 이번 편에서는 살짝 조금 더 깊이 파고 들어가서 실제 구현과 관련된 부분을 엿볼까 합니다. 누차 말씀드렸다시피 저 자신부터 일단 자율주행과 전혀 관련이 없는 분야에서 일하고 있기 때문에 어디까지나 일반적인 엔지니어링 상식선에서 이해하고 유추할 수 있는 부분만을 다룰 수 있습니다. 그럼에도 불구하고 자칫 지루하기도 쉬운 이런 소재를 다루는 이유는, 비록 피상적인 토론에 불과하더라도 자율주행에 대한 보다 깊은 이해와 전망을 가능토록 해주기 때문입니다. 적어도 단순히 언론 보도들을 읽는 것에 비해서는 더욱 그렇구요.

 

먼저 자율주행에 쓰이는 각종 센서들을 알아볼까요? 한가지 유의하셔야할 점은 같은 종류의 센서라 하더라도 세부적으로 들어가면 기능과 스펙이 천차만별이라는 것입니다. 하지만 제조사에서 특별히 홍보를 하지 않으면 상세 스펙을 알 수 없으므로 그런 경우 표준적인 사양을 가정하겠습니다.

 

1. Radar

 

자율주행에 관심이 전혀 없는 분이라도 radar라는 말은 수도 없이 들어보셨을 겁니다. 영화에서도 많이 나오구요. Radio wave, 즉, 전자파를 쏜 뒤에 반사돼서 돌아오는 파장들을 분석하여 주변의 상황을 파악하는 기술입니다. 오래 된 기술이니 만큼 가격과 크기 안정성 등이 최적화돼있고, 현재 Tesla, Waymo, Cruise 3사 모두 radar를 활용하고 있습니다.

 

일반적인 자율주행 차량용 radar의 주목적은 움직이는 금속성 물체를 감지해내는데 있습니다. (1) 움직이는 (2) 금속성 혹은 고밀도 물체. 이 두 가지가 차량용 radar의 핵심 특성입니다. 먼저 "(2) 금속성 혹은 고밀도 물체". 전자파의 특성 상 금속이 아닌 물질들은 반사되는 파장의 양이 상대적으로 적습니다. 특히 사람의 경우 크기도 작고, 밀도도 낮아서 더욱 심하구요. 따라서 사람이 바로 앞을 지나가도 자율주행 차량용 radar는 인지하지 못한다고 보시면 됩니다. (주1) 작은 비금속 물체들도 마찬가지구요. 이건 반대로 장점이 되기도 하는데, 눈이나 비가 내리는 상황에서도 그런 입자들은 무시되기 때문에 정확하게 다른 차량들을 찾아낼 수 있습니다.

 

* 주1 - 레이더의 파장과 range에 따라 사람도 파악할 수 있게 만들 수 있고, AEB에는 이런  radar들이 쓰입니다.

 

그렇다면 "(1) 움직이는"은 도대체 무슨 의미를 가질까요? 정확하게 얘기하자면 radar는 그게 정지해 있든 이동 중이든 간에 대상이 금속성이라면 비교적 작은 물체까지 잘 찾아냅니다. 문제는 radar의 해상도와 평면성에 있습니다. 현재 연구개발 중인 high resolution radar 같은 물건들도 있지만, 현재 일반적으로 쓰이는 radar들은 해상도가 매우 낮으며 고저 구분이 불가능합니다. 영화에서 radar 나오면 그냥 평면에 점이 하나씩 찍히잖아요? 실제 radar에서 뽑아내는 정보도 거의 그 정도라고 보시면 됩니다. "저기 어디에 뭔가 금속이 있음. 근데 크기도 불분명하고, 우리보다 높은 곳에 있는지 낮은 곳에 있는지도 모르겠음. 어쨌든 있음." 정도를 알려주는 거죠. 게다가 실제 radar signal은 노이즈도 상당히 많고 processing이 꽤 필요합니다.

 

w18Cnesol4E7P4rA9-AitShWdOmoPzF_QLMLe6RN

* High resolution radar의 예시입니다. 아직 차량에 상용화된 케이스는 못 들어봤습니다.

 

근데 radar는 상대 속도 하나는 또 기가 막히게 잘 맞춥니다. Doppler 효과를 이용해서, 즉, 내가 보낸 파장이 돌아왔을 때 변형된 주파수를 확인해서 상대가 나에게 접근 중인지 아니면 멀어지고 있는지를 파악이 가능하거든요. 그래서 자율주행 (L2 포함) 차량에 쓰이는 radar들, 특히 adaptive cruise control(ACC)에 쓰이는 장거리 radar들은 이 정보를 이용하여 정지해 있는 물체들은 무시하게 설계합니다. 그렇지 않으면 예를 들어 저 앞에 있는 신호등이나 도로 표지판, 아니면 noise를 차량으로 오해하고 매번 속도를 줄여서 더 위험하게 될테니까요. 공식적으로 Tesla Autopilot으로 인한 사망사고가 미국에서 세번 있었는데, 모두 이 특성 때문에 truck이나 중앙분리대를 무시하여 발생한 사고일 것으로 추측하고 있습니다.

 

Radar는 종류에 따라 range가 다른데, 자율주행(L2 포함)에 쓰이는 장거리 radar는 200m 까지도 파악합니다. 대신 이런 경우 감지 각도가 매우 좁다는 (약 10도 가량) 단점이 있습니다. L2 시스템 차량 운전하시는 분들은 급커브에서 ACC가 꺼지는 경험을 해보셨을텐데 이게 그 이유입니다.

 

2. Lidar

 

Radar에 대해서는 이쯤 해두고 이제 세간의 화제 lidar로 넘어가보죠. 근래 자율주행 때문에 유명해졌지만 사실 기술 자체는 꽤 오래 됐습니다. 1960년대 초에 개발된 뒤에 학술용, 군사용, 지리 정보용 등으로 다양하게 쓰여져오던 기술입니다. 심지어 이미 상용차에도 lidar가 들어간 역사가 오래 전에 있습니다. 초기의 ACC는 lidar 기술을 사용했거든요. 1997년에 내수용 Lexus LS에 바로 이 lidar가 들어간 ACC 패키지가 제공됐는데 옵션 가격이 무려 $12,700이었다고 하네요.

 

Lidar의 기본 아이디어는 radar와 동일합니다. "뭔가를 쏜 뒤에 물체에 맞고 반사돼서 돌아오는 시간 차를 이용해서 주변의 물체와 지형을 확인한다." 하지만 근본적인 차이가 있으니, 그 쏘는 것이 radar처럼 이리저리 분산되는 전자파가 아니라 목표 지점으로 흐트러짐 없이 날라가는 집중력 대장 레이저라는 것이죠. 그 덕에 radar와는 달리 감지 대상의 재질과는 무관하게 거의 완벽한 3차원 형상 정보를 별다른 추가 프로세싱 없이 수집 가능합니다.

 

ik8xF21HBPohPs2bZkbm7o4L7b-MLNOyuZKq3N03

 

하지만 이런 lidar의 정확도는 오히려 단점이 되기도 합니다. 너무 정확해서 빗방울 혹은 떨어지는 눈발까지 감지해버리거든요. 그리고 안개에도 약한데, 그래도 안개의 경우 밀도가 무척 낮기 때문에 레이저가 어느 정도는 뚫고 지나가는 양이 생겨서 좀 낫습니다. 실제 테스트를 해보면 오히려 일반 카메라보다는 더 잘 본다고 하더군요.

 

cVjMs_YuRUCNCBGJqHy0A4lM08k2Tk1P7DzGK6ow

 

이런 문제들 때문에 lidar 업체나 사용자들은 비나 눈으로 인한 노이즈를 제거하는 추가 프로세싱 로직을 개발하여 돌립니다만, 어쨌든 간에 이런 처리 후에는 해상도가 낮아지는 것을 감수해야겠죠.

 

잘 알려지지 않은 lidar의 또 다른 단점은 햇볕이 무척 강한 날에는 햇빛으로 인한 노이즈가 생긴다는 겁니다. 이 부분 또한 노이즈 제거 로직을 돌려서 해결하고 있는데, 역시 그래도 야간이나 적당히 흐린 날 만큼의 퍼포먼스는 나오지 않습니다. 그리고, 아직 인체 무해성이 완벽하게 증명되지 않았다는 점, 많은 차량이 lidar를 장착하면 상호 간섭을 완벽하게 피할 수는 없다는 점 등의 단점들이 남아있습니다.

 

Lidar 역시 깊게 파들어가면 그것만으로도 글을 따로 파야할 만큼 복잡한 얘기들이 나오지만 이쯤에서 정리하고 다음으로 넘어가죠. (손가락이 아파서;;;)

 

3. Camera

 

Radar와 함께 모든 자율주행 업체들이 채용하고 있는 센서죠. 색을 판단할 수 있는 사실상 유일한 센서이니 대체재가 없죠. 신호등 색은 볼 줄 알아야 자율주행을 할테니까요. :) Camera야 워낙 잘 알려진 센서라 굳이 자세한 설명은 필요 없을 것 같습니다. (손가락이 아프다는 얘기를 돌려서 하고 있습니다?)

 

카메라의 장단점 역시 잘 알고 계시지만, 간단히 상기시켜드리자면 색 정보를 처리하는 유일한 센서이고, 안 쓰이는 산업을 꼽는 게 다 빠를 정도로 광범위하게 쓰이는 센서라 가격과 기술 면에서 엄청난 잇점이 있습니다. 하지만, lidar에 못지 않게 (혹은 더 심하게) 날씨에 영향을 받는다는 단점과 역광이나 야간에도 정보 분해능력이 급전직하한다는 문제가 있습니다. 그리고, 화각과 정보량 (혹은 range) 사이에서의 선택을 강요받게 됩니다. 다시 말해 넓게 찍을 수 있는 카메라일수록 같은 대상도 더 작게 감지되므로 정보량이 줄게 되죠. 멀리 있는 대상일수록 문제가 심각해지구요. 참고로 이건 전통적인 차량용 radar도 같은 문제가 있습니다. 

 

4. Ultrasonic sensor

 

Tesla 만 채용하고 있는 센서입니다. 한국말로는 초음파 센서. 이게 뭐냐면, 주차용으로 후진 센서가 한때 유행했었죠? 후진할 때 뒤에 몇 m 간격이 남아있는지 소리나 숫자로 표시해주는 센서요. 지금은 후방 카메라가 나오면서 다시 사라지는 분위기지만... 그 후진용 센서가 바로 이 초음파 센서입니다. 10m 미만의 초근접 거리 안에서 다른 차량이나 사람의 존재와 거리를 감지하기 위한 센서인데, 아마도 다른 회사들은 lidar나 단거리 radar가 이미 그 역할까지 포함해서 하고 있기 때문에 추가 장착하지 않는 것으로 보입니다.

 

---

 

센서 소개는 여기까지만 할께요. 손가락 핑계를 대왔지만, 사실은 갈 길이 너무 멀어서요. :)

 

이제 1편부터 계속 예로 들어온 3사(Waymo, Cruise, Tesla)가 어떤 센서들을 쓰고 있는지를 알아보고, 그리고 거기에서부터 유추할 수 있는 접근 방법의 차이를 같이 한번 생각해볼까 합니다.

 

먼저 전통적인(?) 접근 방법을 취하고 있는 Waymo와 Cruise부터 살펴볼까요?

 

-nnI08UDloMJfdBhQip_VpCFmFvKBojpzgjQ4UaF

Waymo는 아쉽게도 정확하게 몇개의 센서들을 사용하고 있는지 공개하지 않았습니다. 제가 강의에서 캡쳐한 이 그림과 블로그의 설명으로 알 수 있는 것은 (1) lidar, radar, vision (camera) 세가지 센서를 사용하고. (2) 세가지 센서 모두 같은 영역을 복수의 센서가 커버하도록 중복 설계했으며 (3) 360도가 거의 비슷한 커버리지를 갖도록 했다는 것입니다.

 

Cruise는 어떨까요?

fwFG342zL8u6FftZlXDfsPdJbxx2t-PzRVZ3Ym7O

 

고맙게도 Cruise는 센서 갯수에 대한 상세 발표 자료가 있더군요. Lidar 5개, radar 21개, camera 16개를 쓴다고 합니다. Waymo가 실제로 각각 센서를 몇개씩 쓰는지 모르겠지만 Cruise의 센서 수는 정말 놀라운 숫자들입니다. 그리고 Waymo와 마찬가지로 (1) Lidar, radar, camera를 사용하고, (2) 세가지 센서 모두 중복 영역이 있는 것으로 보이며 (3) 앞쪽에 약간의 추가 센서들이 보이지만 역시 뒤쪽이나 옆쪽을 포함한 360 커버리지가 고루 높아 보입니다.

 

이제 Tesla를 보겠습니다.

 

b3Fd2hlObkDIz20JrIznCXbffJfoJxC42KqqM0Jk

 

Tesla 역시 친절하게 센서 갯수를 모두 적어놨습니다. Radar 1개, camera 8개, 초음파 센서 12개 입니다. 보시다시피 Waymo, Cruise와는 사뭇 다른 접근 방식입니다. 먼저 전방에 사실상 거의 절반에 가까운 센서가 집중돼있음을 알 수 있습니다. 이것은 아마도 L4+ 자율주행 기술이 완성되기 전에 현재 L2 기능들을 지원해야하기 때문에 채택한 절충안인 것으로 생각됩니다. 또 다른 차이는 중복 커버리지가 적습니다. 예를 들어 후방 50-100m 구간이나 측방 8-80m 구간은 사실상 camera 한대씩으로 커버를 합니다. 그리고 역시 마지막으로 가장 큰 차이는 실질적으로 camera only system이라는 겁니다. 초음파 센서의 range는 8m 밖에 지나지 않으므로 고속 충돌이 가능한 긴급 상황에서는 거의 무의미할테고, radar는 전방에 밖에 없습니다. Camera 입력 만으로 주행 판단을 내릴 수 있게 하겠다는 의지의 표현으로 해석할 수 밖에 없어요.

 

---

 

자, 이쯤 되면 elephant in the room을 언급하지 않을 수 없습니다.

 

"Lidar 없는 L4+ 자율 주행은 가능한가?"

 

혹은 저는 질문을 살짝 바꾸고 싶네요. 미래엔 lidar가 아니라 high-res radar 같은 것이 그 역할을 대체할 수도 있으니까요. 더 적절한 질문은 이것 같습니다.

 

"2D vision camera만을 써서 L4+ 자율 주행을 구현할 수 있는가?"

 

타임 머신이 없는 바에야 정답은 아무도 모르는 문제입니다. 제가 생각하는 답이 있긴 합니다만 좀 더 나중에 얘기하기로 하고, camera 만으로 자율 주행이 가능하므로 lidar는 필요없다고 주장하는 진영의 대표 논리에 대해서 한번 의문을 던져 보고 싶습니다.

 

"사람들이 눈 두개 만으로 운전을 잘 하는데, 컴퓨터라고 카메라로 못 할 건 뭐냐?"

 

진짜 그럴 듯한 말이죠? 전문가들도 가끔 이 말에 꿀먹은 벙어리가 되는 걸 봅니다. 근데 말이죠. 이 논리를 다른 곳에 적용하면 어떨까요?

 

- 새들은 두 날개로 퍼덕이면서 날라다니죠? 그럼 비행기들도 제트 엔진이나 프로펠러 대신 퍼덕이는 날개로 날라다니게 설계한다면?

 

- 물고기들은 지느러미와 몸의 유연한 움직임으로 빠르게 헤엄쳐 다니죠? 그럼 잠수함들도 그렇게 만드는 것이 가장 효율적일까요?

 

- 사람들은 두발로 잘 뛰어다니고, 치타는 네발로 무려 시속 100km의 속도를 냅니다. 그런데 왜 굳이 자동차에는 바퀴들을 달았을까요?

 

- 고흐는 두눈과 손 만으로 인류 역사에 영원히 남을 명작들을 만들어냈습니다. 그럼 똑같이 두눈과 손을 갖고 있는 마모 회원님들도?

 

많은 발명들이 자연에 존재하는 것들로부터 아이디어와 영감을 얻는 것은 엄연한 사실입니다. 하지만 생물들이 진화를 통해 획득한 능력을 그대로 복제해낼 수 있다는 보장은 없을 뿐더러, 그것이 가장 효율적이거나 쉬운 해결책이라는 보증은 절대 되지 못 합니다. 문명 세계 이기들의 최종 진화 형태는 결국 자연 진화와는 전혀 동떨어진 방향으로 완성되는 것이 오히려 더 흔하니까요.

 

사람이 두눈으로 운전을 할 수 있으니, 자율주행도 그렇게 할 수 있다 심지어 camera 외에는 필요 없다는 말은 공학적으로는 아무런 의미가 없는, 혹세무민용 말장난에 지나지 않습니다.

 

---

 

그럼 다시 Tesla의 실제 예제로 돌아와서, 과연 저 센서들로 L4+ 자율주행 구현이 가능할까요? 저는 최소한 측면과 후방 카메라 센서 업그레이드, 그리고 아마도 높은 확률로 카메라 대폭 추가 없이는 불가능할 것이라고 확신합니다. 간단한 예를 들어보겠습니다.

 

Tesla의 측면 카메라의 range는 저 위의 센서 참고 자료에서 보시다시피 80m 입니다. 아시다시피 미국에는 신호등 없이 90도 좌회전으로 진입해야 하는 highway가 드물지 않게 있죠. Tesla가 이런 highway에 자율 주행으로 진입해야 한다고 가정하겠습니다. 측방의 최대 감지 거리는 80m 이기 때문에 80m 밖에서 오고 있는 차가 있더라도 인지하지 못하고 좌회전을 시도할 것입니다. 그런데 아시다시피 이런 highway에는 규정 속도 이상으로 달리는 차들이 아주 흔하잖아요. 그래도 무리하지 않고, 마침 80m 딱 바로 바깥에 65 마일로 진행 중인 차가 있었다고 가정해 봅니다. 이 차가 1초에 이동하는 거리는 무려 29m입니다. 따라서 브레이크를 제때 밟지 못하면 3초도 안 돼서 테슬라와 충돌하게 된다는 얘기죠. 아무리 테슬라의 가속도가 좋다고 하더라도 (사실 베이스 모델들은 일반 승용차 대비 엄청나게 좋지도 않습니다만) 정지 상태에서 출발해서 3초 만에 좌회전을 마치고 가속해서 충돌을 피하기란 정말 아슬아슬할 겁니다. 특히 왕복 4차선에서는요.

 

게다가 이건 그나마 이상적인 경우를 가정한 것입니다. 마침 그 방향으로 해가 지고 있다거나, 밤인데 실수로 (혹은 어떤 미친 놈이) 헤드라이트를 켜지 않고 오고 있다거나, 비가 와서 카메라의 분별 능력이 떨어지는 상황이라면 80m는 커녕 40m 거리에서도 정확한 판단을 하기 힘들 수 있습니다.

 

Highway 진입 뿐만 아니라, 고속도로의 정체 차선에서 고속 주행 차선(carpool lane 등)으로 진입해야 하는 경우 등 측방이나 후방의 80-100m range가 턱없이 부족한 케이스는 너무나도 많습니다. 결국 이런 문제들을 해결하려면 현재 전방에만 설치돼있는 250m range의 망원 camera나 160m range의 long range radar들을 360도로 촘촘히 다는 것이 선제될 수 밖에 없다고 봅니다. Tesla는 FSD 패키지 구매자들에게 필요에 따라 하드웨어 업글을 무료로 해줄 것을 약속한 상태이긴 한데요. 문제는 이런 장거리 센서들을 추가로 달려면 물리적으로 공간이 안 나오거나 (망원 카메라는 화각이 워낙 좁기 때문에 어디 대여섯개 달아서는 360도 커버가 불가능하죠.) Waymo, Cruise가 쓰는 custom radar처럼 신규 H/W 개발 (= 자금/시간 대거 투자)이 필요하다는 거죠.

 

참고로 Waymo와 Cruise는 측면과 후면에도 lidar + radar 커버리지가 있기 때문에 200m 가까이를 커버할 것으로 보입니다. 날씨의 영향도 덜 받을 것이구요. 날씨 얘기가 반복 돼서 말인데, Elon Musk가 lidar는 날씨 영향을 너무 많이 받는다며 쓸모 없는 센서라는 식으로 폄하할 때마다 저는 이 사람이 정말 무식해서 그런 건지, 아니면 세상 전문가들이 이제 Tesla는 아예 포기해버린 거라 생각하는 건지 모르겠습니다. 왜냐구요? 위에 나열된 sensor 장착 상황을 보면 사실 Tesla 차량들이 가장 날씨에 취약하거든요. Radar는 날씨의 영향을 거의 받지 않습니다. Waymo와 Cruise는 360도를 다 radar로 둘러버렸지만, Tesla는 앞에 하나만 달았죠. Waymo와 Cruise는 거기에 lidar까지 360도로 박아놨습니다. 게다가 lidar가 아무리 날씨에 약하다지만 그래도 camera보다는 덜 합니다. 눈이나 비로 인한 noise filtering은 lidar 쪽이 구현하기 더 쉽고, fog는 되려 camera보다 더 많이 뚫고 보거든요.

 

---

 

마지막으로, 지적 호기심 차원에서 Tesla가 망원 camera를 360도 둘렀다고 가정하고, 순수하게 vision을 이용한 L4+ 자율주행은 가능할지 한번 고민해볼께요. 자율주행 시스템에 들어가는 수많은 기능들 중 실시간 주행과 직접적으로 연관된 네가지 기능에 집중해보겠습니다.

 

1. 주변 상황의 3차원 형상 분석 (depth perception)

- 30m 전방에 차 모양의 물체가 있으며, 5m 우측방에 사람 형상을 한 뭔가가 있고, 바로 위에는 무슨 철판떼기가 있다는 식으로 주변의 물체들의 형상과 위치를 파악하는 단계입니다. 즉, 이런 data를 뽑아내는 거죠.

 

bYP53K9GrQiMTj5e1m9tX8R5MjvfQriUbyP9c2zy

 

아직까지는 개별 대상이 무엇인지는 파악하지 못 합니다. 심지어 한개 한개의 시작과 끝이 어디인지도 모르구요.

 

2. 형상 인식 및 분류 (visual perception)

- 위에서 인식한 형상에 camera data를 조합해서 실제 그 물체가 사람인지 차인지 표지판인지를 파악하고, 표지판의 내용까지 인식하는 기능입니다. 사실 보통은 1과 2를 합쳐서 perception이라고 합쳐서 칭하는데, 이해를 돕기 위해 분리했습니다.

 

3. 행동 예측 (prediction)

- 1과 2를 통해 분류해낸 대상들의 향후 행동을 예측합니다. 차량이라면 정지할지 가속할지, 사람이라면 길을 건너려 할지 보도에 계속 머무를지 등을 예상하는 거죠.

 

4. 다음 행동 결정 (planning)

- 2와 3의 결과, 그리고 나의 과거 판단 내용과 움직임, 향후 주행 경로 등을 고려하여 나의 다음 움직임을 결정합니다.

 

Lidar를 쓰면 이중에서 1을 거의 날로 먹습니다. Radar를 쓰면 3에서 상당한 도움을 받습니다. (센서 얘기할 때 radar는 인식 대상의 이동속도를 꽤 정확하게 파악한다고 했던 얘기 기억 나시나요?) 그런데 lidar도 쓰지 않고, 심지어 radar조차 전방에만 쓰면서 camera vision 만으로 자율주행을 하겠다는 얘기는 말 그대로 차, 포 떼고 장기를 두겠다는 겁니다. 그런데 문제는 첫편부터 계속 강조해왔듯이 L4+ 자율주행은 90%에서 99%, 99%에서 99.9%, ... 99.999999%를 추구하는, 지리하고도 힘든, 완벽으로의 험난한 마라톤입니다. 그걸 10년 가까이 해온 선두 업체도 아직 한참 멀었는데, 차, 포 떼고 하겠다구요? 사람의 생명이 달린 일인데두요?

 

여기에서 지난 편에서 언급했던 log를 다시 좀 더 깊이 다룰만한 의미가 있습니다. 전세계에 수백만대가 팔린 Tesla가 실시간으로 모아주는 log를 이용하면 vision only system의 단점을 어느 정도 상쇄시킬 수 있는 것은 사실입니다. 현실적으로 그 엄청난 양의 data를 다 서버에 전송하지는 못 합니다만, federated learning이라고 불리우는 분산 머신 러닝 기법을 쓴다거나 Autonomy day 때 발표한 바와 같이 fleet 전체에 특정 data를 전송할 것을 요청하는 방법으로 그 한계를 부분적으로 영리하게 피해갈 수 있는 방법들이 있습니다.

 

그러나 가장 근본적인 문제는 machine learning은 엄청나게 어려운 문제에서 최대 9x%를 해내기 위한 수단이지 99.99%를 이룩하는 수단은 될 수 없다는 겁니다. 자율 주행 안에서도 완성도가 100%에 가까워야 하는 부분이 있고, 어느 정도는 떨어져도 큰 지장이 없는 부분이 있습니다. 예를 들어 3. prediction은 사람이 하든 기계가 하든 90% 정확도를 넘기기가 대단히 어려울 것입니다. 그래도 별 문제가 안 됩니다. 예측이 틀리는 나머지 10%에 대해서도 대비책을 마련해놨다가 능동적으로 대처하면 되니까요.

 

하지만 1. depth perception은 다릅니다. 여기서 큰 오류가 발생하면 그 뒤로는 돌이킬 방법이 없는 상황에 닥치기도 합니다. 예를 들어 4거리에서 신호 위반을 하고 질주를 하는 교차 차량을 발견하지 못 하고 직진을 시작했다면? 뒤늦게 발견해봤자 대처 방법이 전혀 없겠죠. 그런데 depth perception은 대단히 어려운 문제에 속합니다. 예를 들어 요즘 스마트폰에 들어가는 portrait mode도 depth perception을 이용한 기능이죠. 근데 3D sensor에 카메라를 두개씩 쓰는 스마트폰도 있지만 여전히 드물지 않게 여기저기 삑사리가 나잖아요? 이런 삑사리들 중 큰 것들 하나 하나가 자율주행 차량이 인식하지 못한 다른 차량들이라고 생각해보세요. 얼마나 섬찟한 일입니까? 이 회사들이 과연 data가 부족해서 혹은 machine learning 기술이 딸려서 아직까지 이게 100% 완벽하지 못한 걸까요? 참고로 Google Photos 앱으로 전세계의 사진을 아마도 이미 수조 장 이상 갖고 있을테고, machine learning으로는 의심할 여지 없이 최강자 중 하나인 Google의 Pixel 폰도 여전히 완벽과는 거리가 멉니다.

 

심지어 자율주행 차량의 depth perception은 스마트폰 카메라의 portrait mode보다 훨씬 더 어렵기까지 하죠. 구분해야 할 물체도 한두개가 아니고, 광량도 들쭉날쭉에, 저조도에 고속으로 움직이는 피사체도 부지기수, 심지어 광량이 좋은 날은 버스 정류장 유리벽에 반사된 이미지가 혼란을 주기까지 합니다.

 

이쯤에서 제가 생각하는 "2D vision camera만을 써서 L4+ 자율 주행을 구현할 수 있는가?" 질문에 대한 답을 하고자 합니다.

 

"왜 그걸 꼭 할려고 하는데? 그냥 하지마..."

 

"그래, 연구하다보면 뭐가 나올 수도 있으니깐 연구하는 거 자체야 좋지. 근데 그냥 니꺼나 조용히 해. 쓸데없이 남 디스하지 말고 ㅠㅠ"

 

지난 번 편 서두에 disclaimer로 내건 것 중에 이런 게 있었죠. "Tesla가 자율주행 기술이 딸리는 건 알겠지만, 그래도 상용차 중에 Tesla 만큼 한 곳이 있냐?" 라는 질문은 하지 말아달라고... 지금 달착륙을 위한 기술을 논하는데 상용 여객기 중에 제일 높이 가는 게 무슨 소용이냐고... Vision-only 자율주행도 마찬가지입니다. 이미 자율주행이 보편화돼있고, 안정성 검증 방법이 다 나와있는 상태에서 원가 절감을 위해 vision만 쓴 자율주행을 개발하겠다고 하면 몰라도, 아직은 아닙니다. 지금은 돈을 얼마를 들여서 간에 일단 달착륙이 가능한 방법을 뚫을 단계이지 거길 싸게 가는 방법을 연구할 단계가 아닙니다. 자율주행처럼 불특정 다수의 생명이 달린 기술에는 더욱더 그렇습니다.

 

---

 

3편이 길게 될 거라고 예상은 했지만, 정말 이건 생각보다도 훨씬 더 길게 됐습니다. 최대한 많은 컨텐츠를 넣기 위해 노력을 했지만, 결국 써놓고도 이건 너무 디테일한 부분이다 혹은 전체 맥락 상 방해만 되겠다 싶어 삭제한 양이 30% 가까이 되는 것 같습니다. 일부는 계획하고 있는 번외편, L2 운전 보조 시스템 편에서 재활용할 예정이지만 대다수는 영원히 빛을 보지 못할 것 같아 자꾸 아쉬움이 남네요. 저도 자발적으로 이렇게 긴 글을 써보는 건 처음인데, 글쓰기의 어려움과 아픔을 진하게 체감하고 있습니다. ㅎㅎ

 

그럼 좀 긴 휴식 후 번외편에서 뵙겠습니다. 감사합니다.

 

---

 

(사족) - Lidar 관련한 부분에서 왜 가격이나 내구성 문제를 지적하지 않았는지 의아해 하실 분들이 계실 것 같아서... 일단 이 부분을 굳이 넣지 않은 이유는 간단합니다. 달착륙에 다시 비유할께요. 이 시리즈의 목적은 달착륙까지 할 수 있는 우주왕복선을 처음 만들 수 있느냐 없느냐를 논하는 것이지 얼마나 경제적으로 갈 수 있느냐, 앞으로 달 여행을 대중 상품화하려면 로켓 재활용을 해야 하지 않겠냐를 논하기 위함이 아닙니다. 그런 건 일단 몇번 안정적으로 가고 얘기해야죠.

 

그리고, lidar의 가격이 비싼 가장 큰 이유는 아직 수요가 없어서 대량 생산을 할 이유가 없었기 때문입니다. Waymo만 하더라도 아직 대량 생산에는 들어가지 않았음에도 불구하고 6년만에 자체 개발 lidar의 생산가를 $75k에서 $7.5k로 90%나 낮췄습니다. Lidar의 필요 사양이 최적화되고, 대량 생산이 시작되면 개당 몇백불 수준도 충분히 가능한 시나리오라고 생각합니다.

 

사실 이것도 문맥 흐름 상 뺀 내용인데 궁금해하실 분들이 너무 많을 것 같아 사족으로 넣습니다. ㅋㅋ