KR102455468B1 - 객체의 3차원 모델을 복원하는 방법 및 장치 - Google Patents

객체의 3차원 모델을 복원하는 방법 및 장치 Download PDF

Info

Publication number
KR102455468B1
KR102455468B1 KR1020180071997A KR20180071997A KR102455468B1 KR 102455468 B1 KR102455468 B1 KR 102455468B1 KR 1020180071997 A KR1020180071997 A KR 1020180071997A KR 20180071997 A KR20180071997 A KR 20180071997A KR 102455468 B1 KR102455468 B1 KR 102455468B1
Authority
KR
South Korea
Prior art keywords
data
model
dimensional
posture
image
Prior art date
Application number
KR1020180071997A
Other languages
English (en)
Other versions
KR20200000106A (ko
Inventor
한병옥
김재환
김호원
이지형
정유구
박창준
이길행
Original Assignee
한국전자통신연구원
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 한국전자통신연구원 filed Critical 한국전자통신연구원
Priority to KR1020180071997A priority Critical patent/KR102455468B1/ko
Priority to US16/104,431 priority patent/US10726612B2/en
Publication of KR20200000106A publication Critical patent/KR20200000106A/ko
Application granted granted Critical
Publication of KR102455468B1 publication Critical patent/KR102455468B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/20Finite element generation, e.g. wire-frame surface description, tesselation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/222Studio circuitry; Studio devices; Studio equipment
    • H04N5/2224Studio circuitry; Studio devices; Studio equipment related to virtual studio applications
    • H04N5/2226Determination of depth image, e.g. for foreground/background separation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/11Region-based segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/194Segmentation; Edge detection involving foreground-background segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • G06T7/55Depth or shape recovery from multiple images
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/10Cameras or camera modules comprising electronic image sensors; Control thereof for generating image signals from different wavelengths
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/10Cameras or camera modules comprising electronic image sensors; Control thereof for generating image signals from different wavelengths
    • H04N23/11Cameras or camera modules comprising electronic image sensors; Control thereof for generating image signals from different wavelengths for generating image signals from visible and infrared light wavelengths
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/45Cameras or camera modules comprising electronic image sensors; Control thereof for generating image signals from two or more image sensors being of different type or operating in different modes, e.g. with a CMOS sensor for moving images in combination with a charge-coupled device [CCD] for still images
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2200/00Indexing scheme for image data processing or generation, in general
    • G06T2200/08Indexing scheme for image data processing or generation, in general involving all processing steps from image acquisition to 3D model generation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10024Color image
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10028Range image; Depth image; 3D point clouds
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20081Training; Learning

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Multimedia (AREA)
  • Software Systems (AREA)
  • Signal Processing (AREA)
  • Computer Graphics (AREA)
  • Geometry (AREA)
  • Biomedical Technology (AREA)
  • General Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Mathematical Physics (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Image Analysis (AREA)
  • Processing Or Creating Images (AREA)
  • Length Measuring Devices By Optical Means (AREA)
  • Image Processing (AREA)

Abstract

객체의 3차원 모델을 복원하는 방법이 개시된다. 이 방법은, 카메라 모듈이, 동일한 객체를 스캐닝하는 제1 및 제2 객체 스캐닝 프로세스를 순차적으로 수행하는 단계; 프로세스 모듈이, 상기 제1 객체 스캐닝에 따라 획득한 제1 객체 이미지를 기반으로 3차원 객체 모델을 복원하고, 상기 제1 객체 이미지 기반의 3차원 객체 모델을 복원하는 과정에서 획득한 데이터를 기반으로 객체 대한 자세 학습을 수행하여, 학습 데이터를 구축하는 단계; 및 상기 프로세스 모듈이, 상기 제2 객체 스캐닝에 따라 획득한 제2 객체 이미지와 상기 학습 데이터를 기반으로 최종 3차원 객체 모델을 복원하는 단계;를 포함한다.

Description

객체의 3차원 모델을 복원하는 방법 및 장치{METHOD AND APPARATUS FOR RECONSTRUCTING THREE DIMENSIONAL MODEL OF OBJECT}
본 발명은 객체의 3차원 모델을 구성하는 방법 및 장치에 관한 것으로, 더욱 상세하게는, 객체를 스캐닝 하여 생성된 이미지 장면들을 이용하여 객체를 3차원 모델로 복원하는 방법 및 장치에 관한 것이다.
최근, 깊이 센서와 같은 저가(consumer-level)의 소형 카메라가 장착된 모바일 폰이 대중화되면서, 상기 모바일 폰에서 실제 물체를 3차원 모델로 복원하는(reconstructing) 3차원 복원 기술에 대한 관심이 높아지고 있다.
상기 3차원 복원 기술은 상기 실제 물체를 상기 소형 카메라로 스캐닝하여 이미지 장면들을 생성하고, 생성된 이미지 장면들을 이용하여 상기 실제 물체를 3차원 모델로 복원하는 기술이다.
상기 실제 물체를 3차원 모델로 복원하기 위해서는, 상기 실제 물체의 전체 형상을 빈틈없이 안정적으로 스캐닝 하는 작업이 매우 중요하다. 하지만, 모바일 폰에 장착된 소형 카메라를 이용하여 상기 실제 물체의 전체 형상을 빈틈없이 안정적으로 스캐닝 하는 작업은 매우 어렵다. 예를 들면, 한 손으로 실제 물체를 움켜쥐고, 다른 한 손으로 모바일 폰을 움켜쥔 상태에서, 모바일 폰에 장착된 소형 카메라를 다수의 방향으로 움직이면서 실제 물체를 스캐닝하는 경우, 손에 의해 가려진 부위가 발생하기 때문에, 물체의 전체 형상을 빈틈없이 스캐닝할 수 없다.
이와 같이, 불안정한 자세에서 수행되는 스캐닝 작업은 드리프트(drift: 미끄러짐 현상) 및 지터링(jittering: 떨림) 현상을 유발하여 스캔 정확도를 떨어트린다. 이는 실제 물체의 3차원 복원 프로세스에 포함되는 물체의 자세 추적(pose tracking)의 정확도를 저하시키고, 결국, 복원된 3차원 모델의 표시품질을 저하시킨다.
또한, 모바일 폰에 장착된 소형 카메라의 저 성능으로 인해, 소형 카메라로부터 획득한 이미지 장면들로부터 복원된 3차원 모델 이미지에서는 구멍 또는 빈틈이 시인될 수 있다. 이는 3차원 모델의 표시품질 저하를 의미한다.
따라서, 본 발명의 목적은 휴대용 장치에서 안정적으로 객체에 대한 스캐닝 작업을 수행하여, 정밀한 3차원 모델을 복원할 수 있는 방법 및 장치를 제공하는 데 있다.
상술한 목적을 달성하기 위한 본 발명의 일면에 따른 객체의 3차원 모델을 복원하는 방법은, 카메라 모듈이, 동일한 객체를 스캐닝하는 제1 및 제2 객체 스캐닝 프로세스를 순차적으로 수행하는 단계; 프로세스 모듈이, 상기 제1 객체 스캐닝에 따라 획득한 제1 객체 이미지를 기반으로 3차원 객체 모델을 복원하고, 상기 제1 객체 이미지 기반의 3차원 객체 모델을 복원하는 과정에서 획득한 데이터를 기반으로 객체 대한 자세 학습을 수행하여, 학습 데이터를 구축하는 단계; 및 상기 프로세스 모듈이, 상기 제2 객체 스캐닝에 따라 획득한 제2 객체 이미지와 상기 학습 데이터를 기반으로 최종 3차원 객체 모델을 복원하는 단계;를 포함한다.
본 발명의 다른 일면에 따른 객체의 3차원 모델을 복원하는 방법은, 카메라 모듈이, 동일한 객체를 스캐닝하는 제1 및 제2 객체 스캐닝 프로세스를 순차적으로 수행하는 단계; 프로세스 모듈이, 상기 제1 객체 스캐닝에 따라 획득한 제1 객체 이미지로부터 추출된 제1 특징 데이터를 기반으로 상기 객체의 제1 자세 데이터를 추정하고, 상기 제1 자세 데이터를 기반으로 3차원 객체 모델을 복원하는 단계; 및 상기 프로세스 모듈이, 상기 제2 객체 스캐닝에 따라 획득한 제2 객체 이미지로부터 추출된 제2-1 특징 데이터, 상기 3차원 객체 모델을 2차원의 평면에 투영한 2차원 객체 이미지로부터 추출된 제2-2 특징 데이터 및 상기 제1 자세 데이터를 기반으로 제2 자세 데이터를 추정하는 단계; 및 상기 제2 자세 데이터를 기반으로 최종 3차원 객체 모델을 복원하는 단계를 포함한다.
본 발명의 또 다른 일면에 따른 객체의 3차원 모델을 복원하는 장치는 동일한 객체를 스캐닝하는 제1 및 제2 객체 스캐닝 프로세스를 순차적으로 수행하는 카메라 모듈; 및 상기 제1 객체 스캐닝에 따라 획득한 제1 객체 이미지를 기반으로 3차원 객체 모델을 복원하고, 상기 제1 객체 이미지 기반의 3차원 객체 모델을 복원하는 과정에서 획득한 데이터를 기반으로 객체 대한 자세 학습을 수행하여, 학습 데이터를 구축하고, 상기 제2 객체 스캐닝에 따라 획득한 제2 객체 이미지와 상기 학습 데이터를 기반으로 최종 3차원 객체 모델을 복원하는 프로세스 모듈;을 포함한다.
본 발명에 따르면, 휴대용 장치를 이용한 3차원 복원 과정에서 불안정한 스캐닝에 따른 객체(또는 카메라) 추적의 실패를 최소화할 수 있다.
소형 카메라의 성능 한계로 인해, 복원된 3차원 모델에서 발생하는 구멍 또는 빈틈을 보정할 수 있도록 사용자의 자유로운 카메라 움직임을 보장할 수 있다.
객체 스캐닝을 위해, 카메라 및 객체가 모두 빠른 속도로 이동하면서 스캔 작업을 수행하여도, 정밀한 3차원 모델을 복원할 수 있다.
도 1은 본 발명의 일 실시 예에 따른 3차원 모델을 복원하는 장치의 블록도이다.
도 2는 도 1에 도시한 프로세서 모듈의 내부구성을 개략적으로 도시한 블록도이다.
도 3 내지 6은 본 발명의 실시 예에 따른 객체의 3차원 모델 복원 방법을 나타내는 흐름도들이다.
이하, 본 발명의 다양한 실시예가 첨부된 도면과 연관되어 기재된다. 본 발명의 다양한 실시예는 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들이 도면에 예시되고 관련된 상세한 설명이 기재되어 있다. 그러나, 이는 본 발명의 다양한 실시예를 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 다양한 실시예의 사상 및 기술 범위에 포함되는 모든 변경 및/또는 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 도면의 설명과 관련하여, 유사한 구성요소에 대해서는 유사한 참조 부호가 사용되었다.
본 발명의 다양한 실시예에서 사용될 수 있는“포함한다” 또는 “포함할 수 있다” 등의 표현은 개시(disclosure)된 해당 기능, 동작 또는 구성요소 등의 존재를 가리키며, 추가적인 하나 이상의 기능, 동작 또는 구성요소 등을 제한하지 않는다. 또한, 본 발명의 다양한 실시예에서, "포함하다" 또는 "가지다" 등의 용어는 명세서에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
본 발명의 다양한 실시예에서 "또는" 등의 표현은 함께 나열된 단어들의 어떠한, 그리고 모든 조합을 포함한 다. 예를 들어, "A 또는 B"는, A를 포함할 수도, B를 포함할 수도, 또는 A 와 B 모두를 포함할 수도 있다.
본 발명의 다양한 실시예에서 사용된 "제 1," "제2", "첫째" 또는 "둘째," 등의 표현들은 다양한 실시예들의 다양한 구성요소들을 수식할 수 있지만, 해당 구성요소들을 한정하지 않는다. 예를 들어, 상기 표현들은 해당 구성요소들의 순서 및/또는 중요도 등을 한정하지 않는다. 상기 표현들은 한 구성요소를 다른 구성요소와 구분하기 위해 사용될 수 있다. 예를 들어, 제1 사용자 기기와 제 2 사용자 기기는 모두 사용자 기기이며, 서로 다른 사용자 기기를 나타낸다. 예를 들어, 본 발명의 다양한 실시예의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 상기 어떤 구성요소가 상기 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 상기 어떤 구성요소와 상기 다른 구성요소 사이에 새로운 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 상기 어떤 구성 요소와 상기 다른 구성요소 사이에 새로운 다른 구성요소가 존재하지 않는 것으로 이해될 수 있어야 할 것이다.
본 발명의 실시 예에서 사용한 용어는 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 본 발명의 실시 예를 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명의 실시 예가 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다.
일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 발명의 다양한 실시 예에서 명백하게 정의되지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
도 1은 본 발명의 일 실시 예에 따른 3차원 모델을 복원하는 장치의 블록도이다.
도 1을 참조하면, 본 발명의 일 실시 예에 따른 3차원 모델을 복원하는 장치는 임의의 형상으로 이루어진 객체의 3차원 모델을 복원하는 휴대용 전자 장치(100)일 수 있다.
휴대용 전자 장치(100)는, 실제 객체(real object)를 스캐닝하여 생성된 이미지 장면들(이하, '이미지들'이라 칭함)을 이용하여 실제 객체를 3차원 모델로 복원하는 프로세스를 처리할 수 있는 장치라면, 그 종류를 특별히 제한하지 않는다.
이러한 휴대용 전자 장치(100), 예를 들면, 스마트폰(smartphone), 태블릿 PC(tablet personal computer), 이동 전화기(mobile phone), 영상 전화기, 전자책 리더기(e-book reader), PDA(personal digital assistant), PMP(portable multimedia player), 차량에 탈부착 가능한 차량용 헤드 유닛(head unit) 중 하나일 수 있다.
물론, 본 발명이 휴대용 전자 장치(100)에만 한정하는 것은 아니며, 예를 들면, 데스크탑 PC(desktop personal computer), 워크스테이션(workstation), 서버 등과 같이 사용자가 휴대하기 불편한 장치에 적용될 수도 있다.
실제 객체를 3차원 모델로 복원하기 위해, 휴대용 전자 장치(100)는, 예를 들면, 카메라 모듈(110), 프로세서 모듈(120), 저장 모듈(130), 디스플레이 모듈(140), 사용자 인터페이스 모듈(150), 통신 모듈(160)을 포함할 수 있다. 상기 모듈들(110~160)은 시스템 버스(system bus)로 연결될 수 있다.
카메라 모듈(110)은, 임의의 형상을 갖는 실제 객체를 스캐닝하여 서로 다른 시점(또는 서로 다른 방향)에서 촬영된 다수의 이미지들을 캡쳐하는 모듈일 수 있다.
이러한 카메라 모듈(110)은, 예를 들면, 단안(monocular) 카메라, 컬러 센서(RGB 센서), 깊이 센서, 멀티-뷰(multi-view) 스테레오 카메라 또는 이들의 조합으로 구현될 수 있으나, 그 종류에 제한은 없다. 다만, 본 명세서에서는 카메라 모듈(110)이 깊이 센서(112)와 컬러 센서(114)를 포함하는 것으로 가정한다.
이러한 깊이 센서(112)와 컬러 센서(114)는 고성능의 하드웨어로 구현될 필요는 없으며, 저성능/저전력의 하드웨어로 구현되어도 무방하다. 오히려, 저성능/저전력의 깊이 센서(112)와 컬러 센서(114)로 구현된 경우에, 사용자는 본 발명에서 달성하고자 하는 기술적 효과, 즉, 객체의 자세 추적에 대한 향상된 성능을 체감할 수 있다.
카메라 모듈(110)에 의해 수행되는 스캐닝 프로세스는, 배경 스캐닝 프로세스(background scanning process)와 객체 스캐닝 프로세스(object scanning process)를 포함할 수 있다.
배경 스캐닝 프로세스는 실제 객체가 배치될(real object is to be placed) 특정 공간의 배경을 스캐닝 하는 프로세스일 수 있다. 즉, 배경 스캐닝 프로세스는, 객체가 존재하지 않은 특정 공간에서 사용자가 카메라 모듈(110)의 시점(view 또는 orientation)을 배경으로 향하게 한 상태에서 배경 전체를 촬영하는 것이다.
이러한 배경 스캐닝에서는 깊이 센서(112) 또는 컬러 센서(114)가 이용될 수 있다. 따라서, 배경 스캐닝 프로세스에 의해 획득된 배경 이미지는 깊이 센서(112)에 의해 획득될 수 있는 깊이 이미지들 또는 컬러 센서(114)에 의해 획득될 수 있는 컬러 이미지들일 수 있다.
배경 스캐닝 프로세스가 완료되면, 객체 스캐닝 프로세스가 수행된다.
객체 스캐닝 프로세스는 실제 객체가 배치된(real object is placed) 특정 공간에서 실제 객체를 카메라 모듈(110)을 이용하여 스캐닝 하는 프로세스일 수 있다. 즉, 객체 스캐닝 프로세스는, 사용자가 카메라 모듈(110)의 시점(view)을 고정된 실제 객체로 향하게 한 상태에서 카메라 모듈(110)을 전, 후, 좌, 우, 상, 하로 자유롭게 이동시키면서 실제 객체를 촬영하는 프로세스일 수 있다. 반대로, 객체 스캐닝 프로세스는 실제 객체를 고정된 카메라 모듈(110)의 시점으로 향하게 한 상태에서 실제 객체를 자유롭게 이동시키면서 상기 고정된 카메라 모듈(110)을 이용하여 실제 객체의 이미지를 캡쳐하는 프로세스일 수 있다.
물론, 객체 스캐닝 프로세스는 카메라 모듈(110)의 시점(view)을 실제 객체로 향하게 한 상태에서 카메라 모듈(110)과 실제 객체를 모두 자유롭게 이동시키면서, 카메라 모듈(110)을 이용하여 실제 객체의 이미지를 캡쳐하는 프로세스일 수 도 있다. 이때, 객체와 카메라 모듈(110)을 이동시키는 수단은 촬영자의 손(hand)일 수 있다.
한편, 객체 스캐닝 프로세스는, 제1 객체 스캐닝 프로세스와 제2 객체 스캐닝 프로세스를 포함할 수 있다.
제1 객체 스캐닝 프로세스(a first scanning process)에 따라 획득된 객체 이미지는 초기 학습에 사용되는 자세 데이터와 3차원 모델 데이터를 획득하기 위한 이미지로 사용될 수 있다. 이러한 제1 객체 스캐닝 프로세스에 따라 획득된 객체 이미지는 서로 다른 시점을 갖는 다수의 깊이 이미지들 또는 다수의 컬러 이미지들을 포함하도록 구성될 수 있다.
제2 객체 스캐닝 프로세스(a second scanning process)는 제1 객체 스캐닝 프로세스 이후에 수행될 수 있다. 제2 객체 스캐닝 프로세스에 따라 획득된 객체 이미지는 서로 다른 시점을 갖는 다수의 깊이 이미지들 또는 다수의 컬러 이미지들을 포함하도록 구성될 수 있다.
이러한 제2 객체 스캐닝 프로세스에 따라 획득된 객체 이미지는 상기 초기 학습에 따른 학습 데이터를 기반으로 갱신되는 자세 데이터와 3차원 모델 데이터를 획득하기 위한 이미지로 사용될 수 있다.
제1 객체 스캐닝 프로세스는 초기 학습에 사용되는 자세 데이터와 3차원 모델 데이터, 즉, 학습 데이터를 획득하기 위한 스캐닝 프로세스라는 점에서 "대략적인(또는 조잡한) 스캐닝 프로세스(Coarse Scanning Process)"라는 용어로 지칭할 수 있다.
제2 객체 스캐닝 프로세스는 상기 학습 데이터를 기반으로 갱신되는 자세 데이터와 3차원 모델 데이터를 획득함으로써, 정밀하고 정확한 자세 데이터와 3차원 모델 데이터를 획득하기 위해 수행되는 스캐닝 프로세스라는 점에서 "정밀한 스캐닝 프로세스(Fine Scanning Process)"라는 용어로 지칭할 수 있다.
이하에서는, 제1 객체 스캐닝 프로세스를 "대략적인 스캐닝 프로세스(Coarse Scanning Process)"라 기술하고, 제2 객체 스캐닝 프로세스를 "정밀한 스캐닝 프로세스(Fine Scanning Process)"라 기술한다.
한편, 본 발명에서는 대략적인 스캐닝 프로세스(Coarse Scanning Process)에 따라 획득된 객체 이미지는 깊이 이미지로 한정하고, 정밀한 스캐닝 프로세스(Fine Scanning Process)에 따라 획득된 객체 이미지는 컬러 이미지로 한정할 수 있다.
반대로, 대략적인 스캐닝 프로세스(Coarse Scanning Process)에 따라 획득된 객체 이미지는 컬러 이미지로 한정하고, 정밀한 스캐닝 프로세스(Fine Scanning Process)에 따라 획득된 객체 이미지는 깊이 이미지로 한정할 수 있다.
아래에서 설명하겠지만, 객체의 자세 데이터는 객체 이미지로부터 추출된 객체의 특징 데이터를 기반으로 추정될 수 있다. 이때, 깊이 이미지에서는 컬러 특징의 존재 여부와 무관하게 객체의 특징 추출이 가능하지만 표면 굴곡이 없는 객체에서는 특징 추출을 실패할 확률이 높다.
반대로, 컬러 이미지에서는 표면 굴곡의 존재 여부와 무관하게 객체의 특징 추출이 가능하지만, 컬러 특징이 없는 객체에서는 특징 추출을 실패할 확률이 높다. 특징 추출의 실패는 객체의 자세 추정 오류로 이어진다.
이러한 자세 추정의 오류를 방지하기 위해, 깊이 이미지로부터 추정된 객체의 자세 데이터가 컬러 이미지로부터 추정된 객체의 자세 데이터를 보완하는 데이터로 활용되거나, 반대로, 컬러 이미지로부터 추정된 객체의 자세 데이터가 깊이 이미지로부터 추정된 객체의 자세 데이터를 보완하는 데이터로 활용할 수 있다.
예를 들면, 동일한 객체에 대한 특징 데이터를 깊이 이미지와 컬러 이미지로부터 각각 추출하고, 컬러 이미지를 기반으로 객체의 자세를 추정할 때, 컬러 이미지로부터 추출된 특징 데이터와 깊이 이미지로부터 추출된 특징 데이터를 모두 이용하여 객체의 자세를 추정함으로써, 자세 추정의 오류를 방지할 수 있다. 즉, 더욱 정확하고, 정밀한 자세 추정이 가능해짐으로써, 3차원 모델의 표시 품질은 향상될 수 있다.
프로세서 모듈(120)은 카메라 모듈(110)에서 수행된 스캐닝 프로세스에 따라 생성된 이미지들을 이용하여 이미지에 포함된 객체의 특징을 추출하는 프로세스, 추출된 특징을 기반으로 객체(이미지에 포함된 객체)를 트래킹 하는 프로세스 및 그 추적 결과를 기반으로 실제 객체의 3차원 모델을 복원하는 프로세스를 수행한다.
객체를 트래킹 하는 프로세스는 객체의 자세를 트래킹 하는 작업일 수 있다. 이러한 객체의 자세를 트래킹 하는 작업을 통해, 객체 자세가 추정될 수 있다.
객체의 자세는 카메라 모듈(110)의 자세와 상대적인 관계에 있으므로, 객체의 자세 트래킹은 '카메라 모듈(110)의 자세 트래킹'이라는 용어로 대체될 수 있다. 자세 트래킹 결과는 객체의 3축 위치(three axis position) 데이터와 3축 방위(three axis orientation) 데이터를 포함하는 데이터로서, 이하에서는 자세 데이터(또는 자세 정보)라 지칭한다.
무엇보다도 프로세서 모듈(120)은 불안정한 스캐닝 작업에 따른 객체의 트래킹 실패를 방지하기 위해, 이전에 추정한 객체의 자세 데이터와 현재 추정한 객체의 자세 데이터를 학습하고, 학습된 객체의 자세 데이터를 기반으로 객체의 3차원 모델을 복원한다.
온라인 학습은 복원된 3차원 모델의 표시 품질이 사용자가 만족하는 수준에 도달할 때까지 반복된다. 이렇게 함으로써, 프로세서 모듈(120)은 실제 객체에 대한 불안정한 스캐닝 작업에서도 실제 객체에 대한 3차원 모델을 정확하게 복원할 수 있다.
이러한 3차원 모델 복원을 위해, 프로세서 모듈(120)은, 예를 들면, 적어도 하나의 CPU(central processing unit), 적어도 하나의 GPU(graphic processing unit) 또는 이들의 조합으로 구현될 수 있다.
프로세서 모듈(120)은 고성능 및 고전력 프로세서로 구현될 필요는 없으며, 저성능 및 저전력 프로세서로 구현될 수도 있다. 오히려, 저성능 및 저전력 프로세서로 구현된 경우에서, 사용자는 본 발명에서 달성하고자 하는 기술적 효과, 즉, 객체의 자세 추적에 대한 성능 향상을 더 체감할 수 있다.
저장 모듈(130)은 프로세서 모듈(120)에서 3차원 복원 프로세스의 수행에 필요한 다수의 소프트웨어들을 저장하는 모듈일 수 있다.
소프트웨어는, 예를 들면, 객체의 특징 추출과 관련된 알고리즘, 객체의 실루엣 추출과 관련된 알고리즘, 객체의 전역 기하 정보와 지역 기하 정보와 같은 특징을 추출할 수 있는 알고리즘, 객체의 자세 추적과 관련된 알고리즘, 객체의 특징과 객체의 간의 관계를 학습하는 알고리즘, 3차원 모델을 2차원 공간에 투영하는 프로세스와 관련된 알고리즘, ICP(Iterative Closest Point) 알고리즘, 레이 캐스팅(ray casting) 알고리즘, 3차원 모델 복원과 관련된 알고리즘 등을 포함할 수 있다.
또한, 저장 모듈(130)은 객체의 자세 추정 프로세스 및 3차원 복원 프로세스의 수행에 따라 생성된 중간(intermediate) 데이터 및 최종 데이터 등을 일시적 또는 영구적으로 저장할 수 있다. 이러한 저장 모듈(130)은 램(RAM)과 같은 휘발성 메모리 및 롬(ROM)과 같은 비휘발성 메모리 등을 포함할 수 있다.
디스플레이 모듈(140)은 카메라 모듈(110)이 실제 객체를 정확히 향할 수 있도록 사용자를 도와주며, 3차원 복원 프로세스의 진행 상황, 예를 들어 객체의 텍스쳐링된 메쉬와 같은 최종 결과에 대한 정보를 표시할 수 있다.
복원된 3차원 모델은 디스플레이 모듈(140)에 구비된 표시화면에 표시될 수 있다. 사용자는 표시 화면을 터치하여, 표시화면 표시된 3차원 모델을 상하좌우로 돌리면서 객체의 3차원 모델을 확인할 수 있다.
사용자 인터페이스 모듈(150)은 하나 이상의 버튼들, 마이크로폰들, 스피커들 등을 포함한다. 사용자 인터페이스 모듈(150)은 사용자의 입력에 따라 스캐닝의 시작 및 종료 명령을 생성할 수 있다. 사용자 인터페이스 모듈(150)은 객체의 텍스쳐링된 메쉬와 인터랙션하기 위해 이용될 수 있다.
통신 모듈(160)은 유선 또는 무선 통신을 이용하여 휴대용 전자 장치(100)와 외부 장치(미도시) 간의 통신을 연결할 수 있다. 통신 모듈(160)은 프로세서 모듈(120)에 의해 처리된 결과 데이터, 예를 들면, 3차원 모델 데이터(객체의 텍스쳐링된 메쉬)를 외부 장치에 전송할 수 있다.
외부 장치는 하나 이상의 인쇄 수단들, 다른 전자 장치 등을 포함할 수 있다. 여기서, 인쇄 수단은 통신 모듈(160)을 통해 프로세서 모듈(120)에 의해 복원된 3차원 모델 데이터를 수신하고, 수신된 3차원 모델 데이터를 기반으로 3차원 프린팅을 수행할 수 있는 장치일 수 있다.
본 발명의 일 실시 예에 따른 휴대용 전자 장치(100)의 하드웨어 구성은 도 1에 의해 제한되지 않는다. 휴대용 전자 장치(100)는 도 1에 도시된 바와 달리, 추가적인 구성들을 포함하거나 또는 일부 구성들을 포함하지 않을 수 있다. 예를 들어, 디스플레이 모듈(140)은 실제 객체의 스캐닝을 제어하기 위한 사용자 인터페이스(UI)를 표시하는 터치 스크린을 구비할 수 있다. 이때, 사용자 인터페이스(UI)는 사용자가 스캐닝 각도 또는 스캐닝 시간 등을 변경하는데 이용될 수 있고, 3차원 복원 프로세스에 필요한 다른 기능들을 실행시키는데 이용될 수 있다.
이하, 도 2를 참조하여, 도 1에 도시한 프로세서 모듈(120)에서 수행하는 3차원 복원 프로세스에 대해 더욱 상세히 설명하기로 한다.
도 2는 도 1에 도시한 프로세서 모듈의 내부구성을 개략적으로 도시한 블록도이다. 도면의 간략화를 위해, 도 2에서는 도 1에 도시한 디스플레이 모듈(140), 사용자 인터페이스 모듈(150) 및 통신 모듈(160)의 도시를 생략한다.
프로세서 모듈(120)은, 실제 객체의 3차원 모델을 복원하기 위해, 객체 추출 모듈(120_1), 3차원 모델 복원 모듈(120_3), 특징 추출 모듈(120_5), 자세 추정 모듈(120_7), 자세 학습 모듈(120_9) 및 투영 모듈(120_11)을 포함할 수 있다.
먼저, 3차원 배경 모델(또는 3차원 배경 모델 데이터)을 복원하기 위해, 배경 스캐닝에 따라 획득된 배경 이미지(10)가 3차원 모델 생성 모듈(120_7)로 입력된다. 여기서, 배경 이미지(10)는 서로 다른 시점에서 캡쳐된 다수의 깊이 이미지들 또는 다수의 컬러 이미지들을 포함할 수 있다.
3차원 모델 복원 모듈(120_3)은 3차원 모델 복원 알고리즘을 이용하여, 배경 스캐닝에 따라 획득된 배경 이미지(10)를 기반으로 3차원 배경 모델(3차원 배경 모델 데이터)을 복원하는 프로세스를 수행한다. 복원된 3차원 배경 모델은 저장 모듈(130)에 저장된다.
3차원 모델 복원 알고리즘은, 예를 들면, 키넥트 퓨전(Kinect Fusion) 알고리즘일 수 있다. 본 발명은 키넥트 퓨전(Kinect Fusion) 알고리즘에 특징이 있는 것이 아니므로, 이에 대한 설명은 공지 기술로 대신한다.
3차원 배경 모델의 복원이 완료되면, 3차원 모델 복원 모듈(120_3)은 대략적인 객체 스캐닝(Coarse Object Scanning)에 따라 획득된 객체 이미지를 기반으로 객체에 대한 대략적인 3차원 객체 모델을 대략적으로 복원하고, 정밀한 객체 스캐닝(Fine Object Scanning)에 따라 획득된 객체 이미지를 기반으로 동일한 객체에 대한 정밀한 3차원 객체 모델을 복원한다.
대략적인 3차원 객체 모델과 정밀한 3차원 객체 모델을 복원하기 위해, 객체 추출 프로세스, 특징 추출 프로세스 및 자세 추정 프로세스가 수행된다.
객체 추출 모듈(120_1)
객체 추출 모듈(120_1)은 객체 추출 프로세스를 수행하는 모듈로서, 3차원 배경 모델을 이용하여, 대략적인 객체 스캐닝(Coarse Object Scanning)에 따라 획득된 제1 객체 이미지(12)로부터 객체가 포함된 전경을 추출하는 프로세스를 수행한다.
즉, 객체 추출 모듈(120_1)은 저장 모듈(130)로부터 입력되는 3차원 배경 모델(16)과 카메라 모듈(110)로부터 입력되는 제1 객체 이미지(12)를 비교하여, 상기 제1 객체 이미지(12)에서 상기 3차원 배경 모델에 대응하는 배경을 제거함으로써, 상기 제1 객체 이미지(12)로부터 상기 전경을 분리 추출한다. 여기서, 제1 객체 이미지(12)는 서로 다른 시점을 갖는 다수의 객체 이미지를 포함하며, 상기 다수의 객체 이미지는 깊이 이미지 또는 컬러 이미지일 수 있다. 이하에서는, 제1 객체 이미지(12), 즉, 대략적인 객체 스캐닝(Coarse Object Scanning)에 따라 획득된 이미지를 깊이 이미지로 지칭한다.
여기서, 제1 객체 이미지(12)로부터 전경 추출이 완료되면, 객체 추출 모듈(120_1)은 정밀한 객체 스캐닝(Fine Object Scanning)에 따라 획득된 제2 객체 이미지(14)로부터 동일한 객체가 포함된 전경을 추출하는 프로세스를 수행한다.
즉, 객체 추출 모듈(120_1)은 저장 모듈(130)로부터 입력되는 3차원 배경 모델(16)과 카메라 모듈(110)로부터 입력되는 제2 객체 이미지(14)를 비교하여, 상기 제2 객체 이미지(14)에서 상기 3차원 배경 모델에 대응하는 배경을 제거함으로써, 상기 제2 객체 이미지(14)로부터 상기 전경 이미지를 분리 추출한다.
여기서, 제2 객체 이미지(14)는 서로 다른 시점을 갖는 다수의 객체 이미지를 포함하며, 상기 다수의 객체 이미지는 깊이 이미지 또는 컬러 이미지일 수 있다. 이하에서는, 제2 객체 이미지(14), 즉, 정밀한 객체 스캐닝(Fine Object Scanning)에 따라 획득된 이미지를 컬러 이미지로 가정한다.
객체 이미지에서 객체를 추출하기 위해, 배경 제거 알고리즘(Background Subtraction Algorithm), 전경 추출 알고리즘, 객체 분리 알고리즘 등으로 불리는 다양한 공지의 알고리즘들이 활용될 수 있다. 본 발명은 이러한 객체 추출과 관련된 알고리즘에 특징이 있는 것이 아니므로, 이에 대한 설명은 공지의 기술로 대신한다.
특징 추출 모듈(120_5)
특징 추출 모듈(120_5)은 객체 추출 모듈(120_1)에서 추출된 객체로부터 객체의 특징 데이터를 추출하는 모듈로서, 제1 특징 추출 모듈(120_5A)과 제2 특징 추출 모듈(120_5B)을 포함할 수 있다.
제1 특징 추출 모듈(120_5A)은 제1 특징 추출 알고리즘을 실행하여, 대략적인 객체 스캐닝(Coarse Object Scanning)에 따라 획득된 깊이 이미지(12)로부터 객체 추적을 위한 대략적인(Coarse) 제1 특징 데이터를 추출하는 프로세스를 수행한다. 여기서, 제1 특징 데이터는 객체 특징을 나타내는 키 포인트(key point)일 수 있다. 따라서, 제1 특징 추출 알고리즘은 깊이 이미지(12)로부터 키 포인트(key point)를 추출할 수 있는 알고리즘이라면 그 종류에 제한이 없다.
제2 특징 추출 모듈(120_5B)은, 제1 특징 추출 모듈(120_5A)에 의해 객체의 특징 데이터 추출이 완료되면, 제2 특징 추출 알고리즘을 실행하여, 정밀한 객체 스캐닝에 따라 획득된 컬러 이미지(14)로부터 깊이 이미지(12)에 포함된 객체와 동일한 객체의 추적을 위한 제2-1 특징 데이터를 추출하는 프로세스를 수행한다. 여기서, 제2-1 특징 데이터는 객체의 영역 기반 추적(Region-based Tracking)을 위한 데이터로서, 전역 특징 데이터(Global feature data)와 지역 특징 데이터(local feature data)를 포함할 수 있다. 따라서, 제2 특징 추출 알고리즘은 전역 및 지역 특징 데이터를 추출할 수 있는 알고리즘이라면 그 종류에 제한이 없다. 일 예로, 전역 특징 데이터는 객체의 외곽 형상(또는 실루엣)을 나타내는 데이터이고, 지역 특징 데이터는 객체의 내부 특징을 나타내는 데이터일 수 있다. 다른 예로, 전역 특징 데이터는, 컬러 이미지의 R, G 및 B 값을 기반으로 하는 데이터이고, 지역 특징 데이터는, 컬러 이미지의 H, S 및 V값을 기반으로 하는 데이터일 수 있다.
추가로, 제2 특징 추출 모듈(120_5B)은 제1 특징 추출 모듈(120_5A)로부터의 제1 특징 데이터를 기반으로 복원된 3차원 객체 모델을 2차원 평면 상에 투영한 2차원의 객체 이미지로부터 제2-2 특징 데이터를 추출하는 프로세스를 수행할 수 있다.
즉, 제2 특징 추출 모듈(120_5B)은 현재의 정밀한 객체 스캐닝에 따라 획득된 컬러 이미지(14)로부터 추출된 제2-1 특징 데이터와 이전의 대략적 객체 스캐닝에 따라 복원된 3차원 객체 모델로부터 추출된 제2-2 특징 데이터를 추출한다.
자세 추정 모듈(120_7)
자세 추정 모듈(120_7)은 특징 추출 모듈로부터 추출된 특징 데이터를 기반으로 객체의 자세 추정 프로세스를 수행하는 모듈로서, 제1 자세 추정 모듈(120_7A)과 제2 자세 추정 모듈(120_7B)을 포함할 수 있다.
제1 자세 추정 모듈(120_7A)은 대략적 객체 스캐닝(Coarse Object Scanning)에 따라 획득된 깊이 이미지로부터 추출된 객체의 제1 특징 데이터를 기반으로 객체의 자세 추정 프로세스를 수행한다.
구체적으로, 제1 자세 추정 모듈(120_7A)은 제1 특징 추출 모듈(120_5A)로부터 입력되는 제1 특징 데이터로부터 버텍스 맵(vertex map)과 노말 맵(normal map)을 계산하고, ICP(Iterative Closest Point) 정합(alignment) 기법을 이용하여 상기 계산된 버텍스 맵과 노말 맵을 기반으로 객체의 제1 자세 데이터를 추정한다.
제2 자세 추정 모듈(120_7B)은 정밀한 객체 스캐닝에 따라 획득된 컬러 이미지로부터 추출된 객체의 제2-1 특징 데이터와 제1 특징 데이터를 기반으로 복원된 3차원 객체 모델을 2차원 평면 상에 투영한 2차원의 객체 이미지로부터 추출된 제2-2 특징 데이터를 기반으로 객체의 정밀한 자세 추정 프로세스를 수행한다.
일 예에서, 제2 자세 추정 모듈(120_7B)은 제2 특징 추출 모듈(120_5B)로부터 입력되는 제2-1 특징 데이터와 제2-2 특징 데이터로부터 버텍스 맵(vertex map)과 노말 맵(normal map)을 계산하고, ICP(Iterative Closest Point) 정합(alignment) 기법을 이용하여 상기 계산된 버텍스 맵과 노말 맵을 기반으로 객체의 제2 자세 데이터를 추정할 수 있다.
다른 예에서, 제2 자세 추정 모듈(120_7B)은, 아래에서 설명하겠지만, 대략적 객체 스캐닝에 따라 획득된 깊이 이미지를 기반으로 추정된 제1 자세 데이터와 복원된 3차원 객체 모델을 기반으로 초기 학습을 수행하고, 그 학습 데이터를 더 고려하여 상기 제2 자세 데이터를 추정할 수 있다.
이와 같이, 본 발명의 실시 예에 따른 상기 제2 자세 데이터는 정밀한 객체 스캐닝에 따라 현재 획득한 컬러 이미지로부터 추출된 특징(제2-1 특징 데이터), 대략적 객체 스캐닝에 따라 이전에 획득한 깊이 이미지로부터 추출된 특징(제2-2 특징 데이터) 및 상기 학습 데이터를 모두 고려하여 객체의 자세를 추정한 데이터이기 때문에, 높은 정확도와 정밀도를 갖는다. 따라서, 이러한 제2 자세 데이터를 기반으로 복원된 3차원 객체 모델은 정확도와 정밀도가 극대화된 매우 우수한 표시 품질을 제공할 수 있다.
3차원 모델 복원 모듈 (120_3)
3차원 모델 복원 모듈(120_3)은 자세 추정 모듈(120_7)에서 추정한 객체의 자세 데이터를 기반으로 3차원 객체 모델을 복원하는 프로세스를 수행한다.
구체적으로, 3차원 모델 복원 모듈(120_3)은 ICP(Iterative Closest Point) 알고리즘 및 레이 캐스팅(ray casting) 알고리즘을 이용하여, 제1 자세 추정 모듈(120_7A)에 의해 추정된 제1 자세 데이터를 기반으로 깊이 이미지 기반의 3차원 객체 모델을 복원한다.
또한, 3차원 모델 복원 모듈(120_3)은 레이 캐스팅 알고리즘을 이용하여 제2 자세 추정 모듈(120_7b)에 의해 추정된 제2 자세 데이터를 기반으로 컬러 이미지 기반의 3차원 객체 모델을 복원한다.
여기서, 상기 복원된 컬러 이미지 기반의 3차원 객체 모델은 정밀한 객체 스캐닝에 따라 현재 획득한 컬러 이미지로부터 추출된 특징(제2-1 특징 데이터)외에 대략적 객체 스캐닝에 따라 획득한 깊이 이미지로부터 추출된 특징, 자세 데이터 및 이들의 학습 데이터로부터 복원된 것이므로, 매우 높은 표시 품질을 갖는다.
학습 모듈(120_9)
학습 모듈(120_9)은 3차원 모델 복원 모듈(120_3)로부터 대략적 객체 스캐닝에 따라 획득된 이미지(예를 들면, 깊이 이미지)로부터 추정된 제1 자세 데이터와 상기 제1 자세 데이터를 기반으로 복원된 3차원 객체 모델(또는 3차원 객체 모델 데이터)을 이용하여 객체의 자세에 대한 초기 학습을 수행하여 학습 데이터를 생성하는 프로세스를 수행한다. 생성된 학습 데이터가 저장 모듈(130)에 저장되면, 학습 데이터의 구축이 완료된다.
학습 모듈(120_9)은, 상기 학습 데이터의 구축이 완료되면, 상기 구축된 학습 데이터를 기반으로 정밀한 객체 스캐닝에 따라 획득된 이미지(예를 들면, 컬러 이미지)로부터 추정되는 자세 데이터와 상기 자세 데이터를 기반으로 복원된 3차원 객체 모델을 갱신한다. 이렇게 함으로써, 자세 추정 모듈(120_7)에서 수행하는 자세 추정의 정확도를 극대화할 수 있다.
이와 같이, 학습 모듈(120_9)에서는 이전에 추정된 객체의 자세 정보(예를 들면, 제1 자세 데이터)를 이용하여 현재 추정된 자세 정보(예를 들면, 제2 자세 데이터)를 보정하는 온라인 학습을 수행함으로써, 객체의 불안정한 스캐닝에 따라 복원된 3차원 객체 모델에서 시인되는 빈틈 또는 구멍과 같은 표시 품질의 저해 요소를 안정적으로 제거할 수 있다. 그러므로, 본 발명은 휴대용 전자 장치를 이용하여 실제 객체를 자유롭고 손쉽게 스캔하여 3차원 객체 모델을 정밀하게 복원할 수 있다.
한편, 학습 모듈(120_9)에 의해 수행되는 온라인 학습은 사용자가 원하는 표시 품질에 도달할 때까지 지속적으로 반복된다.
도 3은 본 발명의 실시 예에 따른 객체의 3차원 모델 복원 방법을 나타내는 흐름도이다. 설명의 이해를 돕기 위해, 도 1 및 2를 함께 참조하여 설명한다. 또한, 설명의 간략화를 위해, 이하의 각 단계를 설명하는 과정에서 도 1 및 2를 참조한 설명과 중복된 설명은 생략하거나 간략히 기술한다.
도 3을 참조하면, 먼저, 단계 S310에서, 카메라 모듈(110)에 의해, 배경 스캐닝이 수행된다. 배경 스캐닝에 의해 배경 이미지(10)가 획득될 수 있다. 이때, 배경 이미지(10)는 서로 다른 시점을 갖는 다수의 이미지들을 포함할 수 있으며, 다수의 이미지들은 깊이 이미지 또는 컬러 이미지일 수 있다.
이어, 단계 S320에서, 프로세서 모듈(120)에 의해, 배경 이미지(10)를 기반으로 3차원 배경 모델(또는 3차원 배경 모델 데이터)을 복원하는 과정이 수행된다. 복원된 3차원 배경 모델은 아래의 객체 스캐닝에 따라 획득한 객체 이미지에서 객체가 포함된 전경 이미지를 추출하기 위함이다. 3차원 배경 모델을 복원하기 위해, 키넥트 퓨전(Kinect Fusion) 알고리즘과 같은 3차원 모델 복원 알고리즘이 프로세서 모듈(120)에 의해 실행될 수 있다.
이어, 단계 S330에서, 카메라 모듈(110)에 의해, 제1 객체 스캐닝 프로세스(Coarse Scanning Process)가 수행된다. 제1 객체 스캐닝 프로세스(Coarse Scanning Process)는 서로 다른 시점에서 상기 실제 객체에 대한 다수의 객체 이미지들(이하, 제1 객체 이미지라 함)을 캡쳐하는 것일 수 있다. 제1 객체 스캐닝 프로세스는 객체의 자세에 대해 초기 학습을 수행하기 위한 대략적인 자세 데이터 및 대략적인 3차원 객체 모델(또는 대략적인 3차원 객체 모델 데이터)를 획득하기 위한 프로세스일 수 있다. 제1 객체 스캐닝 프로세는 상기 카메라 모듈과 상기 실제 객체 중 적어도 하나를 고정시키지 않은 상태에서 수행되는 것일 수 있다. 제1 객체 스캐닝 프로세스에 따라 획득된 제1 객체 이미지는 깊이 이미지 또는 컬러 이미지일 수 있으며, 본 실시 예에서는 깊이 이미지로 가정한다.
이어, 단계 S340에서, 상기 제1 객체 스캐닝(Coarse Scanning Process)에 따라 획득한 제1 객체 이미지를 기반으로 3차원 객체 모델을 복원하고, 3차원 객체 모델을 복원하는 과정에서 획득한 데이터를 기반으로 객체에 대한 자세 학습을 수행하는 과정이 수행될 수 있다. 여기서, 획득한 데이터는 객체의 특징 데이터(이하, 제1 특징 데이터), 객체의 자세 데이터(이하, 제1 자세 데이터) 및 3차원 객체 모델 데이터 등을 포함할 수 있다. 자세 학습은 상기 획득한 데이터를 기반으로 제1 객체 이미지와 객체의 자세 간의 관계를 학습하는 것으로, 다양한 학습 알고리즘에 따라 수행될 수 있다. 학습 알고리즘으로, 예를 들면, 기계 학습(Machine Learning) 알고리즘, 딥러닝(Deep Learning) 알고리즘 등과 같은 인공 신경망 알고리즘 등이 이용될 수 있다. 자세 학습에 따라 생성된 학습 데이터는 프로세서 모듈(120)의 제어에 따라 저장 모듈(130)에 저장될 수 있다. 학습 데이터는 지속적으로 갱신될 수 있다.
이어, 단계 S350에서, 카메라 모듈(110)에 의해, 제2 객체 스캐닝 프로세스(Fine Scanning Process)가 수행된다. 제2 객체 스캐닝 프로세스(Fine Scanning Process)는 서로 다른 시점에서 상기 실제 객체에 대한 다수의 객체 이미지들(이하, 제2 객체 이미지라 함)을 캡쳐하는 것일 수 있다. 제2 객체 스캐닝 프로세스(Fine Scanning Process)는 전 단계 S350에서 구축된 학습 데이터를 반영하여 최종 3차원 객체 모델을 복원하기 위해 수행되는 프로세스이다. 제2 객체 스캐닝 프로세스(Fine Scanning Process)는 제1 객체 스캐닝 프로세스(Coarse Scanning Process)에 따라 스캐닝된 객체와 동일한 객체를 스캐닝하는 것이다. 제1 객체 스캐닝 프로세스(Coarse Scanning Process)와 유사하게, 제2 객체 스캐닝 프로세스(Fine Scanning Process)는 서로 다른 시점에서 상기 객체에 대한 다수의 객체 이미지들(이하, 제2 객체 이미지)을 캡쳐하는 것이다. 제2 객체 스캐닝 프로세는 상기 카메라 모듈과 상기 실제 객체 중 적어도 하나를 고정시키지 않은 상태에서 수행되는 것일 수 있다. 제2 객체 이미지는 컬러 이미지 또는 깊이 이미지일 수 있다. 본 실시 예에서는, 제2 객체 이미지를 컬러 이미지로 가정한다. 이러한 컬러 이미지를 기반으로 객체를 추적하면, 깊이 이미지를 기반으로 객체를 추적하는 것과 다르게, 3차원 객체 모델을 복원하기 위해 텍스쳐(Texture) 정보와 기하(Geometry) 정보의 정합하는 과정에서 정확도를 향상시킬 수 있다.
이어, 단계 S360에서, 제2 객체 스캐닝(Fine Scanning Process)에 따라 획득한 제2 객체 이미지와 상기 단계 S350의 자세 학습에 따라 생성된 학습 데이터를 기반으로 최종 3차원 객체 모델을 복원하는 과정이 수행된다. 이에 대한 상세한 설명은 아래에서 상세히 기술한다.
상기 단계들 S310~S360은 설명의 이해를 돕기 위한 구분한 것으로, 일부 단계들은 하나의 단계로 통합될 수 있다.
도 4는 도 3에 도시한 단계 S340의 상세 과정을 나타내는 흐름도이다.
도 4를 참조하면, 먼저, 단계 S410에서, 프로세서 모듈(120) 또는 프로세서 모듈(120)의 객체 추출 모듈(120_1)에 의해, 제1 객체 스캐닝 프로세스(Coarse Scanning Process)에 따라 획득된 제1 객체 이미지(깊이 이미지)에서 객체가 포함된 전경 이미지를 추출하는 과정이 수행된다. 전경 이미지는, 예를 들면, 제1 객체 이미지(깊이 이미지)에서 도 3의 단계 S320에서 복원된 3차원 배경 모델에 대응하는 배경 이미지를 제거함으로써, 추출될 수 있다. 배경 이미지를 제거하기 위해, 배경 제거 알고리즘(Background Subtraction Algorithm), 전경 추출 알고리즘, 객체 분리 알고리즘 등으로 알려진 다양한 공지의 알고리즘이 이용될 수 있다.
이어, 단계 S420에서, 특징 추출 알고리즘을 이용하여, 상기 전경 이미지로부터 상기 객체의 제1 특징 데이터를 추출하는 과정이 수행된다. 제1 특징 데이터를 추출하기 위한 특징 추출 알고리즘으로, 예를 들면, 깊이 이미지로부터 키 포인트(key point)를 추출할 수 있는 알고리즘이 활용될 수 있다.
이어, 단계 S430에서, 자세 추정 알고리즘을 이용하여, 상기 제1 특징 데이터를 기반으로 제1 자세 데이터를 추정하는 과정이 수행된다. 제1 자세 데이터를 추정하기 위한 자세 추정 알고리즘으로, ICP(Iterative Closest Point) 알고리즘이 활용될 수 있다. 예를 들면, 제1 특징 데이터로부터 버텍스 맵(vertex map)과 노말 맵(normal map)을 계산하고, ICP(Iterative Closest Point) 정합(alignment) 기법에 따라 상기 계산된 버텍스 맵과 노말 맵을 기반으로 객체의 제1 자세 데이터가 추정될 수 있다.
이어, 단계 S440에서, 상기 제1 자세 데이터를 기반으로 3차원 객체 모델 데이터를 복원하는 과정이 수행된다. 3차원 객체 모델 데이터를 복원하기 위해, 레이 캐스팅(ray casting) 알고리즘이 활용될 수 있다.
본 명세서에서는 객체 추출 프로세스, 특징 추출 프로세스, 자세 추정 프로세스 및 3차원 모델 복원 프로세스가 기능적인 처리 단위로 구분되어 설명되지만, 객체 추출 프로세스, 특징 추출 프로세스 및 자세 추정 프로세스는 모두 3차원 모델 복원 프로세스에 포함되는 프로세스로 볼 수도 있다. 따라서, 객체 추출 알고리즘, ICP 알고리즘 및 레이 캐스팅 알고리즘은 3차원 복원 알고리즘의 범주에 속하는 알고리즘으로 보아도 무방하다. 이 경우, 도 2에 도시한 객체 추출 모듈(120_1), 특징 추출 모듈(120_5) 및 자세 추정 모듈(120_7)은 하나의 3차원 모델 복원 모듈(120_3)에 포함될 수 있다. 물론, 자세 학습을 수행하는 학습 모듈(120_9)도 3차원 모델 복원 모듈(120_3)에 포함될 수 있다.
이어, 단계 S450에서, 단계 S440에서 상기 복원된 3차원 객체 모델 데이터와 단계 S430에서 상기 추정된 상기 제1 자세 데이터를 기반으로 상기 객체에 대한 자세 학습을 수행하는 과정이 수행된다.
이어, 단계 S460에서, 상기 자세 학습에 따라 생성된 학습 데이터를 저장 모듈(130)에 저장하는 과정이 수행된다. 이와 같이, 저장 모듈에 저장된 학습 데이터는 프로세서 모듈(120)의 제어에 따라 지속적으로 갱신되며, 갱신될 때마다 제2 객체 스캐닝 프로세스에 따른 최종 3차원 객체 모델 복원에 실시간으로 반영된다.
도 5는 도 3에 도시한 단계 S360의 상세 과정을 나타내는 일 실시예이다.
도 5를 참조하면, 먼저, 단계 S510에서, 객체 추출 알고리즘을 이용하여, 제2 객체 이미지로부터 객체가 포함된 전경 이미지를 추출하는 과정이 수행된다.
이어, 단계 S520에서, 특징 추출 알고리즘을 이용하여, 상기 제2 객체 이미지로부터 상기 객체의 제2 특징 데이터를 추출하는 과정이 수행된다. 여기서, 특징 추출 알고리즘은 이미지로부터 전역 특징 데이터와 지역 특징 데이터를 추출할 수 있는 알고리즘이라면, 그 종류를 제한하지 않는다.
이어, 단계 S530에서, ICP 알고리즘과 같은 자세 추정 알고리즘을 이용하여, 상기 제2 특징 데이터 및 제1 객체 스캐닝 프로세스(Coarse Scanning Process)에 따른 3차원 객체 모델을 복원하는 과정에서 획득한 데이터를 기반으로 구축된 상기 학습 데이터를 기반으로 제2 자세 데이터를 추정하는 과정이 수행된다. 예를 들면, 제2 특징 데이터를 기반으로 자세값을 추정한 후, 추정된 자세값과 상기 학습 데이터에 포함된 자세값 간의 중간값 또는 평균값을 상기 제2 자세 데이터로 추정할 수 있다.
이어, 단계 S540에서, 레이 캐스팅 알고리즘과 같은 3차원 복원 알고리즘을 이용하여, 상기 제2 자세 데이터를 기반으로 최종 3차원 객체 모델을 복원하는 과정이 수행된다.
도 6은 도 3에 도시한 단계 S360의 상세 과정을 나타내는 다른 실시예이다.
도 6을 참조하면, 먼저, 단계 S610에서, 객체 추출 알고리즘을 이용하여, 제2 객체 이미지로부터 객체가 포함된 전경 이미지를 추출하는 과정이 수행된다.
이어, 단계 S620에서, 특징 추출 알고리즘을 이용하여, 상기 제2 객체 이미지로부터 상기 객체의 제2-1 특징 데이터를 추출하는 과정이 수행된다.
이어, 단계 S630에서, 특징 추출 알고리즘을 이용하여, 상기 제1 객체 이미지 기반으로 복원된 3차원 객체 모델을 2차원 평면 상에 투영한 2차원의 객체 이미지로부터 제2-2 특징 데이터를 추출하는 과정이 수행된다. 본 실시예에서는 단계 S630이 단계 S620 이후에 수행되는 것으로 기술하고 있으나, 단계 S620과 S630은 동시에 수행될 수 있다. 단계 S620과 S630은 모두 객체 이미지로부터 객체의 특징 데이터를 추출하는 점에서 하나의 단계로 통합될 수 있다.
이어, 단계 S640에서, 자세 추정 알고리즘을 이용하여, 전술한 단계들 S620 및 S630에서 각각 추출된 제2-1 및 제2-2 특징 데이터와 도 4의 단계 S450의 자세 학습에 따라 생성된 학습 데이터를 기반으로 제2 자세 데이터를 추정하는 과정이 수행된다. 예를 들면, 제2-1 및 제2-2 특징 데이터로부터 자세값을 추정한 후, 추정된 자세값과 상기 학습 데이터에 포함된 자세값 간의 중간값 또는 평균값을 상기 제2 자세 데이터로 추정할 수 있다.
이어, 단계 S650에서, 3차원 복원 알고리즘을 이용하여, 상기 제2 자세 데이터를 기반으로 최종 3차원 객체 모델을 복원하는 과정이 수행된다.
한편, 전술한 도 5의 실시예는, 도 6의 실시예와는 다르게, 특징 추출 알고리즘을 이용하여, 상기 제1 객체 이미지 기반으로 복원된 3차원 객체 모델을 2차원 평면 상에 투영한 2차원의 객체 이미지로부터 제2-2 특징 데이터를 추출하는 단계 S630을 수행하지 않는다. 이러한 도 5의 실시예는 도 2의 실시 예에서 투영 모듈(120_11)이 생략될 수도 있음을 의미한다.
이상 설명한 바와 같이, 본 발명은 제1 객체 스캐닝에 의해 획득된 제1 객체 이미지를 기반으로 3차원 객체 모델을 복원한 후, 3차원 객체 모델을 복원하는 과정에서 추정된 객체 추적 결과, 즉, 객체의 자세 데이터를 기반으로 객체의 자세를 학습하여, 그 학습 결과를 제2 객체 스캐닝에 의해 획득된 제2 객체 이미지를 기반으로 최종 3차원 객체 모델을 복원하는 프로세스에 적용함으로써, 복원된 최종 3차원 객체 모델의 정밀도 및 정확도를 극대화할 수 있다.
또한, 제1 객체 스캐닝 프로세스를 수행하기 위해, 깊이 센서를 이용하고, 제2 객체 스캐닝 프로세스를 수행하기 위해, 컬러 센서를 이용함으로써, 제2 객체 스캐닝 프로세스에서 획득되는 컬러 이미지 기반으로 최종 3차원 객체 모델을 복원하는 과정에서, 텍스쳐 정보 및 기하 정보를 정확하게 정합하여, 최종 3차원 객체 모델의 표시 품질을 더욱 극대화할 수 있다.
이러한 3차원 객체 모델의 복원 방법은 하드웨어의 변경 없이 소프트웨어 레벨에서 구현될 수 있기 때문에, 하드웨어 성능에 관계없이, 표시 품질이 우수한 3차원 객체 모델을 제공할 수 있다.
이러한 측면에서, 저성능 및 저전력의 카메라 센서가 탑재된 휴대용 전자 장치에서도 표시 품질이 우수한 3차원 객체 모델을 제공할 수 있고, 나아가 기존의 스캐닝 자유도를 유지하면서도 안정적이고, 빈틈없는 객체 스캐닝이 가능하다.
이상에서 본 발명에 대하여 실시예를 중심으로 설명하였으나 이는 단지 예시일 뿐 본 발명을 한정하는 것이 아니며, 본 발명이 속하는 분야의 통상의 지식을 가진 자라면 본 발명의 본질적인 특성을 벗어나지 않는 범위에서 이상에 예시되지 않은 여러 가지의 변형과 응용이 가능함을 알 수 있을 것이다. 예를 들어, 본 발명의 실시예에 구체적으로 나타난 각 구성 요소는 변형하여 실시할 수 있는 것이다. 그리고 이러한 변형과 응용에 관계된 차이점들은 첨부된 청구 범위에서 규정하는 본 발명의 범위에 포함되는 것으로 해석되어야 할 것이다.

Claims (20)

  1. 카메라 모듈이, 동일한 객체를 스캐닝하는 제1 및 제2 객체 스캐닝 프로세스를 순차적으로 수행하는 단계;
    프로세스 모듈이, 상기 제1 객체 스캐닝에 따라 획득한 제1 객체 이미지를 기반으로 3차원 객체 모델을 복원하고, 상기 제1 객체 이미지 기반의 3차원 객체 모델을 복원하는 과정에서 획득한 데이터를 기반으로 객체에 대한 자세 학습을 수행하여, 학습 데이터를 구축하는 단계; 및
    상기 프로세스 모듈이, 상기 제2 객체 스캐닝에 따라 획득한 제2 객체 이미지와 상기 학습 데이터를 기반으로 최종 3차원 객체 모델을 복원하는 단계;를 포함하고,
    상기 최종 3차원 객체 모델을 복원하는 단계는,
    특징 추출 알고리즘을 이용하여, 상기 제2 객체 이미지로부터 상기 객체의 제2-1 특징 데이터를 추출하고, 상기 제1 객체 이미지 기반의 3차원 객체 모델을 2차원 평면 상에 투영한 2차원의 객체 이미지로부터 제2-2 특징 데이터를 추출하는 단계;
    자세 추정 알고리즘을 이용하여, 상기 학습 데이터, 상기 제2-1 특징 데이터 및 상기 제2-2 특징 데이터를 기반으로 제2 자세 데이터를 추정하는 단계; 및
    3차원 복원 알고리즘을 이용하여, 상기 제2 자세 데이터를 기반으로 최종 3차원 객체 모델을 복원하는 단계;를 포함하는 객체의 3차원 모델을 복원하는 방법.
  2. 제1항에서, 상기 순차적으로 수행하는 단계는,
    상기 카메라 모듈과 실제 객체 중 적어도 하나를 고정시키지 않은 상태에서 상기 제1 및 제2 객체 스캐닝 프로세스를 수행하는 것인 객체의 3차원 모델을 복원하는 방법.
  3. 제1항에서, 상기 순차적으로 수행하는 단계는,
    서로 다른 시점에서 상기 객체에 대한 다수의 깊이 이미지들을 캡쳐하는 상기 제1 객체 스캐닝 프로세스를 수행하는 단계; 및
    서로 다른 시점에서 상기 객체에 대한 다수의 컬러 이미지들을 캡쳐하는 상기 제2 객체 스캐닝 프로세스를 수행하는 단계
    를 포함하는 것인 객체의 3차원 모델을 복원하는 방법.
  4. 제1항에서, 상기 학습 데이터를 구축하는 단계는,
    특징 추출 알고리즘을 이용하여, 상기 제1 객체 이미지로부터 상기 객체의 제1 특징 데이터를 추출하는 단계;
    자세 추정 알고리즘을 이용하여, 상기 제1 특징 데이터를 기반으로 상기 객체의 제1 자세 데이터를 추정하는 단계;
    3차원 복원 알고리즘을 이용하여, 상기 제1 자세 데이터를 기반으로 상기 제1 객체 이미지 기반의 3차원 객체 모델 데이터를 복원하는 단계;
    상기 제1 객체 이미지 기반의 3차원 객체 모델 데이터와 상기 제1 자세 데이터를 기반으로 상기 객체에 대한 자세 학습을 수행하여, 상기 학습 데이터를 생성하는 단계; 및
    상기 생성된 학습 데이터를 저장 모듈에 저장하여 상기 학습 데이터를 구축하는 단계
    를 포함하는 것인 객체의 3차원 모델을 복원하는 방법.
  5. 제1항에서, 상기 최종 3차원 객체 모델을 복원하는 단계는,
    특징 추출 알고리즘을 이용하여, 상기 제2 객체 이미지로부터 상기 객체의 제2 특징 데이터를 추출하는 단계;
    자세 추정 알고리즘을 이용하여, 상기 학습 데이터 및 상기 제2 특징 데이터를 기반으로 제2 자세 데이터를 추정하는 단계; 및
    상기 제2 자세 데이터를 기반으로 최종 3차원 객체 모델을 복원하는 단계;
    를 포함하는 것인 객체의 3차원 모델을 복원하는 방법.
  6. 제5항에서, 상기 추출하는 단계는,
    상기 제2 객체 이미지로부터 상기 객체의 전역 특징 데이터와 지역 특징 데이터를 포함하는 상기 제2 특징 데이터를 추출하는 것인 객체의 3차원 모델을 복원하는 방법.
  7. 삭제
  8. 제1항에서, 상기 순차적으로 수행하는 단계는,
    3차원 배경 모델을 복원하기 위해, 상기 제1 객체 스캐닝 프로세스를 수행하기 이전에 상기 객체가 배치되는 특정 공간의 배경을 스캐닝하는 배경 스캐닝 프로세스를 수행하는 단계
    를 더 포함하는 것인 객체의 3차원 모델을 복원하는 방법.
  9. 제8항에서, 상기 학습 데이터를 구축하는 단계는,
    상기 제1 객체 이미지에서 상기 3차원 배경 모델에 대응하는 배경 이미지를 제거하여 상기 객체가 포함된 전경 이미지를 추출하는 단계;
    상기 전경 이미지에서 추출된 제1 특징 데이터를 기반으로 상기 객체의 제1 자세 데이터를 추정하는 단계;
    상기 제1 자세 데이터를 기반으로 상기 3차원 객체 모델을 복원하는 단계; 및
    상기 제1 자세 데이터와 상기 3차원 객체 모델을 기반으로 상기 객체의 자세 학습을 수행하여, 상기 학습 데이터를 구축하는 단계
    를 포함하는 것인 객체의 3차원 모델을 복원하는 방법.
  10. 제8항에서, 상기 최종 3차원 객체 모델을 복원하는 단계는,
    상기 제2 객체 이미지에서 상기 3차원 배경 모델에 대응하는 배경 이미지를 제거하여 상기 객체가 포함된 전경 이미지를 추출하는 단계;
    상기 전경 이미지에서 추출된 상기 객체의 제2-1 특징 데이터, 상기 제1 객체 이미지 기반의 3차원 객체 모델을 2차원 평면 상에 투영한 2차원의 객체 이미지로부터 추출된 제2-2 특징 데이터 및 상기 학습 데이터를 기반으로 상기 객체의 제2 자세 데이터를 추정하는 단계; 및
    상기 제2 자세 데이터를 기반으로 상기 최종 3차원 객체 모델을 복원하는 단계;
    를 포함하는 것인 객체의 3차원 모델을 복원하는 방법.
  11. 제1항에서, 상기 제1 객체 스캐닝 프로세스는,
    서로 다른 시점에서 상기 객체에 대한 다수의 깊이 이미지들을 캡쳐하는 대략적 스캐닝 프로세스(Coarse Scanning Process)인 것인 객체의 3차원 모델을 복원하는 방법.
  12. 제1항에서, 상기 제2 객체 스캐닝 프로세스는,
    서로 다른 시점에서 상기 객체에 대한 다수의 컬러 이미지들을 캡쳐하는 정밀한 스캐닝 프로세스(Fine Scanning Process)인 것인 객체의 3차원 모델을 복원하는 방법.
  13. 동일한 객체를 스캐닝하는 제1 및 제2 객체 스캐닝 프로세스를 순차적으로 수행하는 카메라 모듈; 및
    상기 제1 객체 스캐닝에 따라 획득한 제1 객체 이미지를 기반으로 3차원 객체 모델을 복원하고, 상기 제1 객체 이미지 기반의 3차원 객체 모델을 복원하는 과정에서 획득한 데이터를 기반으로 객체 대한 자세 학습을 수행하여, 학습 데이터를 구축하고, 상기 제2 객체 스캐닝에 따라 획득한 제2 객체 이미지와 상기 학습 데이터를 기반으로 최종 3차원 객체 모델을 복원하는 프로세스 모듈;을 포함하고,
    상기 프로세스 모듈은,
    특징 추출 알고리즘을 실행하여, 상기 제2 객체 이미지로부터 상기 객체의 제2-1 특징 데이터를 추출하고, 상기 제1 객체 이미지 기반의 3차원 객체 모델을 2차원 평면 상에 투영한 2차원의 객체 이미지로부터 제2-2 특징 데이터를 추출하는 제2 특징 추출 모듈;
    자세 추정 알고리즘을 실행하여, 상기 학습 데이터, 상기 제2-1 특징 데이터 및 상기 제2-2 특징 데이터를 기반으로 제2 자세 데이터를 추정하는 제2 자세 추정 모듈; 및
    3차원 복원 알고리즘을 실행하여, 상기 제2 자세 데이터를 기반으로 최종 3차원 객체 모델을 복원하는 3차원 모델 복원 모듈
    을 포함하는 것인 객체의 3차원 모델을 복원하는 장치.
  14. 제13항에서, 상기 카메라 모듈은,
    휴대용 전자 장치에 탑재되는 것인 객체의 3차원 모델을 복원하는 장치.
  15. 제13항에서, 상기 프로세스 모듈은,
    특징 추출 알고리즘을 실행하여, 상기 제1 객체 이미지로부터 상기 객체의 제1 특징 데이터를 추출하는 제1 특징 추출 모듈;
    자세 추정 알고리즘을 실행하여, 상기 제1 특징 데이터를 기반으로 상기 객체의 제1 자세 데이터를 추정하는 제1 자세 추정 모듈;
    3차원 복원 알고리즘을 실행하여, 상기 제1 자세 데이터를 기반으로 상기 제1 객체 이미지 기반의 3차원 객체 모델 데이터를 복원하는 3차원 모델 복원 모듈;
    상기 제1 객체 이미지 기반의 3차원 객체 모델 데이터와 상기 제1 자세 데이터를 기반으로 상기 객체에 대한 자세 학습을 수행하여, 상기 학습 데이터를 구축하는 학습 모듈
    을 포함하는 객체의 3차원 모델을 복원하는 장치.
  16. 삭제
  17. 제13항에서, 상기 카메라 모듈은,
    서로 다른 시점에서 상기 객체에 대한 다수의 깊이 이미지들을 캡쳐하는 상기 제1 객체 스캐닝 프로세스를 수행하는 깊이 센서; 및
    서로 다른 시점에서 상기 객체에 대한 다수의 컬러 이미지들을 캡쳐하는 상기 제2 객체 스캐닝 프로세스를 수행하는 컬러 센서
    를 포함하는 것인 객체의 3차원 모델을 복원하는 장치.
  18. 제13항에서, 상기 구축된 학습 데이터를 저장하는 저장 모듈을 더 포함하는 것인 객체의 3차원 모델을 복원하는 장치.
  19. 삭제
  20. 삭제
KR1020180071997A 2018-06-22 2018-06-22 객체의 3차원 모델을 복원하는 방법 및 장치 KR102455468B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020180071997A KR102455468B1 (ko) 2018-06-22 2018-06-22 객체의 3차원 모델을 복원하는 방법 및 장치
US16/104,431 US10726612B2 (en) 2018-06-22 2018-08-17 Method and apparatus for reconstructing three-dimensional model of object

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180071997A KR102455468B1 (ko) 2018-06-22 2018-06-22 객체의 3차원 모델을 복원하는 방법 및 장치

Publications (2)

Publication Number Publication Date
KR20200000106A KR20200000106A (ko) 2020-01-02
KR102455468B1 true KR102455468B1 (ko) 2022-10-19

Family

ID=68980428

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180071997A KR102455468B1 (ko) 2018-06-22 2018-06-22 객체의 3차원 모델을 복원하는 방법 및 장치

Country Status (2)

Country Link
US (1) US10726612B2 (ko)
KR (1) KR102455468B1 (ko)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110532571B (zh) * 2017-09-12 2022-11-18 腾讯科技(深圳)有限公司 文本处理方法及相关装置
CN111311521A (zh) * 2020-03-12 2020-06-19 京东方科技集团股份有限公司 图像修复方法、装置和电子设备
CN113628322B (zh) * 2021-07-26 2023-12-05 阿里巴巴(中国)有限公司 图像处理、ar显示与直播方法、设备及存储介质
KR20230053261A (ko) 2021-10-14 2023-04-21 주식회사 인피닉 2d 데이터를 기초로 한 3d 행동 인식 및 추적 방법과 이를 실행하기 위하여 기록매체에 기록된 컴퓨터 프로그램
CN113781642A (zh) * 2021-10-22 2021-12-10 苏州葛兰岱尔数字科技有限公司 一种基于减面算法的三维模型多层级lod的生成方法
US11928830B2 (en) 2021-12-22 2024-03-12 Honeywell International Inc. Systems and methods for generating three-dimensional reconstructions of environments
WO2023179782A1 (zh) * 2022-03-25 2023-09-28 先临三维科技股份有限公司 三维扫描系统、方法、装置和移动计算模组

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101193223B1 (ko) * 2010-07-15 2012-10-22 경희대학교 산학협력단 인체 동작의 3d 모션 구현방법
KR20120065834A (ko) * 2010-12-13 2012-06-21 한국전자통신연구원 멀티 카메라 기반의 디지털 액터 생성 장치 및 그 방법
US9053571B2 (en) 2011-06-06 2015-06-09 Microsoft Corporation Generating computer models of 3D objects
KR101841668B1 (ko) 2012-02-15 2018-03-27 한국전자통신연구원 입체 모델 생성 장치 및 방법
US9554121B2 (en) 2015-01-30 2017-01-24 Electronics And Telecommunications Research Institute 3D scanning apparatus and method using lighting based on smart phone
RU2642167C2 (ru) * 2015-08-14 2018-01-24 Самсунг Электроникс Ко., Лтд. Устройство, способ и система для реконструкции 3d-модели объекта
KR101784584B1 (ko) 2016-01-19 2017-10-12 인하대학교 산학협력단 레이저 회전을 이용하여 3차원 물체를 판별하는 장치 및 방법
KR102365721B1 (ko) * 2016-01-26 2022-02-22 한국전자통신연구원 모바일 기기를 이용한 3차원 얼굴 모델 생성 장치 및 방법
US11170224B2 (en) * 2018-05-25 2021-11-09 Vangogh Imaging, Inc. Keyframe-based object scanning and tracking

Also Published As

Publication number Publication date
KR20200000106A (ko) 2020-01-02
US20190392632A1 (en) 2019-12-26
US10726612B2 (en) 2020-07-28

Similar Documents

Publication Publication Date Title
KR102455468B1 (ko) 객체의 3차원 모델을 복원하는 방법 및 장치
EP3786890B1 (en) Method and apparatus for determining pose of image capture device, and storage medium therefor
CN109561296B (zh) 图像处理装置、图像处理方法、图像处理系统和存储介质
WO2020192706A1 (zh) 物体三维模型重建方法及装置
JP6934887B2 (ja) 単眼カメラを用いたリアルタイム3d捕捉およびライブフィードバックのための方法およびシステム
EP2992508B1 (en) Diminished and mediated reality effects from reconstruction
US20200051269A1 (en) Hybrid depth sensing pipeline
Tanskanen et al. Live metric 3D reconstruction on mobile phones
JP7403528B2 (ja) シーンの色及び深度の情報を再構成するための方法及びシステム
KR102184766B1 (ko) 3차원 모델 복원 시스템 및 방법
KR20170008638A (ko) 3차원 컨텐츠 생성 장치 및 그 3차원 컨텐츠 생성 방법
US20110148868A1 (en) Apparatus and method for reconstructing three-dimensional face avatar through stereo vision and face detection
US20120069018A1 (en) Ar process apparatus, ar process method and storage medium
KR102129458B1 (ko) 객체의 3차원 정보 복원 방법 및 장치
CN112083403B (zh) 用于虚拟场景的定位追踪误差校正方法及系统
CN105809664B (zh) 生成三维图像的方法和装置
KR20150068895A (ko) 삼차원 출력 데이터 생성 장치 및 방법
CN116168143A (zh) 一种多视图三维重建的方法
JP2016048467A (ja) 運動視差再現方法、装置およびプログラム
US11758101B2 (en) Restoration of the FOV of images for stereoscopic rendering
CN113034345B (zh) 一种基于sfm重建的人脸识别方法及系统
WO2015177183A1 (en) Method and apparatus for selection of reliable points for 3d modeling
CN112449701A (zh) 学习模板表示库
Tran et al. A personalised stereoscopic 3D gallery with virtual reality technology on smartphone
Hara et al. Fast-accurate 3d face model generation using a single video camera

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right