JP7441289B1 - コンピュータプログラム、情報処理端末、及びその制御方法 - Google Patents
コンピュータプログラム、情報処理端末、及びその制御方法 Download PDFInfo
- Publication number
- JP7441289B1 JP7441289B1 JP2022182029A JP2022182029A JP7441289B1 JP 7441289 B1 JP7441289 B1 JP 7441289B1 JP 2022182029 A JP2022182029 A JP 2022182029A JP 2022182029 A JP2022182029 A JP 2022182029A JP 7441289 B1 JP7441289 B1 JP 7441289B1
- Authority
- JP
- Japan
- Prior art keywords
- information
- captured image
- image
- computer program
- pixel
- 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.)
- Active
Links
- 230000010365 information processing Effects 0.000 title claims abstract description 56
- 238000000034 method Methods 0.000 title claims description 44
- 238000004590 computer program Methods 0.000 title claims description 33
- 239000002131 composite material Substances 0.000 claims abstract description 18
- 230000000694 effects Effects 0.000 claims description 154
- 238000003384 imaging method Methods 0.000 claims description 73
- 238000012545 processing Methods 0.000 claims description 39
- 210000000988 bone and bone Anatomy 0.000 claims description 29
- 210000001015 abdomen Anatomy 0.000 claims description 4
- 238000010586 diagram Methods 0.000 abstract description 8
- 230000007246 mechanism Effects 0.000 abstract description 2
- 230000002194 synthesizing effect Effects 0.000 abstract description 2
- 230000036544 posture Effects 0.000 description 39
- 230000000875 corresponding effect Effects 0.000 description 23
- 230000008569 process Effects 0.000 description 16
- 230000006854 communication Effects 0.000 description 12
- 238000004891 communication Methods 0.000 description 12
- 238000010801 machine learning Methods 0.000 description 12
- 230000015572 biosynthetic process Effects 0.000 description 10
- 238000003786 synthesis reaction Methods 0.000 description 10
- 230000003190 augmentative effect Effects 0.000 description 5
- 230000001276 controlling effect Effects 0.000 description 5
- 230000006870 function Effects 0.000 description 5
- 230000007704 transition Effects 0.000 description 5
- 239000000203 mixture Substances 0.000 description 4
- 238000013527 convolutional neural network Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 230000000295 complement effect Effects 0.000 description 2
- 230000007613 environmental effect Effects 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 206010011469 Crying Diseases 0.000 description 1
- 230000004913 activation Effects 0.000 description 1
- 230000007175 bidirectional communication Effects 0.000 description 1
- 230000004397 blinking Effects 0.000 description 1
- 150000001875 compounds Chemical class 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 238000002910 structure generation Methods 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0481—Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
- G06F3/04815—Interaction with a metaphor-based environment or interaction object displayed as three-dimensional, e.g. changing the user viewpoint with respect to the environment or object
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/14—Digital output to display device ; Cooperation and interconnection of the display device with other functional units
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating 3D models or images for computer graphics
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Computer Graphics (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Processing Or Creating Images (AREA)
- User Interface Of Digital Computer (AREA)
- Digital Computer Display Output (AREA)
Abstract
【課題】本発明は例えば、現実空間の撮像画像に好適にオブジェクトを合成して出力する仕組みを提供する。【解決手段】本情報処理端末は、所定の模型を含む周辺環境を撮像し、撮像された撮像画像の各画素について、カメラからの距離情報を取得する。また、本情報処理端末は、撮像画像に含まれる所定の模型の少なくとも1つのパーツの姿勢及びカメラからの距離に関する情報を認識し、認識した少なくとも1つのパーツを基準に、生成するオブジェクトの位置情報を決定する。さらに、本情報処理端末は、生成するオブジェクトの各画素のうち、それぞれの位置情報が撮像画像の対応する画素の距離情報よりもカメラに近いことを示す画素をオブジェクトとして描画し、オブジェクト画像を生成し、撮像画像にオブジェクト画像を重畳した合成画像を表示部に出力する。【選択図】図5
Description
本発明は、コンピュータプログラム、情報処理端末、及びその制御方法に関する。
従来より、現実空間に文字やCGなどの情報を重畳させてユーザに提示することで、拡張された現実空間を該ユーザに提示するAR(Augmented Reality)などのXR(Cross Reality)技術が様々な分野で利用されている。例えば、特許文献1には、フィギュアの台座に設けられたマークを携帯端末のカメラで認識して、マークに対応付けて用意された演出用の映像等を生成し、携帯端末の画面にフィギュアと映像とを重ね合わせて表示する拡張現実感システムが開示されている。
上記従来技術では、フィギュア画像と演出用の映像とを重ね合わせて表示しており、フィギュア画像と演出用の映像とが重複する位置ではフィギュア画像が隠れるようになっている。つまり、上記従来技術では、演出用の映像全てをフィギュア画像の前面に表示している。しかし、立体感や臨場感を出すには、演出用の映像など撮像画像に重ね合わせるオブジェクトは、当該フィギュアとの位置関係に応じてフィギュアの前面に露出したり、背面に隠れたりすることが望ましい。また、撮像した映像にリアルタイムでオブジェクトを付加するために、それらの処理負荷をできる限り低減させる必要がある。
本発明は例えば、現実空間の撮像画像に好適にオブジェクトを合成して出力する仕組みを提供する。
本発明は、例えば、コンピュータプログラムであって、情報処理端末のコンピュータを、所定の模型を含む周辺環境を撮像する撮像手段と、前記撮像手段によって撮像された撮像画像の各画素について、前記撮像手段からの距離情報を取得する取得手段と、前記撮像画像に含まれる前記所定の模型の少なくとも1つのパーツの姿勢及び前記撮像手段からの距離に関する情報を認識する認識手段と、前記認識手段によって認識した前記少なくとも1つのパーツを基準に、生成するオブジェクトの位置情報を決定する位置決定手段と、前記生成するオブジェクトの各画素のうち、それぞれの位置情報が前記撮像画像の対応する画素の距離情報よりも前記撮像手段に近いことを示す画素をオブジェクトとして描画し、オブジェクト画像を生成するオブジェクト生成手段と、前記撮像画像に前記オブジェクト画像を重畳した合成画像を表示部に出力する出力手段と、として機能させることを特徴とする。
また、本発明は、例えば、情報処理端末であって、所定の模型を含む周辺環境を撮像する撮像手段と、前記撮像手段によって撮像された撮像画像の各画素について、前記撮像手段からの距離情報を取得する取得手段と、前記撮像画像に含まれる前記所定の模型の少なくとも1つのパーツの姿勢及び前記撮像手段からの距離に関する情報を認識する認識手段と、前記認識手段によって認識した前記少なくとも1つのパーツを基準に、生成するオブジェクトの位置情報を決定する位置決定手段と、前記生成するオブジェクトの各画素のうち、それぞれの位置情報が前記撮像画像の対応する画素の距離情報よりも前記撮像手段に近いことを示す画素をオブジェクトとして描画し、オブジェクト画像を生成するオブジェクト生成手段と、前記撮像画像に前記オブジェクト画像を重畳した合成画像を表示部に出力する出力手段とを備えることを特徴とする。
また、本発明は、例えば、情報処理端末の制御方法であって、所定の模型を含む周辺環境を撮像手段によって撮像する撮像工程と、前記撮像工程で撮像された撮像画像の各画素について、前記撮像手段からの距離情報を取得する取得工程と、前記撮像画像に含まれる前記所定の模型の少なくとも1つのパーツの姿勢及び前記撮像手段からの距離に関する情報を認識する認識工程と、前記認識工程で認識した前記少なくとも1つのパーツを基準に、生成するオブジェクトの位置情報を決定する位置決定工程と、前記生成するオブジェクトの各画素のうち、それぞれの位置情報が前記撮像画像の対応する画素の距離情報よりも前記撮像手段に近いことを示す画素をオブジェクトとして描画し、オブジェクト画像を生成するオブジェクト生成工程と、前記撮像画像に前記オブジェクト画像を重畳した合成画像を表示部に出力する出力工程とを含むことを特徴とする。
本発明によれば例えば、現実空間の撮像画像に好適にオブジェクトを合成して出力することができる。
以下、添付図面を参照して実施形態を詳しく説明する。尚、以下の実施形態は特許請求の範囲に係る発明を限定するものではなく、また実施形態で説明されている特徴の組み合わせの全てが発明に必須のものとは限らない。実施形態で説明されている複数の特徴うち二つ以上の特徴が任意に組み合わされてもよい。また、同一若しくは同様の構成には同一の参照番号を付し、重複した説明は省略する。
<第1の実施形態>
<システム構成>
以下では本発明の第1の実施形態について説明する。まず図1を参照して、本実施形態に係るシステム構成について説明する。なお、ここでは必要最低限の簡易的な構成について説明するが、本発明を限定するものではない。例えば、各装置については複数の装置が含まれてもよいし、複数のサーバが一体化して設けられてもよい。
<システム構成>
以下では本発明の第1の実施形態について説明する。まず図1を参照して、本実施形態に係るシステム構成について説明する。なお、ここでは必要最低限の簡易的な構成について説明するが、本発明を限定するものではない。例えば、各装置については複数の装置が含まれてもよいし、複数のサーバが一体化して設けられてもよい。
本システムは、情報処理端末101、アプリケーションサーバ102、機械学習サーバ103、及びデータベース104を含んで構成される。情報処理端末101及びアプリケーションサーバ102はネットワークを介して相互に通信可能に接続される。アプリケーションサーバ102は、ローカルエリアネットワーク(LAN)を介して機械学習サーバ103に相互に通信可能に接続される。また、機械学習サーバ103はLANを介してデータベース104に接続される。
情報処理端末101は、例えば、スマートフォン、携帯電話機、タブレットPC等の携帯型の情報処理端末である。カメラ等の撮像部と、撮像した画像を表示する表示部とを少なくとも有する情報処理端末であれば任意の装置であってよい。情報処理端末101は、ネットワーク105を介してアプリケーションサーバ102から、本発明を実施するためのアプリケーションをダウンロードしてインストールする。当該アプリケーションが情報処理端末101で実行されることによって、以下で説明する所定の模型を含む撮像画像に、エフェクトオブジェクトを合成した拡張現実を提供することができる。なお、撮像画像は、静止画像及び動画像(映像)の何れであってもよい。また、動画像にエフェクトを付加する場合には、エフェクトオブジェクトをアニメーションとして合成してもよい。
アプリケーションサーバ102は、機械学習サーバ103において機械学習された学習済みモデルを取得し、当該学習済みモデルを組み込んだアプリケーションを情報処理端末101等の外部端末に提供する。機械学習サーバ103は、例えば、深層学習の畳み込みニューラルネットワーク(CNN)によって、画像情報に含まれるフィギュア(模型)の各パーツを認識する学習済みモデルを生成する。学習データとしては、例えば所定の模型のパーツごとに様々な姿勢や角度から撮影された撮像画像に教師データを付与したデータを用いる。このように所定の模型をパーツ毎に学習させることにより、例えば推定フェーズにおいて所定の模型の全体を認識するよりも、高速に且つ処理負荷を抑えた認識処理を実行することができる。学習データについては、機械学習サーバ103で生成してもよいし、外部で生成されたデータを受信してもよい。また、機械学習サーバ103は、模型ごとに生成した学習済みモデルをデータベース104に格納し、必要に応じてアプリケーションサーバ102へ提供する。また、機械学習サーバ103は、追加の学習データに基づいて再学習を行うために、データベース104から対応する学習済みモデルを読み出して再学習させ、再学習後のモデルをデータベース104へ再度格納する。
<情報処理端末の構成>
次に、図2を参照して、本実施形態に係る情報処理端末101の構成例について説明する。ここでは、本実施形態に係る情報処理端末101において本発明を説明する上で重要なデバイスについてのみ説明する。したがって、情報処理端末101は代替的に又は追加的に他のデバイスを含んで構成されてもよい。
次に、図2を参照して、本実施形態に係る情報処理端末101の構成例について説明する。ここでは、本実施形態に係る情報処理端末101において本発明を説明する上で重要なデバイスについてのみ説明する。したがって、情報処理端末101は代替的に又は追加的に他のデバイスを含んで構成されてもよい。
情報処理端末101は、CPU201、記憶部202、通信制御部203、表示部204、操作部205、カメラ206、及びスピーカ207を備える。各コンポーネントは、システムバス210を介して相互にデータを送受することができる。
CPU201は、システムバス210を介して接続された各コンポーネントを全体的に制御する中央処理プロセッサである。CPU201は、記憶部202に記憶されたコンピュータプログラムを実行することにより、後述する各処理を実行する。記憶部202は、CPU201のワーク領域や一時領域として使用されるとともに、CPU201によって実行される制御プログラムや各種データを記憶している。
通信制御部203は広帯域無線通信によりネットワーク105を介してアプリケーションサーバ102と双方向通信を行うことができる。なお、通信制御部203は、広帯域無線通信に加えて又は代えて、無線LAN(WiFi)、Bluetooth(登録商標)通信、及び赤外線通信などの近距離無線通信の機能を有してもよい。通信制御部203は、例えば広帯域無線通信機能を有しておらず、WiFi通信機能を有している場合、近くのアクセスポイントを介してネットワーク105へ接続する。
表示部204はタッチパネル式の液晶ディスプレイであり、各種画面を表示するとともに、カメラ206によって撮像された静止画像や動画像を表示する。操作部205は、表示部204と一体化して設けられ、ユーザ操作を受け付ける操作入力部である。また、操作部205は、物理的に構成された押下式やスライド式のボタン等を含んでもよい。
カメラ206は、情報処理端末101の周辺環境を撮像する撮像部であり、例えば情報処理端末101において表示部204が設けられた裏側に位置することが望ましい。これにより、ユーザはカメラ206で撮影しながら、当該撮像画像を表示部204で確認することができる。なお、カメラ206は単眼カメラであっても、複眼カメラであってもよい。スピーカ207は例えば出力するエフェクトオブジェクトに合わせて音声を出力する。音声データについては、エフェクトごとに予め用意されている。
<XRギミック>
次に、図3を参照して、本実施形態に係るシステムが提供するXRギミックの一例について説明する。ここでは、アプリケーションサーバ102から、機械学習サーバ103によって生成された学習済みモデルを組み込んだアプリケーションが情報処理端末101にダウンロードされ、インストールされていることを前提とする。当該アプリケーションは、情報処理端末101で実行されることによりXRギミックを提供する。
次に、図3を参照して、本実施形態に係るシステムが提供するXRギミックの一例について説明する。ここでは、アプリケーションサーバ102から、機械学習サーバ103によって生成された学習済みモデルを組み込んだアプリケーションが情報処理端末101にダウンロードされ、インストールされていることを前提とする。当該アプリケーションは、情報処理端末101で実行されることによりXRギミックを提供する。
301は所定の模型の一例であり、人型のフィギュアである。本発明を限定する意図はなく、任意の物体等を模した模型であれば本発明に適用することができる。302はフィギュア301を載置した机を示す。ユーザは情報処理端末101上で上記アプリケーションを起動し、アプリケーション画面に表示された複数の項目から当該フィギュア301に対応する項目を選択する。ユーザが当該フィギュア301に対応する項目を選択すると、カメラ206が起動され、ユーザは机302に載置されたフィギュア301を撮影する。ユーザは撮影中において自由に情報処理端末101を動かして、矢印に示すように、フィギュア301を撮影する角度を変える変更することができる。撮像された映像は情報処理端末101の表示部204に表示される。ここで、後述する操作ボタン等を選択することにより、当該映像にエフェクトオブジェクトを合成して表示させることができる。このように、本システムは、フィギュア301を含む情報処理端末101の周辺環境を撮像した現実空間に、アニメーション等のエフェクトオブジェクトを重畳して出力することにより拡張した現実空間を提供する。
<XRギミックにおける画面遷移>
次に、図4を参照して、本実施形態に係るXRギミックに係る画面遷移について説明する。図4(a)~図4(d)は、ユーザがXRギミックを提供するアプリケーションを実行して、図3に示すように情報処理端末101を動かした場合の画面遷移について説明する。
次に、図4を参照して、本実施形態に係るXRギミックに係る画面遷移について説明する。図4(a)~図4(d)は、ユーザがXRギミックを提供するアプリケーションを実行して、図3に示すように情報処理端末101を動かした場合の画面遷移について説明する。
図4(a)に示す画面400は、本実施形態に係るXRギミックを提供するアプリケーションを起動すると表示部204に表示される画面である。ここでは、当該アプリケーションに登録されているフィギュアを選択するための選択ボタン401~405が表示される。ここでは、5つのフィギュアが登録されている例を示すが、さらに多くのフィギュアが登録される場合には、画面を下方向にスクロールすることで未表示の項目が表示され、選択可能となる。各項目には、それぞれ異なるフィギュアが登録されており、ユーザが撮影対象となるフィギュアを選択すると、図4(b)に示す画面410に遷移する。
画面410では、カメラ206が起動され、カメラ206によって情報処理端末101の周辺環境が撮像され、当該映像が表示部204に表示されている様子を示す。当該周辺環境の撮像画像には、図3に示したように、机302に載置されたフィギュア301が含まれる。また、撮像された映像に加えて、各種ボタン411~413が選択可能に表示される。ボタン411は、撮影中の静止画像を撮像するためのボタンである。ボタン411が操作されると、操作されたタイミングで静止画像を取得し、記憶部202に保存される。ボタン412は、エフェクトを付与付加するためのボタンである。ボタン412が操作されると、当該フィギュアにおいて登録されている少なくとも1つのエフェクトが選択可能に表示され、さらにユーザは所望のエフェクトを選択することができる。ボタン413は、各種メニューを表示するボタンである。開始したXRギミックを終了させて画面400へ遷移させたり、他の設定等を行ったりすることができる。なお、ここでは3つのボタンを含む例について説明したが、さらに多くの操作ボタンが含まれてもよい。
ボタン412を介して所定のエフェクトが選択されると、図4(c)の画面420に示すように、エフェクトの合成出力が開始される。421は映像に合成されたエフェクトオブジェクトであり、フィギュア301を囲むように3つの輪が表示されている。これらの輪は、例えばフィギュア301の頭上から発生し、足下方向に向けてアニメーション表示されてもよい。なお、表示されているエフェクトオブジェクト421は、フィギュア301の前面に表示されている部分と、フィギュア301の背面に隠れて表示されていない部分があることが分かる。これらの表示制御の詳細については後述する。
図4(d)に示すように、画面430は、エフェクトの出力中において、ユーザが図4(c)の状態からフィギュア301の側面から撮影する状態まで情報処理端末101を動かした際の画面を示す。ここでは、フィギュア301の側面に回った場合においても、エフェクトオブジェクト431に示すように、情報処理端末101から見てフィギュア301の後側に回り込む部分は表示されていないことが分かる。このように、本実施形態に係るエフェクトの合成出力では、カメラ206によって撮影された映像に追従して、エフェクトオブジェクトもフィギュア301の位置関係に応じて表示が変化するものである。詳細な表示制御については後述する。
<エフェクト合成の機能構成>
次に、図5を参照して、本実施形態に係るエフェクト合成出力に係る機能構成について説明する。以下で説明する機能構成は、例えばCPU201が記憶部202に予め記憶された制御プログラムを実行することにより実現されるものである。本情報処理端末101は、エフェクト合成出力に係る機能構成として、画像取得部501、深度情報取得部502、物体認識部503、エフェクト位置決定部504、学習済みモデル505、エフェクト描画部506、合成部507、及び出力部508を含む。
次に、図5を参照して、本実施形態に係るエフェクト合成出力に係る機能構成について説明する。以下で説明する機能構成は、例えばCPU201が記憶部202に予め記憶された制御プログラムを実行することにより実現されるものである。本情報処理端末101は、エフェクト合成出力に係る機能構成として、画像取得部501、深度情報取得部502、物体認識部503、エフェクト位置決定部504、学習済みモデル505、エフェクト描画部506、合成部507、及び出力部508を含む。
画像取得部501は、カメラ206によって撮像された撮像画像(RGB画像)を取得する。画像取得部501によって取得されたRGB画像は、深度情報取得部502、物体認識部503、及び合成部507へそれぞれ出力される。深度情報取得部502は、画像取得部501から受け取った撮像画像における各画素について、撮像時におけるカメラ206からの距離情報(深度情報)を取得する。深度情報取得部502は、取得した深度情報を示すグレースケール画像(深度マップ)を生成する。深度情報の取得方法としては、任意の既知の手法を用いてもよく、例えば、ステレオ視や時間差による運動視差を利用して取得する手法や、畳み込みニューラルネットワークを利用して二次元画像から対象物までの距離を推定するように学習させた機械学習済みのモデルによって取得する手法であってもよい。なお、本実施形態に係るXRギミックはリアルタイム性を要するものであるため、処理負荷が低い手法が望ましい。深度情報取得部502は、取得した深度情報(深度マップ)をエフェクト描画部506へ出力する。
物体認識部503は、学習済みモデル505を用いて、撮像画像に含まれるフィギュア301の少なくとも1つのパーツの姿勢と、カメラ206から当該パーツまでの距離とを認識する。姿勢情報には、当該パーツの形状及び角度の情報が含まれる。より詳細には、物体認識部503は、学習済みモデル505を用いて、認識対象となるパーツの前、後、上、下、左、右、ピッチ、ヨー、及びロールの各方向における角度を検出することができる。ここで、少なくとも1つのパーツとは、フィギュア301等の所定の模型における頭部、胸部、腹部、腰部、腕部、及び脚部の少なくとも1つであり、選択されたエフェクトに関連するパーツである。所定の模型をパーツごとに分割する粒度については任意である。例えば、可動フィギュアの場合には、関節を有するパーツごとに分割することが望ましい。これにより、可動するパーツごとに形状や姿勢等を認識することができ、可動が行われた場合であっても認識誤りを低減させることができる。
また、エフェクトに関連するパーツとは、生成するエフェクトオブジェクトの近傍に位置するパーツを示す。これは、撮像画像に合成するエフェクトオブジェクトがフィギュア301との位置関係を考慮して配置されるものであり、生成するエフェクトオブジェクトの位置を決定するためである。例えば、所定の模型において胸部の一部から光線を出力するエフェクトオブジェクトを生成する場合には、当該模型の胸部の姿勢及び撮像画像におけるカメラ206から当該模型の胸部までの距離を認識することで、エフェクトオブジェクトの発生位置や発生方向を決定することができる。
このように、本実施形態によれば、所定の模型全体の姿勢及び撮像画像におけるカメラ206から当該模型までの距離を認識するものではなく、生成するエフェクトオブジェクトに関連する少なくとも1つのパーツのみを認識する。これにより、所定の模型全体を認識する場合と比較して、高速に処理することができ、XRギミックのリアルタイム性を保証することができる。なお、物体認識部503は、選択された模型の三次元形状モデルの情報を予め保持しているため、一部のパーツの姿勢及び距離を認識することにより、他のパーツの姿勢及び距離をある程度推定することも可能である。物体認識部503は、生成するエフェクトオブジェクトに関連する少なくとも1つのパーツの姿勢及び距離に関する情報を認識すると、当該情報をエフェクト位置決定部504へ出力する。
エフェクト位置決定部504は、取得した少なくとも1つのパーツの姿勢及びカメラ206からの距離に関する情報に基づいて、生成するエフェクトオブジェクトの位置情報を決定する。当該位置情報には、エフェクトオブジェクトについての少なくとも姿勢(角度)及びカメラ206からの距離に関する情報が含まれる。決定した位置情報はエフェクト描画部506に出力される。エフェクト描画部506では生成するエフェクトオブジェクトのモデル情報を予め保持しているため、ここでは当該エフェクトオブジェクトの基準位置をフィギュア301の所定位置と関連付けて定義した情報が出力されうる。つまり、生成するエフェクトオブジェクトの位置情報は、エフェクト描画部506がエフェクトオブジェクトを描画するために必要となる情報を含んでいればよく、例えば当該エフェクトオブジェクトの姿勢(角度)及びカメラ206からの距離に関する情報を示すものであればよい。
エフェクト描画部506は、深度情報取得部502から取得した深度情報と、エフェクト位置決定部504から取得したエフェクトオブジェクトの姿勢及び距離に関する情報とに基づいて、エフェクトオブジェクトを描画する。エフェクト描画部506は、上述したように、生成するエフェクトについての予め保持しているモデル情報に従って描画を行う。より詳細には、エフェクト描画部506は、撮像画像の各画素の深度情報(距離情報)に応じて、対応するエフェクトオブジェクトの描画画素のうち、撮像画像の対応する画素よりもカメラ206に近いことを示す画素について描画する。一方、エフェクト描画部506は、対応するエフェクトオブジェクトの描画画素のうち、撮像画像の対応する画素よりもカメラ206に近いことを示さない画素については描画しない。これにより、例えばフィギュア301の背面に隠れるエフェクトオブジェクトは描画されず、フィギュア301の前面に露出するエフェクトオブジェクトのみが描画されることになる。エフェクト描画部506は、描画したエフェクトオブジェクト画像を合成部507へ出力する。
合成部507は、画像取得部501から取得した撮像画像に対して、当該撮像画像に基づいて生成され、エフェクト描画部506から取得したエフェクトオブジェクト画像を重畳して現実空間にエフェクト画像を付加した合成画像を生成する。また、合成部507は、環境の輝度調整などを行うことにより、合成した画像の最終調整や品質調整を行ってもよい。例えば、選択されたエフェクトに合わせて、よりエフェクトを強調して表示する場合には、現実空間の画像を暗くするなどの調整を行うことができる。合成画像は出力部508に渡され、出力部508は、合成画像を表示部204に表示する。
各部はカメラ206によって継続的に取得される撮像画像に対して上述した一連の処理を周期的(例えば、30msec、60msec、90msecなどの周期)に実行してもよい。この場合、出力部508によって表示される画像は動画像となる。なお、付加されるエフェクトオブジェクトについても動的に変化するアニメーションとして表示されてもよい。この場合、生成するエフェクトごとに、周期的な処理に合わせてアニメーションを構成する連続的な複数の画像が予め保持されている。さらに、出力部508は、表示した合成画像(エフェクトのアニメーション)に合わせて、スピーカ207によって所定の音声を出力することも可能である。
<エフェクト合成における処理画像>
次に、図6を参照して、本実施形態に係るエフェクト合成の処理手順に応じた一連の処理画像について説明する。ここでは、図3に示すフィギュア301及び机302を含む情報処理端末101の周辺環境を撮像した撮像画像に対してエフェクトを合成する例について説明する。
次に、図6を参照して、本実施形態に係るエフェクト合成の処理手順に応じた一連の処理画像について説明する。ここでは、図3に示すフィギュア301及び机302を含む情報処理端末101の周辺環境を撮像した撮像画像に対してエフェクトを合成する例について説明する。
600はカメラ206によって撮像された撮像画像を示す。撮像画像600には机302に載置されたフィギュア301が含まれている。610は深度情報取得部502によって撮像画像600から得られた深度情報である、グレースケールの深度マップを示す。深度マップ610では、各画素において、白に近いほどカメラ206からの距離が近いことを示す。
620は、物体認識部503によって生成されるエフェクトオブジェクトに関連する少なくとも1つのパーツを学習済みモデル505を用いて認識している様子を示す。ここでは、例えばフィギュア301の頭部621及び胸部622の認識が行われている。このように、本実施形態によれば、撮像画像600に含まれるフィギュア301の全体を認識するのではなく、生成するエフェクトオブジェクトに関連する一部のパーツのみが認識される。
630は、620で認識されたパーツに基づいて、位置情報が決定されたエフェクトオブジェクト631のモデルを示す。ここでは、生成するエフェクトオブジェクト631の全体の位置情報が決定される。なお、エフェクトオブジェクト631のモデル情報を予め保持しているため、当該オブジェクトを描画するための姿勢やカメラ206からの距離に関する情報が含まれればよい。
640は合成されるエフェクトオブジェクト画像を示す。エフェクトオブジェクト画像640では、エフェクト描画部506が深度マップ610とエフェクトオブジェクトのモデル630とを用いて、撮像画像に合成するエフェクトオブジェクト641を描画する。エフェクトオブジェクト641は、エフェクトオブジェクトの全体を示すエフェクトオブジェクト631と比較すると、描画されていない部分が含まれる。これは、深度マップ610から得られる距離情報と、モデル630から得られるエフェクトオブジェクト631の距離情報とを比較し、撮像画像の対応画素よりも前面に位置する(つまり、カメラ206に近い)エフェクトオブジェクトのみを描画したためである。
650は、撮像画像600に対してエフェクトオブジェクト画像640を重畳した合成画像を示す。合成画像650は、エフェクトオブジェクト画像640が単に撮像画像600に対して重ね合わせて生成された画像である。しかしながら、合成画像650では、エフェクトオブジェクト631のうち、フィギュア301の画像部分に重複し、かつフィギュア301の背面に隠れる部分は描画されていないことが分かる。このように、本実施形態によれば、より立体感や臨場感を有するXRギミックを提供することができる。なお、本実施形態では、対象物に隠れるエフェクトの部分を描画することなく、前面に露出する部分のみを描画する。従って、一度描画したエフェクトオブジェクトをのうち、フィギュアとの位置関係に応じて隠れる部分を消去する制御と比較して、より処理負荷を低減した処理を実現でき、高速に処理を行うことができる。
<基本制御>
次に、図7を参照して、本実施形態に係るXRギミックを提供するアプリケーションにおける基本制御の処理手順を説明する。以下で説明する処理は、例えばCPU201が記憶部202に予め記憶されている制御プログラム等を読み出して実行することにより実現される。
次に、図7を参照して、本実施形態に係るXRギミックを提供するアプリケーションにおける基本制御の処理手順を説明する。以下で説明する処理は、例えばCPU201が記憶部202に予め記憶されている制御プログラム等を読み出して実行することにより実現される。
まずS101でCPU201は、本実施形態に係るXRギミックを提供するアプリケーションが起動されると、メニューを選択可能に表示する画面400を表示部204に表示する。続いて、S102でCPU201は、画面400や当該画面400から遷移する設定画面(不図示)等を介して、ユーザ操作に応じて選択された情報を取得する。ここでの選択情報には、例えばカメラ206で撮像して表示する所定の模型に関する情報が含まれる。CPU201は、選択された情報に応じてカメラ206による撮像を開始させる。撮像画像は、画面410に示すように、表示部204に表示される。
次に、S103でCPU201は、ボタン412を介してエフェクト出力が選択されたかどうかを判断する。選択された場合は処理をS106へ進め、そうでない場合は処理をS104へ進める。S104でCPU201は、カメラ206によって撮像された撮像画像を取得してS104で表示部204へ表示し、処理をS107へ進める。一方、S106でCPU201は、撮像画像にエフェクトを合成して出力し、処理をS107へ進める。S106の詳細な処理については図8を用いて後述する。S107でCPU201は、映像の出力を終了するか否かを判断し、終了しない場合は処理をS103に戻し、終了する場合は本フローチャートの処理を終了する。例えば、ボタン413を介して画面400に戻る指示が行われた場合や、当該アプリケーションが終了された場合に、CPU201は映像の出力を終了すると判断して、カメラ206の起動を停止する。
<エフェクト合成出力制御>
次に、図8を参照して、本実施形態に係るエフェクト合成出力(S106)の処理手順について説明する。以下で説明する処理は、例えばCPU201が記憶部202に予め記憶されている制御プログラム等を読み出して実行することにより実現される。
次に、図8を参照して、本実施形態に係るエフェクト合成出力(S106)の処理手順について説明する。以下で説明する処理は、例えばCPU201が記憶部202に予め記憶されている制御プログラム等を読み出して実行することにより実現される。
まずS201でCPU201は、ボタン412を介して選択されたエフェクト情報を取得する。エフェクト情報には、生成するエフェクトを識別するための識別情報や、当該エフェクトが関連する少なくとも1つのパーツの情報等を含む。これらの情報はアプリケーションサーバ102から受信して記憶部202に予め記憶されている情報である。続いて、S202でCPU201は、カメラ206によって撮像された処理対象の撮像画像を取得する。
次に、S203でCPU201は、深度情報取得部502によって、S201で取得した撮像画像の深度マップを取得する。また、S204でCPU201は、S201で取得した撮像画像を学習済みモデル505に入力し、撮像画像に含まれる模型(ここでは、フィギュア301)についてS201で取得したエフェクトに関連する少なくとも1つのパーツの物体認識を行う。物体認識の詳細な制御については図9を用いて後述する。物体認識が行われると、S205でCPU201は、S204で認識された少なくとも1つのパーツの姿勢及び距離に関する情報に基づいて、生成するエフェクトの位置情報を決定する。位置情報には、上述したように、エフェクト画像を生成するための情報として、生成するエフェクトの姿勢(角度)及びカメラ206からの距離に関する情報が含まれる。なお、S203と、S204及びS205との処理順序は説明を容易にするために順序付けて説明したが、深度マップを取得する処理と、エフェクトオブジェクトの位置決定を行う処理とは逆の順序で行われてもよく、並行して行われるものであってよい。
次に、S206でCPU201は、S203で取得された深度マップと、S205で決定されたエフェクトオブジェクトの位置情報とに基づいてエフェクトオブジェクトの画像を生成する。エフェクトオブジェクトの画像の生成制御については図10を用いて後述する。続いて、S207でCPU201は、S202で取得した撮像画像に対して、S206で生成したエフェクトオブジェクト画像を重畳して合成する。その後、S208でCPU201は、合成画像を表示部204に表示するとともに、必要に応じてスピーカ207から音声を出力し、本フローチャートの処理を終了する。
<物体認識制御>
次に、図9を参照して、本実施形態に係る物体認識(S204)の処理手順について説明する。以下で説明する処理は、例えばCPU201が記憶部202に予め記憶されている制御プログラム等を読み出して実行することにより実現される。
次に、図9を参照して、本実施形態に係る物体認識(S204)の処理手順について説明する。以下で説明する処理は、例えばCPU201が記憶部202に予め記憶されている制御プログラム等を読み出して実行することにより実現される。
まずS301でCPU201は、S201で取得したエフェクト情報に基づいて、生成するエフェクトに関連するパーツを特定する。例えば図4や図6で説明したXRギミックの例では、フィギュア301の頭部及び胸部をエフェクトに関連するパーツとして特定する。続いて、S302でCPU201は、S301で特定した少なくとも1つのパーツについて、学習済みモデル505を用いて撮像画像に含まれる当該パーツを認識する。
次に、S303でCPU201は、学習済みモデル505の出力結果から、認識したパーツの形状、角度、及び距離に関する情報を取得する。その後、S304でCPU201は、S301で特定されたパーツのうち、未解析のパーツがあるかどうかを判断する。未解析のパーツがあれば、処理をS302に戻し、未解析のパーツが無ければ本フローチャートの処理を終了する。
<エフェクトオブジェクトの生成制御>
次に、図10を参照して、本実施形態に係るエフェクトオブジェクト生成(S206)の処理手順について説明する。以下で説明する処理は、例えばCPU201が記憶部202に予め記憶されている制御プログラム等を読み出して実行することにより実現される。
次に、図10を参照して、本実施形態に係るエフェクトオブジェクト生成(S206)の処理手順について説明する。以下で説明する処理は、例えばCPU201が記憶部202に予め記憶されている制御プログラム等を読み出して実行することにより実現される。
まずS401でCPU201は、S205で決定されたエフェクトオブジェクトの位置情報と、予め保持している生成するエフェクトオブジェクトのモデル情報とに基づいて、生成するエフェクトオブジェクトの画素位置xを初期化する。ここではエフェクトオブジェクトの全画素について後述する処理を実施するため、例えば初期値としてエフェクトオブジェクトの左上の画素位置を画素位置xとして設定する。
次にS402でCPU201は、エフェクトオブジェクトの処理対象の画素位置xと、対応する撮像画像の画素位置yとのそれぞれの距離情報を比較する。続いて、S403でCPU201は、比較の結果、エフェクトオブジェクトの方が前方に位置するかどうか(カメラ206に近いかどうか)を判断する。エフェクトオブジェクトが前方であればS404に進み、そうでなければS405へ進む。S404でCPU201は、対応画素のエフェクトオブジェクトを描画し、S405に進む。S405でCPU201は、エフェクトオブジェクトの全ての画素について、対応する撮像画像の画素と比較したかどうかを判断する。全ての画素について処理が終了すると、本フローチャートの処理を終了し、そうでない場合は処理を402へ戻す。
以上説明したように、本実施形態に係る情報処理端末は、所定の模型を含む周辺環境を撮像し、撮像された撮像画像の各画素について、カメラからの距離情報を取得する。また、本情報処理端末は、撮像画像に含まれる所定の模型の少なくとも1つのパーツの姿勢及びカメラからの距離に関する情報を認識し、認識した少なくとも1つのパーツを基準に、生成するオブジェクトの位置情報を決定する。さらに、本情報処理端末は、生成するオブジェクトの各画素のうち、それぞれの位置情報が撮像画像の対応する画素の距離情報よりもカメラに近いことを示す画素をオブジェクトとして描画し、オブジェクト画像を生成し、撮像画像にオブジェクト画像を重畳した合成画像を表示部に出力する。一方、本情報処理端末は、生成するオブジェクトの各画素のうち、それぞれの位置情報が撮像画像の対応する画素の距離情報よりもカメラに近いことを示さない画素については描画しない。つまり、本実施形態によれば、合成するエフェクトオブジェクトのうち、所定物よりも前方に位置する部分については描画し、所定物よりも後方に位置する部分については所定物に隠れるため描画しない。このように、本発明は現実空間の撮像画像に好適にオブジェクトを合成して出力することができる。
<第2の実施形態>
以下では本発明の第2の実施形態について説明する。上記第1の実施形態では物体認識(S204)において、エフェクトオブジェクトを生成するための基準位置を認識すべく、少なくとも1つのパーツを認識する制御について説明した。また、上記実施形態では、エフェクトオブジェクトの描画については撮像画像から生成したデプスマップを用いてエフェクトオブジェクトの位置と、撮像画像の各画素の位置とを比較して描画の有無を制御する例について説明した。
以下では本発明の第2の実施形態について説明する。上記第1の実施形態では物体認識(S204)において、エフェクトオブジェクトを生成するための基準位置を認識すべく、少なくとも1つのパーツを認識する制御について説明した。また、上記実施形態では、エフェクトオブジェクトの描画については撮像画像から生成したデプスマップを用いてエフェクトオブジェクトの位置と、撮像画像の各画素の位置とを比較して描画の有無を制御する例について説明した。
しかしながら、デプスマップの精度は、カメラの性能や光量等の撮像時の環境条件に応じて変動するものである。そこで、本実施形態では、物体認識(S204)において、上記少なくとも1つのパーツの認識に加えて、対象模型のボーン構造を構築して、デプスマップを補完する制御について説明する。また、構築したボーン構造を利用することにより、対象模型の姿勢を判定することができ、判定した姿勢に応じてエフェクトオブジェクトを動的に変化させることができる。詳細については後述する。
<ボーン構造>
まず図11を参照して、本実施形態に係る模型のボーン構造について説明する。1100は、撮像画像に含まれる所定の模型であるフィギュアのボーン構造を示す。1100では撮像画像に含まれるフィギュア301及び机302は点線で示す。
まず図11を参照して、本実施形態に係る模型のボーン構造について説明する。1100は、撮像画像に含まれる所定の模型であるフィギュアのボーン構造を示す。1100では撮像画像に含まれるフィギュア301及び机302は点線で示す。
図11に示す1101などの黒丸は、フィギュア301の特徴点を示す。これらの特徴点はフィギュアの大まかなアウトラインを生成するための点であり、その数や位置を限定する意図はない。1102は各特徴点を連結したボーン構造を示す。図11に示すボーン構造1102は、フィギュア301の基準ボーン構造を示す。基準ボーン構造とは、所定の模型の基準姿勢から得られるボーン構造であり、模型ごとに予め用意されているデータである。基準ボーン構造は、例えば対象模型の3次元データから、ポリゴン数を軽減した大まかなアウトラインからなる三次元データから得ることができる。
上記第1の実施形態では出力するエフェクトに関連のある少なくとも1つのパーツを認識したが、本実施形態では対象模型に含まれる各パーツの認識を行う。例えば、認識するパーツには顔、胸、腹、腰、両腕、及び両脚が含まれてもよい。また、本実施形態では、撮像画像から認識されるパーツの角度に従って、基準ボーン構造を更新する。従って、更新したボーン構造は、撮像画像に含まれる対象模型の姿勢を示すこととなる。さらに、更新したボーン構造を撮像画像にマッピングことにより、撮像画像中における対応するボーン構造の位置付近においては、対象模型が撮像されていることを示す領域として判定することができる。
<物体認識(ボーン構築を含む)>
次に、図12を参照して、本実施形態に係る物体認識(S204)の処理手順について説明する。以下で説明する処理は、例えばCPU201が記憶部202に予め記憶されている制御プログラム等を読み出して実行することにより実現される。なお、ここでは、上記第1の実施形態で説明した図9のフローチャートと異なる処理について説明し、同様の処理手については同一のステップ番号を付し、説明を省略する。
次に、図12を参照して、本実施形態に係る物体認識(S204)の処理手順について説明する。以下で説明する処理は、例えばCPU201が記憶部202に予め記憶されている制御プログラム等を読み出して実行することにより実現される。なお、ここでは、上記第1の実施形態で説明した図9のフローチャートと異なる処理について説明し、同様の処理手については同一のステップ番号を付し、説明を省略する。
まずS501でCPU201は、対象模型(ここではフィギュア301)の基準ボーン構造を含む三次元データを取得する。当該データは、アプリケーションをインストールした際に記憶部202に予め記憶される情報である。ここでは、例えばフィギュア301の基準ボーン構造1102を含む三次元データが記憶部202から読み出される。続いて、S502でCPU201は、対象模型であるフィギュア301の情報に基づいて、認識するパーツを特定する。ここでは、上記第1の実施形態におけるS301とは異なり、選択されたエフェクトに関連するパーツを特定するのではなく、ボーン構造を更新するために必要なパーツを特定する。なお、基本的には、フィギュア301に含まれる各パーツを特定する。
その後、S303及びS304で各パーツを認識すると、S503でCPU201は、認識したパーツ(姿勢及びカメラ206からの距離に関する情報)に従って、S501で取得した基準ボーン構造の対応する部分を更新する。具体的には、CPU201は、認識したパーツと、基準ボーン構造を含む三次元データ上の対応する部分とを照合し、当該認識したパーツの角度に合わせるように特徴点の位置を調整して基準ボーン構造を更新する。その後、S304でCPU201は、S502で特定されたパーツのうち、未解析のパーツがあるかどうかを判断する。未解析のパーツがあれば、処理をS302に戻し、未解析のパーツが無ければS504に進む。
S504でCPU201は、更新された基準ボーン構造から対象模型の姿勢を判定し、本フローチャートの処理を終了する。対象模型の姿勢の判定は、例えば人体の姿勢を機械学習させた学習済みモデルを用いて、更新した基準ボーン構造の姿勢を推定することにより行ってもよい。
本実施形態によれば、推定した対象模型の姿勢に応じて出力するエフェクトを変化させることができる。例えば、対象模型の姿勢が所定の姿勢を示す場合にのみ特定のエフェクトを出力するようにしてもよい。一例として、推定した姿勢が当該フィギュアの変身ポーズを示す場合には、例えばベルトの部分を発光させ、回転させるようなエフェクトを出力してもよい。また、フィギュア全体の姿勢を認識しているため、腰から胴体、肩を通って上腕、下腕、拳という順序で各パーツに対して連続して点滅等を示すエフェクトを付与してもよい。
また、本実施形態によれば、更新したボーン構造を含む三次元データをデプスマップを補完するために利用してもよい。カメラの性能や撮像時の環境条件に応じて、デプスマップを用いたエフェクトオブジェクトの生成制御に加えて、上記三次元データを用いてデプスマップ(即ち、撮像画像)上の対象模型の位置を特定してもよい。デプスマップ上での対象模型の位置が特定できれば、対応する画素と重複するエフェクトオブジェクトの画素を描画するかどうか判定するのみでよく、デプスマップの精度が良くない場合に補完的に利用することができるとともに、対象模型と重複する画素のみについて上記S402の比較処理を行うだけでよく、処理負荷を低減することもできる。
以上説明したように、本実施形態に係る情報処理端末は、さらに、所定の模型に含まれる各パーツの姿勢及びカメラからの距離に関する情報を認識し、所定の模型の基準姿勢を示す基準ボーン構造を含む三次元データを、認識した各パーツに従って更新し、更新した三次元データに基づいて所定の模型の姿勢を認識する。このように、本実施形態によれば、撮像画像から各パーツを認識して予め用意した基準ボーン構造を更新して、撮像画像に含まれるフィギュアの姿勢を判定することができる。これにより、生成するオブジェクトを、認識した所定の模型の姿勢に合わせて変化させることができる。また、更新された三次元データから特定される、撮像画像における所定の模型の位置に基づいて、オブジェクト画像を生成することができる。よって、デプスマットの精度が低い場合において、エフェクトオブジェクトの生成を好適に補完することができる。
<変形例>
本発明は上記実施形態に制限されるものではなく、発明の要旨の範囲内で、種々の変形・変更が可能である。上記実施形態では、所定の模型であるフィギュア301に対して、当該フィギュアの体を囲むような3つの輪をエフェクトオブジェクトとして合成して出力する例について説明した。このように、フィギュア301には実際には含まれないオブジェクトを合成して出力する例について説明したが、本発明はこれに限定されない。例えば、フィギュアが物理的に有する部分に対してエフェクトを合成して出力するようにしてもよい。
本発明は上記実施形態に制限されるものではなく、発明の要旨の範囲内で、種々の変形・変更が可能である。上記実施形態では、所定の模型であるフィギュア301に対して、当該フィギュアの体を囲むような3つの輪をエフェクトオブジェクトとして合成して出力する例について説明した。このように、フィギュア301には実際には含まれないオブジェクトを合成して出力する例について説明したが、本発明はこれに限定されない。例えば、フィギュアが物理的に有する部分に対してエフェクトを合成して出力するようにしてもよい。
図13は、変形例となるフィギュア1101が机302に載置され、情報処理端末101で撮影している様子を示す。フィギュア1101は、フィギュア301と同様の本体部分に加えて、例えば炎を示す物理的なオブジェクト1102を備える。本発明によれば、このような物理的に存在する部分に対してエフェクトを合成して出力するようにしてもよい。例えば、図13の例では、炎の揺らめきや火の粉などを付加して出力するようにしてもよい。また、本発明によれば、フィギュアの撮像した顔に対して、異なる表情、例えば笑顔や泣き顔などの表情を付加したり、視線をカメラ方向に向けるよう変更した画像を合成して出力してもよい。なお、本発明によれば、撮像画像からフィギュアの少なくとも1つパーツを認識して、当該認識したパーツを基準にして生成可能なエフェクトであれば任意のエフェクトを付加することができる。
また、本実施形態では、対象の模型として人型の模型を例に説明したが、本発明を限定する意図はない、例えば、人、動物、ロボット、昆虫、恐竜等、様々な形状の模型に適用することができる。いずれの場合においても、上記実施形態で説明したように、複数のパーツに分割して認識することにより、リアルタイム性を保証しつつ、拡張現実を提供することができる。
<実施形態のまとめ>
上記実施形態は以下のコンピュータプログラム、情報処理端末及びその制御方法を少なくとも開示する。
上記実施形態は以下のコンピュータプログラム、情報処理端末及びその制御方法を少なくとも開示する。
(1)情報処理端末のコンピュータを、
所定の模型を含む周辺環境を撮像する撮像手段と、
前記撮像手段によって撮像された撮像画像の各画素について、前記撮像手段からの距離情報を取得する取得手段と、
前記撮像画像に含まれる前記所定の模型の少なくとも1つのパーツの姿勢及び前記撮像手段からの距離に関する情報を認識する認識手段と、
前記認識手段によって認識した前記少なくとも1つのパーツを基準に、生成するオブジェクトの位置情報を決定する位置決定手段と、
前記生成するオブジェクトの各画素のうち、それぞれの位置情報が前記撮像画像の対応する画素の距離情報よりも前記撮像手段に近いことを示す画素をオブジェクトとして描画し、オブジェクト画像を生成するオブジェクト生成手段と、
前記撮像画像に前記オブジェクト画像を重畳した合成画像を表示部に出力する出力手段と、
として機能させることを特徴とするコンピュータプログラム。
所定の模型を含む周辺環境を撮像する撮像手段と、
前記撮像手段によって撮像された撮像画像の各画素について、前記撮像手段からの距離情報を取得する取得手段と、
前記撮像画像に含まれる前記所定の模型の少なくとも1つのパーツの姿勢及び前記撮像手段からの距離に関する情報を認識する認識手段と、
前記認識手段によって認識した前記少なくとも1つのパーツを基準に、生成するオブジェクトの位置情報を決定する位置決定手段と、
前記生成するオブジェクトの各画素のうち、それぞれの位置情報が前記撮像画像の対応する画素の距離情報よりも前記撮像手段に近いことを示す画素をオブジェクトとして描画し、オブジェクト画像を生成するオブジェクト生成手段と、
前記撮像画像に前記オブジェクト画像を重畳した合成画像を表示部に出力する出力手段と、
として機能させることを特徴とするコンピュータプログラム。
(2)前記オブジェクト生成手段は、前記生成するオブジェクトの各画素のうち、それぞれの位置情報が前記撮像画像の対応する画素の距離情報よりも前記撮像手段に近いことを示さない画素については描画しないことを特徴とする(1)に記載のコンピュータプログラム。
(3)前記情報処理端末のコンピュータを、さらに、前記所定の模型を含む撮像画像に対して合成するエフェクトを選択する選択手段として機能させ、
前記認識手段は、前記選択されたエフェクトに関連するパーツを認識することを特徴とする(1)又は(2)に記載のコンピュータプログラム。
前記認識手段は、前記選択されたエフェクトに関連するパーツを認識することを特徴とする(1)又は(2)に記載のコンピュータプログラム。
(4)前記認識手段は、撮像画像を入力とし、前記所定の模型のパーツごとに形状、角度、及び距離に関する情報を出力するように学習させた学習済みモデルを用いて、前記選択されたエフェクトに関連するパーツを認識することを特徴とする(3)に記載のコンピュータプログラム。
(5)前記オブジェクト生成手段は、前記選択手段によって選択されたエフェクトに対応する、予め記憶されているオブジェクトのモデル情報に基づいて、前記オブジェクト画像を生成することを特徴とする(2)又は(3)に記載のコンピュータプログラム。
(6)前記位置決定手段は、前記少なくとも1つのパーツの姿勢及び前記撮像手段からの距離に関する情報に基づいて、前記生成するオブジェクトの角度及び距離に関する情報を含む前記位置情報を決定することを特徴とする(1)乃至(5)の何れか1つに記載のコンピュータプログラム。
(7)前記所定の模型の前記少なくとも1つのパーツとは、頭部、胸部、腹部、腰部、腕部、及び脚部の少なくとも1つであることを特徴とする(3)乃至(5)の何れか1つに記載のコンピュータプログラム。
(8)前記選択されたエフェクトに関連するパーツとは、前記生成するオブジェクトの近傍に位置するパーツであることを特徴とする(7)に記載のコンピュータプログラム。
(9)前記取得手段は、前記撮像画像の各画素についての前記距離情報として、深度情報を示すグレースケールの深度マップを取得することを特徴とする(1)乃至(8)の何れか1つに記載のコンピュータプログラム。
(10)前記認識手段は、さらに、前記所定の模型に含まれる各パーツの姿勢及び前記撮像手段からの距離に関する情報を認識し、前記所定の模型の基準姿勢を示す基準ボーン構造を含む三次元データを、認識した各パーツに従って更新し、更新した前記三次元データに基づいて前記所定の模型の姿勢を認識することを特徴とする(1)乃至(9)の何れか1つに記載のコンピュータプログラム。
(11)前記オブジェクト生成手段によって生成されるオブジェクトは、認識された前記所定の模型の姿勢に合わせて変化することを特徴とする(10)に記載のコンピュータプログラム。
(12)前記オブジェクト生成手段は、前記更新された三次元データから特定される、前記撮像画像における前記所定の模型の位置に基づいて、前記オブジェクト画像を生成することを特徴とする(10)又は(11)に記載のコンピュータプログラム。
(13)前記撮像手段は前記所定の模型を含む周辺環境を継続的に撮像し、
前記取得手段、前記認識手段、前記オブジェクト生成手段、及び前記出力手段は、前記撮像手段によって撮像された撮像画像に基づいて周期的に処理を実行し、
前記出力手段は、前記撮像手段によって継続的に撮像された映像に、動的に変化するアニメーションとして前記オブジェクトを合成して出力することを特徴とする(1)乃至(12)の何れか1つに記載のコンピュータプログラム。
前記取得手段、前記認識手段、前記オブジェクト生成手段、及び前記出力手段は、前記撮像手段によって撮像された撮像画像に基づいて周期的に処理を実行し、
前記出力手段は、前記撮像手段によって継続的に撮像された映像に、動的に変化するアニメーションとして前記オブジェクトを合成して出力することを特徴とする(1)乃至(12)の何れか1つに記載のコンピュータプログラム。
(14)情報処理端末であって、
所定の模型を含む周辺環境を撮像する撮像手段と、
前記撮像手段によって撮像された撮像画像の各画素について、前記撮像手段からの距離情報を取得する取得手段と、
前記撮像画像に含まれる前記所定の模型の少なくとも1つのパーツの姿勢及び前記撮像手段からの距離に関する情報を認識する認識手段と、
前記認識手段によって認識した前記少なくとも1つのパーツを基準に、生成するオブジェクトの位置情報を決定する位置決定手段と、
前記生成するオブジェクトの各画素のうち、それぞれの位置情報が前記撮像画像の対応する画素の距離情報よりも前記撮像手段に近いことを示す画素をオブジェクトとして描画し、オブジェクト画像を生成するオブジェクト生成手段と、
前記撮像画像に前記オブジェクト画像を重畳した合成画像を表示部に出力する出力手段と
を備えることを特徴とする情報処理端末。
所定の模型を含む周辺環境を撮像する撮像手段と、
前記撮像手段によって撮像された撮像画像の各画素について、前記撮像手段からの距離情報を取得する取得手段と、
前記撮像画像に含まれる前記所定の模型の少なくとも1つのパーツの姿勢及び前記撮像手段からの距離に関する情報を認識する認識手段と、
前記認識手段によって認識した前記少なくとも1つのパーツを基準に、生成するオブジェクトの位置情報を決定する位置決定手段と、
前記生成するオブジェクトの各画素のうち、それぞれの位置情報が前記撮像画像の対応する画素の距離情報よりも前記撮像手段に近いことを示す画素をオブジェクトとして描画し、オブジェクト画像を生成するオブジェクト生成手段と、
前記撮像画像に前記オブジェクト画像を重畳した合成画像を表示部に出力する出力手段と
を備えることを特徴とする情報処理端末。
(15)情報処理端末の制御方法であって、
所定の模型を含む周辺環境を撮像手段によって撮像する撮像工程と、
前記撮像工程で撮像された撮像画像の各画素について、前記撮像手段からの距離情報を取得する取得工程と、
前記撮像画像に含まれる前記所定の模型の少なくとも1つのパーツの姿勢及び前記撮像手段からの距離に関する情報を認識する認識工程と、
前記認識工程で認識した前記少なくとも1つのパーツを基準に、生成するオブジェクトの位置情報を決定する位置決定工程と、
前記生成するオブジェクトの各画素のうち、それぞれの位置情報が前記撮像画像の対応する画素の距離情報よりも前記撮像手段に近いことを示す画素をオブジェクトとして描画し、オブジェクト画像を生成するオブジェクト生成工程と、
前記撮像画像に前記オブジェクト画像を重畳した合成画像を表示部に出力する出力工程と
を含むことを特徴とする情報処理端末の制御方法。
所定の模型を含む周辺環境を撮像手段によって撮像する撮像工程と、
前記撮像工程で撮像された撮像画像の各画素について、前記撮像手段からの距離情報を取得する取得工程と、
前記撮像画像に含まれる前記所定の模型の少なくとも1つのパーツの姿勢及び前記撮像手段からの距離に関する情報を認識する認識工程と、
前記認識工程で認識した前記少なくとも1つのパーツを基準に、生成するオブジェクトの位置情報を決定する位置決定工程と、
前記生成するオブジェクトの各画素のうち、それぞれの位置情報が前記撮像画像の対応する画素の距離情報よりも前記撮像手段に近いことを示す画素をオブジェクトとして描画し、オブジェクト画像を生成するオブジェクト生成工程と、
前記撮像画像に前記オブジェクト画像を重畳した合成画像を表示部に出力する出力工程と
を含むことを特徴とする情報処理端末の制御方法。
101:情報処理端末、102:アプリケーションサーバ、103:機械学習サーバ、104:データベース、105:ネットワーク、201:CPU、202:記憶部、203:通信制御部、204:表示部、205:操作部、206:カメラ、207:スピーカ、210:システムバス:301:フィギュア、302:机、501:画像取得部、502:深度情報取得部、503:物体認識部、504:エフェクト位置決定部、505:学習済みモデル、506:エフェクト描画部、507:合成部:508:出力部
Claims (15)
- 情報処理端末のコンピュータを、
所定の模型を含む周辺環境を撮像する撮像手段と、
前記撮像手段によって撮像された撮像画像の各画素について、前記撮像手段からの距離情報を取得する取得手段と、
前記撮像画像に含まれる前記所定の模型の少なくとも1つのパーツの姿勢及び前記撮像手段からの距離に関する情報を認識する認識手段と、
前記認識手段によって認識した前記少なくとも1つのパーツを基準に、生成するオブジェクトの位置情報を決定する位置決定手段と、
前記生成するオブジェクトの各画素のうち、それぞれの位置情報が前記撮像画像の対応する画素の距離情報よりも前記撮像手段に近いことを示す画素をオブジェクトとして描画し、オブジェクト画像を生成するオブジェクト生成手段と、
前記撮像画像に前記オブジェクト画像を重畳した合成画像を表示部に出力する出力手段と、
として機能させることを特徴とするコンピュータプログラム。 - 前記オブジェクト生成手段は、前記生成するオブジェクトの各画素のうち、それぞれの位置情報が前記撮像画像の対応する画素の距離情報よりも前記撮像手段に近いことを示さない画素については描画しないことを特徴とする請求項1に記載のコンピュータプログラム。
- 前記情報処理端末のコンピュータを、さらに、前記所定の模型を含む撮像画像に対して合成するエフェクトを選択する選択手段として機能させ、
前記認識手段は、前記選択されたエフェクトに関連するパーツを認識することを特徴とする請求項2に記載のコンピュータプログラム。 - 前記認識手段は、撮像画像を入力とし、前記所定の模型のパーツごとに形状、角度、及び距離に関する情報を出力するように学習させた学習済みモデルを用いて、前記選択されたエフェクトに関連するパーツを認識することを特徴とする請求項3に記載のコンピュータプログラム。
- 前記オブジェクト生成手段は、前記選択手段によって選択されたエフェクトに対応する、予め記憶されているオブジェクトのモデル情報に基づいて、前記オブジェクト画像を生成することを特徴とする請求項3に記載のコンピュータプログラム。
- 前記位置決定手段は、前記少なくとも1つのパーツの姿勢及び前記撮像手段からの距離に関する情報に基づいて、前記生成するオブジェクトの角度及び距離に関する情報を含む前記位置情報を決定することを特徴とする請求項1に記載のコンピュータプログラム。
- 前記所定の模型の前記少なくとも1つのパーツとは、頭部、胸部、腹部、腰部、腕部、及び脚部の少なくとも1つであることを特徴とする請求項3に記載のコンピュータプログラム。
- 前記選択されたエフェクトに関連するパーツとは、前記生成するオブジェクトの近傍に位置するパーツであることを特徴とする請求項7に記載のコンピュータプログラム。
- 前記取得手段は、前記撮像画像の各画素についての前記距離情報として、深度情報を示すグレースケールの深度マップを取得することを特徴とする請求項1に記載のコンピュータプログラム。
- 前記認識手段は、さらに、前記所定の模型に含まれる各パーツの姿勢及び前記撮像手段からの距離に関する情報を認識し、前記所定の模型の基準姿勢を示す基準ボーン構造を含む三次元データを、認識した各パーツに従って更新し、更新した前記三次元データに基づいて前記所定の模型の姿勢を認識することを特徴とする請求項1に記載のコンピュータプログラム。
- 前記オブジェクト生成手段によって生成されるオブジェクトは、認識された前記所定の模型の姿勢に合わせて変化することを特徴とする請求項10に記載のコンピュータプログラム。
- 前記オブジェクト生成手段は、前記更新された三次元データから特定される、前記撮像画像における前記所定の模型の位置に基づいて、前記オブジェクト画像を生成することを特徴とする請求項10に記載のコンピュータプログラム。
- 前記撮像手段は前記所定の模型を含む周辺環境を継続的に撮像し、
前記取得手段、前記認識手段、前記オブジェクト生成手段、及び前記出力手段は、前記撮像手段によって撮像された撮像画像に基づいて周期的に処理を実行し、
前記出力手段は、前記撮像手段によって継続的に撮像された映像に、動的に変化するアニメーションとして前記オブジェクトを合成して出力することを特徴とする請求項1乃至12の何れか1項に記載のコンピュータプログラム。 - 情報処理端末であって、
所定の模型を含む周辺環境を撮像する撮像手段と、
前記撮像手段によって撮像された撮像画像の各画素について、前記撮像手段からの距離情報を取得する取得手段と、
前記撮像画像に含まれる前記所定の模型の少なくとも1つのパーツの姿勢及び前記撮像手段からの距離に関する情報を認識する認識手段と、
前記認識手段によって認識した前記少なくとも1つのパーツを基準に、生成するオブジェクトの位置情報を決定する位置決定手段と、
前記生成するオブジェクトの各画素のうち、それぞれの位置情報が前記撮像画像の対応する画素の距離情報よりも前記撮像手段に近いことを示す画素をオブジェクトとして描画し、オブジェクト画像を生成するオブジェクト生成手段と、
前記撮像画像に前記オブジェクト画像を重畳した合成画像を表示部に出力する出力手段と
を備えることを特徴とする情報処理端末。 - 情報処理端末の制御方法であって、
所定の模型を含む周辺環境を撮像手段によって撮像する撮像工程と、
前記撮像工程で撮像された撮像画像の各画素について、前記撮像手段からの距離情報を取得する取得工程と、
前記撮像画像に含まれる前記所定の模型の少なくとも1つのパーツの姿勢及び前記撮像手段からの距離に関する情報を認識する認識工程と、
前記認識工程で認識した前記少なくとも1つのパーツを基準に、生成するオブジェクトの位置情報を決定する位置決定工程と、
前記生成するオブジェクトの各画素のうち、それぞれの位置情報が前記撮像画像の対応する画素の距離情報よりも前記撮像手段に近いことを示す画素をオブジェクトとして描画し、オブジェクト画像を生成するオブジェクト生成工程と、
前記撮像画像に前記オブジェクト画像を重畳した合成画像を表示部に出力する出力工程と
を含むことを特徴とする情報処理端末の制御方法。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2022182029A JP7441289B1 (ja) | 2022-11-14 | 2022-11-14 | コンピュータプログラム、情報処理端末、及びその制御方法 |
PCT/JP2023/040545 WO2024106328A1 (ja) | 2022-11-14 | 2023-11-10 | コンピュータプログラム、情報処理端末、及びその制御方法 |
JP2024021428A JP2024071379A (ja) | 2022-11-14 | 2024-02-15 | コンピュータプログラム、情報処理端末、及びその制御方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2022182029A JP7441289B1 (ja) | 2022-11-14 | 2022-11-14 | コンピュータプログラム、情報処理端末、及びその制御方法 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2024021428A Division JP2024071379A (ja) | 2022-11-14 | 2024-02-15 | コンピュータプログラム、情報処理端末、及びその制御方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP7441289B1 true JP7441289B1 (ja) | 2024-02-29 |
JP2024071199A JP2024071199A (ja) | 2024-05-24 |
Family
ID=90011331
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2022182029A Active JP7441289B1 (ja) | 2022-11-14 | 2022-11-14 | コンピュータプログラム、情報処理端末、及びその制御方法 |
JP2024021428A Pending JP2024071379A (ja) | 2022-11-14 | 2024-02-15 | コンピュータプログラム、情報処理端末、及びその制御方法 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2024021428A Pending JP2024071379A (ja) | 2022-11-14 | 2024-02-15 | コンピュータプログラム、情報処理端末、及びその制御方法 |
Country Status (2)
Country | Link |
---|---|
JP (2) | JP7441289B1 (ja) |
WO (1) | WO2024106328A1 (ja) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5551205B2 (ja) | 2012-04-26 | 2014-07-16 | 株式会社バンダイ | 携帯端末装置、端末プログラム、拡張現実感システム、および玩具 |
JP2019179481A (ja) | 2018-03-30 | 2019-10-17 | 株式会社バンダイ | コンピュータプログラム、携帯端末装置 |
JP2021033963A (ja) | 2019-08-29 | 2021-03-01 | 株式会社Sally127 | 情報処理装置、表示制御方法および表示制御プログラム |
JP2021128542A (ja) | 2020-02-13 | 2021-09-02 | エヌエイチエヌ コーポレーション | 情報処理プログラムおよび情報処理システム |
-
2022
- 2022-11-14 JP JP2022182029A patent/JP7441289B1/ja active Active
-
2023
- 2023-11-10 WO PCT/JP2023/040545 patent/WO2024106328A1/ja unknown
-
2024
- 2024-02-15 JP JP2024021428A patent/JP2024071379A/ja active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5551205B2 (ja) | 2012-04-26 | 2014-07-16 | 株式会社バンダイ | 携帯端末装置、端末プログラム、拡張現実感システム、および玩具 |
JP2019179481A (ja) | 2018-03-30 | 2019-10-17 | 株式会社バンダイ | コンピュータプログラム、携帯端末装置 |
JP2021033963A (ja) | 2019-08-29 | 2021-03-01 | 株式会社Sally127 | 情報処理装置、表示制御方法および表示制御プログラム |
JP2021128542A (ja) | 2020-02-13 | 2021-09-02 | エヌエイチエヌ コーポレーション | 情報処理プログラムおよび情報処理システム |
Also Published As
Publication number | Publication date |
---|---|
JP2024071199A (ja) | 2024-05-24 |
JP2024071379A (ja) | 2024-05-24 |
WO2024106328A1 (ja) | 2024-05-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5898842B2 (ja) | 携帯型情報処理装置、携帯型ゲーム装置 | |
JP2019510321A (ja) | 仮想現実用パススルーカメラのユーザインターフェイス要素 | |
JP2014238731A (ja) | 画像処理装置、画像処理システム、および画像処理方法 | |
EP2105905A2 (en) | Image generation apparatus | |
US9274606B2 (en) | NUI video conference controls | |
AU2021290132B2 (en) | Presenting avatars in three-dimensional environments | |
KR101763636B1 (ko) | 헤드 마운트 디스플레이를 이용한 협업 방법 | |
CN114049459A (zh) | 移动装置、信息处理方法以及非暂态计算机可读介质 | |
JP2011258159A (ja) | プログラム、情報記憶媒体及び画像生成システム | |
CN112581571B (zh) | 虚拟形象模型的控制方法、装置、电子设备及存储介质 | |
US11778283B2 (en) | Video distribution system for live distributing video containing animation of character object generated based on motion of actors | |
CN111798548B (zh) | 舞蹈画面的控制方法、装置及计算机存储介质 | |
JP2018147151A (ja) | 端末装置およびその制御方法、並びにプログラム | |
JP7441289B1 (ja) | コンピュータプログラム、情報処理端末、及びその制御方法 | |
US20220405996A1 (en) | Program, information processing apparatus, and information processing method | |
JP6982203B2 (ja) | キャラクタ画像生成装置、キャラクタ画像生成方法及びプログラム | |
WO2020188721A1 (ja) | ヘッドマウント情報処理装置およびヘッドマウントディスプレイシステム | |
JP2019160332A (ja) | コンピュータプログラム、端末および方法 | |
JP7442604B1 (ja) | 画像処理方法、情報処理装置、及び、コンピュータプログラム | |
JP6843178B2 (ja) | キャラクタ画像生成装置、キャラクタ画像生成方法、プログラム及び記録媒体 | |
JP7412497B1 (ja) | 情報処理システム | |
WO2023048018A1 (ja) | 表示装置、表示装置の制御方法およびプログラム | |
WO2024147184A1 (ja) | 仮想空間表示システム、端末装置、および仮想空間表示プログラム | |
JP7488210B2 (ja) | 端末及びプログラム | |
JP2024047006A (ja) | 情報処理システムおよびプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20221114 |
|
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: 20240119 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20240216 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7441289 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |