Abstract
Recently, the spread of 3D printers has been increasing the demand for 3D models. However, the creation of 3D models should have a trained specialist using specialized softwares. This paper is about an algorithm to produce a 3D model from a single sheet of two-dimensional front face photograph, so that ordinary people can easily create 3D models. The background and the foreground are separated from a photo and predetermined constant number vertices are placed on the seperated foreground 2D image at a same interval. The arranged vertex location are extended in three dimensions by using the gray level of the pixel on the vertex and the characteristics of eyebrows and nose of the nomal human face. The separating method of the foreground and the background uses the edge information of the silhouette. The AdaBoost algorithm using the Haar-like feature is also employed to find the location of the eyes and nose. The 3D models obtained by using this algorithm are good enough to use for 3D printing even though some manual treatment might be required a little bit. The algorithm will be useful for providing 3D contents in conjunction with the spread of 3D printers.
최근 3D 프린터의 보급과 함께 3D 모델에 대한 수요가 급증하고 있다. 그러나 3D 모델의 생성은 숙달된 전문가가 전문 소프트웨어를 이용하여 작성하여야 한다. 본 연구는 한 장의 2차원 정면 얼굴사진으로 부터 3D 모델링하는 방법에 대한 것으로 일반인들도 쉽게 3D모델을 생성할 수 있도록 한다. 사진으로부터 배경과 전경을 분리하고 분리한 전경 영역에 일정간격으로 2차원 상에 버텍스를 배치하고 배치한 버텍스 위치를 이미지의 계조 값과 눈썹과 코 등의 특성을 고려하여 버텍스를 3차원으로 확장한다. 전경과 배경을 분리하는 방법으로 에지정보를 사용하였으며 눈과 코의 위치를 찾기 위하여 Haar-like feature를 이용하는 AdaBoost 알고리즘을 사용하였다. 알고리즘으로 생성한 3D 모델은 수작업에 의한 후처리가 필요하지만 3D 프린터를 위한 콘텐츠 제공에 매우 유용하게 활용될 것이다.