음식점에서 흔히 볼 수 있는 키오스크, 드론으로 택배를 배송하는 시스템, 시범 운행 중인 자율 주행 버스까지! 이제 사람이 직접 수동으로 조작하지 않아도 기계와 컴퓨터가 자동으로 일을 처리해 주는 자율화 기술은 일상 곳곳에서 쉽게 접할 수 있게 되었습니다. 기계를 통한 작업의 자동화와 자율 주행 등이 더 이상 꿈이 아닌 현실이 되는 ‘자율화 시대’에 다가가고 있는 셈이지요. 로봇 및 컴퓨터 공학 분야에서는 이러한 자율화 시대가 가까워짐에 따라 더욱 높은 수준의 3D 이미지 처리 기술을 요구하고 있는데요. 빠르고 정확하게 3D 이미지 상의 정보를 추출할 수 있다면, 예기치 못한 변수들이 많은 현실의 3차원 공간에서 기계가 정확한 판단을 내리는 데 큰 도움이 되기 때문이죠.
이미지 정보를 제공했을 때, 이미지의 특징과 주요 정보를 효과적으로 추출해 기계로 하여금 유의미한 판단을 내리게 돕는 컴퓨팅 분야를 컴퓨터 비전(Computer Vision)이라고 합니다. 최근 컴퓨터 비전 분야에서는 ‘세포 자동자 (Cellular Automata)’의 도입이 3D 이미지 처리에 큰 도움을 줄 것이라고 전망하고 있습니다. 이번 기사에서는 세포 자동자란 무엇이고, 세포 자동자를 활용한 새로운 기술은 어떤 것인지 알아보겠습니다!
이미지 정보를 제공했을 때, 이미지의 특징과 주요 정보를 효과적으로 추출해 기계로 하여금 유의미한 판단을 내리게 돕는 컴퓨팅 분야를 컴퓨터 비전(Computer Vision)이라고 합니다. 최근 컴퓨터 비전 분야에서는 ‘세포 자동자 (Cellular Automata)’의 도입이 3D 이미지 처리에 큰 도움을 줄 것이라고 전망하고 있습니다. 이번 기사에서는 세포 자동자란 무엇이고, 세포 자동자를 활용한 새로운 기술은 어떤 것인지 알아보겠습니다!
그림 1. 제공된 이미지(왼쪽)와 저장된 픽셀 정보 값(오른쪽)
세포(Cell)는 일반적으로 생명체를 구성하는 구조적, 기능적 최소 단위로 알려져 있습니다. 정보 공학에서는 세포를 기억 장치1 를 구성하는 특정 정보의 기본 단위로 정의합니다. 예를 들어, 0과 1로 구성된 이진 정보의 경우에는 세포가 기본 단위인 비트(bit)를 의미합니다. 마찬가지로 이미지 처리에서의 세포는 이미지 정보를 구성하는 기본 단위인 픽셀(Pixel)에 해당하지요.
세포는 입력된 정보에 따라 그 상태가 결정됩니다. 예를 들어 이미지 정보가 입력되어 픽셀에 특정한 값들이 저장되었다면, 그에 따라 각각의 픽셀이 나타내는 밝기와 색상이 세포의 상태가 됩니다. 따라서 세포의 상태를 결정함으로써 특정한 이미지를 얻을 수도 있는 것이지요. 세포를 이용한 이미지 처리 과정에서 가장 기본이 되는 것은 이미지 정보에 의해 결정된 세포의 상태에 어떤 패턴이 존재하는지 파악하는 것입니다. 예를 들어 그림 1.의 왼쪽과 같은 이미지 정보가 입력되면 기억 장치에는 오른쪽과 같이 픽셀 단위로 이미지를 저장하게 되고 이때 픽셀에 저장되는 값과 함께 픽셀을 뜻하는 세포의 상태가 결정됩니다. 컴퓨터는 이 세포의 상태를 살펴보며 일정한 패턴을 찾아내고, 해당 이미지의 특징을 파악할 수 있게 되는 것이죠.
그림 2. 논리 회로에서의 세포 자동자 구현 모습
‘자동자(Automata)’는 스스로 움직이는 기계를 뜻합니다. 따라서 앞서 설명한 세포에 대한 정의를 바탕으로 세포 자동자를 ‘스스로 세포의 상태를 결정하는 기계’라고 정의할 수 있습니다. 이때 세포 자동자는 무작위로 세포의 상태를 결정하는 것이 아니라, 세포 주변에 위치한 다른 세포들의 상태와 사용자가 정의한 일련의 규칙을 바탕으로 세포의 상태를 결정합니다. 예를 들어 그림 2.와 같은 논리 회로가 있을 때, 그림에서와 같이 주변 세포들과의 관계로 자신의 다음 상태를 결정하는 규칙을 정의하면, 이후의 회로에서는 초기에 부여한 정보를 바탕으로 계속해서 세포의 다음 상태를 결정해 나가게 됩니다. 컴퓨터 비전 분야에서는 정확한 정보가 들어있는 특정 이미지를 제공해 딥러닝2 을 통해 컴퓨터가 해당 이미지 정보로 결정된 세포 상태의 일정한 패턴(규칙성)을 학습시킵니다. 이렇게 특정한 패턴을 딥러닝으로 학습한 뒤 이미지 정보를 제공했을 때, 해당 패턴이 있는지 판단을 하기까지 거치는 여러 계층 간의 연결 상태를 ‘딥러닝 아키텍처’라고 합니다. 세포 자동자에서는 제공된 이미지를 바탕으로 패턴을 파악하는 딥러닝 아키텍처를 반대로 이용해 이미지 정보의 일부를 입력하여, 해당 패턴이 드러난 이미지를 출력하도록 합니다.
그림 3. 임의의 한 세포에서 도마뱀 이미지를 생성하는 세포 자동자 딥러닝 아키텍처
그림 3.에서와 같이 도마뱀 이미지를 학습한 딥러닝 아키텍처를 바탕으로 임의로 한 픽셀의 상태를 결정해 입력층에 제공하면, 여러 계층을 거치면서 최종적으로 도마뱀의 이미지가 출력됩니다. 이때 세포 자동자 개념을 응용하면 어떤 세포를 시작점으로 결정하더라도 도마뱀을 형성하는 세포 자동자 딥러닝 아키텍처를 얻을 수 있습니다. 따라서 세포 자동자를 이용하면 이미지 정보의 일부분만 제공하더라도 주변 세포와의 관계를 통해 세포들의 상태를 계속해서 결정해주어 제공되지 않은 부분의 정보도 임의로 생성할 수 있는 것이죠. 이렇게 규칙성을 바탕으로 정보를 생성하는 특징을 가졌기에, 세포 자동자는 사용자가 정의한 규칙과 임의의 입력 데이터를 통해 최종적인 결과가 제대로 얻어지는지를 확인하는 등의 다양한 분야에 사용됩니다.
1 컴퓨터를 비롯한 디지털 기기에서 정보를 저장하는 장치
2정보를 입력하는 입력층과 결과를 도출하는 출력층 사이에 서로 다른 계층(Layers)을 여러 개 둔 신경망 모델을 구축해 진행되는 기계적 학습(머신 러닝)의 한 종류
Jun-Seok Lee, Hyun-Ho Cho, Kyung-Hyune Rhee (2003). Cellular Automata and It's Applications. 멀티미디어학회논문지, 6(4), 610-619
Mordvintsev, et al., "Growing Neural Cellular Automata", Distill, 2020
-
그림 4. 일부 3D 이미지로 전체 이미지를 형성하는 모습(Shape Completion)
-
그림 5. GCA에서 확률을 이용해 세포 상태를 결정하는 모습
그렇다면 세포 자동자 기술이 자율화와 3D 이미지 처리 기술에 어떻게 이용될까요? 일부 정보만으로도 전체 정보를 일정 수준으로 파악할 수 있다면, 부득이하게 정보 전체를 제공할 수 없는 경우에도 전체 정보를 대략적으로 파악할 수 있다는 점에서 컴퓨터 비전 분야에서 세포 자동자의 활용도는 매우 높습니다. 컴퓨터 비전 분야에서는 3D 이미지 정보의 일부분만으로도 규칙에 따라 필요한 정보를 생성해 최종적으로 하나의 완성된 3D 이미지를 형성하는 이미지 처리 기술을 Shape Completion이라고 합니다. 이 Shape Completion 관련 기술 중, 3D 이미지에 대해서 특징적인 정보를 픽셀 단위로 추출해 세포 자동자 딥러닝 아키텍처를 이용하여 이미지를 생성하는 기술이 바로 Generative Cellular Automata(이하 GCA) 입니다. 이 GCA 기술을 활용하면 그림 4.와 같이 일부 3D 이미지를 제공하였을 때 세포의 다음 상태를 결정해 최종적인 3차원 이미지를 만들어낼 수 있습니다. 그림을 살펴보면 제공된 초기 이미지의 특징에 따라 3차원 이미지가 최종적으로 생성된 것을 확인할 수 있습니다. 어떻게 이미지의 일부만 제공했음에도 3가지 형태 중 하나로 최종 이미지를 결정할 수 있는 것일까요? 여기에는 확률을 계산하여 세포의 상태를 결정하는 확률적 세포 자동자(Probablistic Cellular Automata)가 이용됩니다.
그림 5.는 어떤 3D 이미지를 생성할지 판단하기 위해 확률적 세포 자동자를 이용하는 과정을 보여줍니다. 우선 처음에 제공된 3D 이미지의 정보 세포를 의자의 등받이 부분(빨간색), 의자에 앉는 부분 (파란색), 의자의 다리 부분 (초록색) 중 하나로 가정하고 주변 세포들을 결정했을 때 그 결과가 제공된 3D 이미지와 일치할 확률을 계산합니다. 이후 가정을 바탕으로 결정된 주변 세포들에 대해서도 그 주변 세포들의 상태를 결정해 조건부 확률을 계산합니다. 이 과정을 초기에 제공된 3D 이미지 정보의 모든 세포들에 대한 확률을 계산할 때까지 반복해서 계산해주고, 초기 정보가 의자가 아닌 비행기나 자동차의 일부 정보라고 가정했을 때 도출한 확률과 비교해 가장 확률이 높은 형태로 세포 자동자 딥러닝 아키텍처를 결정하는 것입니다. 이 과정이 마치 우리가 장애물에 가려진 물체를 보고 그 물체의 전체 모습을 예측하는 과정과 비슷하게 느껴지지 않나요?
Dongsu Zhang, Changwoon Choi, Jeonghwan Kim, Young Min Kim (2021). Learning to Generate 3D Shapes with Generative Cellular Automata. ICLR 2021 Poster.
기존 Shape Completion 기술은 초기에 설정한 가정으로 모든 세포를 생성한 다음 초기 이미지 정보와의 일치성을 비교하는 방식이었는데, 이에 비해 매 과정마다 주변 세포와의 일치성을 확인하는 GCA를 활용한 Shape Completion이 더 정확하게 결과를 예측하고, 출력 결과물과 초기 정보의 일치율도 높았으며, 불연속적 이미지를 더욱 매끄럽게 연결하는 양상을 보였습니다. 앞으로 GCA 기술에 대한 심층적인 연구가 계속되어 3D 이미지 처리와 관련된 컴퓨터 비전 기술이 비약적으로 발전한다면 일상적인 환경에 컴퓨터로 창조한 그래픽 기술을 결합하는 증강 현실(AR)이나, 가상 현실(VR) 기술도 더욱 발전할 수 있을 것으로 보입니다. 실제 우리 주변 환경에 포켓몬 등 게임 요소를 결합하여 인기가 높았던 닌텐도 사의 '포켓몬 고' 게임과 같은 기술이 앞으로 더 많아질 거라는 뜻이지요. 상상만 해도 즐겁지 않으신가요?
지금까지 이미지의 일부만으로도 나머지 이미지 정보를 스스로 생성하는 세포 자동자와 이를 3D 이미지에 적용한 GCA 기술까지 살펴보았는데요. 자율화 시대가 다가옴에 따라 겉으로 보이는 기계 장치들의 성능과 작동 과정에 먼저 눈이 가기 마련이지만, 그 속에는 항상 인공지능 신경망 구조를 어떻게 하면 더 효과적으로 구성하고, 발전시켜 나갈지에 대한 끝없는 고민이 있었다는 사실을 기억해 주세요!
지금까지 이미지의 일부만으로도 나머지 이미지 정보를 스스로 생성하는 세포 자동자와 이를 3D 이미지에 적용한 GCA 기술까지 살펴보았는데요. 자율화 시대가 다가옴에 따라 겉으로 보이는 기계 장치들의 성능과 작동 과정에 먼저 눈이 가기 마련이지만, 그 속에는 항상 인공지능 신경망 구조를 어떻게 하면 더 효과적으로 구성하고, 발전시켜 나갈지에 대한 끝없는 고민이 있었다는 사실을 기억해 주세요!
- 자료출처
-
- [논문]
- [1] Jun-Seok Lee, Hyun-Ho Cho, Kyung-Hyune Rhee (2003). Cellular Automata and It's Applications. 멀티미디어학회논문지, 6(4), 610-619
- [2] 강훈 (1997). CELLULAR AUTOMATA. 전자공학회지, 24(3), 290-301
- [3] Dongsu Zhang, Changwoon Choi, Jeonghwan Kim, Young Min Kim (2021). Learning to Generate 3D Shapes with Generative Cellular Automata. ICLR 2021 Poster.
- [1] 낱칸 [웹사이트] (2021년 07월 23일). Retrieved from
https://terms.naver.com/entry.naver?docId=817402&cid=42344&categoryId=42344 - [2] Cellular Automation [Website]. (2021, July 22). Retrieved from
https://mathworld.wolfram.com/CellularAutomaton.html - [3] Cellular Automation [Website]. (2021, July 22). Retrieved from
https://en.wikipedia.org/wiki/Cellular_automaton
[웹사이트]