728x90
반응형

Ⅱ. 인공지능 기반 3D 콘텐츠 기술

1. 3D 데이터 표현 방법

서론에서 잠시 논의한 바와 같이 2차원 인공지능 기술과 3차원 인공지능 기술의 차이점 중 하나는 데이터 포맷의 차이이다. 이 부분에 대해서는[5,6]에 잘 설명되어 있다. 가장 근본적인 차이는 현재 합성곱 기반 학습 네트워크에 적합한 격자구조의 표현 여부이다. 그림 4는 전형적인 2차원 데이터 기반의 학습 방법이다.

그림 4 

유클리디언 데이터: 2D 영상의 학습 방법

다중 채널(RGB)로 구성된 입력영상을 이용하여 합성곱 기반 학습 수행 후 조건부 확률(그림 1 참고)값이 가장 높은 고양이를 출력하는 예제이다.

그림 5 

유클리디언 vs 넌 유클리디언 데이터

그림 6은 다양한 3D 그래픽 데이터의 표현 방식을 정의한다. 먼저 그림 5와 같은 차이에 의해 유클리디언 구조와 넌 유클리디언 구조로 나뉜다. 유클리디언 구조는 격자구조와 같이 정형화된 2차원 표현 방식으로 표현될 수 있고, 넌 유클리디언의 경우는 정형화되지 않은 표현에 의해 정의된다. 프리미티브의 경우 정해진 구조(예를 들어, 컨트롤 포인트의 개수 고정 등)의 방식이면 유클리디언 표현으로 될 수 있고, 그렇지 않을 경우는 넌 유클리디언 표현으로 정의될 수 있다.

  • • 프리미티브: 수학적인 선, 면 등의 조합으로 데이터 생성, 각 프리미티브 데이터를 수학적으로 변형하는 컨트롤 포인트로 제어

  • • 프로젝션: 3D 데이터를 구 좌표계 혹은 실린더 좌표계로 맵핑하여 표현[7]

  • • RGB-D: 3D 데이터를 컬러영상과 깊이 정보로 분리하여 표현. 이 경우 360° 전체를 표현하기보다는 특정한 시점의 표현 가능

  • • 볼륨: 부피를 가지는 픽셀인 복셀을 정의하여, 복셀 값으로 3D 표현

  • • 다시점: 3D 데이터를 다시점으로 프로젝션하여 각 시점에서의 컬러 정보로 3D 표현

  • • 포인트 클라우드: 공간 위치 및 색상 정보를 포함하는 포인트 정보. 3D 스캐너의 일반적인 출력 형태로 사용되며 계측, 시각화 등에서 사용

  • • 그래프: 메쉬의 다른 형태의 표현으로, 그래프의 노드는 메쉬의 정점과 대응하고, 그래프의 에지는 메쉬의 연결정보에 대응하여 표현하는 방법

  • • 메쉬: 가장 일반적으로 산업계에서 사용되는 표현으로 3D 정점(Vertex), 다각형 면(삼각 혹은 사각형의 면) 등으로 구성된 3D 데이터

그림 6 

다양한 3D 데이터 표현 방법

2. 표현 방법에 따른 학습 방법

그림 7 그림 6의 다양한 3D 데이터 표현 방식 중 유클리디언 구조의 표현에 따른 학습 방식을 간략화한 것이다. 각각의 표현 및 응용 분야에 따른 학습 방법은 참고문헌 [5,6]에 나타나 있다. 유클리디언 방식의 경우 전체적인 구조는 비슷하다. 합성곱 기반의 네트워크를 잘 사용할 수 있도록 3D 데이터를 가공하여 중간 단계 표현(예를 들어 프리미티브, 멀티뷰 등)으로 변형하는 것이 중요하다. 프리미티브 및 프로젝션 기반의 표현은 중간 단계의 표현이 2D 격자구조이기는 하지만, 일반적인 영상의 특징과는 다를 수 있기 때문에 합성곱 기반의 네트워크를 직접 사용하기보다는 기존의 네트워크를 다양한 방법으로 변형하여 사용한다. 이와는 다르게 RGB-D 혹은 다시점 영상 등의 경우는 중간 단계의 표현이 영상과 같은 특성을 가지기 때문에 일반적으로 합성곱을 직접 이용하는 경우가 많다. 볼륨 기반의 데이터는 3차원 합성곱이 존재하므로 이를 직접 사용하기도 한다. 다시점 기반의 3D 딥러닝의 경우 가장 먼저 연구되기 시작한 방법으로 3D 데이터를 다양한 카메라 시점으로 랜더링하여 2차원 영상을 만들고, 각각에 대한 합성곱 방법을 수행한 후 각 뷰의 특징점을 정합하고(일반적으로 뷰 풀링을 이용[8]) 최종 결과물을 출력한다. 일반적으로 학습의 가속화를 위해 GPU를 사용한다.

그림 7 

다양한 3D 데이터 표현 방법

다시점 기반의 방법은 다양한 응용에 적용될 수 있다. 예를 들어, 그림 8과 같은 학습 모델을 설계하여 2차원 영상을 입력하여 3차원 모델을 생성할 수 있다[9]. 3D 데이터를 16비트로 확장한 다시점 깊이 영상을 생성하여 지도학습 기반의 학습 데이터로 사용한다. 그림 8과 같이 RGB 영상과 대응하는 깊이 영상을 기반으로 도약 연결(skip connection)을 갖는 합성곱 기반 인코더-디코더 모델을 만들어 입력 영상에 대응하는 깊이 영상을 할 수 있도록 학습한다. 생성된 다시점 부분 깊이 영상 및 마스크 영상은 각 시점별 깊이 영상 생성을 돕는 역할을 수행하여 좀 더 향상된 결과를 생성할 수 있다. 입력 영상과 부분 깊이 영상 기반 깊이 영상 생성 모델은 인코딩 과정을 거쳐 나온 각 잠재 코드(latent code)와 시점별 변환 정보를 결합한 코드를 디코딩한다. 디코딩 단계에서 부분 깊이 영상과 예측된 깊이 영상 및 마스크 영역에 대한 L1및 L2 loss 함수를 최소화하는 학습을 통해 최종 깊이 영상을 생성한다.

그림 8 

다시점 기반 3D 데이터 표현방법에 의한 3D 데이터 생성 학습모델

그림 9 그림 8의 학습모델에 의해 생성된 결과를 보여준다. 사진 한 장을 입력하여 생성된 3D 모델로, 간단한 후처리를 통해 게임 및 애니메이션의 조연급 객체로 사용할 수 있다.

넌 유클리디언 기반의 3D 데이터 표현에 대한 학습 방법은 초기 연구가 진행 중이며, Eman[6]의 논문에 잘 요약되어 있다.

그림 9 

한 장의 2D 영상 기반 3D 데이터 생성 결과

3. 표준화 동향

이러한 기술 발전에 따라 관련된 표준화에 대한 논의가 진행 중이다[10]. 표준 분야는 크게 학습모델의 표현과 학습 데이터 표현에 대한 두 가지로 나눌 수 있다. 학습 방법의 경우 일종의 인코더 관련 기술임으로 표준의 대상은 아니지만, 참조모델 형태로 informative 표준이 개발되고는 있지만, 본 고에서는 제외한다.

먼저 네트워크 포맷에 대한 표준이 있다. 가장 대표적인 것은 크로노스 그룹에서 정의하는 NNEF(Neural Network Exchange Format, https://www.khronos.org/nnef)이다. 현재 버전 1.0이 발표되었으며, 개발된 학습 모델이 다양한 프레임워크에서 동작할 수 있도록 다양한 오퍼레이션, 타입 정보 등을 메타데이터로 제공한다.

국내 학습 데이터에 대한 표준은 최근 TTA(Telecommunication Technology Association) PG610에서 시작하였으며, “2D 이미지를 3D 모델로 생성하기 위한 3D 딥러닝 학습 파일 포맷”이라는 제목으로 표준화 작업을 진행 중이다(http://tta.or.kr/). 주요 내용은 3D 딥러닝 기술을 이용하여 2D 원화 영상을 3D 모델로 변경할 때 사용되는 학습 데이터의 파일 포맷을 XML 기반으로 정의하여 학습데이터의 재사용을 가능하게 한다.

 

https://ettrends.etri.re.kr/ettrends/178/0905178002/

 

인공지능을 이용한 3D 콘텐츠 기술 동향 및 향후 전망

최근의 핫 이슈인 딥러닝은 여러 가지 응용 분야에서 기존의 전통적인 비전 기반의 접근방법(Hand Crafted Feature)보다 월등한 성능을 보여준다[1]. 2014년과 2015년은 인공지능을 통해 컴퓨터가 인간보

ettrends.etri.re.kr

 

728x90
Posted by Mr. Slumber
,