JP2021527895A - オブジェクト・モデリング動作方法及び装置並びにデバイス - Google Patents

オブジェクト・モデリング動作方法及び装置並びにデバイス Download PDF

Info

Publication number
JP2021527895A
JP2021527895A JP2020570722A JP2020570722A JP2021527895A JP 2021527895 A JP2021527895 A JP 2021527895A JP 2020570722 A JP2020570722 A JP 2020570722A JP 2020570722 A JP2020570722 A JP 2020570722A JP 2021527895 A JP2021527895 A JP 2021527895A
Authority
JP
Japan
Prior art keywords
target
model
skeleton model
skeleton
operation method
Prior art date
Legal status (The legal status 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 status listed.)
Granted
Application number
JP2020570722A
Other languages
English (en)
Other versions
JP7176012B2 (ja
Inventor
尚也 岩本
ワン,ティジォン
レイ,ツァイホァ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Publication of JP2021527895A publication Critical patent/JP2021527895A/ja
Application granted granted Critical
Publication of JP7176012B2 publication Critical patent/JP7176012B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/25Fusion techniques
    • G06F18/253Fusion techniques of extracted features
    • 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
    • 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)
  • Multimedia (AREA)
  • Health & Medical Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • General Health & Medical Sciences (AREA)
  • Oral & Maxillofacial Surgery (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Computer Hardware Design (AREA)
  • Architecture (AREA)
  • Data Mining & Analysis (AREA)
  • Medical Informatics (AREA)
  • Computing Systems (AREA)
  • Databases & Information Systems (AREA)
  • Human Computer Interaction (AREA)
  • Evolutionary Biology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Processing Or Creating Images (AREA)
  • Image Generation (AREA)
  • Auxiliary Devices For And Details Of Packaging Control (AREA)

Abstract

本発明はオブジェクト・モデリング動作方法を開示する。方法はモバイル端末に適用され、モバイル端末はカラー・カメラと深度カメラとを含む。カラー・カメラと深度カメラとはモバイル端末の一方の側に位置している。方法は、カラー・カメラと深度カメラとを使用することにより、ターゲット・オブジェクトに関するパノラマ・スキャニングを実行し、ターゲット・オブジェクトの3Dモデルを取得するステップと、ターゲット動作方法を取得するステップと、ターゲット骨格モデルとターゲット・オブジェクトの3Dモデルとを融合するステップと、ターゲット動作方法を取得するステップと、ターゲット・オブジェクトの3Dモデルをターゲット動作方法で動かすために、ターゲット骨格モデルをターゲット動作方法で制御するステップとを含む。これは、スキャニング、3D再構成、骨格リギングから、オブジェクトの予め設定されたアニメーション表示までを1つの端末上で統合することを実現し、これにより静的なオブジェクトの動的化を実現し、ユーザーによるモバイル端末使用への関心を増加させることができる。

Description

本発明は端末技術の分野、特にオブジェクト・モデリング動作方法及び装置並びにデバイスに関連する。
情報通信技術の発達により、人々は、彼らの生活や仕事の中で、グラフィックスや画像に益々触れるようになった。画像を取得するための方法は、種々のビデオ・カメラ、カメラ、スキャナ等を使用することにより実行される。通常、オブジェクトの平面画像、即ちオブジェクトの2次元情報のみが、これらの手段を使用することにより取得され得る。機械ビジョン、顔検出、物理的プロファイリング、自動処理、製品品質管理、生物医学などの多くの分野において、オブジェクトの3次元情報は不可欠である。それ故に3Dスキャニング技術が現れる。一般的に使用されるデバイスは、3次元スキャナ(3Dスキャナ)である。3Dスキャナは、現実世界のオブジェクトや環境を検出及び分析し、形状(幾何学的構造)及び外観(色及び表面反射率などの特性)に関するデータを収集するために使用される科学機器である。3次元スキャナは、オブジェクトの幾何学的表面に点群(point cloud)を作成するために使用される。これらの点は、補間によりオブジェクトの表面形状を形成するために使用されてもよい。より高密度な点群は、より正確なモデルを作成することが可能である(このようなプロセスは、3次元再構成とも呼ばれる)。スキャナが表面の色を取得することが可能である場合、更にテクスチャ・マップが、再構築された表面の周りに巻き付けられ、これはテクスチャ・マッピング(texture mapping)と呼ばれる。
しかしながら、先行技術において、3次元スキャナを使用することは難しいので、専門的なユーザーしか3次元スキャナを操作することができない。更に、3次元スキャナの応用シナリオも比較的限定されている。そのため、一般のユーザーが3次元スキャニング技術を使用できるようにする方法は、解決されるべき緊急の課題である。
本発明の実施形態は、オブジェクト・モデリング及び動作方法及び装置並びにデバイスを提供し、その結果、ユーザーはいつでもどこでもオブジェクトをスキャンし、動的な効果を達成し、関心とプレイ性を高め、ユーザーのスティッキネスを向上させ、ユーザーがトレンドの先頭を行くことを可能にすることができる。
本発明の実施形態で提供される具体的な技術的ソリューションは以下の通りである。
第1態様によれば、本発明の実施形態はオブジェクト・モデリング動作方法を提供する。方法はモバイル端末に適用され、モバイル端末はカラー・カメラと深度カメラとを含む。カラー・カメラと深度カメラとはモバイル端末の正面又は背面の一方の側に位置する。方法は具体的には、カラー・カメラと深度カメラとを使用することにより、ターゲット・オブジェクトに関するパノラマ・スキャニングを実行し、ターゲット・オブジェクトの3Dモデルを取得するステップと、ターゲット骨格モデルを取得するステップと、ターゲット骨格モデルとターゲット・オブジェクトの3Dモデルとを融合するステップと、ターゲット動作方法を取得するステップと、ターゲット・オブジェクトの3Dモデルをターゲット動作方法で動かすために、ターゲット骨格モデルをターゲット動作方法で制御するステップとを含む。
第2態様によれば、本発明の実施形態はオブジェクト・モデリング動作装置を提供する。装置はモバイル端末に適用され、モバイル端末はカラー・カメラと深度カメラとを含む。カラー・カメラと深度カメラとはモバイル端末の正面又は背面の一方の側に位置する。装置は、カラー・カメラと深度カメラとを使用することにより、ターゲット・オブジェクトに関するパノラマ・スキャニングを実行し、ターゲット・オブジェクトの3Dモデルを取得するように構成されたスキャニング・モジュールと、ターゲット骨格モデルを取得するように構成された第1取得モジュールと、ターゲット骨格モデルとターゲット・オブジェクトの3Dモデルとを融合する融合モジュールと、ターゲット動作方法を取得するように構成された第2取得モジュールと、ターゲット・オブジェクトの3Dモデルをターゲット動作方法で動かすために、ターゲット骨格モデルをターゲット動作方法で制御するように構成された動作モジュールとを含む。
本発明の実施形態で提供される上記の方法及び装置の技術的ソリューションによれば、スキャニング、3D再構成、骨格リギングから、予め設定されたアニメーション表示までの統合された設計が、専門的なスキャニングのために専門的で負担の重い複雑な装置を使用することをユーザーに要求することなく、あるいは複雑なモデリング及びアニメーション処理をPCにおいて実行することなく、モバイル端末においてオブジェクトに関して実現されることが可能である。これらの機能は、ユーザーのために統合され及び提供され、その結果、ユーザーはモバイル端末上でこれらの操作方法を容易に実行することができ、ユーザー周囲の任意の「静止オブジェクト(又は静止オブジェクトに類似のもの)」がアニメーション化及び活性化され、それにより、ユーザーによる端末利用に対する関心を高め、ユーザーの体感を向上させることができる。
メディアの分野では、「カメラ」と「レンズ」は同義語であってもよいことが理解されるべきである。
第1態様又は第2態様によれば、可能な設計において、深度カメラはTOFモジュールを使用する可能性がある。
第1態様又は第2態様によれば、可能な設計において、深度カメラは構造化された光センサー・モジュールを使用する可能性がある。
第1態様又は第2態様によれば、可能な設計において、深度カメラの視野は40度から80度の範囲である。
第1態様又は第2態様によれば、可能な設計において、深度カメラにおける赤外光の送信パワーは、50mwから400mwの範囲で選択されることが可能である。特殊な用途において極端に強い光の場合、送信パワーはより高いものであってもよい。
第1態様又は第2態様によれば、可能な設計において、オブジェクト・スキャニングのためのスキャニング距離は、20cmから80cmの範囲である。スキャニング距離は、深度カメラからターゲット・オブジェクトまでの距離として理解されてもよい。
第1態様又は第2態様によれば、可能な設計において、スキャニング・プロセスにおける深度カメラの撮影フレーム・レートは25fpsより低くないように選択されてもよい。
第1態様又は第2態様によれば、可能な設計において、骨格モデルは、3Dモデルに基づく一連のアルゴリズムを使用することにより算出されてもよい。
第1態様又は第2態様によれば、可能な設計において、骨格モデル生成ライブラリ、例えば幾つかの線分と点とがユーザーに提供されることが可能であり、線分は骨格を表し、点は関節を表す。ユーザーのオペレーション命令、例えばジェスチャ、スライド、又はショートカット・キーが受信され、少なくとも2つの線分と少なくとも1つの点とが骨格モデルに結び付けられて骨格モデルが得られる。更に、骨格モデルはクラウドにアップロードされるか、又はローカルに格納される。方法は、第1取得モジュールによって実現されてもよい。ハードウェアにおいて、方法は、メモリ内のプログラム命令を呼び出すことによって、プロセッサにより実現されてもよい。
第1態様又は第2態様によれば、可能な設計において、より開放的な生成ライブラリがユーザーに提供される可能性があり、線分と点はユーザーによって完全に自由に設計され、ここで、線分は骨格を表し、点は関節を表す。ユーザーのオペレーション命令、例えばジェスチャ、スライド、又はショートカット・キーが受信され、少なくとも2つの線分と少なくとも1つの点とが骨格モデルに結び付けられて骨格モデルが得られる。更に、骨格モデルはクラウドにアップロードされるか、又はローカルに格納される。方法は、第1取得モジュールによって実現されてもよい。ハードウェアにおいて、方法は、メモリ内のプログラム命令を呼び出すことによって、プロセッサにより実現されてもよい。
第1態様又は第2態様によれば、可能な設計において、特定の実装プロセスにおいて、ターゲット・オブジェクトの形状と最も高い一致度を有する骨格モデルが、少なくとも1つの予め設定された骨格モデルから、ターゲット骨格モデルとして選択されることが可能である。予め設定された骨格モデルは、ネットワーク又はクラウドに格納されてもよいし、あるいはローカルに格納されてもよい。例えば、鶏の骨格モデル、犬の骨格モデル、及び魚の骨格モデルがローカルに格納されている。オブジェクトがアヒルである場合、システムは、外観認識により鶏の骨格モデルをターゲット骨格モデルとして使用する。類似性を決定する基準は、骨格形態、骨格の長さ、骨格の厚み、骨格の量、骨格の構成方式などを含むが、これらに限定されない。方法は、第1取得モジュールによって実現されてもよい。ハードウェアにおいて、方法は、メモリ内のプログラム命令を呼び出すことによって、プロセッサにより実現されてもよい。
第1態様又は第2態様によれば、可能な設計において、ユーザーの選択命令を受け取られてもよく、選択命令は、少なくとも1つの予め設定された骨格モデルから、ターゲット骨格モデルを選択するために使用され、これらの予め設定されたモデルはローカルに格納され、あるいはクラウド又はネットワークから呼び出される。方法は、第1取得モジュールによって実現されてもよい。ハードウェアにおいて、方法は、メモリ内のプログラム命令を呼び出すことによって、プロセッサにより実現されてもよい。
第1態様又は第2態様によれば、可能な設計において、第1オブジェクトの動作方法が取得されることが可能であり、第1オブジェクトの動作方法はターゲット動作方法として使用される。第1オブジェクトは、目下リアル・タイムで動いているオブジェクトであってもよいし、あるいはオブジェクトの動作方法であってキャプチャされ格納されていたものであってもよいし、あるいは特定のオブジェクトの予め設定された動作方法であってもよい。方法は、第2取得モジュールによって実現されてもよい。ハードウェアにおいて、方法は、メモリ内のプログラム命令を呼び出すことによって、プロセッサにより実現されてもよい。
第1態様又は第2態様によれば、可能な設計において、予め設定されたターゲット動作方法のうちの1つが選択されてもよい。方法は、第2取得モジュールによって実現されてもよい。ハードウェアにおいて、方法は、メモリ内のプログラム命令を呼び出すことによって、プロセッサにより実現されてもよい。予め設定されたターゲット動作方法は、一組の完全な動作方法であってもよいし、あるいはユーザー・オペレーションに対応する動作方法であってもよい。例えば、ユーザーが、端末上で表示される「活性化されたオブジェクト」に対してユーザーの手を振ると、オブジェクトは、予め設定された手振り応答アニメーション方法に従って動作することができる。より一般的には、ユーザーは、予め設定されたインタラクション・アクションを端末に入力してもよく、端末は、インタラクション・アクションに基づいて、対応する応答動作方法を取得し、応答動作方法に従って動かされるべきオブジェクトの3Dモデルを動かす。
第1態様又は第2態様によれば、可能な設計において、動作方法は、アニメーション制作ソフトウェアを使用することでユーザーによって作成されてもよい。もちろん、ソフトウェアは、システムに組み込まれたツールキットであってもよいし、スキャニング及び運動再構築のためにアプリケーションにロードされたツールキットであってもよいし、あるいは第三者のアニメーション設計ツールからのものであってもよい。動作方法は、履歴上作成済みのもの又は現在作成される動作又はアニメーションであってもよい。方法は、第2取得モジュールによって実現されてもよい。ハードウェアにおいて、方法は、メモリ内のプログラム命令を呼び出すことによって、プロセッサにより実現されてもよい。
第1態様又は第2態様によれば、可能な設計において、動作方法は、物理的属性に基づいて予め格納された複数の動作方法から、最も高い属性一致度を有する動作方法が、ターゲット動作方法として選択されるものであってもよい。方法は、第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ネットワークのうちの1つ以上を含む。
概要の内容は、特許請求の範囲において実施されることが可能な全ての方法を含む可能性があることが理解されるべきであり、ここでは列挙しない。
前述の可能な実現方法及びステップの任意の何れかに関し、自然法則に違反することなく、様々な方法及びステップの自由な組み合わせが実行される可能性があり、幾つかの可能なステップが、様々な方法及びステップに対して追加又は削減される可能性がある。これは一つずつ列挙されておらず、本発明において詳細には説明されていない。
本発明では、スキャニング、3D再構成、骨格リギングから、オブジェクトのための予め設定されたアニメーション表示までの統合が、1つの端末上で実現されることが可能であり、これにより、静止オブジェクトの活性化を実現し、ユーザーによるモバイル端末使用への関心を増加させることができる。
本発明の実施形態による端末の概略構造図である。
本発明の実施形態によるオブジェクト・モデリング動作方法のフローチャートである。
本発明の実施形態によるオブジェクト・スキャニングからアニメーション実現までの主要なプロセスを示す。
本発明の実施形態による構造化された光の概略図である。
本発明の実施形態によるTOFの概略図である。
本発明の実施形態によるメッシュ化+テクスチャ・マッピング方法のフローチャートである。
本発明の実施形態による特定のメッシュ実装ソリューションのフローチャートである。
本発明の実施形態による特定のテクスチャ・マッピング実装ソリューションのフローチャートである。
本発明の実施形態による特定のメッシュ化+テクスチャ・マッピング・インスタンスを示す。
本発明の実施形態による特定の骨格リギング・ソリューションのフローチャートである。
本発明の実施形態による特定のアニメーション・フローチャートである。
本発明の実施形態によるオブジェクト・モデリング動作装置の概略図である。
以下、本発明の実施形態における添付図面を参照して、本発明の実施形態における技術的ソリューションを、明確かつ完全に説明する。明らかに、説明される実施形態は、本発明の実施形態の幾つかであるに過ぎず、すべてではない。創作的な労力なしに本発明の実施形態に基づいて当業者により得られる他のすべての実施形態は、本発明の保護範囲内に該当するものとする。
本発明の実施形態において、モバイル端末は、撮影機能及び/又はデータ接続性をユーザーに提供するデバイス、ワイヤレス接続機能を有するハンドヘルド・デバイス、又はワイヤレス・モデムに接続される他の処理デバイス、例えばデジタル・カメラ、シングル・レンズ反射カメラ、又はスマートフォンであってもよいし、あるいは撮影機能及び表示機能を有する他のインテリジェント・デバイス、例えばウェアラブル・デバイス、タブレット・コンピュータ、PDA(Personal Digital Assistant,パーソナル・デジタル・アシスタント)、ドローン、又は航空写真撮影機であってもよい。
図1は、端末100のオプション的なハードウェア構造の概略図である。
図1に言及すると、端末100は、無線周波数ユニット110、メモリ120、入力ユニット130、ディスプレイ・ユニット140、撮影ユニット150、オーディオ回路160、スピーカ161、マイクロフォン162、プロセッサ170、外部インターフェース180、電源190などのコンポーネントを含むことができる。
無線周波数ユニット110は、情報を送信及び受信すること、あるいは通話プロセスにおける信号を送信及び受信することを行うように構成されることが可能である。特に、無線周波数ユニット110は、基地局のダウンリンク情報を受信した後に、処理を行うプロセッサ170へダウンリンク情報を届け、また関連するアップリンク・データを基地局へ送信する。一般に、RF回路は、アンテナ、少なくとも1つの増幅器、トランシーバ、カプラ、低ノイズ増幅器(Low Noise Amplifier,LNA)、デュプレクサなどを含むが、これらに限定されない。更に、無線周波数ユニット110は、無線通信によりネットワーク・デバイス及び他のデバイスと通信してもよい。任意の通信規格又はプロトコルが無線通信に使用される可能性があり、通信規格又はプロトコルは、移動通信用グローバル・システム(Global System for Mobile Communication,GSM)、ゼネラル・パケット無線サービス(General Packet Radio Service,GPRS)、符号分割多元接続(Code Division Multiple Access,CDMA)、ワイドバンド符号分割多元接続(Wideband Code Division Multiple Access,WCDMA)、ロング・ターム・エボリューション(Long Term Evolution,LTE)、電子メール、ショート・メッセージング・サービス(Short Messaging Service,SMS)等を含むがこれらに限定されない。
メモリ120は、命令及びデータを格納するように構成されることが可能である。メモリ120は、主に、命令記憶エリア及びデータ記憶エリアを含むことが可能である。データ記憶エリアは、ジョイント・タッチ・ジェスチャとアプリケーション・プログラム機能との間のアソシエーション関係を記憶することが可能である。命令記憶エリアは、オペレーティング・システム、アプリケーション、及び命令などのソフトウェア・ユニット、又はソフトウェア・ユニットのサブセット若しくは拡張セットを記憶することが可能である。メモリ120は、更に不揮発性ランダム・アクセス・メモリを含み、コンピュータ処理デバイス内のハードウェア、ソフトウェア、及びデータ・リソースを管理することや、ソフトウェア及びアプリケーションに関する制御をサポートすることを含む機能をプロセッサ170に提供することができる。メモリ120は、更に、マルチメディア・ファイル、実行プログラム、及びアプリケーションを記憶するように構成される。
入力ユニット130は、入力された数字又は文字情報を受信し、ポータブル多機能装置のユーザー設定や機能制御に関するキー信号入力を生成するように構成されてもよい。具体的には、入力ユニット130は、タッチスクリーン131及び他の入力デバイス132を含んでもよい。タッチスクリーン131は、タッチスクリーン上又はその近辺でのユーザーのタッチ操作(例えば、指、ジョイント、又はスタイラスのような任意の適切な物体を使用することによって、タッチスクリーン上又はその近辺でユーザーによって実行された操作)を収集し、予め設定されたプログラムに従って、対応する接続装置を駆動することが可能である。タッチスクリーンは、タッチスクリーン上でのユーザーのタッチ動作を検出し、タッチ動作をタッチ信号に変換し、タッチ信号をプロセッサ170に送信し、またプロセッサ170によって送信されたコマンドを受信して実行することができる。タッチ信号は、少なくともタッチ・ポイント座標情報を含む。タッチスクリーン131は、端末100とユーザーとの間に入力スクリーン及び出力スクリーンを提供することができる。更に、タッチスクリーンは、抵抗型、容量型、赤外線型、及び表面弾性波型のような種々のタイプで実装されてもよい。タッチスクリーン131に加えて、入力ユニット130は、別の入力デバイスを更に含んでもよい。具体的には、別の入力デバイス132は、物理的なキーボード、ファンクション・キー(ボリュームコントロール・キー又はパワー・オン/オフ・キーなど)、トラックボール、マウス、ジョイスティックなどのうちの1つ以上を含む可能性があるが、これらに限定されない。
更に、タッチスクリーン131は表示パネル141をカバーしてもよい。タッチスクリーン131上又はその近辺でタッチ操作を検出した後、タッチスクリーン131は、そのタッチ操作をプロセッサ170に転送してタッチイベントのタイプを決定する。次いで、プロセッサ170は、タッチイベントのタイプに基づいて、対応する視覚出力をディスプレイ・パネル141上に提供する。実施形態において、タッチスクリーン及びディスプレイ・ユニットは、端末100の入力、出力、及び表示の機能を実現するために、1つのコンポーネントに統合されてもよい。説明を容易にするために、本発明の実施形態では、タッチ・ディスプレイ・スクリーンは、タッチスクリーン及びディスプレイ・ユニットの機能のセットを表す。幾つかの実施形態において、タッチスクリーン及びディスプレイ・ユニットは、代替的に、2つの独立したコンポーネントとして使用されてもよい。
ディスプレイ・ユニット140は、ユーザーにより入力された情報、ユーザーに提供される情報、及び端末100の各種メニューを表示するように構成されることが可能である。本発明の実施形態において、ディスプレイ・ユニットは、カメラ150を使用することによりディスプレイ・デバイスで取得された画像を表示するように更に構成され、その画像は、幾つかの撮影モードにおけるプレビュー画像、キャプチャされた初期画像、及び撮影後に特定のアルゴリズムを使用することで処理されるターゲット画像を含んでもよい。
撮影ユニット150は、画像やビデオを収集するように構成されており、アプリケーション・プログラム命令によってトリガすることにより、撮影機能やビデオ・カメラ機能を実現できるようにすることが可能である。撮影ユニットは、撮像レンズ、光フィルタ、及び撮像センサーなどのコンポーネントを含んでもよい。オブジェクトによって放射又は反射された光は、撮像レンズに入射し、光フィルタを通過することによってイメージ・センサー上に集められる。撮像レンズは、主に、オブジェクト(キャプチャされるオブジェクト又はターゲット・オブジェクトと言及されてもよい)によって放射又は反射される光を、撮影視野の中に集めて撮像を実行するように構成される。光フィルタは、主に、余分な光波(例えば、赤外線などの可視光以外の光波)を光から除外するように構成される。イメージ・センサーは、主に、受信した光信号に対して光電変換を実行し、光信号を電気信号に変換し、その後の処理のためにプロセッサ170に電気信号を入力するように構成される。
具体的には、撮影ユニット150は、カラー・カメラ(a color lens)151及び深度カメラ(a depth lens)152を更に含む可能性がある。カラー・カメラは、ターゲット・オブジェクトのカラー画像を収集するように構成され、現在人気のある端末製品の間で一般的に使用されているカラー・カメラを含む。深度カメラは、ターゲット・オブジェクトの深度情報を取得するように設定されている。例えば、深度カメラは、TOF技術及び構造化光技術を使用することにより実装されてもよい。
TOFはタイム・オブ・フライト(Time of Flight)技術の略である。具体的には、センサーは、変調された近赤外光を放出し、その光はオブジェクトに遭遇した後に反射されたものであり、センサーは、放出光と反射光との間の時間差又は位相差を計算し、キャプチャされたシーンの距離に変換して深度情報を生成し、そして、オブジェクトの3次元的な輪郭は、従来のカラー・カメラの撮影機能との組み合わせにおいて、異なる色が異なる距離を表現する地形図を使用することにより、提示されることが可能である。
構造化光は、投影素子とカメラとを含む一組のシステム構造である。投影素子が、オブジェクトの表面と背景に特定の光情報(例えば、ラスタにより回折させられた光情報)を投影した後に、カメラが光情報を収集し、オブジェクトの位置や深度などの情報が、オブジェクトによって生じる光信号の変化(例えば、光の幅の変化、及び変位)に基づいて算出され、更に3次元空間全体を復元する。
オーディオ回路160、スピーカ161、及びマイクロフォン162は、ユーザーと端末100との間のオーディオ・インターフェースを提供することができる。オーディオ回路160は、受信したオーディオ・データから変換された電気信号をスピーカ161に送信することが可能であり、スピーカ161は、電気信号を出力用の音声信号に変換する。更に、マイクロフォン162は、音声信号を収集するように構成され、更に、収集された音声信号を電気信号に変換することができる。電気信号を受信した後、オーディオ回路160は、電気信号をオーディオ・データに変換し、オーディオ・データを処理のためにプロセッサ170に出力し、オーディオ・データを例えば無線周波数ユニット110を介して別の端末へ送信するか、又は、オーディオ・データを更なる処理のためにメモリ120に出力する。オーディオ回路はまた、オーディオ回路とイヤホンとの間の接続インターフェースを提供するように構成されたイヤフォン・ジャック163を含んでもよい。
プロセッサ170は、端末100の制御センタであり、様々なインターフェース及びラインを介して携帯電話全体の様々な部分に接続される。プロセッサ170は、端末100の様々な機能を実行し、メモリ120に記憶された命令を動作させ又は実行し、メモリ120に記憶されたデータを呼び出すことによってデータを処理し、携帯電話上で全体的なモニタリングを実行する。オプションとして、プロセッサ170は1つ以上の処理ユニットを含んでもよい。好ましくは、プロセッサ170は、アプリケーション・プロセッサ及びモデム・プロセッサと一体化されていてもよい。アプリケーション・プロセッサは、主に、オペレーティング・システム、ユーザー・インターフェース、アプリケーション・プログラム等を処理する。モデム・プロセッサは主に無線通信を処理する。代替的に、モデム・プロセッサはプロセッサ170に統合されていなくてもよいことが理解されるであろう。幾つかの実施形態において、プロセッサ及びメモリは、単一のチップ上に実装されてもよい。幾つかの実施形態において、プロセッサ及びメモリは、独立した複数のチップ上に別々に実装されてもよい。プロセッサ170は、更に、対応する動作制御信号を生成し、動作制御信号を演算処理デバイス内の対応するコンポーネントに送り、ソフトウェア内のデータを読み出して処理し、特にメモリ120内のデータ及びプログラムを読み出して処理し、その結果、命令によって要求される動作を実行するために対応するコンポーネントを制御するように、機能モジュールが対応する機能を実行する、ように構成されてもよい。
端末100は外部インターフェース180を更に含む。外部インターフェースは、標準的なマイクロUSBインターフェース又はマルチ・ピン・コネクタであってもよい。外部インターフェースは、端末100を通信用の別の装置に接続するように構成されてもよいし、あるいは端末100を充電するために充電器に接続するように構成されてもよい。
端末100は、各コンポーネントに電力を供給する電源190(バッテリなど)を更に含む。好ましくは、電源は、電源管理システムを使用することによってプロセッサ170に論理的に接続され、充電機能、放電機能、及び電力消費管理などの機能を、電源管理システムを使用することによって実現することができる。
図示されていないが、端末100は、フラッシュ、ワイファイ(wireless fidelity,Wi−Fi)モジュール、Bluetoothモジュール、異なる機能を有するセンサーなどを更に含むことが可能である。詳細はここでは説明されない。以下に説明される全ての方法は図1に示される端末に適用されることが可能である。また、図1は、ポータブル多機能装置の一例にすぎず、ポータブル多機能装置に関する如何なる限定も構成しないことを、当業者は理解するであろう。ポータブル多機能装置は、図に示されているものよりも多い又は少ないコンポーネントを含んでもよいし、あるいは幾つかのコンポーネントを組み合わせてもよいし、あるいは異なるコンポーネントを有してもよい。
図2に言及すると、本発明の実施形態はオブジェクト・モデリング動作方法を提供している。この方法はモバイル端末に適用され、モバイル端末はカラー・カメラと深度カメラとを含む。カラー・カメラと深度カメラはモバイル端末の一方の側に位置する。方法は以下のステップを含む:
ステップ21:カラー・カメラと深度カメラとを使用することにより、ターゲット・オブジェクト(即ち、スキャンされる対象のオブジェクトであり、あるパラグラフでは省略してオブジェクトと言及される)に関するパノラマ・スキャニングを実行し、ターゲット・オブジェクトの3Dモデルを取得する。
ステップ22:ターゲット骨格モデルを取得する。
ステップ23:ターゲット骨格モデルとターゲット・オブジェクトの3Dモデルとを融合する。
ステップ24:ターゲット動作方法を取得する。
ステップ25:ターゲット骨格モデルをターゲット動作方法で制御し、ターゲット・オブジェクトの3Dモデルをターゲット動作方法で動かす。
カラー・カメラと深度カメラは、端末デバイスの正面に配置されてもよいし、あるいは端末デバイスの背面に配置されてもよい。カラー・カメラ及び深度カメラの具体的な配置方法及び数量は、設計者の要求に基づいて柔軟に決定されることが可能である。これは本発明で限定されない。
図3は、オブジェクト・スキャニングからアニメーション実現までの主要なプロセスを示す。先ず、オブジェクトがスキャンされ、深度カメラを使用することにより深度マップを取得し、カラー・カメラを使用することによりカラー画像を取得し;テクスチャリングされたメッシュ・モデル、即ちオブジェクトの3Dモデルを取得するために、深度マップ及びカラー画像について融合が実行され;骨格の動きに従って骨格モデルを動かすために、3Dモデルが骨格モデルに埋め込まれ(通常、骨格の動きは不可視であるが、特殊なシナリオ条件の下では、ユーザーにとって確実に可視的である可能性がある)、オブジェクトのアニメーション効果を視覚的に提示する。以下、具体例を参照しながら詳細な説明を行う。
ステップ21
ステップ21は、深度カメラ・スキャン、カラー・カメラ・スキャン、3D再構成に関連する。具体例は以下のとおりである。
深度カメラ・スキャニング
深度カメラは、3D/深度センサー又は3D/深度センサー・モジュールを含む可能性があり、静止オブジェクトの深度情報を取得するように構成されている。走査されたオブジェクトは、理論的には静的なオブジェクトであるはずであるが、実際の動作中に、僅かな動きがある程度許容されることが、理解されるべきである。深度情報は、構造化光技術及びTOFを使用することにより取得されることが可能である。深度情報を得るための方法の出現に伴い、深度モジュールは、より豊富な実装を更に含む可能性があり、これは本発明において限定されない。
構造化光の原理図が図4に示されている。301は不可視の赤外線光源を表し、302は特定の光パターンを発生するラスタを表し、303は走査されるオブジェクトを表し、304は赤外線カメラを表す。303で反射された光パターンが取得され、予想される光パターンと比較され、ターゲット・オブジェクトのスキャンされた部分の深度情報が計算により取得される。
図5はTOF深度カメラを示す。311はターゲット・オブジェクトを表し、312はTOFカメラ内の赤外線送信端部を表し、313は赤外線受信端部を表す。312が、赤外光線(その光は例えば850nm〜1200nmの範囲に及ぶ波長を伴う可能性があるが、これに限定されない)をターゲット・オブジェクトの方に送信すると、ターゲット・オブジェクトは赤外光線を反射し、反射された赤外光線は313によって受信される。313の中のセンサー(センサーは例えば240×180より高い解像度を有するCMOSアレイ又はCCDアレイであってもよいが、これらに限定されない)は、反射された赤外光線に起因する一連の電位差信号を生成する。深度計算ユニット314は、一連の電位差信号に基づいて演算を行い、最終的に、ターゲット・オブジェクトのスキャンされた部分の深度情報315を取得する。
カラー・カメラ・スキャニング
ターゲット・オブジェクトをスキャンするプロセスでは、深度カメラとカラー・カメラが同期して呼び出され、特定のキャリブレーション及び相関アルゴリズムを使用することにより、深度カメラ及びカラー・カメラで相応にスキャンされたターゲット・オブジェクトの画像を一致させる。スキャン中にカラー・カメラにより画像を取得する方法は、基本的には、一般的なカメラを使用することにより画像を撮影する方法と同じであり、詳細はこのパートでは説明されない。
特定の実装プロセスでは、ターゲット・オブジェクトは、特定の角度範囲(通常、深度カメラ及びカラー・カメラの視野のうち、より小さい方の視野によって制限される)と特定の距離の内でスキャンされることを必要とする。オブジェクトは、深度情報(例えば、深度マップ)の品質によって制限され、通常、深度カメラ(又はモバイル端末)から20cmないし80cmの距離でスキャンされる。
具体的なスキャニング方法は次のとおりであってもよい:端末を静止させ、深度カメラの前方30cm〜70cmの距離にターゲット・オブジェクトを保持及び配置し、オブジェクトを全周方向にゆっくりと回転させることを、スキャン画像全ての和集合が完全なオブジェクトを構成するために使用できるようになるまで行う。オブジェクトが保持されている場合に、オブジェクトの表面が遮られないようにすべきであることに留意すべきである。
特定のスキャニング方法は次のとおりであってもよい:オブジェクトを静止させ、深度カメラの前方30cm〜70cmの距離に端末を保持及び配置し、オブジェクトに関するパノラマ・スキャニングを、スキャン画像全ての和集合が完全なオブジェクトを構成するために使用できるようになるまで行う。端末が保持されている場合に、オブジェクトの表面が遮られないようにすべきであることに留意すべきである。
特定のスキャニング方法は次のとおりであってもよい:オブジェクトを静止させ、深度カメラの前方30cm〜70cmの距離に端末を保持及び配置し、予め設定された角度のインターバルでオブジェクトをスキャンすることを、スキャン画像全ての和集合が完全なオブジェクトを構成するために使用できるようになるまで行う。端末が保持されている場合に、オブジェクトの表面が遮られないようにすべきであることに留意すべきである。
具体的には、キャプチャリングは、シーン全体が確実にキャプチャされることを保証するために、複数回実行されてもよい。シーン情報は、オブジェクトの全ての眺めを含む。従って、パノラマ・スキャニング・プロセスでは、相応して、深度マップの複数のフレーム(深度マップのシーケンス)が存在する可能性があり、各深度マップは、1スキャニング中のスキャニング範囲内のシーンに対応する。また、複数のフレームのカラー画像(カラー画像のシーケンス)が相応して存在する可能性があり、各カラー画像は、1キャニング中のスキャニング範囲内のシーンに対応する。ターゲット・オブジェクトがスキャンされる場合に、他のオブジェクトも含まれる可能性がある。しかしながら、スキャニングが上記の適度な距離で実行されるならば、ターゲット・オブジェクト以外のノイズは、後続の3D再構成プロセスで除去されることが可能である。
可能な実装では、スキャン・プロセスにおける深度カメラの撮影フレーム・レートは、25fps以上(例えば、30fps、60fps、120fps)であってもよい。
可能な実装において、スキャニング・プロセスにおいて、端末はターゲット・オブジェクトのスキャニングの進行を提示することが可能であり、その結果、ユーザーは、ターゲット・オブジェクトのパノラマがカバーされているかどうかを観察し、ユーザーは自律的にスキャニングの継続又はスキャニングの停止を選択することができる。
深度カメラとカラー・カメラは、正面を向いていても又は背面を向いていてもよいので、相応して正面スキャニング及び背面スキャニングという2つの方法が存在する。深度カメラが携帯電話の正面の上方部分に位置する場合、深度カメラは、正面カラー・カメラと共に使用されてもよく、正面スキャニングは、自己スキャニングを実現することができる。深度カメラが携帯電話の背面の上方部分にある場合、深度カメラは背面カラー・カメラと共に使用されてもよい。背面スキャニングでは、より多くのターゲット・オブジェクトが選択される可能性があり、その結果、ターゲット・オブジェクトは繊細にかつ安定的にスキャンされる。深度カメラ及びカラー・カメラの物理的な位置は、折り畳み式スクリーン端末の出現と共に変わる可能性があることが理解されるべきである。従って、正面及び背面の従来の概念は、物理的な位置に関する何らかの制限を構成すべきではない。3Dモデリングのためにオブジェクトがスキャンされる場合、画像の一貫性を保証するために、深度カメラとカラー・カメラは一方の側に配置されてもよく、端末に対する位置や方向は、3D再構成がカメラ位置の任意の組み合わせを使用して実現できることを条件として、制限されない。可能な実装において、端末は、例えば外部接続された撮影ロッド、スキャナ、又は外部接続されたカメラ等の、第三者の撮影デバイスを更に求めてもよい。オプションとして、外部カラー・カメラが使用されてもよいし、外部深度カメラが使用されてもよいし、あるいは両方が使用されてもよい。
ユーザーがスキャニング機能をトリガした場合に、上記のカラー・カメラのスキャニング及び深度カメラのスキャニングはイネーブルにされてもよい。トリガ動作は、タイミング、シャッター・トリガ、ジェスチャ動作、空中センシング、デバイス動作制御などを含む。更に、ユーザーがプレビューのためにカメラをイネーブルにすると、システムは、プレビュー画像の中でどのオブジェクトがスキャニング又は3Dモデリングに適しているかをプロンプトすることができる。例えば、ユーザーを促すためにプレビュー画像中のオブジェクトを識別するために、正方形のボックスが使用されてもよい。
更に、深度カメラ及びカラー・カメラに関連する特定のデバイス・パラメータは、製造プロセス、ユーザー要求、及び端末の設計制約に関連する。これは本発明において特には限定されない。
3D再構成(メッシュ化+テクスチャ・マッピング)
図6に示すように、オブジェクトに対してマルチ・フレーム360度パノラマ・スキャニングが実行された後に、一連の深度マップ321及び一連のカラー画像322が取得される。深度カメラにより取得された各フレームは、スキャンされたシーンの深度マップ(例えば、深度マップ)であり、カラー・カメラにより取得された各フレームは、スキャンされたシーンのカラー画像(例えば、RGB画像)である。メッシュ処理は、ターゲット・オブジェクトのメッシュ(Mesh)モデルを取得するために、深度マップ321のシーケンスにおいて実行され、テクスチャ・マッピングされたメッシュ・モデル323、即ちオブジェクトの3Dモデルを取得するために、テクスチャ・マッピングが、カラー画像322のシーケンスに基づいてメッシュ・モデルに関して実行される。可能な実装において、テクスチャ・マッピングはまた、カラー画像のシーケンス内の全てのフレーム又は幾つかのフレームに基づいて実行されてもよい。
(1)メッシュ化
図7に言及すると、特定の実装プロセスにおいて、特定のメッシュ実装ソリューションは以下の通りである。
ステップ331:各スキャニング・シーンにおけるターゲット・オブジェクトのカラー(RGBを含むが、これに限定されない)マップと深度(Depth)マップを取得する。深度マップ(depth map)は、深度カメラとターゲット・オブジェクト表面上の複数の点との間の距離に関する情報である。深度マップのピクセル値は、深度カメラとターゲット・オブジェクト表面上の1点との間の実際の距離を表現し得ることを除外して、深度マップはグレースケール画像に類似している。一般に、カラー画像と深度マップが登録される。
ステップ332は、深度マップに関してバイラテラル・フィルタリング及びデノイジングを実行すること、異なる解像度を有する画像ピラミッドを生成するために深度マップに関してダウンサンプリングを実行すること、深度マップを点群に変換すること、各頂点の法線ベクトルを推定すること、及び走査されたオブジェクトの範囲外の点をクロッピングすることを含むが、これらに限定されない。
ステップ333:ステップ332において、異なるスキャニング位置におけるターゲット・オブジェクトの深度マップのシーケンス及びカラー画像のシーケンスを収集するために、オブジェクト・モデルが生成されることを必要とする場合、収集されたマップ・シーケンスで得られる1フレームの3D点群は、統一座標系に変換されることを必要とする。言い換えると、オブジェクトの異なるスキャン位置の間のポーズ変換関係、即ち、ポーズ推定が取得される。ポーズ推定は、マップ・シーケンスに基づいてオブジェクトの3Dポーズを推定すべきである。ポーズ推定は、特徴ベースのレジストレーションと点群ベースのレジストレーションという2つの考えに基づいて実行されてもよい。マップ・シーケンスに対して比較的小さな角度で、オブジェクトの変換が実行される場合、精密な点群ベースのレジストレーションが使用される。例えば、反復的な最近接点(iterative closest point)ICPアルゴリズムは、オブジェクトのポーズ推定のために使用されることが可能である。マップ・シーケンスに対して比較的大きな角度で、オブジェクトの変換が実行される場合、オブジェクトの3D特徴に基づいて2つのポーズ間で、粗いレジストレーションが更に実行されてもよく、粗いレジストレーションの結果は精密なレジストレーションの初期値として使用される。この方法は、高速スキャニングをサポートすることができる。
測定誤差が存在しない場合、現在のフレームの3D点は全て、ターゲット・オブジェクトの3D体積モデル(volumetric model)の表面上にある。従って、カメラ・ポーズ(ポーズ変換関係)を解明するために、それは、現在のフレームの3D点群と、ターゲット・オブジェクトの3D体積モデルの表面上の点群との間の距離の最小値を解くことに変換される。目的関数は次のとおりである:
Figure 2021527895
Mはカメラのポーズ変換行列を表し、sは現在計算されているポーズのフレームの3D点群を表し、点群は体積モデルのビュー座標系に変換され、dはビュー座標系のモデルの点群を表し、nはモデル点群に対応する法線を表し、目的関数は、現在のフレームの点群から体積モデルの点群が位置する平面までの距離の最小二乗和を計算することを意味する。
ステップ334:2D深度マップを3D情報に変換し、統一された3D体積モデルへの3D情報における融合を実行する。TSDF(Truncated Signed Distance Function,打ち切り符号付き距離関数)アルゴリズムが使用される。融合されたボクセル値は、SDF(Signed Distance Function,符号付き距離関数)値、ウェイト(weight)値、及びオプションのカラー値である。TSDFアルゴリズムは、現在、3D点群融合に関する主流処理アルゴリズムである。ウェイトは平均化によって計算される。古いウェイト値は、融合が実行されるたびに1つ増やされ、新しいウェイト値は1である。新しいSDF値と古いSDF値とは各自それぞれのウェイトで乗算され、得られた積は合計され、積の合計が融合回数(新しいウェイト値)で乗算され、このようにして新しく正規化されたSDF値が得られる。
ステップ335:予め設定された量のキーフレームが、ロール/ヨー/ピッチの3方向における特定の角度間隔で(例えば、30度、45度、60度、90度などの予め設定された角度であるが、これらに限定されない)格納されるか否かを決定する;格納されるキーフレームの量が予め設定された量(ターゲット・オブジェクトのパノラマの長めがカバーされるかどうかに影響する)を下回っている場合は、シーン(カラー画像と深度マップ)をキャプチャし続け、この場合において、端末はより多くのスキャニングを実行するようにユーザーに指示し;キーフレームの量がターゲット・オブジェクトのパノラマの眺めをカバーするのに十分である場合は、スキャンが完了し、次のステップが進行してもよいことを、ユーザーに促す。
ステップ336:リアル・タイム融合プロセスでは、テクスチャ・マッピングに必要とされる入力キーフレーム情報を選択してバッファリングし、この情報は、カラー画像、ポーズ(異なるマップ間の位置ポーズの差異)などを含む。オブジェクト・モデリングは360度スキャニングの機能を必要とするので、所定量(N)のキーフレームが、ロール、ヨー、ピッチの各方向で選択され、その結果、オブジェクトの360度のテクスチャが完全に復元されることが可能である。例えば、入力画像ストリーム中の各フレームの角度(ヨー/ピッチ/ロール)は、ICPの結果に基づいて決定され、各フレームの定義が算出され、選択ポリシーが、キーフレームを選択するための定義と角度とに基づいて構築される。
角度ポリシーは、360度が異なる方向における360/N個のエリアに分割され、各エリアで明瞭なカラー画像のフレームが存在することを要する。
ブラー検出の原理は、勾配法及びソーベル・オペレータは、通常、画像の不鮮明さの評価に使用されるものである。不鮮明さの計算のために、勾配法が選択されてもよい。以下の式に示されるように、画像中のピクセルは、ピクセルの右及びピクセルの左にある2つのピクセルを利用して、次のようにして計算される。
Figure 2021527895
より大きなブラー値は、より鮮明な画像を示す。
ステップ337:3D点群メッシュを実現するためにマーチング・キューブ・アルゴリズムを使用し、三角形のフェイスを生成する。マーチング・キューブ・アルゴリズムの主なアイディアは、セルごとに、3D点群における中身の部分と背景の部分との間の境界を探索し、境界に適合するようにセルから三角形ファセットを抽出することである。簡単に言うと、ボクセル・データ・コンテンツを含むボクセル点は実点と呼ばれ、実点を越えるすべての背景ボクセル点は虚点と呼ばれる。このように、3次元点群は、様々な実点と虚点により構成されるドット・マトリクスである。例えば、単一のセルの観点からは、セルの8つのボクセル点の各々は、実点又は虚点である可能性があり、従って、2の8乗に及ぶ合計数、即ち、1つのセルに対して256個の可能なケースが存在する可能性がある。マーチング・キューブ・アルゴリズムの中心的なアイディアは、セルから等価な三角形のフェイスを抽出するために、256個の列挙可能なケースを使用することである。セルは、3次元画像内の8つの隣接するボクセル点で構成される立方体ペインである。マーチング・キューブ・アルゴリズムにおける「キューブ」の意味は、セルを意味する可能性もある。セルとボクセルとの間には相違が存在することに留意すべきである:セルは、8つのボクセル点で構成される立方体ペインである一方、各々のセルは(境界にあるものを除く)、8つのセルと共有される。
(2)テクスチャ・マッピング
特定の実装プロセスにおいて、図8に言及すると、特定のテクスチャ・マッピング実装ソリューションは、以下のとおりである:
ステップ341:メッシュ・モデル(三角形フェイス情報)とキーフレームのポーズ情報に従って、各キーフレームのポーズ内のすべてのフェイスが見えるかどうかを判断する。メッシュ・モデルのすべての三角形フェイス及びキーフレームの空間座標に関する情報が入力され、すべての三角形フェイスが各キーフレームのポーズで可視的であるかどうかに関する情報が出力される。
原理は以下のように説明される:三角形フェイスが特定のポーズにおいて可視的であるか又は非可視的であるかを決定する必要がある場合、それは、三角形フェイスの頂点とポーズとを結ぶことにより形成される放射状のラインが、モデルの他の三角形フェイスと交わるかどうかを決定することを必要とする。「yes」の場合、三角形フェイスが別のフェイスによってブロックされ、三角形フェイスが非可視的であることを示し;そうでない場合、三角形フェイスがそのポーズにおいて可視的である。
衝突検出プロセスは、以下の内容:三角形の法線ベクトルの計算、放射状のラインが三角形と交差するかどうかを決定すること、放射状のラインがAABB(Axis−aligned bounding box)と交差するかどうかを決定すること、階層的な二分木の構築、に関連する。
具体的な処理手順は以下のとおりである:
(1)フェイスの頂点を取得し、その頂点を現在のキーフレーム・ビューのカメラ視点に接続して、光線を取得する。
(2)階層的な二分木のルートから始まり、放射状のラインに対してブロッキングが存在するかどうかを算出する。
(3)BV(Bounding Volume)ノードがリーフ・ノードであるかどうかを判断し、BVノードがリーフ・ノードである場合には、ステップ(6)に進む。
(4)放射状ラインがBVのAABB境界ボックスと交差するかどうかを判断し、交差しない場合は(1)に戻る。
(5)放射状ラインがBVと交わる場合は、BVの2つのサブ・ノードを選択し、(3)に戻る。
(6)BVノードがリーフ・ノードである場合、先ず、放射状ラインがAABB境界ボックスと交差するかどうかを判断し、yesの場合、放射状ラインが三角形と交差するかどうかを判断し、yesの場合、頂点はブロックされていると判断する。
(7)フェイスの1つ以上の頂点がブロックされる場合、フェイスは、現在のキーフレーム・ビューにおいて非可視的である。
ステップ342:領域セグメンテーション及びグラフ・カット(Graph Cut)法を使用することにより、ステップ341における結果とメッシュ・モデルとに基づいてメッシュ・モデルに関して各フェイス(face)をラベル付けし、テクスチャを生成するために特定のキーフレーム・ビュー(view)を選択することを決定し、その場合において、フェイス・ラベリング結果は、アフィン・マッピング(Warping)モジュールの入力として使用されることが可能であり、予備的テクスチャ・マップを生成するために使用される。
ステップ343:キーフレーム・ビューにおける対応する領域のテクスチャをテクスチャ・マップにマッピングし、異なるキーフレーム間のパッチ(patch)に関して境界平滑化を実行する。
オブジェクトの3Dモデルは複数のキーフレーム・ビューを使用することにより生成されたテクスチャ・マップであるので、キーフレーム・ビューが選択された後に、テクスチャ・マップ上の異なるキーフレーム・ビューの間で生成された継ぎ目の間に、多くの色の不連続が存在する。テクスチャの不連続部において、各頂点Vertexは2つの頂点:左フェイスに属するVleft、及び右フェイスに属するVrightとして考察されてもよい。各頂点Vの調整前の色はfとして示され、各頂点Vの補正後の色の値gは、以下の最小化方程式に従って求められる:
Figure 2021527895
ここで、argminは最小差分値をとることを意味し、前述の式は次の2つのパートのような2つを含む:
Figure 2021527895
第1パートにおいて、vはキーフレーム間の継ぎ目における頂点(Vertex)を表現し、即ち頂点は左パッチ及び右パッチの双方に属する。fvleft+gvleftにおけるfは調整前の色の値を表し、gは補正後の色の値、即ち増分値(Δ)を表す。この式は、画像の異なるフレーム間の共通点の補正差分を可能な限り小さくし、継ぎ目における滑らかさを保証するために使用される。第2パートにおいて、V及びVは、同じテクスチャ・パッチ上の任意の2つの隣接する頂点の増分が、可能な限り小さくなることを要求し、1回の増分が過剰に大きい一方で他のものが過剰に小さいことから生じる非平滑性を回避することを意味する。
特定の実装プロセスにおいて、フェイス・ラベリング結果において同じラベルを有する隣接する領域はパッチとして格納され、すべてのパッチの頂点に対して境界平滑化が実行され、各頂点のピクセル値が調整され、最終的なテクスチャ・マップを取得するために、最終的な頂点により囲まれた三角形に対して、位置ベース、ピクセル・ベースのアフィン変換が実行される。
オブジェクトの3Dモデルは、オブジェクトのメッシュ・モデルの表面においてオブジェクトのテクスチャ・マップ・セットを描くことによって取得され、通常、.objフォーマットで格納される。図9に示すように、例えば、ライオンのテクスチャ・マップ・セットがライオンのメッシュ・モデルにマッピングされ、ライオンのテクスチャ・マッピング済み3Dモデルが取得される。
ステップ22
ステップ21を実行することにより、3D再構成後に取得されるターゲット・オブジェクトの3Dモデル、即ちテクスチャ・メッシュ・モデルが取得される。次いで、骨格が、テクスチャ・メッシュ・モデルに埋め込まれることを必要とする。以下、骨格モデル、即ちターゲット骨格モデルを取得する方法を説明する。
特定の実装プロセスにおいて、骨格モデル生成ライブラリがユーザーのために例えば何らかの線分と点について提供されている可能性があり、線分は骨格を表し、点は関節を表す。ユーザーのオペレーション命令、例えばジェスチャ、スライド、又はショートカット・キーが受信され、少なくとも2つの線分及び少なくとも1つの点が、骨格モデルを得るために結合される。更に、骨格モデルはクラウドにアップロードされるか、又はローカルに保存される。
具体的な実装プロセスでは、よりオープンな生成ライブラリがユーザーに提供される可能性があり、線分と点はユーザーにより完全に自由に設計され、線分は骨格を表し、点は関節を表す。ユーザーのオペレーション命令、例えばジェスチャ、スライド、又はショートカット・キーが受信され、少なくとも2つの線分及び少なくとも1つの点が、骨格モデルを得るために結合される。更に、骨格モデルはクラウドにアップロードされるか、又はローカルに保存される。
特定の実装プロセスにおいて、ターゲット・オブジェクトの形状との最も高い一致度を有する骨格モデルが、少なくとも1つの予め設定された骨格モデルの中から、ターゲット骨格モデルとして選択されることが可能である。予め設定された骨格モデルは、ネットワーク又はクラウドに格納されてもよいし、あるいはローカルに格納されてもよい。例えば、鶏の骨格モデル、犬の骨格モデル、及び魚の骨格モデルがローカルに保存される。オブジェクトが家鴨である場合、システムは、外観認識により、鶏の骨格モデルをターゲット骨格モデルとして使用する。類似性を決定する基準は、骨格形態、骨格の長さ、骨格の厚み、骨格の量、骨格の組成様式などを含むが、これらに限定されない。
特定の実装プロセスでは、ユーザーの選択命令が受け取られ、選択命令は少なくとも1つの予め設定された骨格モデルからターゲット骨格モデルを選択するために使用される。
ステップ23
融合がターゲット骨格モデルとターゲット・オブジェクトの3Dモデルとに関して実行される、あるいはターゲット骨格モデルがターゲット・オブジェクトの3Dモデルに埋め込まれる。オブジェクト/オブジェクトの骨格関節の位置は、最終的な骨格フレームワークが、ターゲット・オブジェクトの内部構造に最大限に適合し、かつ予め設定された(所与の)骨格フレームワークに可能な限り類似して見えるように、計算されることを必要とする。
特定の実装プロセスにおいて、図10に言及すると、特定の骨格リギング・ソリューションは、以下のとおりである:
ステップ351:内側軸表面を近似するために、トリリニア補間の適応サンプリング距離フィールド(adaptively Sampled Distance Fields)を、他の計算を用いて計算する。k−dツリー(K−dimensional tree)は、オブジェクトの任意の点から表面までの符号付き距離を評価するために構築されることが可能である。k−dツリーは、k次元データ空間を分割するためのデータ構造であり、主に多次元空間におけるキー・データの探索に使用される。
ステップ352:オブジェクトの内側軸表面にほぼ位置するサンプル点のグループを計算し、骨格関節が位置しうる点を発見し、オブジェクトの表面に近い点をフィルタリングする。
ステップ353:内側軸表面から骨格図の頂点を選択するために、オブジェクト内に球を埋め込み、3Dモデルの表面からの距離に基づいて中間軸表面に沿ってすべての点をソートし、3Dモデル内で最も遠い点から始まる(3Dモデルの表面範囲内で)最大の内接球を描いて球の半径を求め、内側軸線に沿ってすべての点を横断し、この場合において、内接球は、点が以前に追加された如何なる球内にも含まれていない場合に限り、その点を利用して構成される。
ステップ354:幾つかの球の中心を接続することにより骨格図を構成し、任意の2つの交差する球を連結する球の中心間のエッジをエッジとして使用する。
ステップ351〜ステップ354は、骨格ベースの認識と言及されてもよい。
ステップ355:予め設定された骨格モデルを抽出し、ステップ354(ここで、Vは頂点を表し、Eはエッジを表す)で構築された幾何学的骨格図G=(V,E)に骨格モデルを最適に埋め込む(ここで、Vは頂点を表し、Eはエッジを表す)。通常、節は削減されることを必要とし、骨格の枠組は最適化されることを必要とする。
ステップ356:骨格の階層関係を識別し、骨格形状に近づくように単純な階層を減らす。
骨格リギング(ステップ355及びステップ356)の後に、リギング済みの骨格モデルを有するオブジェクトの3Dモデルを取得することができる。
ステップ24
ステップ23において、骨格モデルが埋め込まれた3Dモデルが取得される。次に、ターゲット・オブジェクトの3Dモデルを動かすために、何らかの実行可能な動作方法が、骨格モデルに対して発見されることを必要とする。以下、骨格の動作方法(又は直感的にはアニメーションと言及される)、即ちターゲット動作方法を取得する方法を説明する。
特定の実装プロセスでは、第1オブジェクトの動作方法が取得されることが可能であり、第1オブジェクトの動作方法がターゲット動作方法として使用される。第1オブジェクトは、現在リアル・タイムで動いているオブジェクトであってもよい(例えば、走っている人物がキャプチャされ、オブジェクトの骨格動作方法が、ニューラル・ネットワークを使用することにより抽出される)。代替的に、第1オブジェクトは、オブジェクトの動作方法であって、キャプチャされて格納されていたものであってもよい(例えば、犬のかわいらしい一連の行為がキャプチャされており、アルゴリズムを使用することによって、行為の動作方法式がローカルに格納されるか又はクラウドに格納されている)。代替的に、第1オブジェクトは、特定のオブジェクトの予め設定された動作方法であってもよい(例えば、人間関連の動作方法のみが選択される)。
特定の実施プロセスでは、予め設定されたターゲット動作方法の1つが選択されてもよい(例えば、人の行為、犬の行為、猫の行為、馬の行為などがローカルに格納され、ユーザーは、ユーザーの好みやオブジェクト・タイプの適合度に基づいて、特定のカテゴリを選択してもよい)。
具体的な実装プロセスでは、動作方法は、アニメーション制作ソフトを使用することによりユーザーが作成してもよい。もちろんソフトウェアは、システムに組み込まれたツールキットであってもよいし、スキャニング及び動作再構築のためにアプリケーションにロードされたツールキットであってもよいし、あるいは第三者のアニメーション設計ツールからのものであってもよい。動作方法は、過去に作成された、又は現在作成される移動方法又はアニメーションであってもよい。
具体的な実現プロセスにおいて、動作方法は、物理的な属性に基づいた複数の予め格納された動作方法の中から、最も高い属性一致度を有する動作方法がターゲット動作方法として選択されるものであってもよい。例えば、魚が泳いでいるアニメーション、蛙がジャンプするアニメーション、馬が走っているアニメーションがローカルに予め格納される。ユーザーによりスキャンされるターゲット・オブジェクトが鹿である場合、ウマが走っているアニメーションが、鹿のターゲット動作方法として使用される(馬は、魚や蛙と比較して、外観、生物学的な種、骨格構造において、より鹿に類似している)。
特定の実施プロセスにおいて、動作方法は、代替的に、システム又はユーザー自らが、ターゲット動作方法を得るために、ターゲット・オブジェクトの骨格モデル(前述のステップで任意の方法を使用することにより得ることができる)に基づいて骨格モデルを設計したものであってもよい。このような方法は、後にオブジェクトの3Dモデル上でアニメーションを実現するための最も適切なアニメーション方法である。
特定の実装プロセスでは、動作方法は予め設定された骨格アニメーションであってもよく、通常は専門のアニメーション設計者によって作成される。
骨格アニメーションは、骨格フレームワーク内での各関節の経時的な動的な変化を記述し、通常、キーフレーム形式で格納され表現されることが、理解されるべきである。一般に、1秒あたりのフレームの概念(FPS)が使用され、これは1秒に含まれるフレームの量を意味する。骨格アニメーションは、骨格フレームワークから逸脱して存在することはできず、そうでなければ3Dモデルは駆動され得ない。従って、骨格アニメーションは、通常、特定の骨格フレームワークに依存して存在する。骨格フレームワークは、通常、リグと呼ばれ、一連の骨格フレームワークに含まれる骨格、すべての骨格間の継ぎ合わせ関係、各骨格のデフォルト変形(即ち、ポーズ)、及びその他の追加情報を記述する。ポーズは、骨格フレーム内の各関節の変化後の静的状態、例えば、立っていること又は走っていることのフレームなどを記述する。各々の骨格フレームワークは、結合ポーズを格納し、これは骨格フレームワークが作成される場合のデフォルト・ポーズである。ポーズは、一般に、骨格フレームワークの階層関係を格納せず、アレイを使用して、各関節の変化を順次格納する。関節は特定の骨格に属しており、従って、骨格フレームワークから逸脱して使用することはできない。更に、ポーズは骨格アニメーションのサンプリング結果の一部である。骨格フレームワーク、ポーズ、及び骨格アニメーションが互いに関連付けられ、これは以後のアニメーション動作を共同で実現することを知ることができる。
ステップ25
骨格アニメーションは、一連のオブジェクトについての、位置、回転、及びスケーリングの動きであって、経時的に変化し、ツリー構造に基づいて格納されるもの、を本質的に記録している。各オブジェクトは骨格である。アニメーションは次のように実行される:一連のアニメーションにおける骨格アニメーション変化が、3Dモデルにマッピングされ、その3Dモデルにおいて以前のステップ「自動骨格リギング」で骨格がリギングされており、そのようなアクションのマッピング実装は、ゲーム・エンジン、アニメーション・エンジンなどを含むが、これらに限定されず;ポーズ変化が、3Dモデルに関して骨格変化に基づいて実行され、一貫したポーズ変化は一連のアニメーション・アクションである。ユーザーにとって、スキャンされたオブジェクトは視覚的に「再活性化」され、静的オブジェクトは「アニメート」される。アニメーション実現プロセスにおいて、スキニング(skinning)技術は、オブジェクト3Dモデルが骨格モデルを使用して動かされることを確実にする基礎である。
オブジェクトの3Dモデルのアニメーションは、骨格を装備した3Dモデルが、骨格モデルの変化する一連のアクションにマッピングされるように表現される。各フレームに関し、骨格の変化に基づいて、変形が、3Dモデルの表面(即ち、オブジェクトの3Dモデルの表皮)において実現されることを必要とする。このようなプロセスは、スキニングと呼ばれる。従って、これは3Dモデルからアクションへのマッピングを実現し、それによってアニメーション効果を達成する。
特定の実装プロセスでは、線形ブレンディング・スキニング(LBS)ソリューションが使用されてもよい。3Dモデルの表面上の任意の点に対して、現在の状態は、以下の式を使用することにより、以前の状態位置に基づいて取得されてもよい。vは以前の状態位置を表し、v’は現在の状態位置を表し、wi,jは点iにおけるj番目の骨格のウェイトを表し、Tは変換行列を表す。特定の数量の頂点wijが変換行列に従って決定された後、点−点変換が実行され、従って、アニメーションを実現するように、変換された3Dモデルが決定される。スキニング技術の核心は、各々の骨格に対応する各頂点のウェイトを発見することである。
Figure 2021527895
特定の実装プロセスにおいて、ウェイトは熱平衡と同様な方法で計算されてもよい。3Dモデルは断熱伝導体と考えられ、i番目の骨格の温度は1℃に設定され、他のすべての骨格の温度は0℃に設定される。熱平衡原理によれば、表面上の頂点の平衡後に得られる温度は、点のウェイトとして設定されることが可能であり、ウェイト値は0から1の範囲にある。熱平衡に基づくウェイト計算法を用いることは、ウェイト計算結果を滑らかにし、提示される行動の影響を、より現実的で自然なものにする。
オブジェクトの3Dモデルのアクション変化は、埋め込まれた骨格の位置を変えることによって(即ち、アニメーションによって)実現され、スキニング効果は視覚的にユーザーに提示されることが理解されるべきである。別段の設定をしない限り、ユーザーは、オブジェクトの3Dモデルがない場合に、骨格アニメーションを見ることを許容されてもよい。
特定のアニメーション・プロセスは図11に示されることが可能である。予め設定された骨格図とマルチ・フレーム動作を使用することにより、即ち、動作モデル又はアニメーション・モデルに従って、ターゲット骨格モデルが装備された3Dモデル上でアクションマッピングが実行され、ターゲット骨格モデルは、予め設定された動作モデルに従ってターゲット骨格モデルを動かすように制御される。アニメーション・プロセスでは、計算が実行され、スキニング・データがリアル・タイムで更新され、その結果、3Dモデルはターゲット骨格モデルとの滑らかな動きを実現することが可能であり、それによって3Dモデルのアニメーションを実現する。ターゲット・オブジェクトの骨格モデルはアニメーションの骨格構造と完全に同一でなくてもよいことが理解されるべきである。従って、位置マッピングは、オブジェクトの骨格モデルとアニメーションの骨格構造との間で実行されることが可能である。例えば、主要関節は一貫していることを必要とし、骨格の長さは比例して設定される可能性がある。代替的に、オブジェクトの骨格モデルとアニメーションの骨格構造とは、互いに適合させることが可能であり、例えば少なくともアニメーションの骨格構造がオブジェクトの3Dモデルの外表面を越えないようにするために、比例的した切断及び延長が実行されてもよい。更に、アニメーションの骨格をトリミングして調整し、アニメーションの骨格がオブジェクトの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は、スキャニング、3D再構成、骨格リギングから、オブジェクトに対する予め設定されたアニメーション表示までの統合された設計が、専門的なスキャニングのために専門的で負担の重い複雑な装置を使用することをユーザーに要求することなく、あるいは複雑なモデリング及びアニメーション処理をPCにおいて実行することなく、実現されることが可能である。これらの機能は、ユーザーのために統合され及び提供され、その結果、ユーザーは1つのモバイル端末上でこれらの動作方法を容易に実行することができ、ユーザー周囲の任意の「静止オブジェクト(又は静止オブジェクトに類似するもの)」がアニメーション化及び活性化され、それにより、ユーザーによる端末利用に対する関心を高め、ユーザーの体感を向上させることができる。
前述の装置700における複数のモジュールへの分割は、単に論理的な機能分割であり、そのうちの全部又は一部が、実際の実装では1つの物理的な実体に統合されてもよいし、あるいは物理的に分離されていてもよいことが理解されるべきである。例えば、前述のモジュールの各々は、別個の処理要素であってもよいし、あるいは端末のチップ上に集積されてもよいし、あるいはプログラム・コードの形態でコントローラの記憶素子に格納されてもよく、プロセッサの処理要素は、前述のモジュール各々の機能を呼び出して実行する。更に、モジュールは、統合されてもよいし、あるいは独立して実装されてもよい。処理要素は、集積回路チップであってもよく、信号処理能力を有する。実装プロセスにおいて、前述の方法におけるステップ又は前述のモジュールは、処理要素内のハードウェア集積論理回路を使用することによって、又はソフトウェアの形式における命令を使用することによって実現されることが可能である。処理要素は、汎用プロセッサ、例えば中央処理ユニット(英:central processing unit,略称CPU)であってもよいし、あるいは前述の方法を実現するように構成された1つ以上の集積回路、例えば1つ以上の特定用途向け集積回路(英:application−specific integrated circuit,略称ASIC)、又は1つ以上のマイクロプロセッサ(英:digital signal processor,略称DSP)、又は1つ以上のフィールド・プログラマブル・ゲート・アレイ(英:field−programmable gate array,略称FPGA)等であってもよい。
本発明の実施形態は、方法、システム、又はコンピュータ・プログラム製品として提供されてもよいことを、当業者は理解するはずである。従って、本発明は、ハードウェアのみの実施形態、ソフトウェアのみの実施形態、又はソフトウェアとハードウェアの組み合わせによる実施形態の形態を使用することができる。更に、本発明は、コンピュータで使用可能なプログラム・コードを含む1つ以上のコンピュータで使用可能な記憶媒体(ディスクメモリ、CD−ROM、光メモリなどを含むが、これらに限定されない)において実現されるコンピュータ・プログラム製品の形態を使用することができる。
本発明は、本発明の実施形態による方法、デバイス(システム)、コンピュータ・プログラム製品のフローチャート及び/又はブロック図を参照して説明されている。コンピュータ・プログラム命令は、フローチャート及び/又はブロック図における各プロセス及び/又は各ブロック、並びにフローチャート及び/又はブロック図におけるプロセス及び/又はブロックの組み合わせを実現するために使用されてもよいことが理解されるべきである。これらのコンピュータ・プログラム命令は、マシンを生成するために、汎用コンピュータ、専用コンピュータ、内蔵プロセッサ、又は任意の他のプログラマブル・データ処理デバイスのプロセッサに提供されることが可能であり、その結果、コンピュータ又は任意の他のプログラマブル・データ処理デバイスのプロセッサにより実行される命令は、フローチャートの1つ以上のプロセス及び/又はブロック図の1つ以上のブロックにおける特定の機能を実現するための装置をもたらす。
これらのコンピュータ・プログラム命令は、コンピュータ読み取り可能なメモリに格納されてもよく、コンピュータ又は他の任意のプログラマブル・データ処理デバイスが特定の方法で動作するように命令することが可能であり、その結果、コンピュータ読み取り可能なメモリに格納された命令は、命令装置を含む人工物をもたらす。命令装置は、フローチャートの1つ以上のプロセス及び/又はブロック図の1つ以上のブロックにおける特定の機能を実現する。
これらのコンピュータ・プログラム命令は、コンピュータ又は他のプログラマブル・データ処理デバイスにロードされてもよく、その結果、一連の動作及びステップがコンピュータ又は他のプログラマブル・デバイス上で実行され、それにより、コンピュータに実装された処理をもたらす。従って、コンピュータ又は別のプログラマブル・デバイスにおいて実行される命令は、フローチャートの1つ以上のプロセス及び/又はブロック図の1つ以上のブロックにおいて特定の機能を実現するためのステップを提供する。
本発明の実施形態が説明されているが、当業者は、いったん基本的な発明概念を学ぶと、これらの実施形態に対する変更及び修正を行うことが可能である。従って、以下の特許請求の範囲は、本発明の範囲内に該当する実施形態並びに全ての変更及び修正をカバーするように解釈されることを意図している。当業者は、本発明の実施形態の精神及び範囲から逸脱することなく、本発明の実施形態に対して種々の修正及び変更を行うことができることは明らかである。本発明は、以下の特許請求の範囲及びそれらの均等な技術によって規定される保護範囲内に該当することを条件として、これらの修正及び変形をカバーするように意図されている。
本発明の実施形態が説明されているが、当業者は、いったん基本的な発明概念を学ぶと、これらの実施形態に対する変更及び修正を行うことが可能である。従って、以下の特許請求の範囲は、本発明の範囲内に該当する実施形態並びに全ての変更及び修正をカバーするように解釈されることを意図している。当業者は、本発明の実施形態の範囲から逸脱することなく、本発明の実施形態に対して種々の修正及び変更を行うことができることは明らかである。本発明は、以下の特許請求の範囲及びそれらの均等な技術によって規定される保護範囲内に該当することを条件として、これらの修正及び変形をカバーするように意図されている。

Claims (20)

  1. オブジェクト・モデリング動作方法であって、前記方法はモバイル端末に適用され、前記モバイル端末はカラー・カメラと深度カメラとを含み、前記方法は、
    前記カラー・カメラと前記深度カメラとを使用することにより、ターゲット・オブジェクトに関するパノラマ・スキャニングを実行し、前記ターゲット・オブジェクトの3Dモデルを取得するステップと、
    ターゲット動作方法を取得するステップと、
    前記ターゲット・オブジェクトの前記3Dモデルを前記ターゲット動作方法で動かすステップと
    を含む方法。
  2. 前記深度カメラはTOFモジュールと構造化された光センサー・モジュールとを含み、前記カラー・カメラと前記深度カメラとは前記モバイル端末の一方の側に位置している、請求項1に記載の方法。
  3. 前記ターゲット・オブジェクトの3Dモデルを取得する前記ステップの後に、前記方法は更に、
    ターゲット骨格モデルを取得するステップと、
    前記ターゲット骨格モデルと前記ターゲット・オブジェクトの前記3Dモデルとを融合するステップと、
    を含み、前記ターゲット・オブジェクトの前記3Dモデルを前記ターゲット動作方法で動かす前記ステップの前に、前記方法は、
    前記ターゲット骨格モデルを前記ターゲット動作方法で制御するステップ
    を含む請求項1又は2に記載の方法。
  4. ターゲット骨格モデルを取得する前記ステップは、
    ユーザーのオペレーション命令を受け取るステップを含み、前記オペレーション命令は、少なくとも2つの線分と少なくとも1つの点とを骨格モデルに結び付けるために使用され、前記線分は前記骨格モデルにおける骨格を表現し、前記点は前記骨格モデルにおける関節を表現する、請求項1〜3のうちの何れか1項に記載の方法。
  5. ターゲット骨格モデルを取得する前記ステップは、
    少なくとも1つの予め設定された骨格モデルから、前記ターゲット・オブジェクトの形状に最も高い一致度を有する骨格モデルを、前記ターゲット骨格モデルとして選択するステップ
    を含む、請求項1〜3のうちの何れか1項に記載の方法。
  6. ターゲット動作方法を取得する前記ステップは、
    第1オブジェクトの動作方法を取得し、前記第1オブジェクトの前記動作方法を、前記ターゲット動作方法として使用するステップ
    を含む、請求項1〜5のうちの何れか1項に記載の方法。
  7. ターゲット動作方法を取得する前記ステップは、
    少なくとも2つの動作方法を前記ユーザーに提示し、前記ユーザーの選択命令を受け取り、前記少なくとも2つの動作方法から前記ターゲット動作方法を決定するステップ、又は
    前記ターゲット・オブジェクトの属性に基づいて、複数の予め保存された運動方法から、最も高い属性一致度を有する運動方法を前記ターゲット運動方法として選択するステップ
    を含む、請求項1〜5のうちの何れか1項に記載の方法。
  8. ターゲット動作方法を取得する前記ステップは、
    前記骨格モデルに対して前記ユーザーにより行われた動きを受け取り、前記動きを前記ターゲット運動方法として決定するステップ
    を含む、請求項1〜5のうちの何れか1項に記載の方法。
  9. オブジェクト・モデリング動作装置であって、前記装置はモバイル端末に適用され、前記モバイル端末はカラー・カメラと深度カメラとを含み、前記装置は、
    前記カラー・カメラと前記深度カメラとを使用することにより、ターゲット・オブジェクトに関するパノラマ・スキャニングを実行し、前記ターゲット・オブジェクトの3Dモデルを取得するように構成されたスキャニング・モジュールと、
    ターゲット動作方法を取得するように構成された第2取得モジュールと、
    前記ターゲット・オブジェクトの前記3Dモデルを前記ターゲット動作方法で動かすように構成された動作モジュールと
    を含む装置。
  10. 前記深度カメラはTOFモジュールと構造化された光センサー・モジュールとを含み、前記カラー・カメラと前記深度カメラとは前記モバイル端末の一方の側に位置している、請求項9に記載の装置。
  11. 前記装置は更に、
    ターゲット骨格モデルを取得するように構成された第1取得モジュールと、
    前記ターゲット骨格モデルと前記ターゲット・オブジェクトの前記3Dモデルとを融合するように構成された融合モジュールと
    を含み、前記動作モジュールは、前記ターゲット骨格モデルを前記ターゲット動作方法で制御するように更に具体的に構成されている、請求項9又は10に記載の装置。
  12. 前記第1取得モジュールは、
    ユーザーのオペレーション命令を受け取るステップであって、前記オペレーション命令は、少なくとも2つの線分と少なくとも1つの点とを骨格モデルに結び付けるために使用され、前記線分は前記骨格モデルにおける骨格を表現し、前記点は前記骨格モデルにおける関節を表現する、ステップ、
    少なくとも1つの予め設定された骨格モデルから、前記ターゲット・オブジェクトの形状に最も高い一致度を有する骨格モデルを、前記ターゲット骨格モデルとして選択するステップ、又は
    第1オブジェクトの動作方法を取得し、前記第1オブジェクトの前記動作方法を、前記ターゲット動作方法として使用するステップ
    を行うように具体的に構成されている、請求項9〜11のうちの何れか1項に記載の装置。
  13. 前記第2取得モジュールは、
    少なくとも2つの動作方法を前記ユーザーに提示し、前記ユーザーの選択命令を受け取り、前記少なくとも2つの動作方法から前記ターゲット動作方法を決定するステップ、
    前記骨格モデルに対して前記ユーザーにより行われた動きを受け取り、前記動きを前記ターゲット運動方法として決定するステップ、又は
    前記ターゲット・オブジェクトの物理的属性に基づいて、複数の予め保存された運動方法から、最も高い属性一致度を有する運動方法を前記ターゲット運動方法として選択するステップ
    を行うように具体的に構成されている、請求項9〜11のうちの何れか1項に記載の装置。
  14. 端末デバイスであって、前記端末デバイスは、メモリと、プロセッサと、バスと、深度カメラと、カラー・カメラとを含み、前記カラー・カメラと前記深度カメラとは前記モバイル端末の一方の側に位置し、前記メモリと、前記深度カメラと、前記カラー・カメラと、前記プロセッサとは前記バスを使用することにより接続され、前記深度カメラと前記カラー・カメラとは前記プロセッサの制御の下でターゲット・オブジェクトに関するパノラマ・スキャニングを実行するように構成され、前記メモリはコンピュータ・プログラムと命令とを格納するように構成され、前記プロセッサは、前記メモリに格納された前記コンピュータ・プログラムと前記命令とを呼び出し、前記端末デバイスが請求項1〜9のうちの何れか1項に記載の方法を実行できるように構成されている、端末デバイス。
  15. 前記端末デバイスはアンテナ・システムを更に含み、前記アンテナ・システムは、前記プロセッサの制御の下で無線通信信号を送受信してモバイル通信ネットワークとの無線通信を実現し、前記モバイル通信ネットワークは、GSMネットワーク、CDMAネットワーク、3Gネットワーク、4Gネットワーク、5Gネットワーク、FDMA、TDMA、PDC、TACS、AMPS、WCDMA、TDSCDMA、Wi−Fi、及びLTEネットワークのうちの1つ以上を含む、請求項14に記載の端末デバイス。
  16. オブジェクト・モデリング動作方法であって、前記方法はモバイル端末に適用され、前記モバイル端末はカラー・カメラと深度カメラとを含み、前記カラー・カメラと前記深度カメラとは前記モバイル端末の一方の側に位置し、前記深度カメラはTOFモジュールと構造化された光センサー・モジュールとを含み、前記方法は、
    前記カラー・カメラと前記深度カメラとを使用することにより、ターゲット・オブジェクトに関するパノラマ・スキャニングを実行し、前記ターゲット・オブジェクトの3Dモデルを取得するステップと、
    ターゲット骨格モデルを取得するステップと、
    前記ターゲット骨格モデルと前記ターゲット・オブジェクトの前記3Dモデルとを融合するステップと、
    ターゲット動作方法を取得するステップと、
    前記ターゲット・オブジェクトの前記3Dモデルを前記ターゲット動作方法で動かすために、前記ターゲット骨格モデルを前記ターゲット動作方法で制御するステップと
    を含む方法。
  17. ターゲット骨格モデルを取得する前記ステップは、
    ユーザーのオペレーション命令を受け取るステップであって、前記オペレーション命令は、少なくとも2つの線分と少なくとも1つの点とを骨格モデルに結び付けるために使用され、前記線分は前記骨格モデルにおける骨格を表現し、前記点は前記骨格モデルにおける関節を表現する、ステップ、又は
    少なくとも1つの予め設定された骨格モデルから、前記ターゲット・オブジェクトの形状に最も高い一致度を有する骨格モデルを、前記ターゲット骨格モデルとして選択するステップ
    を含む、請求項16に記載の方法。
  18. ターゲット動作方法を取得する前記ステップは、
    第1オブジェクトの動作方法を取得し、前記第1オブジェクトの前記動作方法を、前記ターゲット動作方法として使用するステップ、
    少なくとも2つの動作方法を前記ユーザーに提示し、前記ユーザーの選択命令を受け取り、前記少なくとも2つの動作方法から前記ターゲット動作方法を決定するステップ、
    前記骨格モデルに対して前記ユーザーにより行われた動きを受け取り、前記動きを前記ターゲット運動方法として決定するステップ、又は
    前記ターゲット・オブジェクトの属性に基づいて、複数の予め保存された運動方法から、最も高い属性一致度を有する運動方法を前記ターゲット運動方法として選択するステップ
    を含む、請求項16又は17に記載の方法。
  19. オブジェクト・モデリング動作装置であって、前記装置はモバイル端末に適用され、前記モバイル端末はカラー・カメラと深度カメラとを含み、前記カラー・カメラと前記深度カメラとは前記モバイル端末の一方の側に位置し、前記深度カメラはTOFモジュールと構造化された光センサー・モジュールとを含み、前記装置は、
    前記カラー・カメラと前記深度カメラとを使用することにより、ターゲット・オブジェクトに関するパノラマ・スキャニングを実行し、前記ターゲット・オブジェクトの3Dモデルを取得するように構成されたスキャニング・モジュールと、
    ターゲット骨格モデルを取得するように構成された第1取得モジュールと、
    前記ターゲット骨格モデルと前記ターゲット・オブジェクトの前記3Dモデルとを融合する融合モジュールと、
    ターゲット動作方法を取得するように構成された第2取得モジュールと、
    前記ターゲット・オブジェクトの前記3Dモデルを前記ターゲット動作方法で動かすために、前記ターゲット骨格モデルを前記ターゲット動作方法で制御するように構成された動作モジュールと
    を含む装置。
  20. 前記第1取得モジュールは、
    ユーザーのオペレーション命令を受け取るステップであって、前記オペレーション命令は、少なくとも2つの線分と少なくとも1つの点とを骨格モデルに結び付けるために使用され、前記線分は前記骨格モデルにおける骨格を表現し、前記ポイントは前記骨格モデルにおける関節を表現する、ステップ、
    少なくとも1つの予め設定された骨格モデルから、前記ターゲット・オブジェクトの形状に最も高い一致度を有する骨格モデルを、前記ターゲット骨格モデルとして選択するステップ、又は
    第1オブジェクトの動作方法を取得し、前記第1オブジェクトの前記動作方法を、前記ターゲット動作方法として使用するステップ、
    を行うように具体的に構成され、
    前記第2取得モジュールは、
    少なくとも2つの動作方法を前記ユーザーに提示し、前記ユーザーの選択命令を受け取り、前記少なくとも2つの動作方法から前記ターゲット動作方法を決定するステップ、
    前記骨格モデルに対して前記ユーザーにより行われた動きを受け取り、前記動きを前記ターゲット運動方法として決定するステップ、又は
    前記ターゲット・オブジェクトの物理的属性に基づいて、複数の予め保存された運動方法から、最も高い属性一致度を有する運動方法を前記ターゲット運動方法として選択するステップ
    を行うように具体的に構成されている、請求項19に記載の装置。
JP2020570722A 2018-06-21 2019-05-27 オブジェクト・モデリング動作方法及び装置並びにデバイス Active JP7176012B2 (ja)

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
JP2021527895A true JP2021527895A (ja) 2021-10-14
JP7176012B2 JP7176012B2 (ja) 2022-11-21

Family

ID=68967803

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020570722A Active JP7176012B2 (ja) 2018-06-21 2019-05-27 オブジェクト・モデリング動作方法及び装置並びにデバイス

Country Status (10)

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

Families Citing this family (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7079287B2 (ja) * 2019-11-07 2022-06-01 株式会社スクウェア・エニックス 鑑賞システム、モデル構成装置、制御方法、プログラム及び記録媒体
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 腾讯科技(深圳)有限公司 一种骨骼动画驱动方法、装置及存储介质
WO2022024200A1 (ja) * 2020-07-27 2022-02-03 株式会社Vrc 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 上海米哈游天命科技有限公司 一种游戏中的防穿模方法、装置、电子设备及存储介质
CN118154732A (zh) * 2020-12-22 2024-06-07 完美世界(北京)软件科技发展有限公司 动画数据的处理方法及装置、存储介质、计算机设备
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
CN113034691A (zh) * 2021-03-22 2021-06-25 广州虎牙科技有限公司 人体模型的骨骼绑定方法、装置及电子设备
JP7086362B1 (ja) 2021-03-29 2022-06-20 株式会社セルシス 情報処理システム、情報処理方法および情報処理プログラム
CN112927331B (zh) * 2021-03-31 2023-09-22 腾讯科技(深圳)有限公司 角色模型的动画生成方法和装置、存储介质及电子设备
KR102571744B1 (ko) * 2021-05-06 2023-08-29 한국전자통신연구원 3차원 콘텐츠 생성 방법 및 장치
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 网易(杭州)网络有限公司 地形蒙版选区确定方法、装置及计算机设备
EP4250243A1 (en) * 2021-11-25 2023-09-27 CLO Virtual Fashion Inc. Method and apparatus for determining body part boundary surface of three-dimensional avatar
US20230209035A1 (en) * 2021-12-28 2023-06-29 Faro Technologies, Inc. Artificial panorama image production and in-painting for occluded areas in images
KR102561903B1 (ko) * 2022-01-25 2023-08-02 스크린커플스(주) 클라우드 서버를 이용한 ai 기반의 xr 콘텐츠 서비스 방법
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 (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004334662A (ja) * 2003-05-09 2004-11-25 Namco Ltd 画像生成システム、プログラム及び情報記憶媒体
JP2013101527A (ja) * 2011-11-09 2013-05-23 Sony Corp 情報処理装置、表示制御方法、およびプログラム
JP2014517413A (ja) * 2011-06-06 2014-07-17 マイクロソフト コーポレーション 仮想環境におけるオブジェクトの制御
JP2015531098A (ja) * 2012-06-21 2015-10-29 マイクロソフト コーポレーション デプスカメラを使用するアバター構築
JP2017080203A (ja) * 2015-10-29 2017-05-18 キヤノンマーケティングジャパン株式会社 情報処理装置、情報処理方法、プログラム
JP2017182695A (ja) * 2016-03-31 2017-10-05 富士通株式会社 情報処理プログラム、情報処理方法および情報処理装置
JP2017539169A (ja) * 2014-12-12 2017-12-28 クアルコム,インコーポレイテッド カラービデオと深度ビデオとの同期方法、装置、および媒体

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
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 インテル・コーポレーション 近距離動作のトラッキングのシステムおよび方法
CN102800126A (zh) * 2012-07-04 2012-11-28 浙江大学 基于多模态融合的实时人体三维姿态恢复的方法
JP6124308B2 (ja) * 2012-09-12 2017-05-10 国立研究開発法人産業技術総合研究所 動作評価装置及びそのプログラム
CN203240221U (zh) * 2013-01-17 2013-10-16 佛山科学技术学院 一种电动转台
KR102058857B1 (ko) * 2013-04-08 2019-12-26 삼성전자주식회사 촬영 장치 및 촬영 제어 방법
AU2014304760B2 (en) * 2013-08-04 2020-01-16 Eyesmatch Ltd Devices, systems and methods of virtualizing a mirror
CN104021584B (zh) * 2014-06-25 2017-06-06 无锡梵天信息技术股份有限公司 一种骨骼蒙皮动画的实现方法
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 运城学院 基于深度映射的人体活动识别特征表达方法
KR101819730B1 (ko) * 2016-04-19 2018-01-17 광주과학기술원 3차원 객체 검출 및 자세추정 방법
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
CN107248195A (zh) * 2017-05-31 2017-10-13 珠海金山网络游戏科技有限公司 一种增强现实的主播方法、装置和系统
CN107274465A (zh) * 2017-05-31 2017-10-20 珠海金山网络游戏科技有限公司 一种虚拟现实的主播方法、装置和系统
CN108154551B (zh) * 2017-11-29 2021-04-30 奥比中光科技集团股份有限公司 实时动态重建三维人体模型的方法及系统
CN108053435A (zh) * 2017-11-29 2018-05-18 深圳奥比中光科技有限公司 基于手持移动设备的动态实时三维重建方法和系统
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 (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2004334662A (ja) * 2003-05-09 2004-11-25 Namco Ltd 画像生成システム、プログラム及び情報記憶媒体
JP2014517413A (ja) * 2011-06-06 2014-07-17 マイクロソフト コーポレーション 仮想環境におけるオブジェクトの制御
JP2013101527A (ja) * 2011-11-09 2013-05-23 Sony Corp 情報処理装置、表示制御方法、およびプログラム
JP2015531098A (ja) * 2012-06-21 2015-10-29 マイクロソフト コーポレーション デプスカメラを使用するアバター構築
JP2017539169A (ja) * 2014-12-12 2017-12-28 クアルコム,インコーポレイテッド カラービデオと深度ビデオとの同期方法、装置、および媒体
JP2017080203A (ja) * 2015-10-29 2017-05-18 キヤノンマーケティングジャパン株式会社 情報処理装置、情報処理方法、プログラム
JP2017182695A (ja) * 2016-03-31 2017-10-05 富士通株式会社 情報処理プログラム、情報処理方法および情報処理装置

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
加藤里奈,外2名: ""HMMを用いた手話の非手指信号認識の基礎検討"", 電子情報通信学会技術研究報告, vol. 116, no. 139, JPN6022010057, 2016, pages 15 - 19, ISSN: 0004727797 *

Also Published As

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

Similar Documents

Publication Publication Date Title
JP7176012B2 (ja) オブジェクト・モデリング動作方法及び装置並びにデバイス
US11748957B2 (en) Generating 3D data in a messaging system
US11488359B2 (en) Providing 3D data for messages in a messaging system
CN109074660B (zh) 单目相机实时三维捕获和即时反馈的方法和系统
US11410401B2 (en) Beautification techniques for 3D data in a messaging system
US11457196B2 (en) Effects for 3D data in a messaging system
CN111739146A (zh) 物体三维模型重建方法及装置
EP4036790A1 (en) Image display method and device
US11688136B2 (en) 3D object model reconstruction from 2D images
KR20220051376A (ko) 메시징 시스템에서의 3d 데이터 생성
CN113628327A (zh) 一种头部三维重建方法及设备
US20230267687A1 (en) 3d object model reconstruction from 2d images
EP4143787A1 (en) Photometric-based 3d object modeling
CN108961375A (zh) 一种根据二维图像生成三维图像的方法及装置
US11978111B2 (en) Object virtualization processing method and device, electronic device and storage medium
CN110580677A (zh) 一种数据处理方法、装置和用于数据处理的装置

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210212

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210212

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20220225

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20220315

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20220614

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20221011

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20221109

R150 Certificate of patent or registration of utility model

Ref document number: 7176012

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150