(57)【要約】【課題】  第１の現実物体と、該第１の現実物体に取り付けられた第２の現実物体と、を含む撮影画像に、該第２の現実物体に応じたエフェクトを重ねて表示する処理において、適正な位置に適正なエフェクトを表示するための技術を提供すること。【解決手段】  第１の現実物体と、該第１の現実物体上の第２の現実物体と、を含む撮影画像から少なくとも該第１の現実物体のポーズおよび／または種別を認識し、さらに該第２の現実物体の認識を行い、それぞれの認識の結果に応じたエフェクトを表すエフェクトオブジェクトを、撮影画像に重ねて表示画面に表示する。【選択図】  図１
2019185796.tif 000002
【特許請求の範囲】
【請求項１】
携帯端末装置のコンピュータを、
第１の現実物体と、該第１の現実物体上の第２の現実物体と、を含む撮影画像から少なくとも該第１の現実物体のポーズおよび／または種別を認識し、さらに該第２の現実物体の認識を行う認識手段と、該認識手段による認識の結果に応じたエフェクトを表すエフェクトオブジェクトを、前記撮影画像に重ねて表示画面に表示する表示制御手段と
して機能させ、
前記認識手段には、認識した前記第１の現実物体のポーズおよび／または種別に基づいて、該第１の現実物体の周辺において前記第２の現実物体の認識処理を行う範囲を特定する特定手段が含まれる
ことを特徴とするコンピュータプログラム。
【請求項２】
前記エフェクトオブジェクトは、認識した前記第１の現実物体のポーズの差異によらないことを特徴とする請求項１に記載のコンピュータプログラム。
【請求項３】
前記認識手段は、前記第１の現実物体に規定のポーズをとらせることをユーザに通知するためのガイド表示を前記表示画面に表示し、該ガイド表示に沿った前記第１の現実物体のポーズおよび／または種別の認識を行うことを特徴とする請求項１または２に記載のコンピュータプログラム。
【請求項４】
前記認識手段は、前記第２の現実物体の種別を認識し、
前記表示制御手段は、前記第２の現実物体の種別に応じたエフェクトオブジェクトを前記撮影画像に重ねて表示することを特徴とする請求項１乃至３の何れか１項に記載のコンピュータプログラム。
【請求項５】
前記認識手段は、前記第２の現実物体の認識結果に応じて前記エフェクトオブジェクトの配置を決定することを特徴とする請求項１乃至４の何れか１項に記載のコンピュータプログラム。
【請求項６】
前記認識手段は、前記第２の現実物体の認識結果に応じて前記エフェクトオブジェクトの始点を決定することを特徴とする請求項１乃至５の何れか１項に記載のコンピュータプログラム。
【請求項７】
前記携帯端末装置は更に撮像部を有し、
前記撮影画像は前記撮像部により撮影された画像であることを特徴とする請求項１乃至６の何れか１項に記載のコンピュータプログラム。
【請求項８】
携帯端末装置であって、
第１の現実物体と、該第１の現実物体上の第２の現実物体と、を含む撮影画像から少なくとも該第１の現実物体のポーズおよび／または種別を認識し、さらに該第２の現実物体の認識を行う認識手段と、
該認識手段による認識の結果に応じたエフェクトを表すエフェクトオブジェクトを、前記撮影画像に重ねて表示画面に表示する表示制御手段と
を備え、
前記認識手段には、認識した前記第１の現実物体のポーズおよび／または種別に基づいて、該第１の現実物体の周辺において前記第２の現実物体の認識処理を行う範囲を特定する特定手段が含まれる
ことを特徴とする携帯端末装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンピュータプログラム、携帯端末装置に関するものである。
【背景技術】
【０００２】
従来より、現実空間に文字やＣＧなどの情報を重畳させてユーザに提示することで、拡張された現実空間を該ユーザに提示するＡＲ（Ａｕｇｍｅｎｔｅｄ  Ｒｅａｌｉｔｙ）技術が様々な分野で利用されている。例えば、特許文献１には、このようなＡＲ技術のアプリケーションとして、フィギュアの台座の特定の位置に設けられたマークを携帯端末のカメラで認識して、マークに対応付けて用意された演出用の映像等を生成し、携帯端末の画面に該フィギュアとフィギュアに関連した映像とを重ね合わせて表示する拡張現実感システムが開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開2013-228959号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
特許文献１に開示されている拡張現実感システムは、台座に設けられたマークに対応する映像をフィギュアを含む画像上に重ねて表示するものである。しかし、デザイン性の観点から、台座にマークを設けない方が好ましい。しかし、マークを設けない場合は、フィギュアそのものを認識して対応する映像を生成する必要がある。マークを設けずに物体を認識する方法としては、例えば、物体の幾何形状を表す３Ｄデータを予め登録しておき、携帯端末等で撮影された物体の画像と、上記の予め登録されている３Ｄデータと、をマッチングさせることで物体を認識する方法がある。しかしこの方法では、フィギュアが可動可能なものである場合、エフェクトと一致するポーズ以外のポーズにポーズが変更された場合、エフェクトの出現位置と実際のフィギュアのパーツ位置がずれてしまい、望ましい位置からエフェクトが出現しない、という問題が生じる。
【０００５】
本発明は、第１の現実物体と、該第１の現実物体上の第２の現実物体と、を含む撮影画像に、該第２の現実物体に応じたエフェクトを適切に重ねて表示する手段を提供する。
【課題を解決するための手段】
【０００６】
本発明では、携帯端末装置のコンピュータを、
第１の現実物体と、該第１の現実物体上の第２の現実物体と、を含む撮影画像から少なくとも該第１の現実物体のポーズおよび／または種別を認識し、さらに該第２の現実物体の認識を行う認識手段と、該認識手段による認識の結果に応じたエフェクトを表すエフェクトオブジェクトを、前記撮影画像に重ねて表示画面に表示する表示制御手段と
して機能させ、
前記認識手段には、認識した前記第１の現実物体のポーズおよび／または種別に基づいて、該第１の現実物体の周辺において前記第２の現実物体の認識処理を行う範囲を特定する特定手段が含まれる
ことを特徴とする。
【発明の効果】
【０００７】
本発明によれば、第１の現実物体と、該第１の現実物体上の第２の現実物体と、を含む撮影画像に、該第２の現実物体に応じたエフェクトを適切に重ねて表示する手段を提供することができる。
【図面の簡単な説明】
【０００８】
【図１】携帯端末装置のハードウェア構成例を示すブロック図。
【図２】（ａ）は、携帯端末装置による撮影対象となる現実物体としてのモデルの一例を示す図、（ｂ）は、ＡＲ画像の一例を示す図、（ｃ）は、（ｂ）とは異なるアングルからのＡＲ画像の一例を示す図。
【図３】ＡＲ画像を表示部１０６の表示画面に表示させるために携帯端末装置が行う処理のフローチャート。
【図４】（ａ）は、ガイド枠を示す図、（ｂ）は、規定のポーズをとらせたモデル２０１をガイド枠４０２内に移動させた場合における表示部１０６の表示画面の表示例を示す図。
【図５】（ａ）は、モデルのテーブルデータの構成例を示す図、（ｂ）は、エフェクト情報の構成例を示す図、（ｃ）は、武器のテーブルデータの構成例を示す図。
【発明を実施するための形態】
【０００９】
以下、添付図面を参照し、本発明の好適な実施形態について説明する。なお、以下説明する実施形態は、本発明を具体的に実施した場合の一例を示すもので、特許請求の範囲に記載の構成の具体的な実施例の１つである。
【００１０】
［第１の実施形態］
本実施形態では、銃などの武器（本発明にいう「第２の現実物体」）を持たせたロボットのモデル（本発明にいう「第１の現実物体」）をカメラ付携帯端末装置（以下、単に携帯端末装置と称する）で撮影して該携帯端末装置の表示画面に表示させる場合に、該武器の種別に応じたエフェクトを該武器に重ねて表示するケースを例にとり説明する。
【００１１】
本実施形態に係る携帯端末装置は、カメラ付のスマートフォン、カメラ付のタブレット端末装置等の、カメラ付の携帯端末装置である。先ず本実施形態に係る携帯端末装置のハードウェア構成例について、図１のブロック図を用いて説明する。
【００１２】
プロセッサ１０１は、メモリ１０２に格納されているコンピュータプログラムやデータを用いて処理を実行することで、携帯端末装置全体の動作制御を行うと共に、携帯端末装置が行うものとして後述する各処理を実行若しくは制御する。
【００１３】
メモリ１０２は、不揮発性メモリ１０４からロードされたコンピュータプログラムやデータ、撮像部１０５により撮影された撮影画像、を格納するためのエリア、プロセッサ１０１が各種の処理を実行する際に用いるワークエリア、等を有する。このようにメモリ１０２は、各種のエリアを適宜提供することができる。
【００１４】
ボタン１０３は、携帯端末装置に備わっている１以上のボタンであり、ユーザが押下することでプロセッサ１０１に対して各種の指示を入力することができる。
【００１５】
不揮発性メモリ１０４には、ＯＳ（オペレーティングシステム）、携帯端末装置が行うものとして後述する各処理をプロセッサ１０１に実行若しくは制御させるためのコンピュータプログラムやデータ、が保存されている。不揮発性メモリ１０４に保存されているコンピュータプログラムやデータは、プロセッサ１０１による制御に従って適宜メモリ１０２にロードされ、プロセッサ１０１による処理対象となる。
【００１６】
撮像部１０５は、携帯端末装置に設けられた１つ以上のカメラである。撮像部１０５は、ＣＣＤ等の撮像素子を有し、該撮像素子から順次出力されるアナログ画像信号からディジタル画像信号（撮影画像）を生成して出力する。これにより撮像部１０５からは、各フレームの撮影画像が順次出力されることになる。
【００１７】
表示部１０６は、液晶画面やタッチパネル画面であり、プロセッサ１０１による処理結果を画像や文字などでもって表示することができる。
【００１８】
通信部１０７は、外部の機器との間で、ＬＡＮやインターネットなどのネットワークを介した通信や、赤外線通信などの、各種のデータ通信を行う。
【００１９】
プロセッサ１０１、メモリ１０２、ボタン１０３、不揮発性メモリ１０４、撮像部１０５、表示部１０６、通信部１０７、は何れも、バス１０８に接続されている。なお、図１に示した構成は、携帯端末装置が行うものとして後述する各処理を実現可能な構成の一例に過ぎず、各種の変更／変形が可能である。
【００２０】
次に、携帯端末装置による撮影対象となる現実物体としてのモデルの一例を図２（ａ）に示す。本実施形態では図２（ａ）に示す如く、各関節が可動可能なロボットのモデル２０１（つまり様々なポーズをとることが可能なモデル）の手には武器２０２が取り付けられており、このようなモデル２０１及び武器２０２を携帯端末装置により撮影する。図２（ａ）は、撮像部１０５によりモデル２０１及び武器２０２を撮影することで表示部１０６の表示画面上に表示されているモデル２０１及び武器２０２の表示例を示している。本実施形態では、携帯端末装置は、図２（ａ）に示したようなモデル２０１及び武器２０２を含む画像（本発明にいう「撮影画像」）を取得すると、図２（ｂ）に示す如く、該撮影画像上にビーム２０４（本発明にいう「エフェクトオブジェクト」）を重畳させ、あたかも武器２０２の先からビーム２０４が照射されているような光景を表す画像（ＡＲ画像）を生成して表示部１０６の表示画面上に表示する。
【００２１】
このようなＡＲ画像を表示部１０６の表示画面に表示させるために携帯端末装置が行う処理について、同処理のフローチャートを示す図３を用いて説明する。ユーザはボタン１０３やタッチパネル画面を操作して、モデル２０１のポーズ認識指示を入力すると、プロセッサ１０１は、図３（ａ）のフローチャートに従った処理を開始する。
【００２２】
ステップＳ３０１では、プロセッサ１０１は、撮像部１０５から出力された撮影画像をメモリ１０２に取得する。
【００２３】
ステップＳ３０２では、プロセッサ１０１は、ステップＳ３０１で取得した撮影画像上に、モデル２０１に規定のポーズをとらせることをユーザに通知するためのガイド枠（本発明にいう「ガイド表示」）を重ねて表示部１０６の表示画面に表示する。例えば、図４（ａ）に示す如く、武器２０２を持って構えたポーズを有するモデル２０１の外形を表す枠をガイド枠４０２として撮影画像４０１上に重ねて表示する。
【００２４】
ユーザは、モデル２０１の関節等を可動させたりして、モデル２０１にガイド枠４０２に対応する（つまり、ガイド表示に沿って）規定のポーズをとらせ、該規定のポーズをとらせたモデル２０１をガイド枠４０２内に収まるように移動させる。図４（ａ）のガイド枠４０２に対応する規定のポーズをとらせたモデル２０１をガイド枠４０２内に移動させた場合における表示部１０６の表示画面における表示例を図４（ｂ）に示す。図４（ｂ）では、モデル２０１は、ガイド枠４０２内に収まっており、ガイド枠４０２に対応する規定のポーズをとっている。
【００２５】
なお、ガイド枠は、ユーザがタッチパネル画面やボタン１０３に対する操作によって選択した「モデル２０１にとらせたいポーズ」に対応するガイド枠であっても良いし、デフォルトのガイド枠であっても良い。また、ガイド枠の表示は必須ではなく、例えば、ユーザがタッチパネル画面やボタン１０３に対する操作によって、ガイド枠の表示／非表示を選択できるようにしても良い。ただし、規定のポーズをとらせた方がモデル２０１についての認識精度が上がるので、モデル２０１にとらせるべき規定のポーズについてのユーザへのインストラクションとしてガイド枠を表示し、モデル２０１に規定のポーズをとらせるようユーザに促す方が望ましい。
【００２６】
ステップＳ３０３では、プロセッサ１０１は、撮影画像のガイド枠内に対して、モデル２０１のポーズを認識する認識処理を行う。以下では、ポーズの認識処理の一例について説明する。
【００２７】
不揮発性メモリ１０４には、ロボットＡ、ロボットＢ、人などのモデルごとに（つまり、第１の現実物体の種別ごとに）、図５（ａ）に例示する構成を有するテーブルデータが登録されている。なお、各テーブルデータには、該テーブルデータに対応するモデルの種別を表すＩＤ（種別ＩＤ）が関連づけられているものとする。図５（ａ）は、ロボットＡのモデル（以下、モデルＡと称する）に対応するテーブルデータであるものとして説明する。
【００２８】
図５（ａ）に示す如く、モデルＡが取り得る各ポーズにはポーズＩＤ（モデルごと及びポーズごとに異なる固有のＩＤ）が割り当てられており、該ポーズＩＤには、該ポーズＩＤに対応するポーズを有するモデルＡの特徴点群（ポイントクラウド）データの不揮発性メモリ１０４におけるパス名、該ポーズＩＤに対応するポーズを有するモデルＡの周辺において武器（モデルＡ上にある武器）から出現すべきエフェクトの情報（エフェクト情報）、が関連づけられている。
【００２９】
特徴点群データとは、モデルＡの各特徴点の３次元位置を表すデータであり、例えば、ポーズＩＤ＝Ａ２に対応する特徴点群データとは、ポーズＩＤ＝Ａ２に対応するポーズを有するモデルＡの周囲における複数箇所から該モデルＡを撮影することで得られるそれぞれの撮影画像から抽出した該モデルＡの各特徴点の３次元位置を表すデータである。
【００３０】
エフェクト情報の構成例を図５（ｂ）に示す。図５（ｂ）に示す如く、エフェクト情報には、対応するポーズＩＤのポーズを取るモデルＡに取り付け可能な武器ごとに（つまり、第２の現実物体の種別ごとに）、該武器に固有のＩＤである武器ＩＤ、該武器ＩＤに対応する武器に対応するエフェクトを表すエフェクトオブジェクトの不揮発性メモリ１０４におけるパス名、が登録されている。
【００３１】
武器に対応するエフェクトを表すエフェクトオブジェクトとは、例えば、該武器がビームを発する銃である場合には、該ビームの３次元オブジェクトや該ビームを効果的に見せるための他の３次元オブジェクト等であり、形状や色等が時間の変化と共に変化するものであっても良いし、変化しないものであっても良い。なお、エフェクトオブジェクトは２次元画像（静止画像、動画像の何れであっても良い）であっても良い。
【００３２】
このような場合、プロセッサ１０１は、ステップＳ３０１において取得した撮影画像からモデル２０１とその上にある武器２０２の特徴点群データ（第１の特徴点群データ、第１の現実物体の特徴点群データ）を抽出する。そしてプロセッサ１０１は、各テーブルデータに登録されている各パスに対応する特徴点群データ（第２の特徴点群データ、第１の現実物体の特徴点群データと後述する処理Ａにおいて対比される第１の対比用特徴点群データ）について次のような（処理Ａ）を行う。
【００３３】
（処理Ａ）  第２の特徴点群データが表す各特徴点の３次元位置を外形とする第２の特徴点群モデルの重心（第２の特徴点群データが表す各特徴点の３次元位置の重心位置）を、第１の特徴点群データが表す各特徴点の３次元位置を外形とする第１の特徴点群モデルの重心（第１の特徴点群データが表す各特徴点の３次元位置の重心位置）に一致させてから第２の特徴点群モデルをｘ軸、ｙ軸、ｚ軸（それぞれの軸は第２の特徴点群モデルのローカル座標系における軸であっても良いし、特定の座標系における軸に限らない）のそれぞれの軸周りに回転させて、第１の特徴点群モデルと第２の特徴点群モデルとで対応する特徴点間の距離の総和Ｓが最も小さくなる第２の特徴点群モデルの姿勢を、「モデル２０１の推定姿勢」（第１の現実物体の推定姿勢）として特定する。
【００３４】
そしてプロセッサ１０１は、全ての第２の特徴点群データについて求めた総和Ｓのうち最小となる総和Ｓｍｉｎが閾値未満である場合には、ポーズ認識は成功と判断し、該総和Ｓｍｉｎを求めた第２の特徴点群データに対応するポーズＩＤをテーブルデータから特定する。またプロセッサ１０１は、総和Ｓｍｉｎを求めた第２の特徴点群データに対応するテーブルデータに関連づけられている種別ＩＤを、モデル２０１の種別（第１の現実物体の種別）として特定する。
【００３５】
一方、プロセッサ１０１は、全ての第２の特徴点群データについて求めた総和Ｓのうち最小となる総和Ｓｍｉｎが閾値以上である場合には、ポーズ認識は失敗と判断する。
【００３６】
なお、撮影画像中におけるモデルのポーズを認識するための技術は、Ｖｕｆｏｒｉａ  ＳＤＫライブラリなど、周知の技術であるため、この技術に係るより詳細な説明は省略する。
【００３７】
ステップＳ３０４では、プロセッサ１０１は、ステップＳ３０３におけるポーズ認識は成功したのか、失敗したのかを判断する。この判断の結果、ステップＳ３０３におけるポーズ認識は成功したと判断した場合には、ステップＳ３０３で特定（認識）した種別ＩＤをモデル２０１の種別として認識すると共に、ステップＳ３０３で特定（認識）した種別ＩＤのテーブルデータにおいて、ステップＳ３０３で特定（認識）したポーズＩＤに対応するエフェクト情報を特定する。つまり、モデル２０１の種別とモデル２０１のポーズとに基づいてエフェクト情報を特定する。そして図３（ａ）のフローチャートに従った処理は完了し、図３（ｂ）のフローチャートに従った処理が開始される。一方、ステップＳ３０３におけるポーズ認識は失敗したと判断した場合には、処理はステップＳ３０１に戻る。
【００３８】
ステップＳ３０６では、プロセッサ１０１は、撮像部１０５から出力された撮影画像をメモリ１０２に取得する。
【００３９】
ステップＳ３０８では、プロセッサ１０１は、第１の特徴点群モデルから武器２０２を認識する処理を行う。以下では、武器２０２の認識処理の一例について説明する。
【００４０】
不揮発性メモリ１０４には、モデル２０１に取り付け可能な武器ごとに（つまり、第２の現実物体ごとに）、該武器の特徴点群データの不揮発性メモリ１０４におけるパス名が登録されたテーブルデータが登録されている。図５（ｃ）は、武器のテーブルデータの構成例を示す図である。
【００４１】
武器の特徴点群データとは、該武器の各特徴点の３次元位置を表すデータであり、例えば、武器ＩＤ＝Ｗ１に対応する特徴点群データとは、武器ＩＤ＝Ｗ１に対応する武器の周囲における複数箇所から該武器を撮影することで得られるそれぞれの撮影画像から抽出した該武器の各特徴点の３次元位置を表すデータである。
【００４２】
このような場合、プロセッサ１０１は、第１の特徴点群データに対して、図５（ｃ）のテーブルデータに登録されている各パスに対応する特徴点群データ（第４の特徴点群データ、後述する処理において、第１の特徴点群モデルの部分範囲内の第１の特徴点群データと対比される第２の対比用特徴点群データ）について次のような（処理Ｂ）を行う。
【００４３】
（処理Ｂ）  第４の特徴点群データが表す各特徴点の３次元位置を外形とする第４の特徴点群モデルを第１の特徴点群モデルの部分範囲内で移動及び／又は回転させて、第１の特徴点群モデル（部分範囲内）と第４の特徴点群モデルとで対応する特徴点間の距離の総和ＳＳが最も小さくなる第４の特徴点群モデルの位置姿勢を特定する。
【００４４】
ここで、「部分範囲」とは、それぞれの第２の特徴点群データに対して設定されている範囲（例えば、該第２の特徴点群データが表す第２の特徴点群モデルの頭部周辺に対応する範囲、手周辺に対応する範囲、足周辺に対応する範囲）であり、第２の特徴点群データごとに予め不揮発性メモリ１０４に登録されている。然るにプロセッサ１０１は、不揮発性メモリ１０４に登録されている部分範囲のうち、ステップＳ３０３で特定（認識）したモデル２０１の種別やポーズによって特定される第２の特徴点群データと関連づけられている部分範囲を、ステップＳ３０８で使用する部分範囲として特定する。なお、部分範囲の規定は上記の規定に限らない。なお、「部分範囲」は、本発明にいう「該第１の現実物体の周辺において前記第２の現実物体の認識処理を行う範囲」に相当する。すなわち、認識した前記第１の現実物体のポーズおよび／または種別に基づいて、第２の特徴点群データが特定され、第２の特徴点群データからこれに関連付けられている部分範囲が特定される。以上のとおり、プロセッサ１０１は本発明にいう「認識手段」として機能しており、かつ、「特定手段」としても機能する。
【００４５】
そしてプロセッサ１０１は、全ての第４の特徴点群データについて求めた総和ＳＳのうち最小となる総和ＳＳｍｉｎが閾値未満である場合には、武器認識は成功と判断し、該総和ＳＳｍｉｎを求めた第４の特徴点群データに対応する武器ＩＤ（武器の種別）を特定する。一方、プロセッサ１０１は、全ての第４の特徴点群データについて求めた総和ＳＳのうち最小となる総和ＳＳｍｉｎが閾値以上である場合には、武器認識は失敗と判断する。
【００４６】
プロセッサ１０１が武器認識は成功と判断した場合には、処理はステップＳ３０９を介してステップＳ３１０に進み、武器認識は失敗と判断した場合には、処理はステップＳ３０９を介してステップＳ３０６に戻る。
【００４７】
ステップＳ３１０では、プロセッサ１０１は、ステップＳ３０８で特定した武器ＩＤに対応するエフェクトオブジェクトのパス名にて特定されるエフェクトオブジェクトを不揮発性メモリ１０４からメモリ１０２に読み出す。そしてプロセッサ１０１は、武器の認識結果に応じてエフェクトオブジェクトの配置を決定する。例えば、武器の特徴点群モデルが銃の特徴点群モデル、エフェクトオブジェクトが該銃の銃口から射出されるビームのモデル（ビームモデル）、であるとする。このとき、不揮発性メモリ１０４に登録されている銃の特徴点群データ（第４の特徴点群データ）において銃口に対応する位置（銃口位置）は予め設定されているので、ステップＳ３０８で総和ＳＳが最も小さくなるように移動及び／又は回転させた銃の特徴点群モデルにおいて銃口位置に対応する位置を、ビームモデルの配置位置（ビームの始点の配置位置）とする。ビームモデルの配置姿勢については、ステップＳ３０８で総和ＳＳが最も小さくなるように移動及び／又は回転させた銃の特徴点群モデルの姿勢を採用する。これにより、銃口からビームが射出されているように、ビームモデルを配置することができる。なお、エフェクトオブジェクトは、武器における１点から射出されるエフェクトのオブジェクトに限らず、複数の始点からそれぞれ表示されるエフェクトからなるオブジェクトであっても良く、また、剣の刃の周囲に配置するエフェクト等、ある範囲や領域に渡って、もしくは、武器の輪郭に沿って配置するエフェクトのオブジェクトであっても良い。つまり、不揮発性メモリ１０４に登録されている武器の特徴点群データ（第４の特徴点群データ、処理Ｂにおいて第１の特徴点群モデルの部分範囲内の第１の特徴群データと対比される第２の対比用特徴点群データ）においてエフェクトオブジェクトを配置する位置姿勢／範囲を予め登録しておき、ステップＳ３０８で総和ＳＳが最も小さくなるように移動及び／又は回転させた武器の特徴点群モデルにおいて該予め登録しておいた位置姿勢／範囲に対応する位置姿勢／範囲を、エフェクトオブジェクトの配置位置姿勢／範囲として求める。
【００４８】
ステップＳ３１１では、プロセッサ１０１は、ステップＳ３１０で求めた配置位置姿勢で配置したエフェクトオブジェクト（メモリ１０２に読み出したエフェクトオブジェクト）の画像を、ステップＳ３０６おいて取得した撮影画像上に重ねて表示部１０６の表示画面に表示させる。したがって、プロセッサ１０１は本発明にいう「表示制御手段」として機能している。
【００４９】
ステップＳ３１２では、プロセッサ１０１は、図３（ｂ）のフローチャートに従った処理の終了条件が満たされたか否かを判断する。例えば、ユーザがボタン１０３やタッチパネル画面を操作して終了指示を入力した場合には、終了条件が満たされたと判断する。また例えば、プロセッサ１０１が撮影画像からモデル２０１、武器２０２の何れも認識できなかった場合には、終了条件が満たされたと判断する。この判断の結果、終了条件が満たされた場合には、図３（ｂ）のフローチャートに従った処理は完了する。一方、終了条件が満たされていない場合には、処理はステップＳ３０６に戻る。
【００５０】
本実施形態では、一度エフェクトオブジェクトを配置すると、その後、携帯端末装置の位置や姿勢、モデル２０１の位置や姿勢を任意に変更しても、モデル２０１や武器２０２の種別は認識できており、また、武器２０２の位置や姿勢は撮影画像から随時認識し、認識した変更後の武器２０２の位置や姿勢に基づいてエフェクトオブジェクトの位置、姿勢も変更しているので、モデル２０１や武器２０２に対する上記の認識処理（処理Ａ、Ｂ）を行う必要はなく、例えば図２（ｃ）に示す如く、図２（ｂ）のアングルとは異なるアングルからモデル２０１を撮影しても、表示部１０６の表示画面には、携帯端末装置から見えるモデル２０１及び武器２０２に加え、該武器２０２から射出されるビーム２０４がエフェクトオブジェクトとして表示される状態が維持される。
【００５１】
なお、エフェクトオブジェクトは常に表示していても良いし、ユーザがボタン１０３を押下したときや、タッチパネル画面をタッチしたときに表示しても良い。また、エフェクトオブジェクトは時間の経過と共に（形状、色、位置、姿勢などが）変化するエフェクトを表すエフェクトオブジェクトであっても良く、その場合、エフェクトオブジェクトは、複数フレームに渡って再生される（複数フレームに渡ってエフェクトをアニメーション表示する）複数のエフェクトオブジェクトを有することになる。なお、エフェクトオブジェクトは時間の経過と共に（形状、色、位置、姿勢などが）変化しないエフェクトを表すエフェクトオブジェクトであっても良い。また、本実施形態では、処理Ａにおいてモデル２０１とその上の武器２０２の両方の特徴点群データを撮影画像から抽出しているが、本発明としては、少なくともモデル２０１の特徴点群データを抽出すれば良い。ただし、その場合には認識されたモデル２０１のポーズおよび／または種別に応じて、第２の特徴点群データが特定され、また、それと関連付けられた部分範囲が特定された後、撮影画像から第１の特徴点群データによりあらわされる第１の特徴点群モデルに対して当該部分範囲内にある特徴点群データ（武器２０２の特徴点群データ）の抽出を行った上で、第４の特徴点群データとの間で処理Ｂを行うことになる。
【００５２】
また、ユーザが、モデル２０１に取り付けている武器２０２を該モデル２０１から取り外して他の武器をモデル２０１に取り付けた場合には、プロセッサ１０１は、再度図３（ａ）のフローチャートに従った処理を行う。
【００５３】
このように、本実施形態では、モデル２０１（第１の現実物体）の認識により、モデル２０１の種別、ポーズを推定し、武器２０２（第２の現実物体）の認識により、エフェクトを表示する位置、姿勢（第２の現実物体に対する位置、姿勢）を推定することで適正な位置に適正なエフェクトを表示することを実現している。また、モデル２０１に同じポーズをとらせるにしても、ユーザ間でとらせたポーズに多少の差異が当然に生じ得る。本実施形態によれば、同じエフェクトを表示させるに当たって、ユーザ間でモデル２０１でとらせたポーズに差異（誤差）があったとしても、ユーザそれぞれのモデル２０１上の現実の武器２０２の位置、姿勢に応じた適切な位置、姿勢でエフェクトオブジェクトを表示できる。
【００５４】
［第２の実施形態］
第１の実施形態では、武器を取り付けたロボットのモデルにエフェクトオブジェクトを重ねて表示する形態を説明したが、利用可能なモデルはロボットに限られず、第２の現実物体もモデルに取り付けられた武器に限らない。
【００５５】
例えば、船のモデルを第１の現実物体として利用し、該船のモデル上に回動可能に取り付けられている艦砲を第２の現実物体として利用することもできる。この場合、先ずは船のモデルのポーズ（携帯端末装置から見たアングル）や種別を第１の実施形態と同様に認識すると共に、第２の現実物体である艦砲を第１の実施形態と同様に認識し、該認識の結果に応じたエフェクトオブジェクト（例えば艦砲による艦砲射撃時の火や煙等）を撮影画像に重ねて表示部１０６の表示画面に表示させる。さらにいえば、第１の現実物体については、モデル、いわゆる模型に限られず、フィギュアや人形等、一般的な玩具であってもよく、また、モデルや玩具に限られないことはいうまでもない。
【００５６】
また、第１の実施形態では、モデル２０１の種別及びポーズの両方に基づいてエフェクト情報を特定していたが、モデル２０１の種別及びポーズのうち一方に基づいてエフェクト情報を特定するようにしても良い。
【００５７】
また、第１の実施形態では、テーブルデータ、モデルや武器等の特徴点群データ、等の予め作成されているデータは何れも不揮発性メモリ１０４に登録されているものとして説明したが、これに限らない。例えば、テーブルデータや特徴点群データは携帯端末装置と通信可能な外部のサーバ装置に登録しておいても良い。この場合、テーブルデータに登録されているパス名は何れも、サーバ装置におけるパス名となる。このような場合、携帯端末装置においてテーブルデータや特徴点群データが必要な場合、通信部１０７はこれらのテーブルデータや特徴点群データをサーバ装置から受信してメモリ１０２や不揮発性メモリ１０４にダウンロードする。
【００５８】
また、第１の実施形態では、撮影画像にエフェクトオブジェクトを重ねた画像（ＡＲ画像）については表示するのみであったが、このＡＲ画像を通信部１０７により外部の機器に対して（画像記録や閲覧等の目的のために）送信しても良いし、ユーザがボタン１０３やタッチパネル画面を操作して記録指示を入力した場合には、該ＡＲ画像を不揮発性メモリ１０４に保存するようにしても良い。例えば、プロセッサ１０１は、ユーザがボタン１０３やタッチパネル画面を操作して記録指示を入力したタイミングで表示部１０６に表示されているＡＲ画像を不揮発性メモリ１０４に保存するようにしても良い。また、プロセッサ１０１は、ユーザがボタン１０３やタッチパネル画面を操作して記録開始指示を入力したタイミング以降に表示部１０６に表示される各フレームのＡＲ画像を不揮発性メモリ１０４に順次保存し、ユーザがボタン１０３やタッチパネル画面を操作して記録終了指示を入力すると、この保存処理を終了するようにしても良い。
【００５９】
第１，２の実施形態で説明した構成は何れも、第１の現実物体と、該第１の現実物体上の第２の現実物体と、を含む撮影画像から少なくとも該第１の現実物体のポーズおよび／または種別を認識し、さらに該第２の現実物体の認識を行い、それぞれの認識の結果に応じたエフェクトを表すエフェクトオブジェクトを、撮影画像に重ねて表示画面に表示する、という構成の一例に過ぎない。
【図１】
2019185796.tif 000003
【図２】
2019185796.tif 000004
【図３】
2019185796.tif 000005
【図４】
2019185796.tif 000006
【図５】
2019185796.tif 000007