(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B1)
(11)【特許番号】
(24)【登録日】2024-02-22
(45)【発行日】2024-03-04
(54)【発明の名称】画像処理方法、情報処理装置、及び、コンピュータプログラム
(51)【国際特許分類】
G06T 19/00 20110101AFI20240226BHJP
G06T 15/20 20110101ALI20240226BHJP
A63F 13/65 20140101ALI20240226BHJP
【FI】
G06T19/00 A
G06T15/20 500
A63F13/65
(21)【出願番号】P 2022190546
(22)【出願日】2022-11-29
【審査請求日】2022-11-29
(73)【特許権者】
【識別番号】000135748
【氏名又は名称】株式会社バンダイ
(74)【代理人】
【識別番号】110003281
【氏名又は名称】弁理士法人大塚国際特許事務所
(72)【発明者】
【氏名】清宮 僚太
【審査官】鈴木 明
(56)【参考文献】
【文献】特開2020-107251(JP,A)
【文献】特開2021-51537(JP,A)
【文献】特許第5551205(JP,B2)
【文献】特開2019-179481(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06T 19/00
G06T 15/20
A63F 13/65
(57)【特許請求の範囲】
【請求項1】
仮想現実(VR)映像を外部の表示装置に表示させるための表示用データを生成する画像処理方法であって、
スキャナ部により模型の外観の画像を複数方向からスキャンして生成された複数のスキャン画像から、処理部が前記模型の第1の三次元モデルデータを生成する第1の生成工程と、
処理部が、前記第1の三次元モデルデータを加工する加工工程と、
前記処理部が、加工された前記第1の三次元モデルデータにエフェクトを付与する付与工程と、
前記エフェクトが付与された第1の三次元モデルデータを含む前記表示用データを生成する第2の生成工程と
を含む画像処理方法。
【請求項2】
前記模型は複数の構成要素からなり、
前記第1の三次元モデルデータには、前記複数の構成要素に対応する複数の第2の三次元モデルデータが含まれ、
前記第1の生成工程は、前記複数の第2の三次元モデルデータの配置を調整することを含む、
請求項1に記載の画像処理方法。
【請求項3】
前記加工工程は、前記処理部が、前記第1の三次元モデルデータのポリゴン数を調整する調整工程を含み、
前記調整工程では、前記第2の三次元モデルデータごとにポリゴン数の調整が実行される、請求項2に記載の画像処理方法。
【請求項4】
前記調整工程では、前記第2の三次元モデルデータのそれぞれについて、向きに応じて異なるポリゴン数を割り当てる、請求項3に記載の画像処理方法。
【請求項5】
前記調整工程では、前記第2の三次元モデルデータの表側により多くのポリゴン数を割り当てる、請求項4に記載の画像処理方法。
【請求項6】
前記模型は人形型模型とベース部材とを少なくとも含み、前記人形型模型が前記ベース部材上に配置されたジオラマ模型である、請求項3に記載の画像処理方法。
【請求項7】
前記調整工程では、前記人形型模型に対して前記ベース部材よりも多くのポリゴン数が割り当てられる、請求項6に記載の画像処理方法。
【請求項8】
前記加工工程は、前記模型の外観に対応する前記第1の三次元モデルデータにおいて、VR映像で不要な部分を削除する削除工程を含み、
前記付与工程では、前記削除工程において削除された部分の少なくとも一部を補完するエフェクトが付与される、請求項1に記載の画像処理方法。
【請求項9】
前記不要な部分は前記模型を支持する支持部材を含み、
前記付与工程は、削除された前記支持部材を除いた他の部分を補完するエフェクトを付与する、請求項8に記載の画像処理方法。
【請求項10】
前記付与工程は、アニメーション表現においてエフェクトを付与することを含む、請求項8に記載の画像処理方法。
【請求項11】
前記外部の表示装置は、ヘッドマウントディスプレイ装置であり、
前記ヘッドマウントディスプレイ装置には、所定のアプリケーションがインストールされており、前記表示用データは前記所定のアプリケーションにより実行されて前記ヘッドマウントディスプレイ装置にVR映像を表示するためのデータである、請求項1に記載の画像処理方法。
【請求項12】
仮想現実(VR)映像を外部の表示装置に表示させるための表示用データを生成する情報処理装置であって、
スキャナ部により模型の外観の画像を複数方向からスキャンして生成された複数のスキャン画像から、前記模型の第1の三次元モデルデータを生成する第1の生成手段と、
前記第1の三次元モデルデータを加工する加工手段と、
加工された前記第1の三次元モデルデータにエフェクトを付与する付与手段と、
前記エフェクトが付与された第1の三次元モデルデータを含む前記表示用データを生成する第2の生成手段と、
を備える情報処理装置。
【請求項13】
コンピュータに、請求項1から11のいずれか1項に記載の画像処理方法を実行させるためのコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像処理方法、情報処理装置、及び、コンピュータプログラムに関する。
【背景技術】
【0002】
特許文献1には、撮影部により対象物を複数の撮影方向から撮影した撮影画像群から生成されたテクスチャを、仮想空間におけるプリミティブにマッピングして、仮想空間において仮想カメラから見える仮想空間画像を生成する技術が記載されている。
【0003】
特許文献2には、ジオラマを複数の位置から撮影した写真の画像データを利用して三次元モデルデータを生成し、コンピュータゲーム中の場面を表すデータとして利用する技術が記載されている。
【先行技術文献】
【特許文献】
【0004】
【文献】特開2020-107251号公報
【文献】特開2021-051537号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
上記技術においては、対象物を撮影し、撮影された対象物の三次元モデルデータを用いて仮想空間上に三次元モデルを配置した映像を生成する際に、臨場感にあふれた映像の生成が期待される。
【0006】
そこで、対象物を撮影し、撮影された対象物の三次元モデルデータを用いて仮想空間上に三次元モデルを配置した映像を生成する際に、臨場感にあふれた映像の生成を可能とすることを目的とする。
【課題を解決するための手段】
【0007】
上記課題を解決するための一形態は、仮想現実(VR)映像を外部の表示装置に表示させるための表示用データを生成する画像処理方法であって、スキャナ部により模型の外観の画像を複数方向からスキャンして生成された複数のスキャン画像から、処理部が前記模型の第1の三次元モデルデータを生成する第1の生成工程と、処理部が、前記第1の三次元モデルデータを加工する加工工程と、前記処理部が、加工された前記第1の三次元モデルデータにエフェクトを付与する付与工程と、前記エフェクトが付与された第1の三次元モデルデータを含む前記表示用データを生成する第2の生成工程とを含む。
【発明の効果】
【0008】
対象物を撮影し、撮影された対象物の三次元モデルデータを用いて仮想空間上に三次元モデルを配置した映像を生成する際に、臨場感にあふれた映像の生成を可能とすることができる。
【図面の簡単な説明】
【0009】
【
図1】実施形態に対応する画像処理システムの構成例を示す図、及び、情報処理装置100のハードウェア構成の一例及び、ヘッドセット150のハードウェア構成の一例を示す図。
【
図2】実施形態に対応する人形型模型の外観の一例を示す図。
【
図3】実施形態に対応するジオラマ模型の外観の一例を示す図。
【
図4】実施形態に対応する画像処理システムの実装の一例を示す図。
【
図5】実施形態に対応する画像処理システム10における処理の一例に対応するフローチャート。
【
図6】実施形態に対応するスキャン処理の一例に対応するフローチャート。
【
図7】実施形態に対応するスキャン後処理の一例を示すフローチャート。
【
図8】実施形態に対応するVR映像の表示処理の一例を示すフローチャート。
【
図9】実施形態に対応する
VR映像におけるエフェクト表現の一例を示す図。
【発明を実施するための形態】
【0010】
以下、添付図面を参照して実施形態を詳しく説明する。尚、以下の実施形態は特許請求の範囲に係る発明を限定するものではなく、また実施形態で説明されている特徴の組み合わせの全てが発明に必須のものとは限らない。実施形態で説明されている複数の特徴うち二つ以上の特徴が任意に組み合わされてもよい。また、同一若しくは同様の構成には同一の参照番号を付し、重複した説明は省略する。また、各図において、紙面に対する上下左右表裏方向を、本実施形態における部品(またはパーツ)の上下左右表裏方向として、本文中の説明の際に用いることとする。
【0011】
まず、本実施形態に対応する画像処理システムの構成を説明する。
図1(A)は、本実施形態に対応する画像処理システム10の構成の一例を示す図である。画像処理システム10は、情報処理装置100に、スキャナ110、サポートアーム120、模型支持装置130、表示装置140、ヘッドセット150等が接続されて構成されている。なお、システム構成は、
図1(A)に示すものに限られず、情報処理装置100がネットワークを介して外部サーバ、クラウドサーバ等と更に接続されていてもよい。当該外部サーバ等では、以下で説明する実施形態の少なくとも一部の処理を実行することができる。
【0012】
情報処理装置100は、スキャナ110、サポートアーム120及び模型支持装置130の少なくともいずれかの動作を制御し、撮影対象の物品を任意の角度から撮影して複数の画像を生成し、当該複数の画像から三次元モデルデータ(本データ)を生成する。撮影対象の物品が複数の構成物品に分離可能な構成となっている場合は、構成物品毎に撮影を行って三次元モデルデータを生成し、それらを統合することで対象物品の三次元モデルデータを生成してもよい。
【0013】
情報処理装置100は、生成した三次元モデルデータを仮想空間用データとして用いることで、仮想空間上に表示される画像の生成を行う画像処理装置としても機能することができる。また、三次元モデルデータを利用する画像処理装置を、三次元モデルデータを生成する情報処理装置100とは別に用意してもよい。本実施形態において、撮影対象の物品は、組立可能なプラスチックモデル、アクションフィギュア(可動式の関節部を備えたフィギュア)、玩具体、人形等であり、これらを総称して以下では「模型」という。
【0014】
次にスキャナ110は、情報処理装置100の制御に従って、撮影対象の模型の三次元形状を撮影(スキャン)して、撮像対象の三次元形状及び色情報を出力する三次元スキャナ装置である。本実施形態においては、スキャナ110から出力されるスキャン信号を総称して「スキャン画像」と呼ぶ。スキャナ110には、例えばArtec社製のSpace Spiderを使用することができる。本実施形態においては、例えば、スキャン画像を500フレームから800フレーム程度を取得することで、玩具体全体の3Dスキャンデータを取得することができる。また、スキャナ110として、例えば三次元形状を撮影するためのアプリケーションがインストールされたカメラ付きスマートフォンを利用してもよい。
【0015】
サポートアーム120は、情報処理装置100の制御に従ってスキャナ110を所定の撮影位置及び姿勢に移動させる位置姿勢制御装置である。サポートアーム120は、撮影位置や姿勢を手動で変更することが可能であると共に、変更後の位置・姿勢を固定的に維持可能に構成されるものであってもよいし、情報処理装置100により制御可能に構成されていてもよい。サポートアーム120を情報処理装置100により制御可能に構成する場合、例えばUFACTORY社製のxArm 7を使用することができる。xArm7は7つのジョイントからなり、人間の腕と同様の動きができる。なお、サポートアーム120の代わりに、手動でスキャナ110の位置決めをしてもよい。また、サポートアーム120でカバーしきれない撮影位置及び姿勢については、スキャナ110を手動で操作してスキャンを行ってもよい。
【0016】
模型支持装置130は、ポーズの固定された模型を支持する支持台である。模型支持装置130は、例えば、模型が支持台上に設置、或いは、支持棒の先端に設置された状態において回転可能に構成されていてもよい。本実施形態では、サポートアーム120により任意の撮影位置・撮影角度にスキャナ110を位置させた後、模型支持装置130を1周回転させて撮影を行う。これを複数の撮影位置・撮影角度において行うことにより、模型全体の画像を取得することができる。なお、ここでサポートアーム120と模型支持装置130とを同期して駆動させることで、撮影処理をより簡便に精度高く行うことができる。また、模型支持装置130の代わりに、手動でスキャナ110を模型の周囲を移動させて、任意の撮影位置・撮影角度位からスキャンしてもよい。
【0017】
表示装置140は、液晶ディスプレイ(LCD)等のディスプレイ装置であって、情報処理装置100における処理結果を表示することができる。具体的には、スキャナ110で取得した画像を表示したり、当該撮影画像から生成された三次元モデルデータの本データを表示したり、本データを使って再構成したVR映像を表示したりすることができる。表示装置140は、ユーザからの操作を受け付ける操作部140Aを備えることができ、ユーザは操作部140Aを操作して動画の表示領域を変更したり、所定の選択動作等を行ったりすることができる。
【0018】
ヘッドセット150は、後述するヘッドマウントディスプレイ150Aとコントローラ150Bとから構成される。特にはVRヘッドセットとしてユーザの姿勢や傾きに対応した動画像を提供可能に構成されていてもよい。ヘッドセット150には、所定のアプリケーションがインストールされており、当該アプリケーションにおいて実行されるアプリケーションデータを情報処理装置100からダウンロードして実行することができる。当該アプリケーションデータには、VR映像を表示するための表示用データが含まれる。
【0019】
図1(B)は、情報処理装置100のハードウェア構成の一例を示す。CPU101は、情報処理装置100の全体的な制御やデータの計算・加工・管理を行う装置である。例えば、スキャナ110における画像の撮影タイミング、撮影枚数を制御すると共に、サポートアーム120のアームのジョイントを制御して、スキャナ110を任意の撮影位置・撮影角度に配置することができる。また、スキャナ110の撮影位置・撮影角度が決定された後、模型支持装置130を回転させて、スキャナ110により撮影動作を実施することができる。また、CPU101は、スキャナ110から出力された画像を処理する画像処理部としても機能しうる。
【0020】
RAM102は、揮発性のメモリであり、CPU101の主メモリ、ワークエリア等の一時記憶領域として用いられる。ROM103は、不揮発性のメモリであり、画像データやその他のデータ、CPU101が動作するための各種プログラム等が、それぞれ所定の領域に格納されている。CPU101は、例えばROM103に格納されるプログラムに従い、RAM102をワークメモリとして用いて、情報処理装置100の各部を制御する。尚、CPU101が動作するためのプログラムは、ROM103に格納されるものに限られず、記憶装置104に記憶されていてもよい。
【0021】
記憶装置104は、例えばHDDやフラッシュメモリなどの磁気ディスクにより構成される。記憶装置104には、アプリケーションプログラム、OS、制御プログラム、関連プログラム、ゲームプログラム等が格納される。記憶装置104は、CPU101の制御に基づき、データを読み出したり、書き込みしたりすることができる。記憶装置104をRAM102やROM103の代わりに使用してもよい。
【0022】
通信装置105は、CPU101の制御に基づき、スキャナ110、サポートアーム120、模型支持装置130、表示装置140、ヘッドセット150と通信するための通信インタフェースである。通信装置105は、更には外部サーバ等と通信可能に構成されていてもよい。通信装置105は、無線通信モジュールを含むことができ、当該モジュールはアンテナシステム、RF送受信器、1つ以上の増幅器、同調器、1つ以上の発振器、デジタル信号プロセッサ、CODECチップセット、加入者識別モジュールカード、メモリなどを含む、周知の回路機構を含むことができる。ここで、情報処理装置100と、スキャナ110、サポートアーム120、模型支持装置130、表示装置140、ヘッドセット150との通信は無線通信により行われてもよい。
【0023】
また、通信装置105は、有線接続のための有線通信モジュールを含むこともできる。有線通信モジュールは1つ以上の外部ポートを介して表示装置140を含む他のデバイスとの通信を可能とする。また、データを処理する様々なソフトウェアコンポーネントを含むことができる。外部ポートは、イーサーネット、USBやIEEE1394等を介して、直接的に、又はネットワークを介して間接的に他のデバイスと結合する。尚、以上の各装置と同等の機能を実現するソフトウェアにより、ハードウェア装置の代替として構成することもできる。
【0024】
操作部106は、例えばボタン、キーボード、タッチパネル等で構成され、ユーザからの操作入力を受け付ける。操作部106は、操作部140Aと共用であってもよいし、操作部140Aとは独立していてもよい。例えば、操作部140Aがキーボードとマウス等として構成される操作部を想定している場合は操作部106と共用とすることができる。一方、操作部140Aがタッチパネル等として構成される操作部を想定している場合は、操作部106とは別個の操作部とすることができる。
【0025】
表示制御部107は、情報処理装置100と接続された表示装置140に情報を表示するための制御部として機能し、表示装置140の動作を制御する。操作部106の一部の機能が、表示装置140に備えられていてもよい。例えば、表示装置140がタブレット端末のようなタッチパネルを備える装置として構成されていてもよい。
【0026】
図1(C)は、ヘッドセット150のハードウェア構成の一例を示す。ヘッドセット150は、ヘッドマウントディスプレイ(HMD)150Aと、コントローラ150Bとで構成される。HMD150Aは、ユーザの左右の眼にそれぞれ右眼映像、左眼映像を提供し、それらの視差により立体感を感じさせることで仮想現実(VR)体験を可能とする。コントローラ150Bは、HMD150Aとは独立した筐体において提供される。コントローラ150Bはユーザの左右の手にそれぞれ持って操作するために2つのコントローラがペアとなった構成を想定しているが、単体のコントローラであってもよい。
【0027】
CPU151は、ヘッドセット150の全体的な制御やデータの計算・加工・管理を行う装置である。例えば、情報処理装置100からダウンロードしたアプリケーションデータを実行して、VR映像をディスプレイ157に表示することができる。また、コントローラ156を介して受け付けた操作や検知部158が検知した情報に基づいて、表示するVR映像自体を切り替えたり、VR空間内で視点を切り替えたり、VR空間内の位置を変更したりすることができる。
【0028】
RAM152は、揮発性のメモリであり、CPU151の主メモリ、ワークエリア等の一時記憶領域として用いられる。ROM153は、不揮発性のメモリであり、画像データやその他のデータ、CPU151が動作するための各種プログラム等が、それぞれ所定の領域に格納されている。CPU151は、例えばROM153に格納されるプログラムに従い、RAM152をワークメモリとして用いて、ヘッドセット150の各部を制御する。尚、CPU151が動作するためのプログラムは、ROM153に格納されるものに限られず、記憶装置154に記憶されていてもよい。
【0029】
記憶装置154は、例えばHDDやフラッシュメモリなどの磁気ディスクにより構成される。記憶装置154には、アプリケーションプログラム、OS、制御プログラム、関連プログラム、ゲームプログラム、情報処理装置100からダウンロードしたアプリケーションデータや表示用データ等が格納される。記憶装置154は、CPU151の制御に基づき、データを読み出したり、書き込みしたりすることができる。記憶装置154をRAM152やROM153の代わりに使用してもよい。
【0030】
通信装置155は、CPU151の制御に基づき、情報処理装置100やコントローラ150Bと通信するための通信インタフェースである。通信装置155は、BluetoothやWiFi (IEEE802.11) に基づく無線通信を可能とする無線通信モジュールを含む。ヘッドセット150は、情報処理装置100と無線通信により接続し、VR映像の表示用データをダウンロードすることができる。また、コントローラ150Bと通信して、コントローラ150Bに対するユーザの操作指示の情報を受信する。
【0031】
ディスプレイ156は、CPU151が生成した右眼映像と左眼映像とをそれぞれユーザの右眼、及び左眼に提供するように構成されている。検出部157は、ユーザの左右の眼の視線方向を検出すると共に、ヘッドマウントディスプレイの傾きを検出するための機構である。検出部157は、例えば、HMD150Aを身に着けているユーザの視線方向あるいは注視方向を検出するためのセンサを含む。また、ジャイロスコープ、磁気計、加速度計、グローバルポジショニングシステム(GPS)、コンパス等を含み、これらの検出情報に従いHMD150Aの位置、姿勢、傾き等を特定することができる。検出部157は、HMD150Aにおいてユーザの注視方向やアクションを判定するための情報を検出しCPU151に送信する。CPU151は、受信した検出情報に基づき注視方向やアクションを判定し、判定された注視方向やアクションに一致するようにHMD150Aのディスプレイ156で提示された映像を調節する。
【0032】
コントローラ150Bは、例えば複数のボタン、十字キー等で構成され、ユーザからの選択操作、方向指示操作等の操作入力を受け付ける。コントローラ150Bは、HMD150Aとは通信装置155を介して無線通信接続される。
【0033】
次に、
図2を参照して、本実施形態において撮影対象となる模型の一例を説明する。模型200は、人形型(ロボット、又は、人間)の外観を有する模型である。当該模型は、例えばプラスチックモデルとして組み立てられ、塗装されたものとすることができる。或いは、可動式の関節部を備えたフィギュア(アクションフィギュア)のように、完成済みの模型であってもよい。
図2の模型はあくまで説明のための一例にすぎず、模型の形状は人形型の外観を有するものだけではなく、一般車両、レース車両、軍用車両、航空機、船舶、動物、仮想生命体等、任意の形状の模型とすることができる。なお、撮影対象となる物品は、スキャナ110で三次元形状が撮影可能な物品であれば模型に限定されないことはもちろんである。
【0034】
模型200は、頭部201、胸部202、右腕部203、左腕部204、右胴体部205、左胴体部206、右脚部207、左脚部208、右足部209、左足部210の各部品を有し、これらが結合されて構成されている。個々の部位201~210の少なくとも一部は、隣接する部位に対して回動(或いは揺動)可能に支持される。例えば、頭部201は胸部202に対して回動可能に支持され、右腕部203、左腕部204は胸部202に対して回動可能に支持される。このようにして模型200の各部位には関節構造が設けられているため、模型200は任意の姿勢を取ることができる。
【0035】
また、
図3を参照して、本実施形態において撮影対象となるジオラマ模型の一例を説明する。
図3に示すジオラマ模型300では、人形型模型301が、ベース部材302上において、ビームライフルから照射したビーム304で浮遊パーツ303を打ち落とそうとしているシーンを表している。ジオラマ模型300では、人形型模型301、ベース部材302、浮遊パーツ303の各構成部品に分離することができる。ジオラマ模型300は、台座306上に構築されているが、台座306そのものはVR映像には不要である。また、浮遊パーツ303を浮かせるために支持部材305が配置されているが、これもVR映像には不要である。VR映像を生成する際には、これらは三次元モデルデータから除去される。
【0036】
ジオラマ模型300は、所定の情景やシーンを模型として作成したものであり、当該情景やシーンの中には、
図2Aに示したような人形型の模型200も含むこともできる。ジオラマ模型210は、模型200のような単体の模型とは異なり、その周辺も含めた情景を作り楽しむ模型である。本実施形態では、模型200のような単体の玩具体だけでなく、ジオラマ模型210も三次元モデルデータを生成しVR映像において提供することで、ジオラマ模型210をより臨場感あふれる環境において鑑賞することが可能となる。ジオラマ模型は、任意の情景やシーンを模して作成することができるので、
図3に示したジオラマ模型300はあくまで一例に過ぎない。
【0037】
次に、
図4を参照して、本実施形態における画像処理システム10の実装例を説明する。
図4は、模型を撮影して生成した本データを生成可能な実装例を示す。
【0038】
図4において、ケース401内には、情報処理装置100、サポートアーム402を駆動するための駆動系、ターンテーブル406を駆動するための駆動系等が含まれる。なお、サポートアーム402は、手動で撮影方向・位置を調整することもできる。ケース401の表面は宣伝用のポスターを添付することができるよう平坦な構造となっている。
【0039】
サポートアーム402は、サポートアーム120に対応し、情報処理装置100の制御に従い、或いは、手動によりスキャナ110として機能する端末403を支持し、位置を固定することができる。サポートアーム402はまた、端末403の傾きを制御するように動作することも可能である。
【0040】
端末403は、スキャナ110として利用が可能な、カメラ内蔵でタッチパネル式の端末であり、例えば、スマートフォン、タブレット端末、デジタルカメラ等を利用することができる。これらの端末の代わりに、Artec社製のSpace Spiderを利用することもできる。
図4はあくまでシステムの構成例を示す図であり、スキャナ110として利用する機器の種類に応じた構成とすることができる。端末403は模型200の画像を撮影し、情報処理装置100に送信することができる。リングライト404は、端末403により模型200を撮影する際に利用される照明装置であり、模型200に均等に光を当てて、影を出にくくすることができる。なお、追加の光源として、リングライト404の他に、トップライトや左右、下側に補助ライトを設置してもよい。端末403の代わりに、上述のような三次元スキャナ装置を使用してもよい。
【0041】
背景シート405は撮影用の背景シートであり、例えば白色のシートを利用することができる。ターンテーブル406は、模型200を搭載して模型を回転させることができる。ターンテーブル406には、所定のマーカ410が複数配置しておいてもよい。マーカ410は撮影された模型の向きや位置を調整するために利用することができる。
【0042】
図4では、模型が半透明(透明)の台の上に設置されているが、これ以外にも例えば「アクションベース」と呼ばれるような支持器具を利用してもよい。アクションベースは台座の上に、「く」の字型に曲げられるように構成された支柱が設置されており、支柱の先端に模型を取り付けることができる。このとき支柱の先端部分に上述のマーカ410を配置してもよい。模型の指示方法は、ポーズに応じて変更することができる。例えば、直立姿勢の場合には透明の台の上に設置して撮影を行うことができる。一方、飛翔姿勢のように足の裏まで撮影したい場合には、アクションベースを利用してもよい。なお、直立姿勢を撮影するためにアクションベースを使用してもよい。
【0043】
ディスプレイ装置407は表示装置140に対応する装置であり、タッチパネル機能を有していてもよい。ユーザはタッチパネル機能を利用して所定の選択動作を行うことができる。VRヘッドセット408は、HMD408Aとコントローラ408Bとからなり、HMD150A及び150Bにそれぞれ対応する。ユーザは、HMD408Aを頭に装着し、コントローラ408Bを左右の手にそれぞれ把持して操作することにより、VR映像を見ながら操作を行うことができる。
【0044】
次に
図5を参照して、本実施形態に対応する、画像処理システム10が実行する処理の一例を説明する。当該フローチャートに対応する処理の少なくとも一部は、情報処理装置100のCPU101が、ROM103や記憶装置104に記憶されたプログラムを実行することにより、或いは、ヘッドセット150のCPU151が、ROM153や記憶装置154に記憶されたプログラムを実行することにより実現される。
【0045】
まずS501において、CPU101は、ユーザ登録を受け付ける。ユーザの名称や連絡先の入力を受け付ける。各ユーザに対しては個々のユーザを一意に識別するためのユーザ識別子を付与する。CPU101は、入力されたユーザ情報を、入力を受け付けた時間やユーザ識別子と関連付けて記憶装置104に記憶しておく。
【0046】
ユーザはユーザ登録が完了すると、自身の模型を模型支持装置130にセットする。このとき、ジオラマ模型300のように複数の構成要素に分離可能な場合には、構成要素ごとに模型支持装置130にセットする。CPU101はスキャナ110によるスキャン画像に基づいて模型支持装置130に模型がセットされたかどうかを判定することができる。或いは、模型支持装置130に模型がセットされた場合にオンになるスイッチを配置しておき、スイッチからの信号をCPU101が検知して判断してもよい。或いは、表示装置140に模型のセットが完了した場合に操作を受け付けるためのボタンを表示しておき、CPU101は当該ボタン操作に対する操作を受け付けたかどうかを検知することができる。S502においては、CPU101が上述のいずれかの方法により、模型支持装置130に模型がセットされたことを検知する。当該検知に応じて処理はS503に進む。
【0047】
S503では、スキャナ110がスキャン処理(撮影処理)を実行してスキャン画像を生成する。撮影されたスキャン画像は情報処理装置100に送信され、CPU101は、記憶装置104のテーブルにユーザ識別子等と関連付けて保存する。続くS504では、CPU101は、スキャン処理により取得されたスキャン画像についてスキャン後処理を実行し、三次元モデルデータを生成し、VR映像表示用のアプリケーションデータ(表示用データ)を生成する。当該アプリケーションデータは、特定のアプリケーションにおいて実行されると、VR映像を再生することができる。生成された三次元モデルデータ及び表示用データは、ユーザ情報と関連付けて記憶装置104に記憶される。続くS505において、CPU101は、通信装置105を制御して当該アプリケーションデータをHMD150Aに送信する。続くS506においては、HMD150AのCPU151が、受信したアプリケーションデータを対応するアプリケーションにおいて実行することでVR映像を表示する処理を実行する。
【0048】
次に、
図6を参照して、S503におけるスキャン処理の詳細を説明する。本実施形態においては、サポートアーム120の駆動情報、当該撮影位置におけるスキャナ110の撮影回数が撮影位置毎に登録されている。そして、各撮影位置において撮影を行う際に、模型支持装置130を回転させることで撮影が行うことができる。
【0049】
まず、S601では、CPU101はサポートアーム120を制御して、スキャナ110を登録されたいずれかの撮影位置に移動させる。或いは、サポートアーム120を手動で制御していずれかの撮影位置に移動させてもよい。また、模型支持装置130を制御して、回転開始位置に移動させる。このとき撮影対象の模型の正面がスキャナ110を向くようにする。模型の正面側からスキャンを開始させるためである。続くS602では、CPU101は、当該撮影位置において模型支持装置130を回転させながらスキャナ110がスキャンを行うことで、撮影対象のスキャン画像を取得することができる。スキャナ110は、模型の正面側からスキャンを開始し、当該模型の正面側がスキャンデータにおける前面側に該当する。スキャナ110は、上述のArtec社製Space Spiderのようなスキャナ専用装置や、スマートフォンやタブレット端末、デジタルカメラ等のスキャナ機能付き汎用装置を使用することができる。スキャンにおいては、部位の性質に応じてスキャナ専用装置と汎用装置とを切り替えて使用することもできる。例えば、スキャナ専用装置は対象物に対して接近してスキャンする必要があるため、構造上接近させることが難しい部位や入り組んだ部位をスキャンする場合、スキャナ専用装置の代わりに汎用装置を用いてもよい。それぞれの装置で取得したスキャン画像は、スキャン後処理で統合することができる。
【0050】
またこのとき模型支持装置130を特定の回転位置で停止し、サポートアーム120を制御して、或いは、撮影者が手動でスキャナ110の角度を変えることで、縦方向にスキャナ110に移動させながら模型のスキャンを行ってもよい。これにより模型を上方から、或いは下方からも撮影することができる。特に下方からスキャンすることで、模型の足の裏もスキャンすることが可能となる。このようにして、本実施形態では、模型の全周を網羅するようにスキャン方向・角度を選択してスキャンを行う。
【0051】
本実施形態では、模型支持装置130から伸びた透明な支持棒の上に模型をセットする形で浮かせてスキャンすることができる。或いは、模型支持装置130のターンテーブル上に直接直立させてスキャンすることもできる。前者の形態においては、模型の足裏も撮影することができるので、飛翔姿勢の撮影に適している。一方、後者の形態では、足裏を撮影することはできないが、直立姿勢を撮影するのには適している。なお、直立姿勢を前者の撮影形態において撮影してもよい。
【0052】
続くS603では、CPU101は未処理のスキャン対象が存在するかどうかを判定する。上記のようにジオラマ模型300では、構成要素に分解してスキャンを行うことが有るので、未処理の構成要素がある場合には、S601に戻って処理を繰り返す。一方、未処理のスキャン対象が無い場合、処理はS604に移行する。S604では、スキャナ110は、以上により得られたスキャン画像を情報処理装置100に送信し、CPU101は受信した画像をユーザ情報等と関連付けて記憶装置104に記憶する。
【0053】
次に、
図7を参照して、S503において得られたスキャン画像に基づき、S504のスキャン後処理として表示用データを生成する処理の詳細を説明する。まず、S701において、CPU101は、記憶装置104に保存されている複数のスキャン画像を取得する。続くS702では、CPU101は、取得したスキャン画像から、本データとなる模型の三次元モデルデータを、ポリゴンメッシュにおいて生成する。自由曲線で表現されたスキャン画像の情報をそのまま用いると情報量が膨大となるため、メッシュ化することでデータ量を削減できる。また、三次元モデルデータの生成の際に、ノイズを除去すると共に、ポリゴン数を調整したり可動箇所に骨構造を追加したりしてもよい。
【0054】
続くS703では、模型の構成要素が複数ある場合に、1つの三次元モデルデータに統合するための配置調整処理を行う。模型は、人形体模型であってもジオラマ模型であってもよいが、スキャン画像の取得においては、複数の構成要素に分離できる場合には、分離してスキャン処理を行い、本ステップにおいてそれらを統合する。ジオラマ模型300のように複数の構成要素からなる場合、分離しない状態では各構成要素の完全な三次元モデルデータを取得することが難しいので、個別に三次元モデルデータを生成した後に統合する。統合する際の位置合わせ、或いは、配置の調整においては、複数方向からジオラマ模型300を撮影した画像に基づいて特定される各構成要素の位置関係に従って、各構成要素の相対的な位置関係を定めることができる。また、人形体玩具が複数含まれる場合に、それぞれの人形体玩具の配置や向きを調整することができる。
【0055】
続くS704では、CPU101は、S703で1つに統合された三次元モデルデータをVR映像開発プラットフォームにインポートし、VR映像用に構築した所定の仮想空間上に配置する。ここで、VR映像開発プラットフォームは、例えばユニティ・テクノロジーズ社が提供する、ゲーム開発プラットフォームのUNITYを用いることができる。
【0056】
続くS705では、VR映像開発プラットフォームにおいて、S704でインポートされた三次元モデルデータから所定部分を削除する。例えば、模型が配置されている台座や模型の構成要素を支持するための支持部材、CG等のデジタル表現によりエフェクトとして演出される部材(例えば、ビーム表現、爆発表現等)が除去される。当該所定部分の除去は、予め用意されたテンプレートとの比較等に基づいて行ってもよい。例えば支持部材については、支持部材は一般に台座或いはベース部材から構成要素に直結して配置されているので、このように台座から構成要素に向かって伸びている線状の部材については削除することができる。一方、台座から構成要素に向かっている線状の部材であっても、構成要素と接続していないものについては、削除対象から除外してもよい。また、削除対象の部材を特定し、その後にユーザからの解除操作を受け付けることにより、実際に削除する部材を決定してもよい。更に、ユーザからの削除範囲の追加の指定を受け付け、指定を受け付けた箇所を更に削除対象に含めるようにしてもよい。
【0057】
続くS706では、S705で不要部分が削除等された各構成要素について、構成要素ごとにポリゴン数を調整する処理を行う。例えば、
図3に示すジオラマ模型300では、観察者の注目は主として人形型模型301と浮遊パーツ303に集まる一方、ベース部材302は人形型模型301程には注目されない。このような場合に、人形型模型301と浮遊パーツ303とにより多くのポリゴン数を割り当て、ベース部材302に割り当てるポリゴン数を削減する。このようにしてポリゴン数を減らすことで、表示のための計算負荷を軽減することができる。また、人形型模型301や浮遊パーツ303について、表側を向く部分と裏側を向く部分とでポリゴン数を異ならせるようにし、表側により多くのポリゴン数を割り当てるようにしてもよい。また、最終的にユーザに提供する表示用データにおいてユーザから見えない部分に対してはポリゴン数を減らすか、黒塗りとしてもよい。ベース部材302については、一律にポリゴン数を削減するのではなく、表側と裏側とで、表側により多くのポリゴン数を割り当てるようにしてもよい。これにより、目立たない部分についてはポリゴン数を減らす一方、目立ちやすい部分のポリゴン数を落とさないで済むため、全体のポリゴン数を減らしつつ、表示品質を維持することができる。なお、模型の表側と裏側とは、例えばスキャン開始位置を表側とし、スキャン開始位置の反対側の位置を裏側とすることができる。そこで、S503における処理では、模型の表側に相当する位置からスキャンを開始することとしている。
【0058】
続くS707では、エフェクト生成を行う。エフェクトは、S705において削除された不要部分の少なくとも一部を補完するように付与されてもよい。例えば、
図3のジオラマ模型300では、人形型模型301が保持するビームライフルからビーム304が照射され、浮遊パーツ303を打ち抜く表現がなされている。このビーム304は、S705において削除されているので、この削除された構成要素を補完するようなエフェクトのアニメーションが生成される。また、爆発表現等が撮影対象の模型に含まれている場合にはこれも除外し、その代わりにアニメーションによって補完することができる。一方で、同じように削除された構成要素であっても、
図3の浮遊パーツ303のような構成要素を支持するための支持部材305は、VR映像の表現においては不要であるので、この部分を補完するエフェクトを付与することはない。また、単体の模型200の場合には、模型からの排気を表現するようなエフェクトのアニメーションを生成することができる。その他、エフェクト効果を達成する任意のアニメーションを生成し、三次元モデルデータに重畳することができる。更には、S702において可動箇所に骨構造が追加されている場合に、当該骨構造を利用して模型の一部を動作させるエフェクトを追加することができる。例えば、模型に旗が含まれている場合に、当該旗に埋め込まれた骨構造を利用して、旗が風になびいている様子をエフェクトとして表現することができる。
【0059】
続くS708では、以上のステップにおいて生成したデータに基づき、VR映像開発プラットフォーム上で実行することでVR映像を表示可能な表示用データを生成する。
【0060】
図8では、S506に対応する表示用データの表示処理を説明する。
図8の処理は、HMD150AのCPU151が実行する。HMD150Aには、情報処理装置100においてVRデータを生成するために利用したVR映像開発プラットフォームに対応するVR映像表示用のアプリケーションがインストールされており、CPU151は当該アプリケーションを実行することで表示用データを用いてディスプレイ156にVR映像を表示することができる。
【0061】
まずS801において、CPU151は、提供可能なVR映像のメニュー画面をHMD150Aのディスプレイ156に表示させる。メニュー画面において、ユーザはコントローラ150Bを介して選択入力を行うことができる。ここで当該メニュー画面においては、複数のアイコンが表示されている。各アイコンはVR映像の開始点を示すものであり、ユーザは選択したアイコンに応じて複数の開始点のうちのいずれかの開始点からVR映像を見ることができる。各開始点は、スキャン対象のジオラマ模型300を見ることができる複数の視点位置に対応する。
【0062】
VR映像においては、模型の三次元モデルデータが配置された仮想空間内を、決められたルートに従って、或いは、任意に移動することができ、ユーザにはヘッドマウントディスプレイ150Aを介して対応するウォークスルー映像が提供される。
【0063】
CPU151は、続くS802においてユーザからコントローラ150Bを介した選択操作を受け付けると、S803において、選択されたアイコンに対応する開始位置からのVR映像をディスプレイ156に表示させる。続くS804において、CPU151は、ユーザによるコントローラ150Bに対する操作情報や、HMD150Aにおける検出部157における検出情報を取得する。
【0064】
続くS805において、CPU151は、S804で取得した操作情報及び検出情報に基づき、ディスプレイ156に表示している映像を切り替える制御を行う。例えば、操作情報によりズームイン操作が行われた場合には、ディスプレイ156に表示している映像を拡大して表示するように、アプリケーションにおいて映像生成を行いディスプレイ156に表示している映像を更新する。また、検出情報によりユーザが上下左右を向いた場合には、対応する方向に映像を切り替えるよう、アプリケーションにおいて映像生成を行いディスプレイ156に表示している映像を更新する。
【0065】
ユーザはコントローラ150Bを介して、画面の拡大・縮小、視線方向の変更、ユーザの仮想空間内での位置の変更、メニュー画面の表示・メニュー選択等を行うことができる。また、HMD150Aの検出部157により、ユーザが現実空間において歩く等して移動した場合に、当該移動を検知して、仮想空間内の位置を変更することができる。また、検出部157により、ユーザが顔の向きや角度を変更した場合には、当該変化を検出して、対応する視線方向のVR映像に切り替えることができる。
【0066】
以上では、S506におけるVR映像表示処理をHMD150Aで行う場合をHMD150Aにおいて実施する場合を説明した。しかし、発明の実施形態はHMD150Aにおける表示の形態に限定されるものではない。これ以外にも、
図8のフローチャートに従い、VR映像開発プラットフォームがインストールされている情報処理装置100において表示用データを用いて表示装置140にVR映像を表示してもよい。その際、コントローラ150Bの代わりに同等の操作を操作部140Aを介して受け付けることができる。更には、同様に
図8のフローチャートに従い、VR映像開発プラットフォームに対応するVR映像表示用のアプリケーションがインストールされたパーソナルコンピュータ(PC)、スマートフォン、タブレット端末において、表示用データを用いてVR映像を表示してもよい。その場合、コントローラ150Bの代わりに、同等の操作を、PCのキーボードやマウスを介して、或いは、スマートフォン等のタッチパネルを介して受け付けることができる。その際、PC、スマートフォン及びタブレット端末は、情報処理装置100との無線通信を介して表示用データをダウンロードすることができる。
【0067】
更には、サーバと、PC、スマートフォン或いはタブレット端末とをネットワークを介して接続し、PC等はVR映像開発プラットフォームがインストールされている当該サーバから、表示用データを用いたVR映像の提供を受けてもよい。このときPC、スマートフォン或いはタブレット端末は、ブラウザを介してサーバと接続し、サーバから受信したVR映像をブラウザで閲覧することができる。この場合PC等には特定のアプリケーションをインストールしなくても、ブラウザが利用できればVR映像を鑑賞することができる。
【0068】
図9は、VR映像におけるエフェクト表現の一例を示す図である。
図9(A)は、エフェクト表現が開始される前の
図3に示したジオラマ模型300の映像を示している。ここに示す例では、
図3では存在していたビーム304、支持部材305、台座306が含まれていない。これらは表示用データの生成過程において既に除去されている。
【0069】
次に、
図9(B)においては、模型301が保持するビームライフルからのビーム901が、浮遊パーツ303に照射される様子がエフェクトとしてアニメーション表示される。
図9(B)は、ビーム901が浮遊パーツ303に当たった状態を示しているが、VR映像においてはビームライフルからビーム901が進行していく様子がアニメーション表示される。また、ビーム901が浮遊パーツ303を突き抜ける際に、浮遊パーツ303表面が溶融している様子を示すアニメーション902をエフェクトとして重畳することができる。続く
図9(C)においては、ビーム901が浮遊パーツ303を突き抜けて進行する状態が表示される。HMD150Aにおいて提供されるVR映像では、
図9(A)から
図9(C)への遷移状態がアニメーションとして繰り返さる。
【0070】
このようにして、本実施形態では、模型の三次元モデルデータを生成してVR映像内に取り込むことで、VR映像内で模型を鑑賞することが可能となる。その際、VR映像内であれば模型のサイズを任意に変更が可能となるので、ミニチュアサイズの模型が本来のサイズ感で眼前に広がって表現され、臨場感が格段に向上する。
【0071】
上述の実施形態の説明においては、模型を撮影して得られた画像から生成した三次元モデルデータを仮想空間内に配置してVR映像を表示するための表示データを生成する場合を説明した。しかし、実施形態は、VR映像の生成に限定されるものではなく、当該三次元モデルデータを仮想空間用のゲームデータとして用いることもできる。また、仮想空間内でキャラクタを動作させる処理にも広く適用が可能である。例えば、仮想空間内で行われるイベント、コンサート、スポーツ、オンライン会議等に、当該キャラクタを登場させることも可能である。更には、クロスリアリティ(XR)のような現実世界と仮想世界とを融合し、現実空間には存在しないものを知覚可能とする映像技術において、本実施形態の技術を適用することもできる。
【0072】
このようにして本実施形態では、模型の外観を撮影した画像から三次元モデルデータを生成し、VR映像において鑑賞することが可能となる。模型は、例えば組み立て式プラスチックモデルのように、ユーザが塗装等を行って独自の作品として仕上げているものがあり、それらの個性を動画や仮想空間内のキャラクタ表現に反映することができるので嗜好性を格段に向上させることができる。
【0073】
<実施形態のまとめ>
上記実施形態は以下の画像処理方法、情報処理装置、及びコンピュータプログラムを少なくとも開示する。
(1) 仮想現実(VR)映像を外部の表示装置に表示させるための表示用データを生成する画像処理方法であって、
スキャナ部により模型の外観の画像を複数方向からスキャンして生成された複数のスキャン画像から、処理部が前記模型の第1の三次元モデルデータを生成する第1の生成工程と、
処理部が、前記第1の三次元モデルデータを加工する加工工程と、
前記処理部が、加工された前記第1の三次元モデルデータにエフェクトを付与する付与工程と、
前記エフェクトが付与された第1の三次元モデルデータを含む前記表示用データを生成する第2の生成工程と
を含む画像処理方法。
(2) 前記模型は複数の構成要素からなり、
前記第1の三次元モデルデータには、前記複数の構成要素に対応する複数の第2の三次元モデルデータが含まれ、
前記第1の生成工程は、前記複数の第2の三次元モデルデータの配置を調整することを含む、
(1)に記載の画像処理方法。
(3) 前記加工工程は、前記処理部が、前記第1の三次元モデルデータのポリゴン数を調整する調整工程を含み、
前記調整工程では、前記第2の三次元モデルデータごとにポリゴン数の調整が実行される、(2)に記載の画像処理方法。
(4) 前記調整工程では、前記第2の三次元モデルデータのそれぞれについて、向きに応じて異なるポリゴン数を割り当てる、(3)に記載の画像処理方法。
(5) 前記調整工程では、前記第2の三次元モデルデータの表側により多くのポリゴン数を割り当てる、(4)に記載の画像処理方法。
(6) 前記模型は人形型模型とベース部材とを少なくとも含み、前記人形型模型が前記ベース部材上に配置されたジオラマ模型である、(3)から(5)のいずれか1つに記載の画像処理方法。
(7) 前記調整工程では、前記人形型模型に対して前記ベース部材よりも多くのポリゴン数が割り当てられる、(6)に記載の画像処理方法。
(8) 前記加工工程は、前記模型の外観に対応する前記第1の三次元モデルデータにおいて、VR映像で不要な部分を削除する削除工程を含み、
前記付与工程では、前記削除工程において削除された部分の少なくとも一部を補完するエフェクトが付与される、(1)から(7)のいずれか1つに記載の画像処理方法。
(9) 前記不要な部分は前記模型を支持する支持部材を含み、
前記付与工程は、削除された前記支持部材を除いた他の部分を補完するエフェクトを付与する、(8)に記載の画像処理方法。
(10) 前記付与工程は、アニメーション表現においてエフェクトを付与することを含む、(8)に記載の画像処理方法。
(11) 前記外部の表示装置は、ヘッドマウントディスプレイ装置であり、
前記ヘッドマウントディスプレイ装置には、所定のアプリケーションがインストールされており、前記表示用データは前記所定のアプリケーションにより実行されて前記ヘッドマウントディスプレイ装置にVR映像を表示するためのデータである、(1)から(10)のいずれか1つに記載の画像処理方法。
(12) 仮想現実(VR)映像を外部の表示装置に表示させるための表示用データを生成する情報処理装置であって、
スキャナ部により模型の外観の画像を複数方向からスキャンして生成された複数のスキャン画像から、前記模型の第1の三次元モデルデータを生成する第1の生成手段と、
前記第1の三次元モデルデータを加工する加工手段と、
加工された前記第1の三次元モデルデータにエフェクトを付与する付与手段と、
前記エフェクトが付与された第1の三次元モデルデータを含む前記表示用データを生成する第2の生成手段と、を備える情報処理装置。
(13) コンピュータに、(1)から(11)のいずれか1つに記載の画像処理方法を実行させるためのコンピュータプログラム。
【0074】
発明は上記の実施形態に制限されるものではなく、発明の要旨の範囲内で、種々の変形・変更が可能である。
【要約】
【課題】対象物を撮影し、撮影された対象物の三次元モデルデータを用いて仮想空間上に三次元モデルを配置した映像を生成する際に、臨場感にあふれた映像の生成を可能とする。
【解決手段】VR映像を外部の表示装置に表示させるための表示用データを生成する画像処理方法であって、スキャナ部により模型の外観の画像を複数方向からスキャンして生成された複数のスキャン画像から、処理部が前記模型の第1の三次元モデルデータを生成する第1の生成工程と、処理部が、前記第1の三次元モデルデータを加工する加工工程と、前記処理部が、加工された前記第1の三次元モデルデータにエフェクトを付与する付与工程と、前記エフェクトが付与された第1の三次元モデルデータを含む前記表示用データを生成する第2の生成工程とを含む。
【選択図】
図1