reference
개요
레퍼런스 영상을 보면 사진한장을 3D 모델링으로 만드는 과정을 볼수있다.
PIFuHD: Multi-Level Pixel-Aligned Implicit Function for High-Resolution 3D Human Digitization
PIFuHD : 고해상도 3D 인간 디지털화를위한 다중 레벨 픽셀 정렬 암시 적 기능
이라는 기술인데 해상도 낮은 3D 스캐너로 스캔 받은 모델링 정도의 결과는 나오는 것 같다.
영상에서 소개하는 방법은 파이썬을 이용하여 신경망...... 음. 그런 저런 걸 이용하는데 구글에서 서비스하는 colab 에서 진행된다. 파이썬 개발 환경을 웹에서 구현해주는 서비스다.
과정
•
이 주소의 맨 아래 Colab 을 클릭하면 구글 서비스로 넘어간다.
•
Copy to Drive 로 복사한다.(구글 로그인 된 상태에서 하세요.)
•
상단의 Connect 나 왼쪽에 폴더 아이콘을 클릭하면 뭔가 실행 준비를 합니다. 왼쪽 폴더를 누르고 잠시 기다리면 sample_data 폴더가 나타납니다.
•
왼쪽 폴더 영역에 이미지를 던집니다. 파일명을 간단하게 바꿔주세요.
•
이제 코드를 실행해봐야죠. 동영상 아래쪽에 Clone PIFuHD repository 가 있습니다. 여기부터 시작입니다. 코드 앞에 중괄화 부분에 커서를 올리면 play 아이콘이 나옵니다. 한번 클릭하면 뭔가 다운로드 되는데 잠시 기다리면 왼쪽 폴더트리쪽에 'pifuhd' 폴더가 추가됩니다.
•
그다음 코드는 파일을 업로드 하는 과정인데 이미 파일을 업로드 했으니, 그 아래 코드로 넘어가서 코드 한줄을 추가한다. 아래 코드처럼 except 아래 쪽에 업로드한 파일명을 바로 지정해준다.
•
이제는 남은 코드를 순차적으로 실행하면 된다. 상단 메뉴의 Runtime > Run after 를 실행한다.
•
몇분을 기다려 Run PIFuHD 까지 진행되면 그림의 위치에 obj 파일이 나타난다.
오류
보통은 5분 안쪽으로 obj 를 만들어주는데 시간이 너무 걸리면 오류가 발생한 것일수도 있으니 좀더 사람이 명확한 이미지로 시도해보세요.
결과
배경과 사람이 잘 분리되고 사람을 가리는 물건이 없고 정면으로 서있는 사진이 좋다.
소감
놀랍다. 재밌다. 생각보다 사진 한장으로 정확한 실루엣의 모델링을 얻을 수 있었고, 이질감 없는 뒷모습까지 만들어 냈다. 어떤 부분은 눈에 잘 보이지 않는 디테일까지 표현되었다. sculpting 베이스나 조감도 영상에 사용할 수도 있을 정도는 되는 것 같다.