[선행연구팀 정택현]
가끔, 아이들은 우리의 상상력을 뛰어넘는 놀랍고 창의적인 캐릭터들을 그려내곤 합니다. 이러한 아이들의 그림을 이해하기 위해서는 우리의 상식과는 조금 다른 이해방법이 필요합니다.
아이들의 그림을 살펴보면, 추상적이고 공상적인 방식으로 구성되는 경향이 있습니다. 예를 들어, 팔, 다리 등 신체 특정 부위의 위치가 자유롭게 배치되고 그 크기나 형태를 종잡을 수 없습니다.
또한, 보편적으로 사용하는 색상이나 질감의 형태와는 또 다른 구성을 보여주는 경향이 있어 아이들마다 개성이 명확하게 드러나곤 합니다.
이처럼 아이들의 그림이 갖는 다양한 특징 및 형태는 사람의 경우에는 추상적인 추론의 과정을 통해 이러한 특징점들을 이해할 수 있지만 AI 시스템의 경우에는 이러한 추상적 추론의 과정이 어렵다는 사실이 있습니다.
최근 메타 플랫폼(이하 메타)은 이러한 아이가 그린 캐릭터를 자동으로 애니메이션화하는 기술을 블로그를 통해 공개하였습니다.
이는, 아이가 그린 캐릭터의 신체를 정확히 오려내는 듯한 모션 방식과 움직임을 접목하여 재미 요소와 함께 생명을 불어넣는 방식입니다. 이를 통해, 아이들은 자신들이 그린 캐릭터가 마치 살아 움직이듯 점프하고 춤을 추며 움직이는 것을 보게 되어 단순히 재미 뿐 아니라 다양한 영감을 받을 수 있게 되었습니다.
메타 AI 연구원들은 어떻게 신체 대칭이나 형태학의 관점에서 서로 일정하지 않은 아이들의 그림을 움직일수 있도록 하였을까요?
방법은 생각보다 단순하고 명료하였습니다. 먼저, 이미지로부터 캐릭터를 인식(detection) 및 마스킹을 수행하고, 이를 대상으로 팔, 다리, 몸통에 해당하는 뼈대를 탐지하고, 모션을 입히는 총 4단계 프로세스를 통해 이러한 기술을 구현할 수 있었다고 합니다.
1단계: 이미지로부터 캐릭터 인식하기
해당 기술의 가장 첫 번째의 단계는 이미지로부터 캐릭터를 배경 등과 구분하여 정확히 탐지하는 것입니다.
이를 구현하기 위해 메타 연구진은 다양한 SOTA 수준의 탐지(Detection) 기술들을 접목하여 실험을 진행하였지만, 이를 아이들의 그림에서 활용하기에는 성능적 한계를 느끼게 되었습니다.
따라서, 연구진은 이러한 문제를 해결하기 컨볼루션 신경망 기반의 객체 감지 모델(MASK R-CNN)과 ResNet-50+FPN을 활용하여 캐릭터의 형태를 정확히 예측하는 모델을 설계하였는데,
이러한 모델에 메타 소속의 동료직원들의 자녀로부터 얻은 아이들의 작품 1,000장으로 미세한 모델 훈련(fine-tuning)을 진행하였고, 그 결과 아이들의 그림으로부터 높은 수준으로 캐릭터의 형체를 탐지하여 bounding box를 얻을 수 있게 되었습니다.
2단계: 세그먼테이션 기술을 통한 마스킹하기
탐지기술로 캐릭터를 인식하게 되면 세그먼테이션 기술을 통한 마스킹(Masking)을 진행하게 됩니다. 이는, 정교한 마스킹을 통해 정확하고 세밀한 형태값을 얻기 위함입니다.
앞선 객체 탐지 모델(Mask R-CNN)만으로는 이러한 작업을 수행하는 것이 어려우므로, 연구진들은 추가적인 알고리즘을 접목하여 이러한 마스킹 기술을 구현하였습니다.
이는, bounding box를 기준으로 내부에 이진화(Binarization), Thresholding, 모폴로지 연산, Flood fill 등 다양한 이미지 처리 기술을 적용하는 방식이며, 현존하는 모든 이미지에게 잘 적용되는 강건성(Robustness)를 보이지는 않으나, 명확히 구분되는 형태에 한해서는 정확하게 처리되는 놀라운 결과를 보여주고 있습니다.
3단계: 캐릭터의 팔, 다리, 몸통 등을 식별
마스킹이 정확히 수행되면 알파포즈(AlphaPose) 기술을 통해 캐릭터의 팔, 다리, 몸통 등의 뼈대를 식별하는 작업을 진행하게 됩니다. 이러한 작업에 사용된 알파포즈(AlphaPose)는 미세한 인간의 포즈를 추론(Estimate) 하기 위해 만든 모델로 높은 성능을 지닌것으로 알려져 있습니다.
메타 연구원들은 앞선 탐지 기술과 마찬가지로 해당 모델에 실제 아이들의 그림을 기반으로 미세한 모델 훈련(fine-tuning)을 진행하였고, 그 결과 팔, 다리가 머리위에 있는 등의 기형적인 예시 또한 탐지할 수 있게 되었습니다.
4단계 : 3D 모션캡처를 2D 캐릭터에 적용하여 애니메이션 생성
마지막으로는 2D 캐릭터를 대상으로 3D 모션 기술을 적용하여 캐릭터의 움직임과 애니메이션을 만드는 과정이 수행되게 됩니다.
이는, 3D 모션 캡처를 통해 얻은 3차원 landmarks 데이터를 2차원 형태의 데이터로 변환하고, 이를 2D 캐릭터의 팔, 다리, 몸통 등에 매핑하여 움직임을 만드는 원리를 갖습니다.
이러한 모든 과정이 수행되게 되면 아이들의 그림은 비로소 살아움직이는 것처럼 춤추고, 달리는 등 다양한 애니메이션으로 재탄생 되게 됩니다.
아래의 스마일게이트의 캐릭터인 “플레임”에 적용한 결과를 살펴보면 캐릭터가 단순하지만 재미있게 잘 움직이는것을 볼 수 있습니다.
다양한 그림을 통해 서비스를 오랜기간 체험해본 결과, 현재로써는 팔 다리가 일부 없거나 형태가 너무 기형적인 경우에는 제한사항이 발생하기도 하지만, 이러한 문제는 추가적으로 알고리즘을 개선하고 다양한 그림 데이터를 모아서 학습하게 되면 성능이 개선될 것으로 기대하고 있습니다.
conclusion
메타 AI의 연구원들은 AI 기술을 통해서 다양한 창의적인 활동과 영감을 얻을 수 있는 재미있는 솔루션을 개발하였습니다.
이러한 기술이 계속해서 발전해나간다면, 향후 AI 시스템이 스스로 그림을 그리고 움직이도록 하여 애니메이션 혹은 게임 산업에서 다양하게 활용될 수 있다고 생각합니다.
또한, 교육의 측면에서도 아이들의 창작 활동이 더 즐거워질 것으로 전망되며 부모와 아이가 재미있게 즐길 수 있는 신선한 놀이감이 하나 생겼다고 생각합니다.
앞으로 해결해야 할 문제점들이 많겠지만 다양한 연구 및 지속적인 기술개발이 진행된다면 가까운 시일 내에는 또 다른 재미있는 서비스가 탄생할 수 있지 않을까 기대해봅니다!
서비스 체험해보기 : https://sketch.metademolab.com/
Reference
https://ai.facebook.com/blog/using-ai-to-bring-childrens-drawings-to-life/