KR20210019552A - 객체 모델링 및 움직임 방법 및 장치, 그리고 기기 - Google Patents

객체 모델링 및 움직임 방법 및 장치, 그리고 기기 Download PDF

Info

Publication number
KR20210019552A
KR20210019552A KR1020217001341A KR20217001341A KR20210019552A KR 20210019552 A KR20210019552 A KR 20210019552A KR 1020217001341 A KR1020217001341 A KR 1020217001341A KR 20217001341 A KR20217001341 A KR 20217001341A KR 20210019552 A KR20210019552 A KR 20210019552A
Authority
KR
South Korea
Prior art keywords
target
movement
model
skeleton
skeleton model
Prior art date
Application number
KR1020217001341A
Other languages
English (en)
Other versions
KR102524422B1 (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 후아웨이 테크놀러지 컴퍼니 리미티드
Publication of KR20210019552A publication Critical patent/KR20210019552A/ko
Application granted granted Critical
Publication of KR102524422B1 publication Critical patent/KR102524422B1/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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T13/00Animation
    • G06T13/203D [Three Dimensional] animation
    • G06T13/403D [Three Dimensional] animation of characters, e.g. humans, animals or virtual beings
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/25Fusion techniques
    • G06F18/253Fusion techniques of extracted features
    • G06K9/00
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/04Texture mapping
    • 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/10Constructive solid geometry [CSG] using solid primitives, e.g. cylinders, cubes
    • 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
    • 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
    • G06T17/205Re-meshing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/20Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • G06T7/507Depth or shape recovery from shading
    • 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
    • G06T7/579Depth or shape recovery from multiple images from motion
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/80Fusion, i.e. combining data from various sources at the sensor level, preprocessing level, feature extraction level or classification level
    • G06V10/806Fusion, i.e. combining data from various sources at the sensor level, preprocessing level, feature extraction level or classification level of extracted features
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/60Type of objects
    • G06V20/64Three-dimensional objects
    • G06V20/653Three-dimensional objects by matching three-dimensional models, e.g. conformal mapping of Riemann surfaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/16Human faces, e.g. facial parts, sketches or expressions
    • G06V40/161Detection; Localisation; Normalisation
    • G06V40/165Detection; Localisation; Normalisation using facial parts and geometric relationships
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2200/00Indexing scheme for image data processing or generation, in general
    • G06T2200/24Indexing scheme for image data processing or generation, in general involving graphical user interfaces [GUIs]
    • 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/20212Image combination
    • G06T2207/20221Image fusion; Image merging
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2219/00Indexing scheme for manipulating 3D models or images for computer graphics
    • G06T2219/20Indexing scheme for editing of 3D models
    • G06T2219/2016Rotation, translation, scaling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2219/00Indexing scheme for manipulating 3D models or images for computer graphics
    • G06T2219/20Indexing scheme for editing of 3D models
    • G06T2219/2021Shape modification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2219/00Indexing scheme for manipulating 3D models or images for computer graphics
    • G06T2219/20Indexing scheme for editing of 3D models
    • G06T2219/2024Style variation

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computer Graphics (AREA)
  • Geometry (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • General Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Health & Medical Sciences (AREA)
  • Architecture (AREA)
  • Computer Hardware Design (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • General Health & Medical Sciences (AREA)
  • Oral & Maxillofacial Surgery (AREA)
  • Data Mining & Analysis (AREA)
  • Medical Informatics (AREA)
  • Evolutionary Biology (AREA)
  • Computing Systems (AREA)
  • Databases & Information Systems (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Human Computer Interaction (AREA)
  • Processing Or Creating Images (AREA)
  • Auxiliary Devices For And Details Of Packaging Control (AREA)
  • Image Generation (AREA)

Abstract

본 발명은 객체 모델링 및 움직임 방법을 개시한다. 이 방법은 모바일 단말에 적용되며, 모바일 단말은 컬러 카메라와 깊이 카메라를 포함한다. 컬러 카메라와 깊이 카메라는 모바일 단말의 한면에 있다. 상기 방법은, 타겟 객체의 3D 모델을 획득하기 위해 컬러 카메라 및 깊이 카메라를 사용하여 타겟 객체에 대해 파노라마 스캐닝을 수행하는 단계; 타겟 골격 모델을 획득하는 단계; 타겟 골격 모델과 타겟 객체의 3D 모델을 융합하는 단계; 타겟 움직임 방식을 획득하는 단계; 및 타겟 움직임 방식으로 타겟 골격 모델을 제어하여 타겟 움직임 방식으로 타겟 객체의 3D 모델을 애니메이션하는 단계를 포함한다. 이를 통해 스캐닝, 3D 재구성, 골격 리깅에서부터 객체에 대한 미리 설정된 애니메이션 표시까지 통합하여 하나의 단말에서 구현할 수 있고, 이로써 정적 객체를 동적으로 구현하고 사용자의 모바일 단말 사용에 대한 관심을 높일 수 있다.

Description

객체 모델링 및 움직임 방법 및 장치, 그리고 기기
본 발명은 단말 기술 분야에 관한 것으로, 특히 객체 모델링 및 움직임 방법 및 장치, 그리고 기기에 관한 것이다.
정보 통신 기술의 발달로 사람들은 생활과 업무에서 그래픽과 이미지에 더 많이 접하게 된다. 이미지 획득 방법은 다양한 비디오 카메라, 카메라, 스캐너 등을 이용하여 수행된다. 일반적으로 이러한 수단을 이용하여 객체의 평면 이미지, 즉 객체의 2차원 정보만 얻을 수 있다. 머신 비전, 면 감지, 물리적 프로파일링, 자동화된 처리, 제품 품질 제어 및 바이오메디신과 같은 많은 분야에서 객체의 3차원 정보는 필수적이다. 따라서 3D 스캐닝 기술이 등장한다. 일반적으로 사용되는 장치는 3차원 스캐너(3D scanner)이다. 3D 스캐너는 실제 세상의 객체 또는 환경을 감지 및 분석하고 형상(기하학적 구조) 및 외관(컬러 및 표면 알베도(albedo)와 같은 속성)에 대한 데이터를 수집하는 데 사용되는 과학 도구이다. 3차원 스캐너는 객체의 기하학적 표면에 포인트 클라우드(point cloud)를 만드는 데 사용된다. 이러한 포인트들은 보간(interpolation)을 통해 객체의 표면 형상을 형성하는 데 사용할 수 있다. 밀도가 높은 포인트 클라우드는 보다 정확한 모델을 생성할 수 있다(이러한 프로세스를 3차원 재구성이라고도 함). 스캐너가 표면의 컬러를 얻을 수 있는 경우 텍스처 맵이 재구성된 표면 주위에 추가로 래핑될 수 있으며 이를 텍스처 매핑(testure mapping)이라고 한다.
그러나 종래 기술에서는 3차원 스캐너를 사용하기 어려우므로 전문 사용자만이 3차원 스캐너를 조작할 수 있다. 또한, 3차원 스캐너의 응용 시나리오도 상대적으로 제한적이다. 따라서 일반 사용자가 3차원 스캐닝 기술을 사용할 수 있도록 하는 방법은 해결해야 할 시급한 과제이다.
본 발명의 실시예는 사용자가 언제 어디서나 객체를 스캔하여 역동적인 효과를 달성하고, 이로써 흥미와 게임성을 높이고, 사용자의 충성도를 향상시키고, 사용자가 트렌드를 앞서 갈 수 있도록 하는 객체 모델링 및 움직임 방법 및 장치 그리고 기기를 제공한다.
본 발명의 실시예에서 제공되는 구체적인 기술적 솔루션은 다음과 같다.
제1 측면에 따르면, 본 발명의 실시예는 객체 모델링 및 움직임 방법을 제공한다. 이 방법은 모바일 단말에 적용되며, 모바일 단말은 컬러 카메라와 깊이 카메라를 포함한다. 컬러 카메라와 깊이 카메라는 모바일 단말의 전면 또는 후면의 일면에 있다. 이 방법은 구체적으로 다음을 포함한다: 타겟 객체의 3D 모델을 획득하기 위해 컬러 카메라 및 깊이 카메라를 사용하여 타겟 객체에 대해 파노라마 스캐닝을 수행하는 단계; 타겟 골격 모델을 획득하는 단계; 타겟 골격 모델과 타겟 객체의 3D 모델을 융합하는 단계; 타겟 움직임 방식을 획득하는 단계; 및 타겟 움직임 방식으로 타겟 골격 모델을 제어하여 타겟 움직임 방식으로 타겟 객체의 3D 모델을 애니메이션하는 단계를 포함한다.
제2 측면에 따르면, 본 발명의 실시예는 객체 모델링 및 움직임 장치를 제공한다. 본 장치는 모바일 단말에 적용되며, 모바일 단말은 컬러 카메라와 깊이 카메라를 포함한다. 컬러 카메라와 깊이 카메라는 모바일 단말의 전면 또는 후면의 일면에 있다. 상기 장치는, 타겟 객체의 3D 모델을 획득하기 위해 컬러 카메라 및 깊이 카메라를 사용하여 타겟 객체에 대해 파노라마 스캐닝을 수행하도록 구성된 스캐닝 모듈; 타겟 골격 모델을 획득하도록 구성된 제1 획득 모듈; 타겟 골격 모델과 타겟 객체의 3D 모델을 융합하도록 구성된 융합 모듈; 타겟 움직임 방식을 획득하도록 구성된 제2 획득 모듈; 및 타겟 움직임 방식으로 타겟 골격 모델을 제어하여 타겟 움직임 방식으로 타겟 객체의 3D 모델을 애니메이션하도록 구성된 움직임 모듈을 포함한다.
본 발명의 실시예에서 제공되는 전술한 방법 및 장치의 기술적 솔루션에 따르면, 스캐닝, 3D 재구성, 골격 리깅(skeletal rigging)에서부터 사전 설정된 애니메이션 디스플레이에 이르기까지 통합 설계를 모바일 단말에서 객체에 대해 구현될 수 있으므로, 사용자는 전문적인 스캐닝을 위해 전문적이고 무겁고 복잡한 장치를 사용하거나 PC에서 복잡한 모델링 및 애니메이션 처리를 수행할 필요가 없다. 이러한 기능이 통합되어 사용자에게 제공되므로 사용자는 이러한 조작 방법을 모바일 단말에서 쉽게 수행할 수 있으며, 사용자 주변의 "정적 객체(또는 정적 객체와 유사한 객체)"를 애니메이션하고 활성화할 수 있으므로, 사용자의 단말 사용에 대한 흥미가 증가하고 및 사용자 경험이 향상된다.
미디어 분야에서 "카메라"와 "렌즈"는 동의어일 수 있음을 이해해야 한다.
제1 측면 또는 제2 측면에 따르면, 가능한 설계에서 깊이 카메라는 TOF 모듈을 사용할 수 있다.
제1 측면 또는 제2 측면에 따르면, 가능한 설계에서, 깊이 카메라는 구조화된 광 센서 모듈(structured light sensor module)을 사용할 수 있다.
제1 측면 또는 제2 측면에 따르면, 가능한 설계에서, 깊이 카메라의 시계(field of view)는 40도 내지 80도 범위이다.
제1 측면 또는 제2 측면에 따르면, 가능한 설계에서, 깊이 카메라에서 적외선 광의 송신 전력은 50mw 내지 400mw 범위로 선택될 수 있다. 특수 용도의 초강력 조명의 경우 전송 전력이 더 높을 수 있다.
제1 측면 또는 제2 측면에 따르면, 가능한 설계에서, 객체 스캐닝을 위한 스캐닝 거리는 20cm 내지 80cm 범위이다. 스캐닝 거리는 깊이 카메라에서 타겟 객체까지의 거리로 이해될 수 있다.
제1 측면 또는 제2 측면에 따르면, 가능한 설계에서, 스캐닝 프로세스에서 깊이 카메라의 촬영 프레임 레이트는 25fps이상으로 선택될 수 있다.
제1 측면 또는 제2 측면에 따르면, 가능한 설계에서, 골격 모델은 3D 모델에 기초한 일련의 알고리즘을 사용하여 계산될 수 있다.
제1 측면 또는 제2 측면에 따르면, 가능한 설계에서, 골격 모델 제작 라이브러리, 예를 들어 일부 선분들 및 포인트들이 사용자에게 제공될 수 있으며, 여기서 선분은 골격을 나타내고 포인트는 관절 노드를 나타낸다. 사용자의 조작 지시(예: 제스처, 슬라이드 또는 단축키)가 수신되고, 골격 모델을 획득하기 위해 적어도 두 개의 선분과 적어도 하나의 포인트가 골격 모델로 결합된다. 또한 골격 모델은 클라우드에 업로드되거나 로컬에 저장된다. 이 방법은 제1 획득 모듈에 의해 구현될 수 있다. 하드웨어에서, 이 방법은 메모리에서 프로그램 명령을 호출함으로써 프로세서에 의해 구현될 수 있다.
제1 측면 또는 제2 측면에 따르면, 가능한 설계에서, 보다 개방된 제작 라이브러리가 사용자에게 제공될 수 있으며, 선분과 포인트는 사용자에 의해 완전히 자유롭게 설계되며, 여기서 선분은 골격을 나타내며, 포인트는 관절 노드를 나타낸다. 사용자의 조작 지시(예: 제스처, 슬라이드 또는 단축키)를 수신하고, 골격 모델을 획득하기 위해 적어도 두 개의 선분과 적어도 하나의 포인트가 골격 모델로 결합된다. 또한 골격 모델은 클라우드에 업로드되거나 로컬에 저장된다. 이 방법은 제1 획득 모듈에 의해 구현될 수 있다. 하드웨어에서, 이 방법은 메모리에서 프로그램 명령을 호출함으로써 프로세서에 의해 구현될 수 있다.
제1 측면 또는 제2 측면에 따르면, 가능한 설계에서, 특정 구현 프로세스에서, 타겟 객체의 형상과 가장 매칭도가 높은 골격 모델이 적어도 하나의 미리 설정된 골격 모델로부터 타겟 골격 모델로서 선택될 수 있다. 미리 설정된 골격 모델은 네트워크 또는 클라우드에 저장되거나 로컬에 저장될 수 있다. 예를 들어, 닭 골격 모델, 개 골격 모델 및 물고기 골격 모델이 로컬에 저장된다. 타겟 객체가 오리인 경우 시스템은 외관 인식을 통해 닭 골격 모델을 타겟 골격 모델로 사용한다. 유사성을 결정하는 기준은 골격 형태, 골격 길이, 골격 두께, 골격 수량, 골격 구성 방식 등을 포함하지만 이에 제한되지 않는다. 이 방법은 제1 획득 모듈에 의해 구현될 수 있다. 하드웨어에서, 이 방법은 메모리에서 프로그램 명령을 호출함으로써 프로세서에 의해 구현될 수 있다.
제1 측면 또는 제2 측면에 따르면, 가능한 설계에서, 사용자의 선택 명령이 수신될 수 있으며, 여기서 선택 명령은 적어도 하나의 미리 설정된 골격 모델로부터 타겟 골격 모델을 선택하는 데 사용되며, 여기서 이러한 미리 설정된 모델은 로컬에 저장되거나 클라우드 또는 네트워크에서 호출된다. 이 방법은 제1 획득 모듈에 의해 구현될 수 있다. 하드웨어에서, 이 방법은 메모리에서 프로그램 명령을 호출함으로써 프로세서에 의해 구현될 수 있다.
제1 측면 또는 제2 측면에 따르면, 가능한 설계에서, 제1 객체의 움직임 방식이 획득될 수 있고, 제1 객체의 움직임 방식이 타겟 움직임 방식으로 사용된다. 제1 객체는 현재 실시간으로 움직이는 객체일 수도 있고, 캡처되어 저장된 어느 객체의 움직임 방식일 수도 있고 또는 특정 객체의 미리 설정된 움직임 방식 일 수도 있다. 이 방법은 제2 획득 모듈에 의해 구현될 수 있다. 하드웨어에서, 이 방법은 메모리에서 프로그램 명령을 호출함으로써 프로세서에 의해 구현될 수 있다.
제1 측면 또는 제2 측면에 따르면, 가능한 설계에서, 미리 설정된 타겟 움직임 방식 중 하나가 선택될 수 있다. 이 방법은 제2 획득 모듈에 의해 구현될 수 있다. 하드웨어에서, 이 방법은 메모리에서 프로그램 명령을 호출함으로써 프로세서에 의해 구현될 수 있다. 미리 설정된 타겟 움직임 방식은 완전한 움직임 방식의 집합일 수도 있고, 사용자 조작에 대응하는 움직임 방식 일 수도 있다. 예를 들어, 사용자가 단말에 표시된 "활기를 넣은 객체"에 사용자의 손을 흔들면, 객체는 미리 설정된 흔들림 반응 애니메이션 방식에 따라 움직일 수 있다. 보다 일반적으로, 사용자는 미리 설정된 상호작용 행동을 단말에 입력할 수 있으며, 단말은 상호작용 행동에 기초하여 대응하는 반응 움직임 방식을 획득하고, 그 반응 움직임 방식에 따라 애니메이션될 객체의 3D 모델을 애니메이션한다.
제1 측면 또는 제2 측면에 따르면, 가능한 설계에서, 움직임 방식은 애니메이션 제작 소프트웨어를 사용하여 사용자에 의해 만들어질 수 있다. 물론, 소프트웨어는 시스템에 내장된 툴킷이거나 스캔 및 움직임 재구축을 위해 앱에 로드된 툴킷일 수 있으며, 타사 애니메이션 디자인 도구에서 제공할 수도 있다. 움직임 방식은 이전에 만들어졌던 것이거나 현재 만들어지는 움직임 방식 또는 애니메이션일 수 있다. 이 방법은 제2 획득 모듈에 의해 구현될 수 있다. 하드웨어에서, 이 방법은 메모리에서 프로그램 명령을 호출함으로써 프로세서에 의해 구현될 수 있다.
제1 측면 또는 제2 측면에 따르면, 가능한 설계에서, 움직임 방식은 물리적 속성에 기초하여 미리 저장된 복수의 움직임 방식 중에서 가장 높은 속성 매칭도(attribute matching degree)를 갖는 움직임 방식이 타겟 움직임 방식으로 선택되는 것일 수 있다. 이 방법은 제2 획득 모듈에 의해 구현될 수 있다. 하드웨어에서, 이 방법은 메모리에서 프로그램 명령을 호출함으로써 프로세서에 의해 구현될 수 있다.
제1 측면 또는 제2 측면에 따르면, 가능한 설계에서, 움직임 방식은 대안적으로 시스템 또는 사용자가 타겟 움직임 방식을 획득하기 위해 골격 모델에 기초하여 골격 모델을 자체 설계하는 것일 수 있다(이는 전술한 임의의 방법을 사용하여 획득될 수 있음). 이러한 방식은 객체의 3D 모델에 대해 후속하여 애니메이션을 구현하기에 가장 적합한 애니메이션 작업이다. 이 방법은 제2 획득 모듈에 의해 구현될 수 있다. 하드웨어에서, 이 방법은 메모리에서 프로그램 명령을 호출함으로써 프로세서에 의해 구현될 수 있다.
제1 측면 또는 제2 측면에 따르면, 가능한 설계에서, 사용자는 객체의 3D 모델을 스캔한 후 로컬에 3D 모델을 저장하거나 클라우드에 3D 모델을 저장할 수 있으며, 일정 기간 후에 직접 3D 모델을 호출하고, 골격 리깅 또는 애니메이션 방식을 자유롭게 선택하고 실시간 캡처 이미지, 로컬에 저장된 이미지, 클라우드의 데이터 이미지 등을 포함하지만 이에 국한되지 않는 애니메이션 배경을 추가로 선택할 수 있다. 또한, 객체의 애니메이션이 구현되는 동안 객체의 그림자를 더 표시하거나 음향 효과, 특수 효과 등을 추가할 수 있다. 애니메이션은 모바일 단말에 의해 자동으로 재생될 수도 있고, 사용자가 조작 명령을 입력하여 재생되도록 제어할 수도 있다.
제1 측면 또는 제2 측면에 따르면, 가능한 설계에서, 타겟 움직임 방식으로 애니메이션 될 골격 모델을 제어하는 과정에서, 타겟 객체의 골격 모델 및 3D 모델에 대해 스키닝 작업이 수행되고, 스키닝 작업은 골격 모델의 움직임을 기반으로 3D 모델의 표면에 있는 점의 위치 변경을 결정하는 데 사용된다. 타겟 객체의 3D 모델이 골격 모델과 함께 애니메이션된다. 이 방법은 움직임 모듈에 의해 구현될 수 있다. 하드웨어에서, 이 방법은 메모리에서 프로그램 명령을 호출함으로써 프로세서에 의해 구현될 수 있다.
전술한 가능한 설계를 사용함으로써 인간과 컴퓨터의 상호 작용이 향상되어 사용자가 창의적인 상상력과 더 많은 관심을 가지고 사물의 활력화 과정에 더 자유롭고 깊이 참여할 수 있다.
보다 구체적으로, 전술한 동작과 관련된 다른 기술 구현은, 예를 들어, 카메라 활성화, 이미지 수집, 3D 모델 생성, 골격 모델 획득 또는 애니메이션화, 골격 모델 또는 애니메이션 저장, 특수 효과의 추가, 및 사용자와의 상호 작용 동작을 수행하는 것과 같이, 메모리 내의 프로그램 또는 명령을 호출하여 프로세서에 의해 상응하여 처리될 수 있다.
제3 측면에 따르면, 본 발명의 실시예는 단말 장치를 제공한다. 단말 장치는 메모리, 프로세서, 버스, 깊이 카메라 및 컬러 카메라를 포함한다. 컬러 카메라와 깊이 카메라는 모바일 단말의 일면에 있다. 메모리, 깊이 카메라, 컬러 카메라 및 프로세서는 버스를 사용하여 연결된다. 깊이 카메라와 컬러 카메라는 프로세서의 제어하에 타겟 객체에 대해 파노라마 스캔을 수행하도록 구성된다. 메모리는 컴퓨터 프로그램과 명령어를 저장하도록 구성된다. 프로세서는 컴퓨터 프로그램 및 메모리에 저장된 명령어를 호출하여 단말 장치가 전술한 가능한 설계 방법 중 어느 하나를 수행할 수 있도록 구성된다.
제3 측면에 따르면, 가능한 설계에서, 단말 장치는 안테나 시스템을 더 포함한다. 안테나 시스템은 프로세서의 제어하에 무선 통신 신호를 송수신하여 모바일 통신 네트워크와의 무선 통신을 구현한다. 모바일 통신 네트워크에는 GSM 네트워크, CDMA 네트워크, 3G 네트워크, 4G 네트워크, 5G 네트워크, FDMA, TDMA, PDC, TACS, AMPS, WCDMA, TDSCDMA, Wi-Fi, 및 LTE 네트워크 중 하나 이상을 포함한다.
발명의 내용은 청구 범위에서 구현될 수 있는 모든 방법을 포함할 수 있으며 여기에서 열거하지 않음을 이해해야 한다.
전술한 가능한 구현 방법 및 단계 중 어느 하나에 대해, 자연 법칙을 위반하지 않고 다른 방법 및 단계의 자유로운 조합이 수행될 수 있으며, 다른 방법 및 단계에 대해 일부 가능한 단계가 추가되거나 축소될 수 있다. 이는 본 발명에서 하나씩 나열하거나 상세히 설명하지 않는다.
본 발명에서는 스캐닝, 3D 재구성, 골격 리깅에서 객체에 대한 미리 설정된 애니메이션 디스플레이까지 통합하여 하나의 단말에서 구현할 수 있어 정적 객체의 활력화를 구현하고 사용자의 모바일 단말 사용에 대한 관심을 높일 수 있다.
도 1은 본 발명의 실시예에 따른 단말의 개략적인 구조도이다.
도 2는 본 발명의 실시예에 따른 객체 모델링 및 움직임 방법의 흐름도이다.
도 3은 본 발명의 실시예에 따른 객체 스캐닝에서 애니메이션 구현까지의 주요 프로세스를 도시한다.
도 4는 본 발명의 실시예에 따른 구조화된 광의 개략도이다.
도 5는 본 발명의 실시예에 따른 TOF의 개략도이다.
도 6은 본 발명의 실시예에 따른 메싱 + 텍스처 매핑 방법의 흐름도이다.
도 7은 본 발명의 실시예에 따른 특정 메싱 구현 솔루션의 흐름도이다.
도 8은 본 발명의 실시예에 따른 특정 텍스처 매핑 구현 솔루션의 흐름도이다.
도 9는 본 발명의 실시예에 따른 특정 메싱 텍스처 매핑 인스턴스를 도시한다.
도 10은 본 발명의 실시예에 따른 특정 골격 리깅 솔루션의 흐름도이다.
도 11은 본 발명의 실시예에 따른 특정 애니메이션 흐름도이다.
도 12는 본 발명의 실시예에 따른 객체 모델링 및 움직임 장치의 개략도이다.
이하에서는 본 발명의 실시예에서 첨부된 도면을 참조하여 본 발명의 실시예의 기술적 솔루션을 명확하고 완전하게 설명한다. 설명된 실시예는 본 발명의 실시예의 전부가 아니라 일부일 뿐임이 분명하다. 창의적인 노력없이 본 발명의 실시예에 기초하여 통상의 기술자가 획득한 다른 모든 실시예는 본 발명의 보호 범위 내에 속한다.
본 발명의 실시예에서, 모바일 단말은 사용자에게 촬영 기능 및/또는 데이터 연결을 제공하는 장치, 무선 연결 기능이 있는 휴대용 장치 또는 무선 모뎀에 연결된 다른 처리 장치일 수 있으며, 예컨대 디지털 카메라, 일안 반사식 카메라(single-lens reflex camera) 또는 스마트 폰이거나, 또는 촬영 기능 및 디스플레이 기능이 있는 다른 지능형 장치, 예컨대 웨어러블 장치, 태블릿 컴퓨터, PDA(Personal Digital Assistant), 드론 또는 항공 사진기일 수 있다.
도 1은 단말(100)의 선택적 하드웨어 구조의 개략도이다.
도 1을 참조하면, 단말(100)은 무선 주파수 유닛(110), 메모리(120), 입력 유닛(130), 디스플레이 유닛(140), 촬영 유닛(150), 오디오 회로(160), 스피커(161), 마이크(162), 프로세서(170), 외부 인터페이스(180) 및 전원(190)과 같은 구성 요소를 포함할 수 있다.
무선 주파수 유닛(110)은 호 프로세스에서 정보를 송수신하거나 신호를 송수신하도록 구성될 수 있다. 특히, 무선 주파수 유닛(110)은 기지국의 다운링크 정보를 수신한 후 처리를 위해 프로세서(170)로 다운링크 정보를 전달하고, 관련된 업링크 데이터를 기지국으로 전송한다. 일반적으로 RF 회로는 안테나, 적어도 하나의 증폭기, 트랜시버, 커플러, 저잡음 증폭기(Low Noise Amplifier, LNA), 듀플렉서 등을 포함하지만 이에 제한되지는 않는다. 또한, 무선 주파수 유닛(110)은 무선 통신을 통해 네트워크 장치 및 다른 장치와 더 통신할 수 있다. 무선 통신을 위해 어떠한 통신 표준이나 프로토콜도 사용될 수 있으며, 예컨대 GSM(global system for mobile communication), GPRS(general packet radio service), CDMA(code difiction multiple access), WCDMA(wideband code division multiple access), LTE, 이메일, SMS 등을 포함하지만 이에 한정되지 않는다.
메모리(120)는 명령어 및 데이터를 저장하도록 구성될 수 있다. 메모리(120)는 주로 명령어 저장 영역과 데이터 저장 영역을 포함할 수 있다. 데이터 저장 영역은 관절 터치 제스처와 응용 프로그램 기능 간의 연관 관계를 저장할 수 있다. 명령어 저장 영역은 운영 체제, 애플리케이션, 적어도 하나의 기능에 필요한 명령어와 같은 소프트웨어 유닛, 또는 소프트웨어 유닛의 서브 세트 또는 확장 세트를 저장할 수 있다. 메모리(120)는 비휘발성 랜덤 액세스 메모리를 더 포함하고, 컴퓨팅 처리 장치에서 하드웨어, 소프트웨어 및 데이터 자원을 관리하고 소프트웨어 및 애플리케이션에 대한 제어를 지원하는 기능을 프로세서(170)에 제공할 수 있다. 메모리(120)는 멀티미디어 파일, 실행 프로그램 및 애플리케이션을 저장하도록 더 구성된다.
입력 유닛(130)은 입력된 숫자 또는 문자 정보를 수신하고, 휴대용 복합기의 사용자 설정 및 기능 제어와 관련된 키 신호 입력을 생성하도록 구성될 수 있다. 구체적으로, 입력 유닛(130)은 터치 스크린(131) 및 다른 입력 장치(132)를 포함할 수 있다. 터치 스크린(131)은 터치 스크린 위 또는 근처에서 사용자의 터치 동작(예: 사용자가 손가락, 관절, 스타일러스 등의 적절한 것을 이용하여 터치 스크린 또는 터치 스크린 근처에서 수행하는 동작)을 수집하고, 미리 설정된 프로그램에 따라 해당 연결 장치를 구동할 수 있다. 터치 스크린은 터치 스크린상에서의 사용자의 터치 동작을 감지하고, 터치 동작을 터치 신호로 변환하고, 터치 신호를 프로세서(170)로 전송하고, 프로세서(170)에서 전송된 명령을 수신 및 실행할 수 있다. 터치 신호는 적어도 터치 포인트 좌표 정보를 포함한다. 터치 스크린(131)은 단말(100)과 사용자 사이에 입력 화면과 출력 화면을 제공할 수 있다. 또한, 터치 스크린은 저항형, 정전용량형, 적외선형, 표면음파형(surface acoustic wave type) 등 다양한 형태로 구현될 수 있다. 터치 스크린(131) 이외에, 입력 유닛(130)은 다른 입력 장치를 더 포함할 수 있다. 구체적으로, 다른 입력 장치(132)로는 물리적 키보드, 기능 키(예: 볼륨 제어 키 또는 전원 켜기/끄기 키), 트랙볼, 마우스, 조이스틱 등 중 하나 이상을 포함할 수 있이지만 이에 제한되지는 않는다.
또한, 터치 스크린(131)은 표시 패널(141) 위에 덮여져 있을 수 있다. 터치 스크린(131)상의 또는 그 주변에서 터치 동작을 감지한 후, 터치 스크린(131)은 터치 동작을 프로세서(170)로 전달하여 터치 이벤트의 종류를 판단한다. 그 후, 프로세서(170)는 터치 이벤트의 유형에 따라 디스플레이 패널(141)에 대응하는 시각적 출력을 제공한다. 실시예에서 터치 스크린과 디스플레이 유닛은 하나의 구성 요소로 통합되어 단말(100)의 입력, 출력 및 표시 기능을 구현할 수 있다. 설명의 편의를 위해, 본 발명의 실시예에서 터치 디스플레이 스크린은 터치 스크린 및 디스플레이 유닛의 기능 세트를 나타낸다. 일부 실시예에서, 터치 스크린 및 디스플레이 유닛은 대안적으로 2개의 독립적인 구성 요소로서 사용될 수 있다.
디스플레이 유닛(140)은 사용자가 입력한 정보, 사용자에게 제공되는 정보, 단말(100)의 각종 메뉴를 표시하도록 구성될 수 있다. 본 발명의 실시예들에서, 디스플레이 유닛은 카메라(150)를 이용하여 디스플레이 장치에 의해 획득된 이미지를 표시하도록 더 구성되며, 이미지는 일부 촬영 모드에서의 미리보기 이미지, 캡처된 초기 이미지, 및 촬영 후 특정 알고리즘을 사용하여 처리된 타겟 이미지를 포함할 수 있다.
촬영 유닛(150)은 이미지 또는 비디오를 수집하도록 구성되며, 응용 프로그램 명령에 의한 트리거를 통해 촬영 기능 또는 비디오 카메라 기능을 구현할 수 있다. 촬영 유닛은 촬상 렌즈, 광 필터, 이미지 센서 등의 부품을 포함할 수 있다. 객체에서 방출되거나 반사된 빛은 촬영 렌즈로 들어가 광 필터를 통과하여 이미지 센서에 모인다. 촬영 렌즈는 주로 촬영 시계에서 피사체(촬영 대상 또는 타겟 객체라고도 함)에 의해 방출되거나 반사된 빛을 집광하여 촬영을 수행하도록 구성된다. 광 필터는 주로 빛에서 여분의 광파(예: 적외선과 같은 가시 광선 이외의 광파)를 필터링하도록 구성된다. 이미지 센서는 주로 수신된 광 신호에 대해 광-전기 변환을 수행하고, 광 신호를 전기 신호로 변환하고, 후속 처리를 위해 그 전기 신호를 프로세서(170)에 입력하도록 구성된다.
구체적으로, 촬영 유닛(150)은 컬러 카메라(컬러 렌즈)(151) 및 깊이 카메라(깊이 렌즈)(152)를 더 포함할 수 있다. 컬러 카메라는 타겟 객체의 컬러 이미지를 수집하도록 구성되며, 현재 인기있는 단말 제품 중 일반적으로 사용되는 컬러 카메라를 포함한다. 깊이 카메라는 타겟 객체의 깊이 정보를 획득하도록 구성된다. 예를 들어, 깊이 카메라는 TOF 기술과 구조화된 광 기술을 이용하여 구현될 수 있다.
TOF는 Time of Flight(Time of Flight) 기술의 약자이다. 구체적으로, 센서는 변조된 근적외선 빛을 방출하는데, 여기서 빛은 객체를 만난 후 반사된다. 센서는 빛의 방출과 빛의 반사 사이의 시간차 또는 위상차를 계산하여 촬영된 장면의 거리로 변환하여 깊이 정보를 생성한다. 또한, 기존 컬러 카메라의 촬영 기능과 결합하여 서로 다른 컬러가 서로 다른 거리를 나타내는 지형도를 사용하여 객체의 3차원 윤곽을 표현할 수 있다.
구조화된 광은 투사 요소(projection element)와 카메라를 포함하는 시스템 구조체 세트이다. 투사 요소가 특정 광 정보(예를 들어, 래스터에 의해 회절된 광 정보)를 객체의 표면과 배경에 투사한 후, 카메라는 광 정보를 수집한다. 객체에 의한 광 신호의 변화(예를 들어, 광의 폭 및 변위의 변화)를 기반으로 객체의 위치 및 깊이와 같은 정보를 계산하여 전체 3차원 공간을 더욱 복원한다. .
오디오 회로(160), 스피커(161) 및 마이크(162)는 사용자와 단말(100) 사이에 오디오 인터페이스를 제공할 수 있다. 오디오 회로(160)는 수신된 오디오 데이터로부터 변환된 전기적 신호를 스피커(161)로 전송하고, 스피커(161)는 전기적 신호를 사운드 신호로 변환하여 출력한다. 또한, 마이크로폰(162)은 음향 신호를 수집하고 수집된 음향 신호를 전기적 신호로 더 변환할 수 있다. 전기적 신호를 수신한 오디오 회로(160)는 전기적 신호를 오디오 데이터로 변환하고, 오디오 데이터를 처리를 위해 프로세서(170)로 출력하고, 오디오 데이터를 무선 주파수 유닛(110)을 통해 예를 들어 다른 단말로 전송하거나 추가 처리를 위해 오디오 데이터를 메모리(120)에 출력한다. 오디오 회로는 또한 오디오 회로와 이어폰 사이의 연결 인터페이스를 제공하도록 구성된 이어폰 잭(163)을 포함할 수 있다.
프로세서(170)는 단말(100)의 제어 센터로서, 다양한 인터페이스 및 회선을 통해 전체 휴대폰의 여러 부분과 연결된다. 프로세서(170)는 단말(100)의 다양한 기능을 수행하고, 메모리(120)에 저장된 명령어를 실행 또는 가동하고, 메모리(120)에 저장된 데이터를 호출하여 데이터를 처리함으로써 휴대폰에 대한 전반적인 모니터링을 수행한다. 선택적으로, 프로세서(170)는 하나 이상의 처리 유닛을 포함할 수 있다. 바람직하게는, 프로세서(170)는 애플리케이션 프로세서 및 모뎀 프로세서와 통합될 수 있다. 애플리케이션 프로세서는 주로 운영 체제, 사용자 인터페이스, 응용 프로그램 등을 처리한다. 모뎀 프로세서는 주로 무선 통신을 처리한다. 모뎀 프로세서는 대안적으로 프로세서(170)에 통합되지 않을 수 있음을 이해할 수 있다. 일부 실시예에서, 프로세서 및 메모리는 단일 칩 상에 구현될 수 있다. 일부 실시예에서, 프로세서 및 메모리는 독립적인 칩 상에 개별적으로 구현될 수 있다. 프로세서(170)는 또한 대응하는 동작 제어 신호를 생성하고, 동작 제어 신호를 연산 처리 장치의 대응하는 구성 요소로 전송하고, 소프트웨어의 데이터를 읽고 처리하는데, 특히 데이터 및 프로그램을 읽고 처리하도록 구성될 수 있는데, 이로써 메모리(120)는 기능 모듈이 대응하는 기능을 수행하도록, 대응하는 구성 요소를 제어하여 명령에 의해 요구되는 동작을 수행하도록 한다.
단말(100)은 외부 인터페이스(180)를 더 포함한다. 외부 인터페이스는 표준 마이크로 USB 인터페이스 또는 다중 핀 커넥터 일 수 있다. 외부 인터페이스는 단말(100)과 다른 통신 장치를 연결하도록 구성될 수도 있고, 충전기에 연결하여 단말(100)을 충전하도록 구성될 수도 있다.
단말(100)은 각 컴포넌트에 전력을 공급하는 전원(예: 배터리)을 더 포함한다. 바람직하게는, 전력 관리 시스템을 이용하여 프로세서(170)와 논리적으로 연결되며, 이로써 전력 관리 시스템을 이용하여 충전 기능, 방전 기능, 소비 전력 관리 등의 기능을 구현할 수 있다.
도시되지는 않았지만, 단말(100)은 플래시, 와이파이(Wireless Fidelity, Wi-Fi) 모듈, 블루투스 모듈, 기능이 다른 센서 등을 더 포함할 수 있다. 자세한 내용은 여기에서 설명하지 않는다. 아래에 설명된 모든 방법은 도 1에 표시된 단말에 적용될 수 있다. 또한, 통상의 기술자라면 도 1은 휴대용 복합기의 예일 뿐이며, 휴대용 복합기에 대한 어떠한 제한도 구성하지 않는다는 것을 이해할 수 있을 것이다. 휴대용 복합기는 도면에 도시된 것보다 더 많거나 적은 컴포넌트를 포함하거나, 일부 구성 요소를 결합하거나, 다른 구성 요소를 가질 수 있다.
도 2를 참조하면, 본 발명의 일 실시예가 객체 모델링 및 움직임 방법을 제공한다. 이 방법은 모바일 단말에 적용되며, 모바일 단말은 컬러 카메라와 깊이 카메라를 포함한다. 컬러 카메라와 깊이 카메라는 모바일 단말의 일면에 있다. 이 방법에는 다음 단계가 포함된다:
단계 21: 컬러 카메라와 깊이 카메라를 사용하여 타겟 객체(즉, 일부 단락에서 줄여서 객체라고 하는 스캔 타겟 객체)에 대해 파노라마 스캔을 수행하여 3D 모델을 획득한다. 타겟 객체.
단계 22: 타겟 골격 모델을 획득한다.
단계 23: 타겟 골격 모델과 타겟 객체의 3D 모델을 융합한다.
단계 24: 타겟 움직임 방식을 획득한다.
단계 25: 타겟 움직임 방식으로 타겟 골격 모델을 제어하여 타겟 움직임 방식으로 타겟 객체의 3D 모델을 애니메이션한다.
컬러 카메라 및 깊이 카메라는 단말 장치의 전면에 위치하거나 단말 장치의 후면에 위치할 수 있다. 컬러 카메라 및 깊이 카메라의 구체적인 배치 방식과 수량은 설계자의 요구 사항에 따라 유연하게 결정될 수 있다. 이것은 본 발명에서 제한되지 않는다.
도 3은 객체 스캔에서 애니메이션 구현까지의 주요 프로세스를 보여준다. 먼저, 객체를 스캔하여 깊이 카메라를 사용하여 깊이 맵을 획득하고 컬러 카메라를 사용하여 컬러 이미지를 획득한다. 깊이 맵과 컬러 이미지에 대해 융합을 수행하여 텍스처 메시 모델, 즉 객체의 3D 모델을 획득한다. 3D 모델은 골격 애니메이션에 따라 골격 모델을 애니메이션하기 위해 골격 모델에 내장되어 있다(골격의 움직임은 일반적으로 보이지 않지만 특별한 시나리오 요구 사항에 따라 사용자가 확실히 볼 수 있음을 이해해야 한다). 이로써 객체의 애니메이션 효과를 시각적으로 보여줄 수 있다. 다음은 예제를 참조하여 자세한 설명을 제공한다.
단계 21
단계 21은 깊이 카메라 스캐닝, 컬러 카메라 스캐닝 및 3D 재구성과 관련된다. 구체적인 예는 다음과 같다:
깊이 카메라 스캔(depth camera scanning)
깊이 카메라는 3D/깊이 센서 또는 3D/깊이 센서 모듈을 포함할 수 있으며, 정적 객체의 깊이 정보를 획득하도록 구성된다. 스캔된 객체는 이론적으로는 정적 객체여야 하지만 실제 작업 중에는 약간의 움직임이 어느 정도 수용 가능하다는 것을 이해해야 한다. 깊이 정보는 구조화된 광 기술과 TOF를 사용하여 얻을 수 있다. 깊이 정보 획득 방법이 등장함에 따라 깊이 모듈에는 더 많은 구현예가 포함될 수 있고, 이는 본 발명에서 제한되지 않는다.
구조화된 광 원리의 다이어그램이 도 4에 나와 있다. 301은 비가시적 적외선 광원, 302는 특정 빛 패턴을 생성하는 래스터, 303은 스캔된 객체, 304는 적외선 카메라를 나타낸다. 303에 의해 반사된 광 패턴을 획득하고, 예상 광 패턴과 비교하여 계산을 통해 타겟 객체의 스캔된 부분의 깊이 정보를 획득한다.
도 5는 TOF 깊이 카메라를 보여준다. 311은 타겟 객체를, 312는 TOF 카메라에서 적외선 전송단을, 313은 적외선 수신단을 나타낸다. 312가 적외선(예를 들어 850nm~1200nm 범위의 파장을 가질 수 있음)을 타겟 객체에 투사하면 타겟 객체는 적외선을 반사하고 반사된 적외선은 313에 의해 수신된다. 313의 센서(예를 들어, 센서는 240x180 이상의 해상도를 가진 CMOS 어레이 또는 CCD 어레이일 수 있지만 이에 제한되지 않음)는 반사된 적외선 광으로 인해 일련의 전압 차 신호를 생성한다. 깊이 계산 유닛(314)은 일련의 전압 차 신호에 기초하여 계산을 수행하여 최종적으로 타겟 객체의 스캔된 부분의 깊이 정보(315)를 획득한다.
컬러 카메라 스캐닝
타겟 객체를 스캔하는 과정에서 깊이 카메라와 컬러 카메라가 동기적으로 호출되어 특정 보정 및 상관 알고리즘을 사용하여 깊이 카메라와 컬러 카메라에 의해 일치하는 타겟 객체의 이미지를 스캔한다. 스캔하는 동안 컬러 카메라로 이미지를 얻는 방식은 기본적으로 일반 카메라를 사용하여 이미지를 촬영하는 방식과 일치하며 이 부분에 대해 자세한 내용은 설명하지 않는다.
특정 구현 프로세스에서 타겟 객체는 특정 각도 범위(일반적으로 깊이 카메라 및 컬러 카메라의 시계 중 더 작은 시계에 의해 제한됨) 및 특정 거리 내에서 스캔되어야 한다. 깊이 정보(예: 깊이 맵)의 품질에 의해 제한되어, 객체는 일반적으로 깊이 카메라(또는 모바일 단말)에서 20cm~80cm 거리에서 스캔된다.
구체적인 스캔 방식은 다음과 같을 수 있다: 단말을 가만히 유지하고, 타겟 객체를 깊이 카메라 앞에 30cm~70cm의 거리를 두고 배치하고, 스캔된 모든 이미지의 결합 세트가 완전한 객체를 구성할 수 있을 때까지 사방으로 객체를 천천히 회전시킨다. 객체를 유지할 때 객체의 표면이 가려져서는 않된다.
구체적인 스캐닝 방식은 다음과 같을 수 있다: 객체를 가만히 유지하고, 단말을 깊이 카메라 앞에 30cm~70cm의 거리에 두고, 스캔된 모든 이미지의 결합 세트가 완전한 객체를 구성할 수 있을 때까지 객체에 대해 파노라마 스캐닝을 수행한다. 단말을 잡을 때 객체의 표면이 가려지면 안된다.
구체적인 스캔 방식은 다음과 같다: 객체를 가만히 유지하고, 단말을 깊이 카메라 앞에 30cm~70cm 거리에 두고, 스캔된 모든 이미지의 결합 세트가 완전한 객체를 구성할 수 있을 때까지 미리 설정된 각도 간격으로 객체를 스캔한다. 단말을 잡을 때 객체의 표면이 가려지면 안된다.
구체적으로, 전체 장면이 캡처되도록 하기 위해 캡처가 여러 번 수행될 수 있다. 장면 정보에는 객체의 전체 보기가 포함된다. 따라서, 파노라마 스캐닝 프로세스에서는 이에 대응하여 깊이 맵의 복수 프레임(심도 맵의 시퀀스)이 있을 수 있고, 각 깊이 맵은 한 번의 스캐닝 동안 스캐닝 범위 내의 장면에 대응한다. 상응하는 복수의 컬러 이미지 프레임(컬러 이미지의 시퀀스)이 있을 수도 있고, 각 컬러 이미지는 한 번의 스캔 동안 스캔 범위 내의 장면에 해당한다. 타겟 객체를 스캔 할 때 다른 객체도 포함될 수 있다. 그러나 상기 중간 거리에서 스캐닝을 수행하면 후속하는 3D 재구성 프로세스에서 타겟 객체 이외의 노이즈가 제거될 수 있다.
가능한 구현에서, 스캐닝 프로세스에서 깊이 카메라의 촬영 프레임 레이트는 25fps 이상, 예를 들어 30fps, 60fps 또는 120fps일 수 있다.
가능한 구현에서, 스캐닝 프로세스에서, 단말은 타겟 객체의 스캐닝 진행상태를 제시하여, 사용자가 타겟 객체의 파노라마가 가려졌는지 관찰하고, 사용자가 스캐닝을 계속하거나 스캐닝을 중지하도록 자율적으로 선택할 수 있게 한다.
깊이 카메라와 컬러 카메라는 전면 또는 후면이 될 수 있기 때문에 전면 스캔과 후면 스캔 두 가지 방식이 있다. 깊이 카메라가 휴대폰 전면의 상부에 위치하는 경우, 깊이 카메라는 전면 컬러 카메라와 함께 사용될 수 있으며, 전면 스캐닝은 셀카 스캐닝을 구현할 수 있다. 깊이 카메라가 휴대폰 후면 상단에 위치하는 경우 후면 컬러 카메라와 함께 사용할 수 있다. 후방 스캔에서는 더 많은 타겟 객체를 선택할 수 있으므로 타겟 객체를 정교하고 안정적으로 스캔할 수 있다. 폴더블 스크린 단말의 등장에 따라 깊이 카메라와 컬러 카메라의 물리적 위치가 바뀔 수 있음을 이해해야 한다. 따라서 기존의 전면 및 후면 개념이 물리적 위치에 대한 제한을 구성해서는 안된다. 3D 모델링을 위해 객체를 스캔할 때 이미지 일관성을 보장하기 위해 깊이 카메라와 컬러 카메라가 일면에 위치할 수 있으며, 3D 재구성이 카메라 위치의 임의의 조합 방식을 사용하여 구현될 수 있다면 단말에 대한 위치나 방향이 제한되지 않는다. 가능한 구현에서, 단말은 제3의 촬영 장치, 예를 들어 외부 연결 촬영 막대, 스캐너 또는 외부 연결 카메라를 호출할 수도 있다. 선택적으로 외부 컬러 카메라를 사용하거나 외부 깊이 카메라를 사용하거나 둘 다 사용할 수 있다.
전술한 컬러 카메라 스캐닝 및 깊이 카메라 스캐닝은 사용자가 스캐닝 기능을 트리거할 때 활성화될 수 있다. 트리거 작업에는 타이밍, 셔터 트리거, 제스처 조작, 공중 감지(mid-air sensing), 장치 작동 제어 등이 포함된다. 또한, 사용자가 미리보기를 위해 카메라를 활성화하면, 시스템은 미리보기 이미지 중 어떤 객체가 스캐닝 또는 3D 모델링에 적합한지 프롬프트할 수 있다. 예를 들어, 정사각형 상자를 사용하여, 미리보기 이미지에서 객체를 식별하여 사용자에게 메시지를 표시할 수 있다.
또한, 깊이 카메라 및 컬러 카메라와 관련된 특정 장치 파라미터는 단말의 제조 공정, 사용자 요구 사항 및 설계 제약과 관련이 있다. 이것은 본 발명에서 특별히 제한되지 않는다.
3D 재구성(메싱+텍스처 매핑)
도 6에 도시된 바와 같이, 다중 프레임 360도 파노라마 스캐닝이 객체에 대해 수행된 후, 깊이 맵 시퀀스(321) 및 컬러 이미지 시퀀스(322)가 획득된다. 깊이 카메라에 의해 획득된 각 프레임은 스캔된 장면의 깊이 맵이고, 컬러 카메라에 의해 획득된 각 프레임은 스캔된 장면의 컬러 이미지(예: RGB 이미지)이다. 타겟 객체의 메시(Mesh) 모델을 획득하기 위해 깊이 맵 시퀀스(321)에 대해 메시 처리를 수행하고, 컬러 이미지의 시퀀스(322)를 기반으로 메시 모델에 대해 텍스처 매핑을 수행하여 텍스처 매핑된 메시 모델(323), 즉 객체의 3D 모델을 획득한다. 가능한 구현에서, 텍스처 매핑은 또한 컬러 이미지 시퀀스의 모든 프레임 또는 일부 프레임에 기초하여 수행될 수 있다.
(1) 메싱(Meshing)
특정 구현 프로세스에서, 도 7을 참조하면, 특정 메싱 구현 솔루션은 다음과 같다:
단계 331: 각 스캐닝 장면에서 타겟 객체의 컬러(RGB를 포함하지만 이에 제한되지 않음) 맵 및 깊이(Depth) 맵을 획득한다. 깊이 맵(Depth Map)은 깊이 카메라와 타겟 객체의 표면에 있는 복수의 포인트 사이의 거리와 관련된 정보이다. 깊이 맵은 깊이 맵의 픽셀 값이 깊이 카메라와 타겟 객체 표면의 한 포인트 사이의 실제 거리를 나타내는 것을 제외하고는 회색 음영 이미지와 유사한다. 일반적으로 컬러 이미지와 깊이 맵이 등록된다.
단계 332는 깊이 맵에서 양방향 필터링 및 노이즈 제거를 수행하고, 깊이 맵에서 다운 샘플링을 수행하여 해상도가 다른 이미지 피라미드를 생성하고, 깊이 맵을 포인트 클라우드로 변환하고, 각 정점의 법선 벡터를 추정하며, 스캔된 객체의 범위를 벗어난 포인트를 잘라내는 것을 포함하지만 이에 국한되지는 않는다.
단계 333: 단계 332에서, 서로 다른 스캐닝 위치에서 수집된 타겟 객체의 깊이 맵 시퀀스와 컬러 이미지 시퀀스에 대해 객체 모델이 생성되어야 하는 경우, 수집된 맵 시퀀스에서 획득한 단일 프레임 3D 포인트 클라우드가 통합된 좌표계로 변환되어야 한다. 즉, 객체의 서로 다른 스캔 위치 사이의 포즈 변환 관계, 즉 포즈 추정이 얻어진다. 포즈 추정은 맵 시퀀스를 기반으로 객체의 3D 포즈를 추정하는 것이다. 포즈 추정은 피처 기반 등록(feature based registration)과 포인트 클라우드 기반 등록의 두 가지 개념을 기반으로 수행할 수 있다. 맵 시퀀스에 대해 상대적으로 작은 각도로 객체의 변형이 수행된 때, 미세 포인트 클라우드 기반 등록(fine point cloud-based registration)이 사용된다. 예를 들어, 반복적인 가장 가까운 포인트(iterative closest point, ICP) 알고리즘이 객체의 포즈 추정에 사용될 수 있다. 맵 시퀀스에 대해 상대적으로 큰 각도로 객체의 변형이 수행된 때, 객체의 3D 특성을 기반으로 두 포즈 사이에 거친 등록(coarse registration)을 더 수행할 수 있으며 거친 등록의 결과를 미세 등록의 초기 값으로 사용한다. 이 방식은 더 높은 속도의 스캔을 지원할 수 있다.
측정 오류가 없는 경우, 현재 프레임의 3D 포인트는 모두 타겟 객체의 3D 체적 모델(volumetric model) 표면에 있다. 따라서 카메라 포즈(포즈 변환 관계)를 해결하기 위해 현재 프레임의 3D 포인트 클라우드와 타겟 객체의 3D 체적 모델 표면의 포인트 클라우드 간의 거리의 최소값을 해결하도록 변환된다. 타겟 함수는 다음과 같다.
Figure pct00001
M은 카메라의 포즈 변환 행렬을 나타내고, si는 현재 계산될 포즈 프레임의 3D 포인트 클라우드를 나타낸다. 여기서 포인트 클라우드는 체적 모델의 뷰 좌표계로 변환되고, di는 뷰 좌표계에서 해당 모델의 포인트 클라우드를 나타내고, ni는 모델 포인트 클라우드에 해당하는 법선을 나타내며, 타겟 함수는 현재 프레임의 포인트 클라우드에서 체적 모델의 포인트 클라우드가 위치한 평면까지의 거리의 최소 2차 합(minimum quadratic sum)을 계산하는 것을 의미한다.
단계 334: 2D 깊이 맵을 3D 정보로 변환하고 3D 정보를 통합 3D 체적 모델로 융합한다. 잘린 부호 거리 함수(TDSF: Truncated Signed Distance Function) 알고리즘이 사용된다. 융합된 복셀 값은 SDF(Signed Distance Function) 값, 가중치 값 및 선택적 컬러 값이다. TSDF 알고리즘은 현재 3D 포인트 클라우드 융합을 위한 주된 처리 알고리즘이다. 가중치는 평균화를 통해 계산된다. 융합을 수행할 때마다 이전 가중치 값이 1씩 증가하고 새 가중치 값은 1이다. 새로운 SDF 값과 이전 SDF 값에 각각의 가중치를 곱하고, 획득한 곱은 합산되고, 곱의 합계를 융합 횟수(새로운 가중치 값)로 나누며, 이러한 방식으로 새로운 정규화된 SDF 값이 획득된다.
단계 335: 미리 설정된 수량의 키프레임이, 3개 방향에서, 즉 롤(roll)/요(yaw)/피치(pitch)로, 특정 각도 간격(예: 30도, 45도, 60도 및 90도 등의 미리 설정된 각도로 제한되지 않음)으로 저장되는지 여부를 결정하고; 저장된 키프레임의 수량이 사전 설정된 수량(타겟 객체의 파노라마 뷰가 가려졌는지 여부에 따라 다름)보다 적은 경우 계속해서 장면(컬러 이미지 및 깊이 맵)을 캡처하며, 여기서 단말이 사용자에게 더 많은 스캔을 수행하도록 지시하며; 키프레임의 수량이 타겟 객체의 파노라마 뷰를 덮기에 충분한 경우, 사용자에게 스캔이 완료되고 다음 단계가 진행될 수 있다는 메시지를 표시한다.
단계 336: 실시간 융합 프로세스에서 텍스처 매핑에 필요한 입력 키프레임 정보를 선택하고 버퍼링한다. 여기서 이 정보에는 컬러 이미지, 포즈(다른 맵 간의 위치 포즈의 차이) 등이 포함된다. 객체 모델링에는 360도 스캔 기능이 필요하므로 롤, 요, 피치 방향 각각에서 미리 설정된 키프레임 수량(N)을 선택함으로써, 객체의 360도 텍스처를 완전히 복원할 수 있다. 예를 들어, ICP 결과를 기반으로 입력 이미지 스트림의 각 프레임의 각도(YAW/Pitch/Roll)를 결정하고, 각 프레임의 해상도(definition)를 계산하고, 키프레임을 선택하기 위해 그 각도와 해상도에 기초하여 선택 정책이 구축된다.
각도 정책은 360도를 상이한 방향으로 360/N 영역으로 나누고 각 영역에서 선명한 컬러 이미지의 프레임이 있어야 한다는 것이다.
흐림(blur) 감지 원리는 일반적으로 이미지 흐림 평가에 그라디언트(gradient) 방법과 소벨(sobel) 연산자가 사용된다는 것이다. 흐림도 계산을 위해 그라디언트 방법을 선택할 수 있다. 다음 공식에서 볼 수 있듯이 이미지의 픽셀은 픽셀 오른쪽과 픽셀 아래쪽에 있는 두 개의 픽셀과 함께 다음과 같이 계산된다.
Figure pct00002
.
흐림 값이 클수록 더 선명한 이미지를 나타낸다.
단계 337: 마칭 큐브 알고리즘(marching cubes algorithm)을 사용하여 3D 포인트 클라우드 메싱을 구현하고 삼각형면을 생성한다. 마칭 큐브 알고리즘의 주요 아이디어는 3D 포인트 클라우드에서 콘텐츠 부분과 배경 부분 사이의 경계를 셀별로 검색하고 경계에 맞게 셀에서 삼각형면을 추출하는 것이다. 간단히 말해서 복셀 데이터 내용을 포함하는 복셀 포인트를 실제 포인트라고 하고, 실제 포인트를 뒤에 있는 모든 배경 복셀 포인트를 가상 포인트라고 한다. 이런 식으로 3차원 포인트 클라우드는 다양한 실제 포인트와 가상 포인트로 구성된 도트 행렬이다. 예를 들어, 단일 셀의 관점에서 셀의 8개 복셀 포인트 각각은 실제 포인트 또는 가상 포인트가 될 수 있으므로 총 2의 8제곱, 즉 하나의 셀에 256개의 가능한 경우가 있을 수 있다. 마칭 큐브 알고리즘의 핵심 아이디어는 256개의 열거 가능한 케이스를 사용하여 셀에서 동등한 삼각형면을 추출하는 것이다. 셀은 3차원 이미지에서 인접한 8개의 복셀 포인트로 구성된 큐브 창(cube pane)이다. 마칭 큐브 알고리즘에서 "큐브"의 의미는 셀을 의미할 수도 있다. 셀과 복셀 사이에는 차이가 있다. 셀은 8개의 복셀 포인트로 구성된 큐브 창이며 각 셀(경계에 있는 셀 제외)은 8개의 셀과 공유된다.
(2) 텍스처 매핑
특정 구현 프로세스에서, 도 8을 참조하면, 특정 텍스처 매핑 구현 솔루션은 다음과 같다.
단계 341: 메시 모델(삼각형면 정보) 및 키프레임의 포즈 정보에 따라 각 키프레임의 포즈에 있는 모든 면이 보이는지 여부를 결정한다. 메시 모델의 모든 삼각형면에 대한 정보와 키프레임의 공간 좌표가 입력되고 각 키프레임의 포즈에서 모든 삼각형면이 보이는지 여부에 대한 정보가 출력된다.
원리는 다음과 같다. 특정 포즈에서 삼각형면이 보이는지 또는 보이지 않는지를 결정해야하는 경우, 포즈와 삼각형면의 정점을 연결하여 형성된 사선(radial line)이 그 모델의 다른 삼각면과 교차하는지 여부를 확인해야 한다. 만일 그렇다면, 삼각형면이 다른면에 의해 가려지고 삼각형면이 보이지 않음을 나타낸다. 그렇지 않으면 삼각형면이 포즈에 표시된다.
충돌 감지 프로세스는 다음 내용: 삼각형의 법선 벡터 계산, 사선이 삼각형과 교차하는지 여부, 사선이 AABB(Axis-aligned bounding box)와 교차하는지 여부 및 계층적 이진 트리(hierarchical binary tree)의 구축과 관련된다.
구체적인 처리 절차의 예는 다음과 같다.
(1) 면의 정점을 취하고, 현재 키프레임 뷰의 카메라 시점에 정점을 연결하여 광선을 획득한다.
(2) 계층적 이진 트리의 루트에서 시작하여 사선에 대해 블로킹이 있는지 여부를 계산한다.
(3) BV(Bounding Volume) 노드가 리프 노드인지 확인하고, BV 노드가 리프 노드인 경우 단계 (6)으로 진행한다.
(4) 사선이 BV의 AABB 경계 상자와 교차하는지 확인하고 그렇지 않은 경우 (1)로 돌아간다.
(5) 사선이 BV와 교차하는 경우 BV의 두 하위 노드를 선택하고 (3)으로 돌아간다.
(6) BV 노드가 리프 노드인 경우, 먼저 사선이 AABB 경계 상자와 교차하는지 여부를 결정한다. 만일 그렇다면 사선이 삼각형과 교차하는지 결정하고, 만일 그렇다면 정점이 블로킹되었는지 결정한다.
(7) 면의 하나 이상의 정점이 블로킹되면 현재 키프레임 뷰에서 면이 보이지 않는다.
단계 342: 단계 341의 결과를 바탕으로 메시 모델의 각 면(face)을 라벨링하고, 영역 분할(region segmentation) 및 그래프 잘라내기(Graph Cut) 방법을 사용하여 메시 모델을 라벨링하고 텍스처를 생성하기 위한 특정 키프레임 뷰(view)를 선택하기로 결정한다. 면 라벨링(face labeling) 결과는 아핀 매핑(Warping) 모듈의 입력으로 사용될 수도 있고, 예비 텍스처 맵을 생성하는 데 사용된다.
단계 343: 키프레임 뷰에서 해당 영역의 텍스처를 텍스처 맵에 매핑하고 서로 다른 키프레임 사이의 패치(패치)에서 경계 스무딩을 수행한다.
객체의 3D 모델은 복수의 키프레임 뷰를 사용하여 생성된 텍스처 맵이기 때문에 키프레임 뷰를 선택한 후 텍스처 맵에서 서로 다른 키프레임 뷰 사이에 생성된 이음새 사이에 많은 컬러 불연속성이 존재한다. 텍스처 불연속성에서, 각 정점(vertex)은 왼쪽 면에 속하는 Vleft와 오른쪽 면에 속하는 Vright의 두 정점으로 간주될 수 있다. 각 정점 V의 조정 전 컬러를 fv로 표시하고 다음 최소화 방정식에 따라 각 정점 V의 보정 컬러 값 gv를 구한다.
Figure pct00003
argmin은 최소 차이 값을 취하는 것을 의미하며, 위의 공식은 다음 두 부분을 포함한다.
1.
Figure pct00004
; 그리고 2.
Figure pct00005
첫 번째 부분에서 v는 키프레임 사이의 이음새에 있는 정점을 나타낸다. 즉 정점이 왼쪽 패치와 오른쪽 패치에 모두 속한다.
Figure pct00006
에서의 fv는 조정 전 컬러 값을 나타내고 gv는 보정된 컬러 값, 즉 증분(
Figure pct00007
)을 나타낸다. 이 공식은 이음새의 부드러움(smoothness)을 보장하기 위해 서로 다른 이미지 프레임 간의 공통점의 수정된 차이를 가능한 한 작게 만드는 데 사용된다. 두 번째 부분에서 Vi 및 Vj는 동일한 텍스처 패치에서 인접한 두 정점의 증분이, 한 증분이 지나치게 크고 다른 증분이 지나치게 작기 때문에 발생하는 부드러움을 피하기 위해, 가능한 한 작아야 함을 의미한다.
특정 구현 프로세스에서는 면 라벨링 결과에서 동일한 라벨을 가진 인접 영역이 패치로서 저장되고, 모든 패치의 정점에 경계 스무딩이 수행되고, 각 정점의 픽셀 값을 조정되고, 위치 및 픽셀 기반 아핀 변환이 최종 정점에 의해 둘러싸인 삼각형에 대해 수행되어 최종 텍스처 맵을 획득한다.
객체의 3D 모델은 객체의 메시 모델의 표면에 객체의 텍스처 맵 세트를 그려서 얻어지며, 일반적으로 .obj 형식으로 저장된다. 예를 들어 도 9와 같이 사자의 텍스처 맵 세트를 사자의 메시 모델에 매핑하여 텍스처 매핑된 사자의 3D 모델을 획득한다.
단계 22
단계 21을 수행하여 3D 재구성 후 얻은 타겟 객체의 3D 모델, 즉 텍스처 메시 모델을 획득한다. 다음으로 골격은 텍스처 메시 모델내에 내장되어야 한다. 다음은 골격 모델, 즉 타겟 골격 모델을 획득하는 방법에 대해 설명한다.
특정 구현 프로세스에서, 골격 모델 제작 라이브러리, 예를 들어, 일부 선분 및 포인트가 사용자에게 제공될 수 있다. 여기서 선분은 골격을 나타내고 포인트는 관절 노드를 나타낸다. 사용자의 조작 지시(예: 제스처, 슬라이드 또는 단축키)를 수신한다. 골격 모델을 획득하기 위해 적어도 두 개의 선분과 적어도 하나의 포인트가 골격 모델로 결합된다. 또한 골격 모델은 클라우드에 업로드되거나 로컬에 저장된다.
특정 구현 프로세스에서 사용자에게 보다 개방적인 제작 라이브러리가 제공될 수 있으며, 선분과 포인트는 사용자에 의해 완전히 자유롭게 설계된다. 여기서 선분은 골격을 나타내고 포인트는 관절 노드를 나타낸다. 사용자의 조작 지시(예: 제스처, 슬라이드 또는 단축키)를 수신하고, 골격 모델을 획득하기 위해 적어도 두 개의 선분과 적어도 하나의 포인트가 골격 모델로 결합된다. 또한 골격 모델은 클라우드에 업로드되거나 로컬에 저장된다.
구체적인 구현 프로세스에서, 미리 설정된 적어도 하나의 골격 모델 중에서 타겟 객체의 형상과 매칭도가 가장 높은 골격 모델이 타겟 골격 모델로 선정될 수 있다. 미리 설정된 골격 모델은 네트워크 또는 클라우드에 저장되거나 로컬에 저장될 수 있다. 예를 들어 닭 골격 모델, 개 골격 모델 및 물고기 골격 모델이 로컬에 저장된다. 타겟 객체가 오리인 경우 시스템은 외형 인식을 통해 닭 골격 모델을 타겟 골격 모델로 사용한다. 유사성을 결정하는 기준은 골격 형태, 골격 길이, 골격 두께, 골격 수량, 골격 구성 방식 등을 포함하지만 이에 제한되지 않는다.
특정 구현 프로세스에서, 사용자의 선택 명령이 수신될 수 있고, 선택 명령은 적어도 하나의 미리 설정된 골격 모델에서 타겟 골격 모델을 선택하기 위해 사용된다.
단계 23
타겟 골격 모델과 타겟 객체의 3D 모델에 대해 융합이 수행되거나 타겟 골격 모델이 타겟 객체의 3D 모델에 심어진다(내장된다). 최종 골격 프레임워크가 타겟 객체의 내부 구조를 최대한 준수하고 가능한 한 미리 설정된(주어진) 골격 프레임워크와 비슷하게 보이도록 하기 위해, 객체/객체의 골격 관절 노드 위치가 계산되어야 한다.
특정 구현 프로세스에서 도 10을 참조하면 특정 골격 리깅(rigging) 솔루션은 다음과 같다.
단계 351: 다른 계산을 사용하여 3선형 보간(trilinear interpolation)의 적응적으로 샘플링된 거리 필드(adaptively sampled distance fields)를 계산하여 중간 축 표면(medial axis surface)을 근사한다. k-d 트리(K-dimensional tree)는 어떤 포인트에서 객체 표면까지의 부호있는 거리(signed distance)를 평가하기 위해 구성될 수 있다. k-d 트리는 k차원 데이터 공간을 분할하기 위한 데이터 구조로, 주로 다차원 공간에서 주요 데이터를 검색하는 데 사용된다.
단계 352: 객체의 중간 축 표면에 대략적으로 위치한 샘플 포인트 그룹을 계산하고, 골격 관절이 위치할 수 있는 포인트를 찾고, 객체의 표면에 가까운 포인트를 필터링한다.
단계 353: 중간 축 표면에서 골격 다이어그램의 정점을 선택하기 위해, 객체내의 구(sphere)를 채우고 3D 모델 표면으로부터의 거리를 기준으로 중간 축 표면을 따라 모든 점을 정렬하고, 구의 반경을 구하기 위해 가장 멀리 있는 포인트로부터 시작하여 3D 모델 내부(3D 모델의 표면 범위 내)에 가장 큰 내접 구를 그리며, 모든 포인트를 중간 축 라인을 따라 횡단한다. 여기서 내접한 구는 포인트를 이용하여 구성되는데, 그 포인트가 이전에 추가된 모든 구 내에 포함되지 않는 경우에만 그 포인트를 이용하여 구성된다.
단계 354: 몇몇 구 중심들을 연결하여 골격 다이어그램을 구성하고 모든 교차된 두 구를 연결하는 구 중심들 사이의 에지를 가장자리로서 사용한다.
단계 351 내지 단계 354는 골격 기반 인식(skeleton-based recognition)으로 지칭될 수 있다.
단계 355: 미리 설정된 골격 모델을 추출하고, 단계 354에서 구성된 기하학적 골격 다이어그램 G=(V, E)에 골격 모델을 최적으로 삽입한다(여기서 V는 정점을 나타내고 E는 가장자리를 나타냄). 일반적으로 노드를 줄여야 하고 골격 프레임워크를 최적화해야 한다.
단계 356: 골격 계층 관계(skeleton hierarchy relationship)를 식별하고 골격 형상에 근접하도록 단순 계층을 줄인다.
골격 리깅(단계 355 및 단계 356) 후, 리깅된 골격 모델을 갖는 객체의 3D 모델을 얻을 수 있다.
단계 24
골격 모델이 삽입(내장)된 3D 모델은 단계 23에서 획득된다. 다음으로, 타겟 객체의 3D 모델에 애니메이션을 적용하려면 골격 모델에 대해 구현 가능한 움직임 방식을 찾아야 한다. 다음은 골격의 움직임 방식(또는 직관적으로 애니메이션이라고 함), 즉 타겟 움직임 방식을 얻는 방법에 대해 설명한다.
구체적인 구현 프로세스에서, 제1 객체의 움직임 방식을 획득할 수 있으며, 제1 객체의 움직임 방식을 타겟 움직임 방식으로서 사용한다. 제1 객체는 현재 실시간으로 움직이는 객체일 수 있다(예를 들어, 달리는 사람을 포착하고, 신경망을 이용하여 객체의 골격 움직임 방식을 추출한다). 대안으로서, 제1 객체는 객체의 움직임 방식이고 캡처 및 저장될 수 있다(예: 개의 사랑스러운 행동 세트가 캡처되었으며 알고리즘을 사용하여 해당 행위의 움직임 방식은 로컬에 저장되거나 클라우드에 저장된다). 다르게는, 제1 객체는 특정 객체의 미리 설정된 움직임 방식일 수 있다(예를 들어, 인간 관련 움직임 방식 만 선택됨).
특정 구현 프로세스에서 미리 설정된 타겟 움직임 방식 중 하나를 선택할 수 있다(예를 들어, 사람의 동작, 개의 동작, 고양이의 동작, 말의 동작 등이 로컬에 저장되고 사용자의 선호도 또는 객체 유형의 적합성 정도(conformity degree)에 기초하여 사용자가 특정 동작을 선택할 수 있다).
구체적인 구현 프로세스에서 움직임 방식은 애니메이션 제작 소프트웨어를 이용하여 사용자가 만들 수 있다. 물론, 소프트웨어는 시스템에 내장된 툴킷이거나 스캔 및 움직임 재구축을 위해 앱에 로드된 툴킷일 수 있으며, 타사 애니메이션 디자인 도구에서 제공되는 것일 수도 있다. 움직임 방식은 이전에 만들어졌거나 현재 만들어지는 움직임 방식 또는 애니메이션일 수 있다.
구체적인 구현 프로세스에서, 움직임 방식은 물리적 속성에 기초하여 미리 저장된 복수의 움직임 방식 중에서 가장 높은 속성 매칭도를 갖는 움직임 방식을 타겟 움직임 방식으로 선택하는 것일 수 있다. 예를 들어, 물고기의 수영 애니메이션, 개구리의 점프 애니메이션 및 말의 달리기 애니메이션이 로컬에 미리 저장되어 있다. 사용자가 스캔한 타겟 객체가 사슴인 경우 말의 달리기 애니메이션은 사슴의 타겟 움직임 방식으로 사용된다(물고기나 개구리에 비해 말은 외모, 생물 종, 그리고 골격 구조에서 사슴에 더 유사하다).
특정 구현 프로세스에서, 타겟 움직임 방식을 획득하기 위해, 움직임 방식은 대안적으로 시스템 또는 사용자가 타겟 객체의 골격 모델(이전 단계에서 임의의 방법을 사용하여 획득할 수 있음)을 기반으로 골격 모델을 자체 설계하는 것일 수 있다. 이러한 방식은 객체의 3D 모델에서 이후에 애니메이션을 구현하는 데 가장 적합한 애니메이션 작업이다.
특정 구현 프로세스에서 움직임 방식은 미리 설정된 골격 애니메이션일 수 있으며 일반적으로 전문 애니메이션 디자이너가 만든다.
골격 애니메이션은 시간의 경과에 따른 골격 프레임워크에서의 각 노드의 동적 변경을 기술하며, 일반적으로 키프레임 형식으로 저장 및 표현된다는 점을 이해해야 한다. 일반적으로 1초에 포함되는 프레임 수를 의미하는 초당 프레임(FPS, frame per second) 개념이 사용된다. 골격 애니메이션은 골격 프레임워크에서 벗어나 있을 수 없다. 그렇지 않으면 3D 모델을 구동할 수 없다. 따라서 골격 애니메이션은 일반적으로 특정 골격 프레임워크에 의존하여 존재한다. 골격 프레임워크는 일반적으로 리그(rig)라고 하며 골격 프레임워크 세트에 포함된 골격, 모든 골격 간의 스플라이싱(splicing) 관계, 각 골격의 디폴트 변환(즉, 포즈) 및 기타 추가 정보를 기술한다. 포즈는 서 있거나 달리는 프레임과 같이 골격 프레임워크에서 각 노드의 변환 후 정적 상태를 기술한다. 각 골격 프레임워크는 골격 프레임워크가 만들어질 때 디폴트 포즈인 바인딩 포즈(binding pose)를 저장한다. 포즈는 일반적으로 골격 프레임워크의 계층 관계를 저장하지 않지만 어레이를 사용하여 각 노드의 변환을 순차적으로 저장한다. 노드는 특정 골격에 속하므로 골격 프레임워크와 떨여저서 사용할 수 없다. 추가로, 포즈는 골격 애니메이션의 샘플링 결과의 일부이다. 골격 프레임워크, 포즈 및 골격 애니메이션이 서로 연관되어 있으며 후속 애니메이션 작업을 공동으로 구현한다는 것을 알 수 있다.
단계 25
골격 애니메이션은 필수적으로 시간에 따라 변경되고 트리 구조를 기반으로 저장되는 일련의 객체의 위치, 회전 및 스케일링의 역학(dynamics)을 기록한다. 각 객체는 골격이다. 애니메이션은 다음과 같이 구현된다: 애니메이션 세트의 골격 애니메이션 변환은 이전 단계 "자동 골격 리깅"에서 골격이 리깅된 3D 모델로 매핑된다. 여기서 이러한 동작의 매핑 구현은 게임 엔진, 애니메이션 엔진 등을 포함하지만 이에 한정되는 것은 아니다. 골격 변환에 기초하여 3D 모델에 대해 포즈 변환이 수행되며, 포즈 변환은 일련의 애니메이션 동작이다. 사용자에 대해, 스캔된 객체는 시각적으로 "활력이 불어넣어진" 것으로 되고 정적 객체는 "애니메이션"된다. 애니메이션 구현 프로세스에서 스키닝(skinning) 기술은 객체 3D 모델이 골격 모델로 애니메이션되도록 보장하는 기반이다.
객체의 3D 모델 애니메이션은 골격으로 리깅된 3D 모델이 골격 모델의 일련의 변화하는 동작에 매핑되는 것과 같이 표현된다. 각 프레임마다 골격의 변화에 따라 3D 모델의 표면(즉, 객체의 3D 모델의 표피)에 변형을 구현해야 한다. 이러한 프로세스를 스키닝이라고 한다. 따라서 이것이 3D 모델에서 동작으로의 매핑을 구현하여 애니메이션 효과를 획득한다.
특정 구현 프로세스에서 LBS(Linear Blending Skinning) 솔루션을 사용할 수 있다. 3D 모델 표면의 어떤 포인트에 대해서도 다음 공식을 사용하여 이전 상태 위치를 기반으로 현재 상태 위치를 얻을 수 있다.
Figure pct00008
는 이전 상태 위치를 나타내고,
Figure pct00009
는 현재 상태 위치를 나타내고,
Figure pct00010
는 i 포인트에서 j번째 골격의 가중치를 나타내며,
Figure pct00011
는 변환 행렬을 나타낸다. 애니메이션을 구현하기 위해, 변환 행렬에 따라 특정 수량의 정점을 결정한 후 포인트-포인트 변환을 수행하고 변환된 3D 모델을 결정한다. 스키닝 기술의 핵심은 각 골격에 해당하는 각 정점의 가중치
Figure pct00012
를 찾는 것이다.
Figure pct00013
특정 실행 프로세스에서 가중치는 열 평형과 유사한 방식으로 계산될 수 있다. 3D 모델은 단열된 열전도체로 간주되고 i번째 골격의 온도는 1
Figure pct00014
로 설정되고 다른 모든 골격의 온도는 0
Figure pct00015
로 설정된다. 열 평형 원리에 따르면 표면의 정점 평형 후 얻은 온도를 점의 가중치로 설정할 수 있으며 가중치 값은 0~1의 범위이다. 열 평형에 기반한 가중치 계산 방법을 사용하면 가중치 계산 결과가 매끄럽고 제시된 동작 효과가 보다 현실적이고 자연스럽다.
객체의 3D 모델의 동작 변환은 내장된 골격(즉, 애니메이션을 통해)의 위치를 변경하여 구현되며, 스키닝 효과가 사용자에게 시각적으로 제시됨을 이해해야 한다. 달리 설정하지 않는 한, 사용자는 객체의 3D 모델의 골격 애니메이션을 볼 수 있다.
특정 애니메이션 프로세스는 도 11에 나와 있다. 미리 설정된 골격 다이어그램과 멀티 프레임 동작을 사용하여, 즉 움직임 모델이나 애니메이션 모델에 따라 타겟 골격 모델이 리깅된 3D 모델에 동작 매핑을 수행하고 타겟 골격 모델을 제어하여 사전 설정된 움직임 모델에 따라 타겟 골격 모델을 애니메이션한다. 애니메이션 프로세스에서는, 계산이 수행되고 스키닝 데이터가 실시간으로 업데이트되므로 3D 모델이 타겟 골격 모델과 함께 부드러운 움직임을 구현할 수 있고, 이로써 3D 모델의 애니메이션을 구현할 수 있다. 타겟 객체의 골격 모델은 애니메이션의 골격 구조와 완전히 동일하지 않을 수 있음을 이해해야 한다. 따라서 객체의 골격 모델과 애니메이션의 골격 구조 간에 위치 매핑을 수행할 수 있다. 예를 들어, 키 노드는 일관성이 있어야 하며 골격 길이는 비례적으로 설정될 수 있다. 대안으로, 객체의 골격 모델과 애니메이션의 골격 구조가 서로에게 맞추어질 수 있다. 예를 들어, 애니메이션의 골격 구조가 객체의 3D 모델의 외부 표면을 초과하지 않도록 비례 절단 및 확장(proportional cutting and extending)을 수행할 수 있다. 또한, 애니메이션의 골격을 트리밍 및 조정하여 애니메이션의 골격이 객체의 3D 모델을 최대한 지원하여 애니메이션의 골격 모델이 객체의 3D 모델과 더욱 조화를 이루도록 하는 어떤 물리적 작업을 수행할 수도 있다.
전술한 단계 21 내지 단계 25는 일회성으로 단계적으로 완료될 수도 있고, 특정 간격으로 수행될 수도 있다. 예를 들어, 객체를 스캔하여 3D 모델을 획득한 후 사용자는 3D 모델을 로컬에 저장하거나 클라우드에 3D 모델을 저장할 수 있으며 일정 시간이 지난 후 3D 모델을 직접 호출하여 골격 리깅을 자유롭게 선택하거나 애니메이션 방식을 자유롭게 선택하거나, 또는 추가로 실시간 캡처 이미지, 로컬에 저장된 이미지, 클라우드의 데이터 이미지 등을 포함하지만 이에 제한되지 않는 애니메이션 배경을 선택할 수 있다. 또한, 객체의 애니메이션이 단말에 표시되는 동안 객체의 그림자를 더 표시하거나 음향 효과, 특수 효과 등을 추가할 수 있다. 애니메이션은 모바일 단말에 의해 자동으로 재생될 수도 있고, 사용자가 조작 명령을 입력하여 재생되도록 제어할 수도 있다.
전술한 실시예는 단지 본 발명의 일부 선택적인 구현이라는 것을 이해해야 한다. 또한 카메라 파라미터 설계, 알고리즘 구현, 사용자 설정, 단말 운영 체제, 단말이 위치한 환경, 사용자의 사용 습관이 다르기 때문에, 전술한 실시예에서의 장치 파라미터, 사용자가 사용하는 방법 및 관련 알고리즘이 각각 복수의 변형예를 가진다. 이들은 열거를 통해 하나씩 나열할 수 없으며, 통상의 기술자는 기존 방식의 일부 대체를 포함하여 전술한 이론에 기반한 적응적으로 조정함으로써 생성된 기술적 솔루션이 본 발명의 보호 범위에 속한다는 것을 이해해야 한다.
본 발명에 따르면, 타겟 객체에 대한 스캐닝, 3D 재구성, 골격 리깅 및 미리 설정된 애니메이션 디스플레이와 같은 일련의 작업의 통합이 모바일 단말에서 구현될 수 있다. 사용자는 3D 스캐닝을 쉽게 수행할 수 있다. 또한, 모바일 단말의 촬영 기술이 광범위하게 적용됨에 따라 2D 이미지 제시에서 3D 애니메이션 제시로의 전환을 구현할 수 있으며, 사용자는 실제로 스캔되고 모델링된 객체에 대한 가상 애니메이션 동작을 최종적으로 구현할 수 있다. 이는 사용자의 모바일 단말 사용에 대한 관심을 크게 높이고 사용자의 충성도를 향상시키며 촬영 애플리케이션을 새로운 트렌드로 이끈다.
전술한 실시예에서 제공한 객체 모델링 및 움직임 방법에 기초하여, 본 발명의 실시예는 객체 모델링 및 움직임 장치(700)를 제공한다. 장치(700)는 다양한 촬영 장치에 적용될 수 있다. 도 12에 도시된 바와 같이, 이 장치(700)는 스캐닝 모듈(701), 제1 획득 모듈(702), 융합 모듈(703), 제2 획득 모듈(704) 및 움직임 모듈(705)을 포함한다. 본 장치는 모바일 단말에 적용되고, 모바일 단말은 컬러 카메라와 깊이 카메라를 포함하고, 컬러 카메라와 깊이 카메라는 모바일 단말의 일면에 위치한다. 관련된 특징은 전술한 방법 실시예의 설명을 참조할 수 있다.
스캐닝 모듈(701)은 타겟 객체의 3D 모델을 획득하기 위해 컬러 카메라 및 깊이 카메라를 사용하여 타겟 객체에 대한 파노라마 스캐닝을 수행하도록 구성된다. 스캐닝 모듈(701)은 메모리에서 프로그램 명령을 호출하여 프로세서에 의해 컬러 카메라 및 깊이 카메라에 대한 활성화 제어를 수행할 수 있다. 또한, 스캐닝 중에 수집된 이미지는 메모리에 선택적으로 저장될 수 있다.
제1 획득 모듈(702)은 타겟 골격 모델을 획득하도록 구성된다. 제1 획득 모듈(702)은 대응하는 프로그램 명령을 호출함으로써 프로세서에 의해 구현될 수 있다. 또한, 제1 획득 모듈(702)은 로컬 메모리 또는 클라우드 서버에서 데이터 및 알고리즘을 호출하여 해당 계산을 수행함으로써 구현될 수 있다.
융합 모듈(703)은 타겟 골격 모델과 타겟 객체의 3D 모델을 융합하도록 구성된다. 융합 모듈(703)은 해당 프로그램 명령을 호출함으로써 프로세서에 의해 구현될 수 있다. 또한, 융합 모듈(703)은 해당 연산을 수행하기 위해 로컬 메모리 또는 클라우드 서버에서 데이터 및 알고리즘을 호출하여 구현될 수 있다.
제2 획득 모듈(704)은 타겟 움직임 방식을 획득하도록 구성된다. 제2 획득 모듈(704)은 대응하는 프로그램 명령을 호출함으로써 프로세서에 의해 구현될 수 있다. 또한, 제2 획득 모듈(704)은 로컬 메모리 또는 클라우드 서버에서 데이터 및 알고리즘을 호출하여 해당 계산을 수행함으로써 구현될 수 있다.
움직임 모듈(705)은 타겟 움직임 방식으로 타겟 골격 모델을 제어하여 타겟 움직임 방식으로 타겟 객체의 3D 모델을 애니메이션하도록 구성된다. 움직임 모듈(705)은 대응하는 프로그램 명령을 호출함으로써 프로세서에 의해 구현될 수 있다. 또한, 움직임 모듈(705)은 로컬 메모리 또는 클라우드 서버에서 데이터 및 알고리즘을 호출하여 해당 계산을 수행함으로써 구현될 수 있다.
특정 구현 프로세스에서, 스캐닝 모듈(701)은 구체적으로 단계 21에서 언급된 방법 및 동등한 대체 방법을 수행하도록 구성된다. 제1 획득 모듈(702)은 구체적으로 단계 22에서 언급된 방법 및 균등한 대체 방법을 수행하도록 구성된다. 융합 모듈(703)은 특히 단계 23에서 언급된 방법 및 균등한 대체 방법을 수행하도록 구성된다. 제2 획득 모듈(704)은 구체적으로 단계 24에서 언급된 방법 및 균등한 대체 방법을 수행하도록 구성된다. 움직임 모듈(705)은 구체적으로 단계 25에서 언급된 방법 및 균등한 대체 방법을 수행하도록 구성된다.
보다 구체적으로, 스캐닝 모듈(701)은 단계 331 내지 단계 337 및 단계 341 내지 단계 343의 방법을 수행할 수 있다. 융합 모듈(703)은 단계 351 내지 단계 356의 방법을 수행할 수 있다.
전술한 특정 방법 실시예 및 실시예에서의 기술적 특징의 해석, 설명 및 확장은 또한 장치 실시예에서의 방법 실행에 적용될 수 있고, 세부 사항은 장치 실시예에서 설명되지 않는다.
본 발명의 본 실시예에서 제공되는 장치(700)는 사용자가 전문적인 스캐닝, 또는 PC 측에서 복잡한 모델링 및 애니메이션 처리를 수행하기 위해 전문적이고 무겁고 복잡한 장치를 사용하지 않고도 스캐닝, 3D 재구성, 골격 리깅, 객체에 대한 사전 설정된 애니메이션 디스플레이까지 통합 설계를 구현할 수 있다. 이러한 기능이 통합되어 사용자에게 제공되므로 사용자가 하나의 모바일 단말에서 이러한 조작 방법을 쉽게 수행할 수 있으며 사용자 주변의 "정적 객체(또는 정적 객체와 유사한 객체)"를 애니메이션하고 활성화할 수 있어 사용자의 단말 사용에 대한 흥미를 증가시키고 사용자 경험을 향상시킨다.
전술한 장치(700)에서 모듈들로의 분할은 단지 논리적 기능 분할이며, 이들 중 일부 또는 전부는 실제 구현에서 하나의 물리적 엔티티로 통합되거나 물리적으로 분리될 수 있음을 이해해야 한다. 예를 들어, 전술한 모듈 각각은 별도의 처리 요소이거나, 단말의 칩에 통합되거나, 프로그램 코드의 형태로 컨트롤러의 저장 요소에 저장될 수 있으며, 프로세서는 전술한 각 모듈의 기능을 호출하고 실행한다. 또한 모듈은 통합되거나 독립적으로 구현될 수 있다. 처리 요소는 집적 회로 칩일 수 있고 신호 처리 능력을 갖는다. 구현 프로세스에서, 전술한 방법 또는 전술한 모듈의 단계는 처리 요소의 하드웨어 집적 논리 회로를 사용하거나 소프트웨어 형태의 명령을 사용하여 구현될 수 있다. 처리 요소는 범용 프로세서, 예를 들어 중앙 처리 장치(CPU, central processing unit)일 수 있거나, 전술한 방법을 구현하도록 구성된 하나 이상의 집적 회로, 예를 들어, 하나 또는 더 많은 애플리케이션 특정 집적 회로(ASIC, application specific integrated circuits) 또는 하나 이상의 마이크로 프로세서(DSP, digital signal processor) 또는 하나 이상의 필드 프로그래밍 가능 게이트 어레이(FPGA, field programmable gate array) 등일 수 있다.
통상의 기술자는 본 발명의 실시예가 방법, 시스템 또는 컴퓨터 프로그램 제품으로 제공될 수 있음을 이해해야 한다. 따라서, 본 발명은 하드웨어만의 실시예, 소프트웨어만의 실시예 또는 소프트웨어와 하드웨어가 결합된 실시예의 형태를 사용할 수 있다. 또한, 본 발명은, 컴퓨터에서 사용할 수 있는 프로그램 코드를 포함하는 하나 이상의 컴퓨터 사용 가능 저장 매체(디스크 메모리, CD-ROM, 광학 메모리 등을 포함하지만 이에 제한되지 않음)에서 구현되는 컴퓨터 프로그램 제품의 형태를 사용할 수 있다.
본 발명은 본 발명의 실시예에 따른 방법, 장치(시스템) 및 컴퓨터 프로그램 제품의 흐름도 및/또는 블록도를 참조하여 설명된다. 컴퓨터 프로그램 명령은 흐름도 및/또는 블록도의 각 프로세스 및/또는 각 블록과 흐름도 및/또는 블록도의 프로세스 및/또는 블록의 조합을 구현하는 데 사용될 수 있음을 이해해야 한다. 이러한 컴퓨터 프로그램 명령은 범용 컴퓨터, 전용 컴퓨터, 임베디드 프로세서 또는 기타 프로그래밍 가능한 데이터 처리 장치의 프로세서에 제공되어 컴퓨터 또는 임의의 기타 프로그래머블 데이터 처리 장치의 프로세서에 의해 실행되는 명령은 흐름도의 하나 이상의 프로세스 및/또는 블록도의 하나 이상의 블록의 특정 기능을 구현하기 위한 장치를 생성한다.
이들 컴퓨터 프로그램 명령은 컴퓨터 또는 임의의 다른 프로그램 가능한 데이터 처리 장치가 특정 방식으로 작동하도록 지시할 수 있는 컴퓨터 판독 가능 메모리에 저장될 수 있으며, 컴퓨터 판독 가능 메모리에 저장된 명령은 명령 장치를 포함하는 아티팩트를 생성한다. 명령 장치는 흐름도의 하나 이상의 프로세스 및/또는 블록도의 하나 이상의 블록에서의 특정 기능을 구현한다.
이러한 컴퓨터 프로그램 명령은 컴퓨터 또는 다른 프로그램 가능한 데이터 처리 장치에 로딩되어 일련의 작업 및 단계가 컴퓨터 또는 다른 프로그램 가능한 장치에서 수행되고, 이로써 컴퓨터에 의해 구현되는 처리를 생성한다. 따라서, 컴퓨터 또는 다른 프로그램 가능 장치에서 실행되는 명령어는 흐름도의 하나 이상의 프로세스 및/또는 블록도의 하나 이상의 블록에서의 특정 기능을 구현하기 위한 단계를 제공한다.
본 발명의 실시예가 설명되었지만, 통상의 기술자는 기본적인 발명 개념을 배우면 이들 실시예를 변경 및 수정할 수 있다. 따라서, 이하의 청구 범위는 본 발명의 범위에 속하는 실시예 및 모든 변경 및 수정을 포함하는 것으로 해석되도록 의도된다. 통상의 기술자는 본 발명의 실시예의 사상 및 범위를 벗어나지 않고 본 발명의 실시예에 대해 다양한 수정 및 변경을 할 수 있다는 것은 명백하다. 본 발명은 다음의 청구 범위 및 그와 동등한 기술에 의해 정의된 보호 범위 내에 있는 경우 이러한 수정 및 변경을 포함하도록 의도된다.

Claims (20)

  1. 객체 모델링 및 움직임 방법으로서,
    상기 객체 모델링 및 움직임 방법은 모바일 단말에 적용되고, 상기 모바일 단말은 컬러 카메라와 깊이 카메라를 포함하며, 상기 객체 모델링 및 움직임 방법은,
    상기 컬러 카메라와 상기 깊이 카메라를 이용하여 타겟 객체에 대해 파노라마 스캐닝을 수행하여 타겟 객체의 3D 모델을 획득하는 단계;
    타겟 움직임 방식을 획득하는 단계; 및
    상기 타겟 움직임 방식으로 상기 타겟 객체의 3D 모델을 애니메이션하는 단계
    를 포함하는, 객체 모델링 및 움직임 방법.
  2. 제1항에 있어서,
    상기 깊이 카메라는 TOF 모듈 또는 구조화된 광 센서 모듈을 포함하고, 상기 컬러 카메라 및 상기 깊이 카메라는 상기 모바일 단말의 일면에 위치되어 있는, 객체 모델링 및 움직임 방법.
  3. 제1항 또는 제2항에 있어서,
    상기 타겟 객체의 3D 모델을 획득하는 단계 후, 상기 객체 모델링 및 움직임 방법은,
    타겟 골격 모델을 획득하는 단계; 및
    상기 타겟 골격 모델과 상기 타겟 객체의 3D 모델을 융합하는 단계
    를 더 포함하고,
    상기 타겟 움직임 방식으로 상기 타겟 객체의 3D 모델을 애니메이션하는 단계 전에, 상기 객체 모델링 및 움직임 방법이,
    상기 타겟 움직임 방식으로 상기 타겟 골격 모델을 제어하는 단계를 더 포함하는,
    객체 모델링 및 움직임 방법.
  4. 제1항 내지 제3항 중 어느 한 항에 있어서,
    상기 타겟 골격 모델을 획득하는 단계는,
    사용자의 조작 명령을 수신하는 단계를 포함하고, 여기서 상기 조작 명령은 적어도 두 개의 선분과 적어도 하나의 포인트를 골격 모델로 결합하는 데 사용되며, 여기서 선분은 골격 모델의 골격을 나타내고 포인트는 골격 모델의 관절 노드를 나타내는,
    객체 모델링 및 움직임 방법.
  5. 제1항 내지 제3항 중 어느 한 항에 있어서,
    상기 타겟 골격 모델을 획득하는 단계는,
    적어도 하나의 미리 설정된 골격 모델에서 타겟 객체의 형상과 가장 매칭도가 높은 골격 모델을 타겟 골격 모델로 선택하는 단계를 포함하는,
    객체 모델링 및 움직임 방법.
  6. 제1항 내지 제5항 중 어느 한 항에 있어서,
    상기 타겟 움직임 방식을 획득하는 단계는,
    제1 객체의 움직임 방식을 획득하고, 상기 제1 객체의 움직임 방식을 타겟 움직임 방식으로 사용하는 단계를 포함하는,
    객체 모델링 및 움직임 방법.
  7. 제1항 내지 제5항 중 어느 한 항에 있어서,
    상기 타겟 움직임 방식을 획득하는 단계는,
    사용자에게 적어도 2개의 움직임 방식을 제시하고, 사용자의 선택 명령을 수신하고, 상기 적어도 2개의 움직임 방식으로부터 타겟 움직임 방식을 결정하는 단계; 또는
    상기 타겟 객체의 속성에 기초하여 미리 저장된 복수의 움직임 방식 중 속성 매칭도가 가장 높은 움직임 방식을 타겟 움직임 방식으로 선택하는 단계
    를 포함하는, 객체 모델링 및 움직임 방법.
  8. 제1항 내지 제5항 중 어느 한 항에 있어서,
    상기 타겟 움직임 방식을 획득하는 단계는,
    상기 골격 모델에 대해 사용자가 만든 애니메이션을 수신하고 상기 애니메이션을 타겟 움직임 방식으로 결정하는 단계를 포함하는,
    객체 모델링 및 움직임 방법.
  9. 객체 모델링 및 움직임 장치로서,
    상기 객체 모델링 및 움직임 장치는 모바일 단말에 적용되고, 상기 모바일 단말은 컬러 카메라 및 깊이 카메라를 포함하고, 상기 객체 모델링 및 움직임 장치는,
    타겟 객체의 3D 모델을 획득하기 위해 상기 컬러 카메라 및 상기 깊이 카메라를 사용하여 타겟 객체에 대해 파노라마 스캐닝을 수행하도록 구성된 스캐닝 모듈;
    타겟 움직임 방식을 획득하도록 구성된 제2 획득 모듈; 및
    상기 타겟 움직임 방식으로 상기 타겟 객체의 3D 모델을 애니메이션하도록 구성된 움직임 모듈
    을 포함하는, 객체 모델링 및 움직임 장치.
  10. 제9항에 있어서,
    상기 깊이 카메라는 TOF 모듈 또는 구조화된 광 센서 모듈을 포함하고, 상기 컬러 카메라 및 상기 깊이 카메라는 상기 모바일 단말의 일면에 위치하는, 객체 모델링 및 움직임 장치.
  11. 제9항 또는 제10항에 있어서,
    타겟 골격 모델을 획득하도록 구성된 제1 획득 모듈; 및
    상기 타겟 골격 모델과 상기 타겟 객체의 3D 모델을 융합하도록 구성된 융합 모듈
    을 더 포함하고,
    상기 움직임 모듈은 구체적으로 상기 타겟 움직임 방식으로 상기 타겟 골격 모델을 제어하도록 구성되는,
    객체 모델링 및 움직임 장치.
  12. 제9항 내지 제11항 중 어느 한 항에 있어서,
    상기 제1 획득 모듈은 구체적으로,
    사용자의 조작 명령을 수신하도록 구성되거나 - 여기서 상기 조작 명령은 적어도 2개의 선분과 적어도 하나의 포인트를 골격 모델로 결합하는 데 사용되며, 여기서 선분은 골격 모델의 골격을 나타내고 포인트는 골격 모델의 관절 노드를 나타냄 -;
    적어도 하나의 미리 설정된 골격 모델에서 타겟 객체의 형상과 가장 매칭도가 높은 골격 모델을 타겟 골격 모델로 선택하도록 구성되거나; 또는
    제1 객체의 움직임 방식을 획득하고, 상기 제1 객체의 움직임 방식을 타겟 움직임 방식으로 사용하도록 구성되는,
    객체 모델링 및 움직임 장치.
  13. 제9항 내지 제12항 중 어느 한 항에 있어서,
    상기 제2 획득 모듈은 구체적으로,
    사용자에게 적어도 2개의 움직임 방식을 제시하고, 사용자의 선택 명령을 수신하고, 상기 적어도 2개의 움직임 방식으로부터 타겟 움직임 방식을 결정하도록 구성되거나;
    상기 골격 모델에 대해 사용자가 만든 애니메이션을 수신하고 상기 애니메이션을 타겟 움직임 방식으로 결정하도록 구성되거나; 또는
    상기 타겟 객체의 물리적 속성에 기초하여 미리 저장된 복수의 움직임 방식 중 가장 높은 속성 매칭도를 갖는 움직임 방식을 타겟 움직임 방식으로 선택하도록 구성되는,
    객체 모델링 및 움직임 장치.
  14. 단말 장치로서,
    상기 단말 장치는 메모리, 프로세서, 버스, 깊이 카메라 및 컬러 카메라를 포함하고,
    상기 컬러 카메라와 상기 깊이 카메라는 상기 모바일 단말의 한면에 있으며, 상기 메모리, 상기 깊이 카메라, 상기 컬러 카메라 및 상기 프로세서는 버스를 사용하여 연결되고,
    상기 깊이 카메라 및 상기 컬러 카메라는 상기 프로세서의 제어하에 타겟 객체에 대해 파노라마 스캐닝을 수행하도록 구성되고,
    상기 메모리는 컴퓨터 프로그램 및 명령어를 저장하도록 구성되며,
    상기 프로세서는 상기 메모리에 저장된 컴퓨터 프로그램 및 명령어를 호출하여 상기 단말 장치가 제1항 내지 제9항 중 어느 한 항에 따른 객체 모델링 및 움직임 방법을 수행할 수 있도록 하는,
    단말 장치.
  15. 제14항에 있어서,
    상기 단말 장치는 안테나 시스템을 더 포함하고, 상기 안테나 시스템은 모바일 통신 네트워크와의 무선 통신을 구현하기 위해 상기 프로세서의 제어하에 무선 통신 신호를 송수신하고, 상기 통신 네트워크는, GSM 네트워크, CDMA 네트워크, 3G 네트워크, 4G 네트워크, 5G 네트워크, FDMA, TDMA, PDC, TACS, AMPS, WCDMA, TDSCDMA, Wi-Fi 및 LTE 네트워크 중 하나 이상인,
    단말 장치.
  16. 객체 모델링 및 움직임 방법으로서,
    상기 객체 모델링 및 움직임 방법은 모바일 단말에 적용되고, 상기 모바일 단말은 컬러 카메라와 깊이 카메라를 포함하고, 상기 컬러 카메라 및 깊이 카메라는 상기 모바일 단말의 한면에 위치하며, 상기 깊이 카메라는 TOF 모듈 또는 구조화된 광 센서 모듈을 포함하며, 상기 객체 모델링 및 움직임 방법은,
    상기 컬러 카메라와 상기 깊이 카메라를 이용하여 타겟 객체에 대해 파노라마 스캐닝을 수행하여 타겟 객체의 3D 모델을 획득하는 단계;
    타겟 골격 모델을 획득하는 단계;
    상기 타겟 골격 모델과 상기 타겟 객체의 3D 모델을 융합하는 단계;
    타겟 움직임 방식을 획득하는 단계; 및
    상기 타겟 움직임 방식으로 상기 타겟 골격 모델을 제어하여 상기 타겟 움직임 방식으로 상기 타겟 객체의 3D 모델을 애니메이션하는 단계
    를 포함하는 객체 모델링 및 움직임 방법.
  17. 제16항에 있어서,
    상기 타겟 골격 모델을 획득하는 단계는,
    사용자의 조작 명령을 수신하는 단계 - 여기서 조작 명령은 적어도 2개의 선분과 적어도 하나의 포인트를 골격 모델로 결합하는 데 사용되고, 여기서 선분은 골격 모델의 골격을 나타내고 포인트는 골격 모델의 관절 노드를 나타냄 -; 또는
    적어도 하나의 미리 설정된 골격 모델에서 상기 타겟 객체의 형상과 가장 매칭도가 높은 골격 모델을 타겟 골격 모델로 선택하는 단계
    를 포함하는, 객체 모델링 및 움직임 방법.
  18. 제16항 또는 제17항에 있어서,
    상기 타겟 움직임 방식을 획득하는 단계는,
    제1 객체의 움직임 방식을 획득하고, 상기 제1 객체의 움직임 방식을 타겟 움직임 방식으로서 사용하는 단계;
    사용자에게 적어도 2개의 움직임 방식을 제시하고, 사용자의 선택 명령을 수신하고, 상기 적어도 2개의 움직임 방식으로부터 타겟 움직임 방식을 결정하는 단계;
    사용자가 상기 골격 모델에 대해 만든 애니메이션을 수신하고, 상기 애니메이션을 타겟 움직임 방식으로 결정하는 단계; 또는
    상기 타겟 객체의 속성에 기초하여 미리 저장된 복수의 움직임 방식 중 속성 매칭도가 가장 높은 움직임 방식을 타겟 움직임 방식으로 선택하는 단계
    를 포함하는, 객체 모델링 및 움직임 방법.
  19. 객체 모델링 및 움직임 장치로서,
    상기 객체 모델링 및 움직임 장치는 모바일 단말에 적용되고, 상기 모바일 단말은 컬러 카메라와 깊이 카메라를 포함하고, 상기 컬러 카메라 및 상기 깊이 카메라는 상기 모바일 단말의 한면에 위치하며, 상기 깊이 카메라는 TOF 모듈 또는 구조화된 광 센서 모듈을 포함하며, 상기 객체 모델링 및 움직임 장치는,
    타겟 객체의 3D 모델을 획득하기 위해 상기 컬러 카메라 및 상기 깊이 카메라를 사용하여 타겟 객체에 대해 파노라마 스캐닝을 수행하도록 구성된 스캐닝 모듈;
    타겟 골격 모델을 획득하도록 구성된 제1 획득 모듈;
    상기 타겟 골격 모델과 상기 타겟 객체의 3D 모델을 융합하도록 구성된 융합 모듈;
    타겟 움직임 방식을 획득하도록 구성된 제2 획득 모듈; 및
    상기 타겟 움직임 방식으로 상기 타겟 골격 모델을 제어하여 상기 타겟 움직임 방식으로 상기 타겟 객체의 3D 모델을 애니메이션하도록 구성된 움직임 모듈
    을 포함하는, 객체 모델링 및 움직임 장치.
  20. 제19항에 있어서,
    상기 제1 획득 모듈은 구체적으로,
    사용자의 조작 명령을 수신하도록 구성되거나 - 여기서 상기 조작 명령은 적어도 2개의 선분과 적어도 하나의 포인트를 골격 모델로 결합하는 데 사용되며, 여기서 선분은 골격 모델의 골격을 나타내고 포인트는 골격 모델의 관절 노드를 나타냄 -;
    적어도 하나의 미리 설정된 골격 모델에서 타겟 객체의 형상과 가장 매칭도가 높은 골격 모델을 타겟 골격 모델로 선택하도록 구성되거나; 또는
    제1 객체의 움직임 방식을 획득하고, 상기 제1 객체의 움직임 방식을 타겟 움직임 방식으로 사용하도록 구성되고,
    상기 제2 획득 모듈은 구체적으로,
    적어도 2개의 움직임 방식을 사용자에게 제시하고, 사용자의 선택 명령을 수신하고, 상기 적어도 2개의 움직임 방식으로부터 타겟 움직임 방식을 결정하도록 구성되거나;
    상기 골격 모델에 대해 사용자가 만든 애니메이션을 수신하고 상기 애니메이션을 타겟 움직임 방식으로 결정하도록 구성되거나; 또는
    상기 타겟 객체의 물리적 속성에 기초하여 미리 저장된 복수의 움직임 방식 중 가장 높은 속성 매칭도를 가진 움직임 방식을 타겟 움직임 방식으로 선택하도록 구성되는,
    객체 모델링 및 움직임 장치.
KR1020217001341A 2018-06-21 2019-05-27 객체 모델링 및 움직임 방법 및 장치, 그리고 기기 KR102524422B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN201810646701.0A CN110634177A (zh) 2018-06-21 2018-06-21 一种物体建模运动方法、装置与设备
CN201810646701.0 2018-06-21
PCT/CN2019/088480 WO2019242454A1 (zh) 2018-06-21 2019-05-27 一种物体建模运动方法、装置与设备

Publications (2)

Publication Number Publication Date
KR20210019552A true KR20210019552A (ko) 2021-02-22
KR102524422B1 KR102524422B1 (ko) 2023-04-20

Family

ID=68967803

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020217001341A KR102524422B1 (ko) 2018-06-21 2019-05-27 객체 모델링 및 움직임 방법 및 장치, 그리고 기기

Country Status (10)

Country Link
US (2) US11436802B2 (ko)
EP (1) EP3726476A4 (ko)
JP (1) JP7176012B2 (ko)
KR (1) KR102524422B1 (ko)
CN (3) CN111640175A (ko)
AU (1) AU2019291441B2 (ko)
BR (1) BR112020025903A2 (ko)
CA (1) CA3104558A1 (ko)
SG (1) SG11202012802RA (ko)
WO (1) WO2019242454A1 (ko)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20220151306A (ko) * 2021-05-06 2022-11-15 한국전자통신연구원 3차원 콘텐츠 생성 방법 및 장치
WO2023096403A1 (ko) * 2021-11-25 2023-06-01 (주)클로버추얼패션 3차원 아바타의 신체 부위 경계면 결정 방법 및 장치
KR20230114375A (ko) * 2022-01-25 2023-08-01 스크린커플스(주) 클라우드 서버를 이용한 ai 기반의 xr 콘텐츠 서비스 방법
US11941763B2 (en) * 2019-11-07 2024-03-26 Square Enix Co., Ltd. Viewing system, model creation apparatus, and control method

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11636618B2 (en) * 2019-11-14 2023-04-25 Samsung Electronics Co., Ltd. Device and method with simultaneous implementation of localization and mapping
US11080862B2 (en) * 2019-11-18 2021-08-03 Ncku Research And Development Foundation Reliability based keyframe switching system and method adaptable to ICP
US11023730B1 (en) * 2020-01-02 2021-06-01 International Business Machines Corporation Fine-grained visual recognition in mobile augmented reality
CN111223171A (zh) * 2020-01-14 2020-06-02 腾讯科技(深圳)有限公司 图像处理方法、装置、电子设备及存储介质
CN111383309B (zh) * 2020-03-06 2023-03-17 腾讯科技(深圳)有限公司 一种骨骼动画驱动方法、装置及存储介质
CN115004240A (zh) * 2020-07-27 2022-09-02 株式会社威亚视 3d资料系统及3d资料生成方法
CN112014799B (zh) * 2020-08-05 2024-02-09 七海行(深圳)科技有限公司 一种数据采集方法及巡检装置
CN111951360B (zh) * 2020-08-14 2023-06-23 腾讯科技(深圳)有限公司 动画模型处理方法、装置、电子设备及可读存储介质
CN111921202B (zh) * 2020-09-16 2021-01-08 成都完美天智游科技有限公司 虚拟场景的数据处理方法、装置、设备及可读存储介质
CN112330777B (zh) * 2020-11-03 2022-11-18 上海镱可思多媒体科技有限公司 基于三维动画的电机仿真运行数据生成方法、系统及终端
CN112347540B (zh) * 2020-11-09 2023-09-08 重庆智慧之源科技有限公司 建筑物智能检测建模系统
CN112417746B (zh) * 2020-11-18 2022-11-25 中北大学 一种基于神经网络预测碰撞检测的方法
CN112435316B (zh) * 2020-11-30 2023-05-12 上海米哈游天命科技有限公司 一种游戏中的防穿模方法、装置、电子设备及存储介质
CN112669414B (zh) * 2020-12-22 2024-03-26 完美世界(北京)软件科技发展有限公司 动画数据的处理方法及装置、存储介质、计算机设备
CN112541969B (zh) * 2021-01-21 2022-04-12 深圳市桔子智能信息科技有限公司 一种三维人体模型骨骼动态转移绑定方法
US20220237838A1 (en) * 2021-01-27 2022-07-28 Nvidia Corporation Image synthesis using one or more neural networks
JP7086362B1 (ja) 2021-03-29 2022-06-20 株式会社セルシス 情報処理システム、情報処理方法および情報処理プログラム
CN112927331B (zh) * 2021-03-31 2023-09-22 腾讯科技(深圳)有限公司 角色模型的动画生成方法和装置、存储介质及电子设备
WO2023022373A1 (en) * 2021-08-19 2023-02-23 Samsung Electronics Co., Ltd. Method and system for generating an animation from a static image
CN113744400A (zh) * 2021-09-09 2021-12-03 网易(杭州)网络有限公司 地形蒙版选区确定方法、装置及计算机设备
US20230209035A1 (en) * 2021-12-28 2023-06-29 Faro Technologies, Inc. Artificial panorama image production and in-painting for occluded areas in images
WO2023224251A1 (en) * 2022-05-16 2023-11-23 Samsung Electronics Co., Ltd. Systems and methods for recognizing non-line-of-sight human actions
CN116055778B (zh) * 2022-05-30 2023-11-21 荣耀终端有限公司 视频数据的处理方法、电子设备及可读存储介质
CN116452755B (zh) * 2023-06-15 2023-09-22 成就医学科技(天津)有限公司 一种骨骼模型构建方法、系统、介质及设备
CN116664727B (zh) * 2023-07-27 2023-12-08 深圳市中手游网络科技有限公司 一种游戏动画模型识别方法及处理系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20140043378A (ko) * 2011-06-06 2014-04-09 마이크로소프트 코포레이션 가상 환경 내 오브젝트 컨트롤 기법
KR20160041965A (ko) * 2013-08-04 2016-04-18 아이즈매치 리미티드 거울을 가상화하는 디바이스들, 시스템들 및 방법들
JP2017080203A (ja) * 2015-10-29 2017-05-18 キヤノンマーケティングジャパン株式会社 情報処理装置、情報処理方法、プログラム
KR20170119496A (ko) * 2016-04-19 2017-10-27 광주과학기술원 3차원 객체 검출 및 자세추정 방법

Family Cites Families (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4229316B2 (ja) * 2003-05-09 2009-02-25 株式会社バンダイナムコゲームス 画像生成システム、プログラム及び情報記憶媒体
US20100302253A1 (en) * 2009-05-29 2010-12-02 Microsoft Corporation Real time retargeting of skeletal data to game avatar
US8542252B2 (en) * 2009-05-29 2013-09-24 Microsoft Corporation Target digitization, extraction, and tracking
US9208571B2 (en) * 2011-06-06 2015-12-08 Microsoft Technology Licensing, Llc Object digitization
JP6074170B2 (ja) * 2011-06-23 2017-02-01 インテル・コーポレーション 近距離動作のトラッキングのシステムおよび方法
JP5845830B2 (ja) * 2011-11-09 2016-01-20 ソニー株式会社 情報処理装置、表示制御方法、およびプログラム
EP2864961A4 (en) * 2012-06-21 2016-03-23 Microsoft Technology Licensing Llc AVATAR CONSTRUCTION USING A DEPTH CAMERA
CN102800126A (zh) * 2012-07-04 2012-11-28 浙江大学 基于多模态融合的实时人体三维姿态恢复的方法
WO2014042121A1 (ja) * 2012-09-12 2014-03-20 独立行政法人産業技術総合研究所 動作評価装置及びそのプログラム
CN203240221U (zh) * 2013-01-17 2013-10-16 佛山科学技术学院 一种电动转台
KR102058857B1 (ko) * 2013-04-08 2019-12-26 삼성전자주식회사 촬영 장치 및 촬영 제어 방법
CN104021584B (zh) * 2014-06-25 2017-06-06 无锡梵天信息技术股份有限公司 一种骨骼蒙皮动画的实现方法
US9626803B2 (en) * 2014-12-12 2017-04-18 Qualcomm Incorporated Method and apparatus for image processing in augmented reality systems
CN105137973B (zh) * 2015-08-21 2017-12-01 华南理工大学 一种人机协作场景下的机器人智能躲避人类方法
US20170054897A1 (en) * 2015-08-21 2017-02-23 Samsung Electronics Co., Ltd. Method of automatically focusing on region of interest by an electronic device
CN105225269B (zh) * 2015-09-22 2018-08-17 浙江大学 基于运动机构的三维物体建模系统
CN105590096B (zh) * 2015-12-18 2019-05-28 运城学院 基于深度映射的人体活动识别特征表达方法
JP6733267B2 (ja) * 2016-03-31 2020-07-29 富士通株式会社 情報処理プログラム、情報処理方法および情報処理装置
CN107577334A (zh) * 2016-07-04 2018-01-12 中兴通讯股份有限公司 一种移动终端的体感操作方法及装置
CN106251389B (zh) * 2016-08-01 2019-12-24 北京小小牛创意科技有限公司 制作动画的方法和装置
ZA201701187B (en) * 2016-08-10 2019-07-31 Tata Consultancy Services Ltd Systems and methods for identifying body joint locations based on sensor data analysis
US20180225858A1 (en) * 2017-02-03 2018-08-09 Sony Corporation Apparatus and method to generate realistic rigged three dimensional (3d) model animation for view-point transform
CN107274465A (zh) * 2017-05-31 2017-10-20 珠海金山网络游戏科技有限公司 一种虚拟现实的主播方法、装置和系统
CN107248195A (zh) * 2017-05-31 2017-10-13 珠海金山网络游戏科技有限公司 一种增强现实的主播方法、装置和系统
CN108053435A (zh) * 2017-11-29 2018-05-18 深圳奥比中光科技有限公司 基于手持移动设备的动态实时三维重建方法和系统
CN108154551B (zh) * 2017-11-29 2021-04-30 奥比中光科技集团股份有限公司 实时动态重建三维人体模型的方法及系统
US9959671B1 (en) * 2018-01-18 2018-05-01 Scandy, LLC System and method for capturing, processing and rendering data through a template-driven processing pipeline

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20140043378A (ko) * 2011-06-06 2014-04-09 마이크로소프트 코포레이션 가상 환경 내 오브젝트 컨트롤 기법
KR20160041965A (ko) * 2013-08-04 2016-04-18 아이즈매치 리미티드 거울을 가상화하는 디바이스들, 시스템들 및 방법들
JP2017080203A (ja) * 2015-10-29 2017-05-18 キヤノンマーケティングジャパン株式会社 情報処理装置、情報処理方法、プログラム
KR20170119496A (ko) * 2016-04-19 2017-10-27 광주과학기술원 3차원 객체 검출 및 자세추정 방법

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11941763B2 (en) * 2019-11-07 2024-03-26 Square Enix Co., Ltd. Viewing system, model creation apparatus, and control method
KR20220151306A (ko) * 2021-05-06 2022-11-15 한국전자통신연구원 3차원 콘텐츠 생성 방법 및 장치
WO2023096403A1 (ko) * 2021-11-25 2023-06-01 (주)클로버추얼패션 3차원 아바타의 신체 부위 경계면 결정 방법 및 장치
KR20230114375A (ko) * 2022-01-25 2023-08-01 스크린커플스(주) 클라우드 서버를 이용한 ai 기반의 xr 콘텐츠 서비스 방법

Also Published As

Publication number Publication date
CN111640175A (zh) 2020-09-08
SG11202012802RA (en) 2021-01-28
EP3726476A4 (en) 2021-04-07
CA3104558A1 (en) 2019-12-26
JP7176012B2 (ja) 2022-11-21
AU2019291441A1 (en) 2021-01-21
WO2019242454A1 (zh) 2019-12-26
EP3726476A1 (en) 2020-10-21
CN111640176A (zh) 2020-09-08
JP2021527895A (ja) 2021-10-14
AU2019291441B2 (en) 2023-07-06
US20220383579A1 (en) 2022-12-01
US20200349765A1 (en) 2020-11-05
US11436802B2 (en) 2022-09-06
BR112020025903A2 (pt) 2021-03-16
CN110634177A (zh) 2019-12-31
KR102524422B1 (ko) 2023-04-20

Similar Documents

Publication Publication Date Title
KR102524422B1 (ko) 객체 모델링 및 움직임 방법 및 장치, 그리고 기기
CN109074660B (zh) 单目相机实时三维捕获和即时反馈的方法和系统
US11494995B2 (en) Systems and methods for virtual and augmented reality
WO2020192706A1 (zh) 物体三维模型重建方法及装置
EP4036790A1 (en) Image display method and device
US11657563B2 (en) Path guiding for path-traced rendering
CN113628327A (zh) 一种头部三维重建方法及设备
US9754398B1 (en) Animation curve reduction for mobile application user interface objects
CN111382618A (zh) 一种人脸图像的光照检测方法、装置、设备和存储介质
Zhuang Film and television industry cloud exhibition design based on 3D imaging and virtual reality
Nguyen et al. High resolution 3d content creation using unconstrained and uncalibrated cameras
Lechlek et al. Interactive hdr image-based rendering from unstructured ldr photographs
US20230196702A1 (en) Object Deformation with Bindings and Deformers Interpolated from Key Poses
CN116389704A (zh) 视频处理方法、装置、计算机设备、存储介质和产品
CN115375832A (zh) 三维人脸重建方法、电子设备、存储介质及程序产品

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E90F Notification of reason for final refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant