백준기 / 첨단영상대학원 교수

후두엽에 디지털 상이 맺힌다

 

  로봇은 용도와 기능에 따라 다양한 종류가 있지만, 어떤 로봇이라도 자기 스스로 이동할 수 있는 구동 기능과 인식과 판단을 수행하기 위한 시각 기능을 가지고 있다. 옛말에 사람의 몸이 열 냥이면 눈이 아홉 냥이라고 했듯이 로봇에서도 보고 판단하는 기능은 아무리 강조해도 지나치지 않다. 여기서 우리가 흔히 ‘본다’고 하는 행위는 눈을 통해서 받아들여진 영상 정보를 뇌가 인식하고 판단하는 것까지를 포함한다. 이와 같은 기능을 기계가 대신하기 위해서는 눈에 해당되는 카메라와 뇌에 해당되는 컴퓨터가 함께 필요하다. 이러한 이유로 기계가 보는 기능을 컴퓨터시각이라 하고, 이것이 로봇에 적용된 것이 로봇시각이다. 로봇시각을 이해하기 위한 가장 쉬운 방법은 나 자신이 로봇이 되었다고 상상해보는 것이다. 밤새 충전을 위해서 꺼져있던 전원이 들어오고 로봇의 눈이 서서히 열리게 되면, 어디에 초점을 맞추어야 하는지, 앞으로 전진 할 때 나를 가로막는 것은 없는지, 내가 이동해야 할 목표 지점은 어느 방향인지, 경로는 어떻게 선택해야 하는지 등등, 순간적으로 수많은 인식과 판단이 이루어져야 한다. 이것들을 컴퓨터시각 관점에서 전문용어로 정리하면 영상개선, 물체인식, 거리계산, 3차원 재구성, 경로계산 등이 있다. 이것들의 원리를 하나씩 살펴보자.

  일반적으로 카메라를 사용해서 디지털 영상을 얻는 과정은 광학렌즈, 조리개, 셔터, 신호처리 등의 복잡한 과정을 필요로 한다. 이 단계를 모두 이해할 필요는 없지만, 최소한 복잡한 과정을 거치는 동안 어느 한 단계라도 완벽하지 않으면 정상적인 영상 정보를 얻기 어려울 것이라는 점은 미루어 짐작이 가능하다. 특히 주위 조명에 따라 밝기를 자동으로 제어하고, 효과적으로 노이즈의 발생을 억제하고, 원하는 피사체를 찾아서 초점을 맞추고, 카메라의 흔들림에 의한 번짐을 없애서 영상의 화질을 향상시키는 일련의 기술을 영상개선이라 한다. 사람으로 치자면 눈이 나쁜 운동선수에게 우선 안경으로 시력을 교정해서 잘 볼 수 있게 만든 후, 시합에 내보내는 이치와 같다.

  사람은 눈에 보이는 물체가 무엇인지 쉽게 인식할 수 있지만, 카메라를 통해서 얻은 영상에서 컴퓨터가 특정한 물체를 인식한다는 것은 그리 간단한 작업이 아니다. 로봇의 눈앞에 있는 물체가 사람인지 자동차인지 판단해야 하는 작업을 상상해보자. 우선 영상의 사각형 틀 안에 판단해야 하는 물체가 있는 영역을 검출해야 한다. 만약 배경은 그대로 있고 물체만 움직이고 있다면, 움직임 혹은 변화가 있는 영역을 물체가 있는 영역이라고 판단할 수 있겠지만, 로봇 자신도 움직이고 있다면 영상 전체에 존재하는 상대적인 움직임과 변화는 매우 복잡해지고, 이를 해결하기 위한 고도의 인공지능 기술이 사용된다.

  미로 속의 쥐처럼

  사람은 두 개의 눈을 가지고 있는데, 양 쪽 눈에 보이는 두 개의 영상 사이의 미세한 차이를 계산해서 보고 있는 물체의 거리를 측정할 수 있다. 이와 같은 기능을 두 대의 카메라를 사용해서 흉내 낸 것을 스테레오 시각 기술이라 한다. 극장에서 상영하는 3D 영화도 스테레오 시각 기술을 이용한 것으로서, 스크린에 미세한 차이가 존재하는 두 개의 영상을 동시에 투사하고, 관객은 편광 안경을 통해서 두 영상을 분리해서 입체감을 느끼게 된다. 거리의 측정을 위해서는 스테레오 기술 말고도 적외선이나 레이저가 물체에 반사되어 되돌아오는 시간을 측정하는 기술, 특수한 패턴의 조명을 투사한 후 패턴의 변형을 측정하는 기술, 단일 영상에서 초점의 차이나 움직임의 차이 등을 고려해서 거리를 측정하는 등 다양한 기술들이 사용된다.

  로봇의 눈으로 보이는 영상에는 단 하나의 물체만 있는 것이 아니다. 바로 앞에 의자가 보이고, 그 뒤에 책상이 있고, 그 옆에 기둥이 있고, 그 뒤로 책장이 보인다. 이러한 다양한 물체들은 로봇이 바라보는 방향에 따라 그 순서가 바뀔 수도 있고, 가려질 수도 있다. 하지만 로봇은 자신이 존재하는 공간의 3차원 정보를 완벽하게 파악하고 있어야 사고 없이 이동이 가능하기 때문에, 앞서 사용했던 영상개선, 물체인식, 거리계산 기술들을 종합해서 3차원 공간을 재구성 하게 된다. 이 경우에도 로봇 자신이 움직이면서 입력된 영상은 카메라의 방향 및 초점 거리가 동시에 변하기 때문에 3차원 재구성이 더욱 어려워진다.

  실험용 쥐가 미로의 입구에서 출발해서 먹이가 있는 출구를 찾아가도록 하면 처음에는 많은 시행착오를 겪지만, 같은 일을 수차례 반복하면 쥐는 최적의 경로를 기억해서 실수 없이 단번에 출구를 찾게 된다. 로봇의 경우도 마찬가지로, 동일한 공간에서 이동을 되풀이하다 보면 이동 중에 천정이나 벽 등에서 기억할 만한 특징들을 수집해서 최적의 경로를 기억할 수 있게 된다. 완벽한 경로 계산은 여전히 풀기 어려운 문제이지만, 로봇의 용도와 사용 환경에 따라서 여러 가지 조건을 추가해 경로계산 문제를 단순화시킬 수는 있다. 대표적인 사례로, 현재 시판되고 있는 로봇 청소기들 중 일부는 청소 중에 실내의 특징들을 수집해서, 다음 청소를 할 때 최적의 경로를 계산해서 이동하는 옵션을 제공하기도 한다.

  지금까지 로봇에 공통적으로 필요한 시각 기능을 정리해보았다. 한편 특수한 용도로 사용되는 로봇의 경우 적외선 카메라를 사용해서 빛이 없는 곳에서도 동작할 수 있게 하거나, 카메라 이외의 초음파 센서 등을 사용해서 단순화된 거리 측정을 하기도 하고, 사람의 특정한 이상 행동을 자동으로 인식하고, 사람의 얼굴 표정을 읽어서 감정 상태를 예측하는 등 매우 다양한 시각 및 관련 기술들이 개발되고 있다. 이러한 시각 기능들이 미래사회에서 스마트 네트워크로 연결되어 어떤 변화와 발전을 보이게 될지 궁금하다.  

 

↳ Re : 카메라의 눈

  로봇의 시각기술은 디지털카메라의 발달과 연관이 깊다. 필름카메라에서 디지털카메라로 변화가 이뤄지면서 필름이라는 물리적 결과물이 사라지게 되었고 현상, 인화와 같은 화학적 작용도 생략되었다. 디지털카메라의 등장으로 우리는 더 이상 동네사진관을 갈 필요가 없으며, 촬영 후 디지털 현상의 과정을 거쳐 사진을 바로 볼 수 있게 된 것이다. 필름카메라와 디지털카메라 모두 눈의 원리에서 출발했다는 공통점이 있다. 하지만 결과물에 있어 큰 차이가 있다. 필름카메라는 은의 감광으로 필름에 화학적 결과물을 남겼지만, 디지털카메라는 0과 1이라는 숫자의 조합만을 남긴다. 이미지를 디지털 코드로 표현할 수 있게 되면서 로봇의 ‘눈’이 완성되었고 이로써 로봇의 ‘뇌’에 정보 전송과 해석이 가능한 정보로 변환될 수 있게 되었다.

  하지만 로봇의 시각기술을 카메라와 사진으로만 말할 수는 없다. 기본적으로 사진은 3차원의 현실을 2차원으로 표현한다. 하지만 로봇은 작동하기 위해 x, y, z축의 3차원 현실을 파악해야 한다. 따라서 앞으로 로봇의 시각기술은 디지털카메라보다는 3D 기술의 발달에서 더 큰 영향을 받을 것이다. 3D기술의 발달은 로봇 뿐 아니라 많은 시각 관련 기술과 산업에 영향을 줄 것이다. 착시를 바탕으로 한 3D 영화에 이어 실질적인 z축을 만들어내는 3D 프린터가 상용화되어가는 현 시점에서 우리는 매체이론에 새로운 한 장을 추가할 준비를 해야 할지도 모른다.

 
 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

저작권자 © 대학원신문 무단전재 및 재배포 금지