강좌 & 팁
안녕하세요. 여러분 ! 조형깁니다.
오늘은 로봇의 퍼셉션에 사용되는 센서들에 대해서 간랸히 소개하는 시간을 가지고 싶네요.
휴머노이드 로봇이든 자율 주행 차량이든 인식을 할려면 센서가 필요하겠지요.
그럼 그 놈들의 눈과 귀가 되는 놈들을 알아보도록 하겠습니다.
로봇에는 수많은 센서들이 사용됩니다. 하지만 여기서는 퍼셉션과 크게 연관되는 센서들만을
다루려고 합니다. 퍼셉션과 크게 연관되는 센서에는 다음과 같은 카테고리가 있습니다.
1) 비젼 센서 - Video Camera
2) 레이저 센서 - Lidar or laser-range-finder
3) 3D 레이저 센서 - Velodyne 센서
4) 레이다 센서 - Radar 센서
5) 로컬라이징 센서 - GPS with Gyro and IMU
1) 비젼 센서
비디오 카메라 센서는 정말로 많이 사용되는 센서입니다. 하지만 아이러니컬 하게도 비젼 센서가
실제로 사용되는 (프랙티컬하게 리얼월드에서) 예는 상대적으로 제한적입니다. 예를 들어,
칩들의 abnomaly 를 디텍션하는 머신 비젼 어플리케이션이나 얼굴 인식, 홍채 인식 등 biometric
어플리케이션 , 버추얼 이얼리티 같은 분야에서 사용되고 있지요. 하지만 좀더 거친 바깥 환경에서
잘 동작하는 비젼 어플리케이션을 만들기란 정말 어려운 일입니다. 뭐 Mobile Eye Vision이라는
이스라엘 회사는 자동차를 위한 비젼 어플리케이션을 만들어 대박 성공했지만요. 그들은 비젼
처리를 위해서 ARM 코어 기반의 전용 칩을 디자인하게도 하였습니다.
비젼 센서는 아주 인기가 많습니다. 바로 비쥬얼 입력에 강하게 의존되어 있는 사람에 가장
자연스럽게 호소하는 센서가 바로 카메라 센서이기 때문이지요. 그래서 많은 사람들이 비젼을
연구합니다. 예전에는 signal processing을 하는 사람들이 digital image processing 이라는 분야를
개척하였지요. 요즘에는 그것을 기반하고 다양한 어플리케이션을 (때로는 좀더 근본적인, 예를
들면 물체 인식같은거 (object recognition) 등) 연구하는 학문인 computer vision 이라는 분야가
새로 나타났지요. 그리고 이 새로운 분야에 통계와 머신 러닝을 좋아하는 사람들이 대거 달라붙어
아주 흥미로운 양상을 보여주고 있는게 현재의 추세아닌 추세입니다. 이것이 또 그럴것이 비젼은
수많은 픽셀로 이루어진 이미지를 다루는 것이다 보니 머신 러닝이 들어오게 되는 것이지요.
Measurement가 굉장히 high dimensional 한 데이타이니까요. 앗! 그리고 비디오 카메라는 아주
쌉니다. 그것이 가장 매력저인 동기이기도 합니다.
로봇틱스에서 비젼을 사용하는 분야는 자율 주행 차량 (=모바일 로봇) 의 장애물 디텍션 , 스테레오
비젼을 통한 depth 계산, 보행자나 자동차 디텍션 트랙킹등에 사용됩니다. 제가 몇번 언급하였던
로봇틱스의 중요한 한 분야인 SLAM이라고 하는 분야에서도 주로는 레이져 센서를 사용하지만
비젼을 사용한 SLAM 알고리즘도 요즘은 한창 인기를 얻고 있습니다. 주로 영국의 대학교에서
많이들 하고 있습니다. ( 이전에 제가 제아한 주제 중에 하나가 되겠습니다. )
저의 석사 과정 연구 주제도 여기에 해당되겠네요. 저는 카메라 하나 가지고 자전거를 디텍션하고
트랙킹하는 것을 했으니까요. 이번에 ICRA 2011 (상하이)에서 발표하게 되었습니다. 거기에서
발표할 저의 비디오를 이곳에 링크를 겁니다. 한번 감상해 주십시요.
http://www.youtube.com/watch?v=oVfKS_qH068
수많은 회사들이 비디오 카메라를 생산하여 판매합니다. 학부때 로봇축구를 할때는
소니사의 카메라를 사용했었는데, 이유는 잘 모르겠으나 로봇틱스 분야에서 가장 많이
사용하는 카메라의 회사는 포인트 그레이( point grey) 라는 회사입니다. 그 회사가 만드는
비디오 카메라의 그림첨부합니다.
2) 레이져 센서
레이젼 센서는 레이젼 빔을 쏘아서 그것이 외부 물체에 맞고 돌아오는 신호를 검출하여 Time of flight 를 계산하여
물체에 맞은 그 포인트까지의 거리를 (Depth or range 라고 합니다.) 아주 정확하계 계산하여 주는 센서입니다.
보통 SICK 이라는 회사의 레이젼 센서를 많이 사용합니다. 어디 아프냐구요 ? ^^ 아닙니다. 아주 좋은 회사입니다.
레이젼 센서는 아주 원천적인 optics 기술이 있어야 하므로 카메라차럼 많은 회사들이 생산하지 못합니다. 그래도
그 외 몇몇 회사에서 레이젼 센서를 생산하고 있구여. 제가 표를 하나 첨부하겠습니다. 이것을 보시면 어떤 회사가
어떤 레이젼 센서와 레이타 센서를 생산하는지 아실수 있고 바로 그 회사에 들어야 좀 더 정확한 정보를 검색해
보실수 가 있으십니다.
Lidar 가 바로 레이젼 센서입니다. Radar와 비슷한 용어를 만들려고 만든 용어 같습니다. 그리고 표준으로 사용됩니다.
long 은 보통 70m~80m 이상의 거리를 의미하고 short은 그 이하의 거리까지 동작함을 의미합니다. 하지만 로봇틱스에서
이 시장은 거의 SICK이라는 회사가 장악하였습니다. 그리고 뭐 휴쿠요 센서도 종종 보았습니다. (미쯔비시건가 ?)
SICK의 여러가지 레이젼 센서들 그림을 첨부합니다.
그림의 위 라인의 가운데 부분의 보면, 간단한 카툰이 나오는데요, 그것이 SICK이 동작하는 모습입니다. 레이져 빔을 수평한
평면에 여러 빔을 쏘는 겁니다. angular resolution 이 0.5도 아니면 1도입니다 즉, 180개 또는 360개의 빔을 쏜다는 것이지요.
그럼 많은 정보를 추론해 낼 수 있겠지요. 그렇습니다.
자, 예를 들어, E-Mart 에서 물류 창고에서 사용할 로봇 카트를 만들어 달라고 합니다. 이때 우리가 사용해야 하는
것들 중 하나가 바로 레이져 센서입니다. SICK 레이져를 사용해야 겠지요. 물류 창고는 비교적 제한적인 공간이므로
한 평면을 커버하는 SICK이 적합한 놈이라고 생각합니다. 아 그리고 저번에 말씀드린 ROS를 사용하는 것 잊지마시구요.
로봇틱스에 리눅스 같은 놈이 될것 같아서요. ㅋ
자 그럼 오늘은 이만 줄이구요, 다음에 3D 벨로다인 센서와 레이다 센서를 알아보도록 하겠습니다.
감사~