(57)【要約】【課題】汎用性のある一般的な撮像装置を用いて、仮想オブジェクトの画像のマルチアングル表示が可能な拡張現実表示システム、拡張現実表示方法、及び、拡張現実表示用コンピュータプログラムを提供する。【解決手段】拡張現実表示システム１は、ＡＲマーカ３と、ユーザ端末５と、管理サーバ７とから構成されている。ユーザ端末５には、拡張現実表示用コンピュータプログラムがインストールされており、スケール決定部２７Ａと、傾斜角測定部２７Ｂと、方位角測定部２７Ｃと、演算部２７Ｄと、仮想オブジェクト・データ取得部２７Ｅと、合成用二次元画像データ生成部２７Ｆと、合成画像生成部２７Ｇが実現されている。ユーザ端末５を用いて、ＡＲマーカ３を撮像すると、合成画像生成部２７Ｇは、ＡＲマーカ３を含む画像中のＡＲマーカ３の画像に代えて、仮想オブジェクトの合成用二次元画像データに基づく仮想オブジェクトの画像を背景画像中に合成する。【選択図】  図１
2020008917.tif 000002
【特許請求の範囲】
【請求項１】
所定の場所に設置したＡＲマーカを含む画像を撮像装置で撮像することで、前記ＡＲマーカを含む画像を背景画像として取得し、前記背景画像中の前記ＡＲマーカの画像に代えてデータ記憶部に記憶された仮想オブジェクトの画像を前記背景画像中に合成して表示画面に表示する拡張現実表示システムであって、
前記ＡＲマーカは、
垂直方向の既知の位置に、垂直方向の長さが既知であるスケール計測用パターンと、
前記スケール計測用パターンは前記ＡＲマーカの全周に連続するように設けられており、
前記撮像装置は、
前記背景画像中における前記ＡＲマーカの前記スケール計測用パターンの長さ（Ｖｍｔ）と前記スケール計測用パターンの実際の長さ（Ｈｍ）とからスケール（Ｓｃｔ）を求めるスケール決定部と、
前記ＡＲマーカを撮像したときの前記撮像装置の傾斜角（θｔ）を測定する傾斜角測定部と、
前記ＡＲマーカを撮像したときの前記ＡＲマーカに対する前記撮像装置の位置の方位角（φｔ）を測定する方位角測定部と、
前記スケール計測用パターンの前記既知の位置の高さ寸法（Ｈｐ）、前記スケール（Ｓｃｔ）及び前記傾斜角（θｔ）に基づいて、撮像時における前記ＡＲマーカと前記撮像装置との間の距離（Ｄｔ）及び前記撮像装置の高さ（Ｈｔ）を演算する演算部と、
仮想オブジェクト特定情報に基づいて前記仮想オブジェクトを特定し、前記データ記憶部から前記仮想オブジェクトの三次元画像データを取得する仮想オブジェクト・データ取得部と、
前記ＡＲマーカと前記撮像装置との間の距離（Ｄｔ）、前記撮像装置の高さ（Ｈｔ）、前記傾斜角（θｔ）及び前記方位角（φｔ）並びに前記仮想オブジェクトの三次元画像データに基づいて、前記仮想オブジェクトの合成用二次元画像データを生成する仮想オブジェクトの合成用二次元画像データ生成部と、
前記ＡＲマーカを含む画像中の前記ＡＲマーカの画像に代えて、前記仮想オブジェクトの合成用二次元画像データに基づく前記仮想オブジェクトの画像を前記背景画像中に合成する合成画像生成部とを備えていることを特徴とする拡張現実表示システム。
【請求項２】
前記ＡＲマーカは、前記ＡＲマーカの全周に連続するように設けられた、前記ＡＲマーカの方位角を示す方向認識マークパターンをさらに備えており、
前記方位角測定部は、前記ＡＲマーカを含む画像中の前記方向認識マークパターンに基づいて前記ＡＲマーカに対する前記撮像装置の位置の方位角（φｔ）を測定する請求項１に記載の拡張現実表示システム。
【請求項３】
前記データ記憶部は、前記ＡＲマーカと前記ＡＲマーカの周囲に存在する固定物までの距離（Ｄｆ）と、前記ＡＲマーカに対する前記固定物の位置の方位角（φｆ）と、前記固定物の高さ（Ｈｆ）を含む前記固定物に関する固定物データマップをさらに記憶しており、
前記仮想オブジェクト・データ取得部は、前記固定物データマップも取得するようになっており、
前記合成用二次元画像データ生成部は、前記固定物データマップ並びに前記ＡＲマーカと前記撮像装置との間の距離（Ｄｔ）及び前記方位角（φｔ）に基づいて、前記ＡＲマーカと前記撮像装置との間に前記固定物が存在するか否かを判断し、前記固定物が存在する場合には、前記固定物による遮蔽データを生成し、前記遮蔽データを前記仮想オブジェクトの合成用二次元画像データに重ねて前記仮想オブジェクトの合成用二次元画像データとする請求項１に記載の拡張現実表示システム。
【請求項４】
前記固定物データマップは、前記ＡＲマーカの設置場所を中心として、３Ｄスキャナを用いて得られた３次元データである請求項３に記載の拡張現実表示システム。
【請求項５】
前記合成用二次元画像データ生成部は、前記ＡＲマーカと重なり、前記ＡＲマーカを遮る移動物が存在するか否かを判断し、前記移動物が存在する場合には、前記移動物を抽出して、前記移動物による遮蔽データを生成し、前記遮蔽データを前記仮想オブジェクトの合成用二次元画像データに重ねて前記仮想オブジェクトの合成用二次元画像データとする請求項１に記載の拡張現実表示システム。
【請求項６】
前記合成用二次元画像データ生成部は、
第１の背景画像と、前記第１の背景画像と方位角だけがずれた第２の背景画像を取得し、
前記第１の背景画像と、前記第２の背景画像とを比較し、前記第１の背景画像に含まれている前記ＡＲマーカと、前記第２の背景画像に含まれている前記ＡＲマーカとの間に生じている基準視差よりも大きな視差が生じている移動物及び固定物の少なくとも一方をターゲットとして抽出して、前記ターゲットによる遮蔽データを生成し、前記遮蔽データを前記仮想オブジェクトの合成用二次元画像データに重ねて前記仮想オブジェクトの合成用二次元画像データとする請求項１に記載の拡張現実表示システム。
【請求項７】
前記撮像装置の前記スケール決定部は、前記ＡＲマーカから所定の距離（Ｄｓ）離れた位置から前記ＡＲマーカを含む背景画像を撮像した時の前記背景画像中の前記スケール計測用パターンの長さ（Ｖｍｓ）と前記スケール計測用パターンの実際の長さ（Ｈｍ）とから基準スケール（Ｓｃｓ）を取得し、
前記演算部は、前記基準スケール（Ｓｃｓ）にも基づいて、前記ＡＲマーカと前記撮像装置との間の距離（Ｄｔ）及び前記撮像装置の高さ（Ｈｔ）を演算する請求項１に記載の拡張現実表示システム。
【請求項８】
前記ＡＲマーカは、前記ＡＲマーカの全周に連続するように設けられた識別コードパターンを備えており、
前記仮想オブジェクト・データ取得部は、前記ＡＲマーカを含む画像中の前記識別コードパターンに基づいて、前記仮想オブジェクトを特定する請求項１に記載の拡張現実表示システム。
【請求項９】
所定の場所に設置したＡＲマーカを含む画像を撮像装置で撮像することで、前記ＡＲマーカを含む画像を背景画像として取得し、前記背景画像中の前記ＡＲマーカの画像に代えてデータ記憶部に記憶された仮想オブジェクトの画像を前記背景画像中に合成して表示画面に表示する拡張現実表示方法であって、
前記ＡＲマーカは、
垂直方向の既知の位置に、垂直方向の長さが既知であるスケール計測用パターンと、
前記スケール計測用パターンと前記識別コードパターンは前記ＡＲマーカの全周に連続するように設けられており、
前記背景画像中における前記ＡＲマーカの前記スケール計測用パターンの長さ（Ｖｍｔ）と前記スケール計測用パターンの実際の長さ（Ｈｍ）とからスケール（Ｓｃｔ）を求めるスケール算出ステップと、
前記ＡＲマーカを撮像したときの前記撮像装置の傾斜角（θｔ）を測定する傾斜角測定ステップと、
前記ＡＲマーカを撮像したときの前記ＡＲマーカに対する前記撮像装置の位置の方位角（φｔ）を測定する方位角測定ステップと、
前記スケール計測用パターンの前記既知の位置の高さ寸法（Ｈｐ）、前記スケール（Ｓｃｔ）及び前記傾斜角（θｔ）に基づいて、撮像時における前記ＡＲマーカと前記撮像装置との間の距離（Ｄｔ）及び前記撮像装置の高さ（Ｈｔ）を演算する演算ステップと、
仮想オブジェクト特定情報に基づいて前記仮想オブジェクトを特定し、前記データ記憶部から前記仮想オブジェクトの三次元画像データを取得する仮想オブジェクト・データ取得ステップと、
前記ＡＲマーカと前記撮像装置との間の距離（Ｄｔ）、前記撮像装置の高さ（Ｈｔ）、前記傾斜角（θｔ）及び前記方位角（φｔ）並びに前記仮想オブジェクトの三次元画像データに基づいて、前記仮想オブジェクトの合成用二次元画像データを生成する仮想オブジェクトの合成用二次元画像データ生成ステップと、
前記ＡＲマーカを含む画像中の前記ＡＲマーカの画像に代えて、前記仮想オブジェクトの合成用二次元画像データに基づく前記仮想オブジェクトの画像を前記背景画像中に合成する合成画像生成ステップとを前記撮像装置が実行することを特徴とする拡張現実表示方法。
【請求項１０】
所定の場所に設置したＡＲマーカを含む画像を撮像装置で撮像することで、前記ＡＲマーカを含む画像を背景画像として取得し、前記背景画像中の前記ＡＲマーカの画像に代えてデータ記憶部に記憶された仮想オブジェクトの画像を前記背景画像中に合成して表示画面に表示するために、前記撮像装置に搭載されたコンピュータにインストールされて実行される拡張現実表示用コンピュータプログラムであって、
前記ＡＲマーカは、
垂直方向の既知の位置に、垂直方向の長さが既知であるスケール計測用パターンと、
前記スケール計測用パターンと前記識別コードパターンは前記ＡＲマーカの全周に連続するように設けられており、
前記背景画像中における前記ＡＲマーカの前記スケール計測用パターンの長さ（Ｖｍｔ）と前記スケール計測用パターンの実際の長さ（Ｈｍ）とからスケール（Ｓｃｔ）を求めるスケール決定部と、
前記ＡＲマーカを撮像したときの前記撮像装置の傾斜角（θｔ）を測定する傾斜角測定部と、
前記ＡＲマーカを撮像したときの前記ＡＲマーカに対する前記撮像装置の位置の方位角（φｔ）を測定する方位角測定部と、
前記スケール計測用パターンの前記既知の位置の高さ寸法（Ｈｐ）、前記スケール（Ｓｃｔ）及び前記傾斜角（θｔ）に基づいて、撮像時における前記ＡＲマーカと前記撮像装置との間の距離（Ｄｔ）及び前記撮像装置の高さ（Ｈｔ）を演算する演算部と、
仮想オブジェクト特定情報に基づいて前記仮想オブジェクトを特定し、前記データ記憶部から前記仮想オブジェクトの三次元画像データを取得する仮想オブジェクト・データ取得部と、
前記ＡＲマーカと前記撮像装置との間の距離（Ｄｔ）、前記撮像装置の高さ（Ｈｔ）、前記傾斜角（θｔ）及び前記方位角（φｔ）並びに前記仮想オブジェクトの三次元画像データに基づいて、前記仮想オブジェクトの合成用二次元画像データを生成する仮想オブジェクトの合成用二次元画像データ生成部と、
前記ＡＲマーカを含む画像中の前記ＡＲマーカの画像に代えて、前記仮想オブジェクトの合成用二次元画像データに基づく前記仮想オブジェクトの画像を前記背景画像中に合成する合成画像生成部とを前記コンピュータ内に実現するように構成されている拡張現実表示用コンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、所定の場所に設置したＡＲマーカを含む画像を撮像装置で撮像することで、ＡＲマーカを含む画像を背景画像として取得し、背景画像中のＡＲマーカの画像に代えてデータ記憶部に記憶された仮想オブジェクトの画像を背景画像中に合成して表示画面に表示する拡張現実表示システム、拡張現実表示方法、及び、拡張現実表示用コンピュータプログラムに関するものである。
【背景技術】
【０００２】
カメラを内蔵したスマートフォンやタブレット端末等のユーザ端末を用いて、背景画像にキャラクタ等の仮想オブジェクトの画像を合成して表示画面に表示する拡張現実表示システム（ＡＲ：Augmented Reality）が開発・実用化されている。
【０００３】
例えば、任天堂株式会社等が提供しているアプリケーションソフト「ポケモンＧＯ」（http://www.pokemongo.jp/・非特許文献１）は、ＧＰＳ（Global Positioning System）及び３軸ジャイロ等の端末が内蔵しているセンサ類を用いて、簡易的にＡＲを実現している。
【０００４】
ＫＤＤＩ株式会社等が提供しているサービス「ミクさんぽ」（https://www.au.com/lp/mikusanpo/・非特許文献２）は、Ｇｏｏｇｌｅ社が提供している空間認識技術である「Ｔａｎｇｏ」に対応した端末（https://www3.lenovo.com/jp/ja/tango/）を用いたＡＲの例である。「Ｔａｎｇｏ」に対応した端末は、通常のカメラの他、赤外線カメラ及びモーショントラッキングカメラを備えており、物体の大きさ、物体までの距離、物体の動き等を含むＤｅｐｔｈ情報を取得可能である。Ｄｅｐｔｈ情報を利用することで、キャラクタの前に存在し、キャラクタを隠す遮蔽物を考慮した遮蔽処理を施した合成画像を出力することが可能である。また、キャラクタのマルチアングル表示（３６０°表示）も可能である。
【０００５】
Ａｐｐｌｅ社が提供しているフレームワーク「ＡＲＫｉｔ」も端末を用いたＡＲの例である（https://www.apple.com/jp/ios/augmented-reality/・非特許文献３）。水平面を認識することが可能であることが特徴であり、水平面を基準にして、違和感の少ないＡＲ画像を合成可能になっている。
【０００６】
また、ＡＲに関する技術ではないが、特開２００４−２８０７２８号公報（特許文献１）に記載の発明は、建造物の建設予定地の背景画像に、完成予定の建造物のＣＧ画像を合成する技術に関するものである。違和感のない合成画像にするために、次のステップを実行している。
・建設予定地に設置した基準マーカーを利用してキャリブレーション（校正）用のカメラパラメータを取得；
・キャリブレーション済みのカメラパラメータを用いて、建造物の三次元画像データを二次元画像データに変換；
・キャリブレーション済みのカメラを用いて、建設予定地を撮影；
・建設予定地の二次元画像データに、建造物の二次元画像データを貼り込み合成する。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２００４−２８０７２８号公報
【非特許文献】
【０００８】
【非特許文献１】任天堂株式会社等「ポケモンＧＯ」（平成３０年５月２１日検索）インターネット<http://www.pokemongo.jp/>
【非特許文献２】ＫＤＤＩ株式会社等「ミクさんぽ」（平成３０年５月２１日検索）インターネット<https://www.au.com/lp/mikusanpo/>
【非特許文献３】Ａｐｐｌｅ社「ＡＲＫｉｔ」（平成３０年５月２１日検索）インターネット<https://www.apple.com/jp/ios/augmented-reality>
【発明の概要】
【発明が解決しようとする課題】
【０００９】
非特許文献１の「ポケモンＧＯ」は、端末を動かすと、そのアングルに追従することができない。また、端末と表示されている仮想オブジェクトの間に、仮想オブジェクトを遮蔽してしまう物（以下、「遮蔽物」）が存在する場合でも、その物を遮蔽物として認識することができないため、遮蔽物を考慮した画像処理（以下、「遮蔽処理」）ができない。
【００１０】
非特許文献２の「ミクさんぽ」は、「Ｔａｎｇｏ」に対応した端末、すなわち、Ｄｅｐｔｈ情報が得られる端末でしか利用することができず、汎用性に欠ける。また、発明者が試したところ、遮蔽処理や、スケールの再現に以下のような課題が存在する。
・壁の正面にキャラクタが立っているとして画面表示されている状態から、端末を壁際に移動し、壁に沿ってキャラクタを撮像すると、本来であれば、キャラクタの横顔（側面）が表示されるべきであるにもかかわらず、正面を向いたキャラクタ画像が表示されることがある；
・壁の正面にキャラクタが立っているとして画面表示されている状態から、端末を壁の反対側に移動させると、本来であれば、キャラクタは壁に遮蔽されるべきであるにもかかわらず、正面を向いたキャラクタ画像が表示されることがある。
【００１１】
非特許文献３の「ＡＲＫｉｔ」は、一部の限られた端末でしか利用できず、また、遮蔽処理ができない。
【００１２】
特許文献１に記載の技術は、ＡＲに関する技術ではなく、ＣＧ画像を生成するためのものである。したがって、１つの視点からみた場合のＣＧ画像しか得ることができず、仮想オブジェクトの任意の角度からの表示（マルチアングル表示）をすることはできない。また、遮蔽処理を行うものではない。
【００１３】
本発明の目的は、特殊な撮像装置ではなく、汎用性のある一般的な撮像装置を用いて、仮想オブジェクトの画像のマルチアングル表示が可能な拡張現実表示システム、拡張現実表示方法、及び、拡張現実表示用コンピュータプログラムを提供することにある。
【００１４】
また、本発明の他の目的は、遮蔽処理が可能な拡張現実表示システム、拡張現実表示方法、及び、拡張現実表示用コンピュータプログラムを提供することにある。
【課題を解決するための手段】
【００１５】
本発明の拡張現実表示システムは、所定の場所に設置したＡＲマーカを含む画像を撮像装置で撮像することで、ＡＲマーカを含む画像を背景画像として取得し、背景画像中のＡＲマーカの画像に代えてデータ記憶部に記憶された仮想オブジェクトの画像を背景画像中に合成して表示画面に表示するものである。
【００１６】
ＡＲマーカは、垂直方向の既知の位置に、垂直方向の長さが既知であるスケール計測用パターンを備え、スケール計測用パターンはＡＲマーカの全周に連続するように設けられている。ＡＲマーカは、全周を撮像可能な三次元形態のものを想定しており、例えば、直立させたポール型、上から吊り下げた吊り下げ型等の形態を含む。
【００１７】
撮像装置は、カメラを内蔵したスマートフォンやタブレット端末等のユーザ端末を想定しているがこれに限られるものではない。例えば、コンピュータプログラムをインストール可能なデジタルカメラ等でもよい。撮像装置は、スケール決定部と、傾斜角測定部と、方位角測定部と、演算部と、仮想オブジェクト・データ取得部と、合成用二次元画像データ生成部と、合成画像生成部とを備えている。
【００１８】
スケール決定部は、背景画像中におけるＡＲマーカのスケール計測用パターンの長さ（Ｖｍｔ）とスケール計測用パターンの実際の長さ（Ｈｍ）とからスケール（Ｓｃｔ）を求める。
【００１９】
傾斜角測定部は、ＡＲマーカを撮像したときの撮像装置の傾斜角（θｔ）を測定する。スマートフォンやタブレット端末等のユーザ端末の場合には、傾斜角測定部は、多くのユーザ端末が搭載している３軸ジャイロセンサ（角速度センサ）等を利用することができる。
【００２０】
方位角測定部は、ＡＲマーカを撮像したときのＡＲマーカに対する撮像装置の位置の方位角（φｔ）を測定する。スマートフォンやタブレット端末等のユーザ端末の場合には、方位角測定部は、多くのユーザ端末が搭載している方位角センサ等を利用することができる。
【００２１】
演算部は、スケール計測用パターンの既知の位置の高さ寸法（Ｈｐ）、スケール（Ｓｃｔ）及び傾斜角（θｔ）に基づいて、撮像時におけるＡＲマーカと撮像装置との間の距離（Ｄｔ）及び撮像装置の高さ（Ｈｔ）を演算する。
【００２２】
仮想オブジェクト・データ取得部は、仮想オブジェクト特定情報に基づいて仮想オブジェクトを特定し、データ記憶部から仮想オブジェクトの三次元画像データを取得する。データ記憶部は、撮像装置内に存在していてもよく、また、撮像装置と電気通信回線を介して接続されたサーバ内に存在していてもよい。
【００２３】
合成用二次元画像データ生成部は、ＡＲマーカと撮像装置との間の距離（Ｄｔ）、撮像装置の高さ（Ｈｔ）、傾斜角（θｔ）及び方位角（φｔ）並びに仮想オブジェクトの三次元画像データに基づいて、仮想オブジェクトの合成用二次元画像データを生成する。そして、合成画像生成部は、ＡＲマーカを含む画像中のＡＲマーカの画像に代えて、仮想オブジェクトの合成用二次元画像データに基づく仮想オブジェクトの画像を背景画像中に合成する。このように構成されているため、本発明によれば、特殊な撮像装置ではなく、汎用性のある一般的な撮像装置を用いて、仮想オブジェクトの画像のマルチアングル表示が可能となる。
【００２４】
なお、ＡＲマーカには、ＡＲマーカの全周に連続するように設けられた、ＡＲマーカの方位角を示す方向認識マークパターンをさらに備えるようにしてもよい。この場合、方位角測定部は、ＡＲマーカを含む画像中の方向認識マークパターンに基づいてＡＲマーカに対する撮像装置の位置の方位角（φｔ）を測定するように構成すればよい。このようにすれば、撮像装置が方位角センサを搭載していないような場合や、ＡＲマーカが設置されている場所の地磁気が安定せず、方位角センサで取得できる方位角に誤差が生じる場合でも、正確に方位角を取得可能である。
【００２５】
演算部が、撮像時におけるＡＲマーカと撮像装置との間の距離（Ｄｔ）及び撮像装置の高さ（Ｈｔ）を演算する手法は任意である。例えば、撮像装置自体が撮像素子の画素数情報を有している場合や、ユーザが利用している撮像装置の機種が特定されることで、撮像素子の画素数情報を特定できる場合には、その画素数情報を利用すれば、容易に演算が可能である。本明細書において、画素数情報とは、被写体に対して、撮像素子の縦方向に並ぶピクセル数、及び、横方向に並ぶピクセル数に関する情報である。
【００２６】
画素数情報を利用できない場合には、仮想オブジェクトの合成を行うに先立って、校正を行い、基準となる基準スケールを取得し、これを利用することもできる。具体的には、スケール決定部は、ＡＲマーカから所定の距離（Ｄｓ）離れた位置からＡＲマーカを含む背景画像を撮像した時の背景画像中のスケール計測用パターンの長さ（Ｖｍｓ）とスケール計測用パターンの実際の長さ（Ｈｍ）とから基準スケール（Ｓｃｓ）を取得し、この基準スケールにも基づいて、ＡＲマーカと撮像装置との間の距離（Ｄｔ）及び撮像装置の高さ（Ｈｔ）を演算することもできる。
【００２７】
ＡＲマーカの周囲に遮蔽物が存在し、撮像装置とＡＲマーカの間に、遮蔽物が位置する場合には、遮蔽処理を行わないと、本来であれば遮蔽物の後ろに表示されるべき仮想オブジェクトが遮蔽物の前に表示されてしまい、違和感のある画像表示になり得る。そこで、本発明の拡張現実表示システムは、遮蔽物を考慮した画像表示を可能にするため、データ記憶部に、ＡＲマーカとＡＲマーカの周囲に存在する固定物までの距離（Ｄｆ）と、ＡＲマーカに対する固定物の位置の方位角（φｆ）と、固定物の高さ（Ｈｆ）を含む固定物に関する固定物データマップをさらに記憶していてもよい。そして、撮像装置の仮想オブジェクト・データ取得部は、固定物データマップも取得し、合成用二次元画像データ生成部は、固定物データマップ並びにＡＲマーカと撮像装置との間の距離（Ｄｔ）及び方位角（φｔ）に基づいて、ＡＲマーカと撮像装置との間に固定物が存在するか否かを判断する。そして、合成用二次元画像データ生成部は、固定物が存在する場合には、固定物による遮蔽データを生成し、遮蔽データを仮想オブジェクトの合成用二次元画像データに重ねて仮想オブジェクトの合成用二次元画像データとするようにしてもよい。このようにすれば、ＡＲマーカの周囲に存在する固定物を考慮した遮蔽処理を行うことができ、違和感のない合成画像を提供することができる。なお、本明細書において「固定物」とは、ＡＲマーカの周囲に存在し、地面、床、壁等に固定され、通常は移動させることができない物のことをいう。
【００２８】
固定物データマップの作成手法は任意である。例えば、ＡＲマーカの設置場所を中心として、ＬＩＤＡＲ（LIght Detection and Ranging）技術を利用した３Ｄスキャナ等の３Ｄスキャナを用いて得られた３次元データに基づいて作成することもできる。
【００２９】
上記遮蔽処理に加えて、または、それとは別に、他の遮蔽処理も行ってもよい。例えば、合成用二次元画像データ生成部は、ＡＲマーカと重なり、ＡＲマーカを遮る移動物が存在するか否かを判断し、移動物が存在する場合には、移動物を抽出して移動物による遮蔽データを生成し、遮蔽データを仮想オブジェクトの合成用二次元画像データに重ねて仮想オブジェクトの合成用二次元画像データとするようにしてもよい。
【００３０】
また、合成用二次元画像データ生成部は、第１の背景画像と、第１の背景画像と方位角だけがずれた第２の背景画像を取得し、第１の背景画像と、第２の背景画像とを比較し、第１の背景画像に含まれているＡＲマーカと、第２の背景画像に含まれているＡＲマーカとの間に生じている基準視差よりも大きな視差が生じている移動物及び固定物の少なくとも一方をターゲットとして抽出して、ターゲットによる遮蔽データを生成し、遮蔽データを仮想オブジェクトの合成用二次元画像データに重ねて仮想オブジェクトの合成用二次元画像データとするようにしてもよい。第１の背景画像と第２の背景画像は、静止画を撮像するモードで左右に撮像装置をずらして１枚ずつ取得してもよく、動画を撮像するモードで連続的に撮像した中から適切なもの（例：左右のずれが２０ｃｍ程度のもの）を選択して取得してもよい。撮像装置が、２枚の背景画像を同時に取得可能な二眼式のものであれば、それによって得られた背景画像を利用することもできる。
【００３１】
仮想オブジェクト特定情報は、仮想オブジェクトを特定できれば、どのようなものでもよい。例えば、ＡＲマーカに、ＡＲマーカの全周に連続するように設けられた識別コードパターンを備えておき、仮想オブジェクト・データ取得部が、ＡＲマーカを含む画像中の識別コードパターンに基づいて、仮想オブジェクトを特定してもよい。識別コードパターンは、どの角度からＡＲマーカを撮像した場合でも仮想オブジェクトを特定できるように、同じ識別コードが複数繰り返し連続して設けられているものが好ましい。他に、例えば、撮像装置がＧＰＳ機能を搭載している場合には、ＡＲマーカを撮像したときのＧＰＳによる座標情報（緯度・経度）に基づいて、ユーザが撮像したＡＲマーカを特定し、仮想オブジェクトを特定してもよい。
【００３２】
本発明は拡張現実表示方法としても把握する（または表現する）ことができる。
【００３３】
所定の場所に設置したＡＲマーカを含む画像を撮像装置で撮像することで、ＡＲマーカを含む画像を背景画像として取得し、背景画像中のＡＲマーカの画像に代えてデータ記憶部に記憶された仮想オブジェクトの画像を背景画像中に合成して表示画面に表示する拡張現実表示方法であって、ＡＲマーカは、垂直方向の既知の位置に、垂直方向の長さが既知であるスケール計測用パターンを備え、スケール計測用パターンはＡＲマーカの全周に連続するように設けられており、背景画像中におけるＡＲマーカのスケール計測用パターンの長さ（Ｖｍｔ）とスケール計測用パターンの実際の長さ（Ｈｍ）とからスケール（Ｓｃｔ）を求めるスケール算出ステップと、ＡＲマーカを撮像したときの撮像装置の傾斜角（θｔ）を測定する傾斜角測定ステップと、ＡＲマーカに対する撮像装置の位置の方位角（φｔ）を測定する方位角測定ステップと、スケール計測用パターンの既知の位置の高さ寸法（Ｈｐ）、スケール（Ｓｃｔ）及び傾斜角（θｔ）に基づいて、撮像時におけるＡＲマーカと撮像装置との間の距離（Ｄｔ）及び撮像装置の高さ（Ｈｔ）を演算する演算ステップと、仮想オブジェクト特定情報に基づいて仮想オブジェクトを特定し、データ記憶部から仮想オブジェクトの三次元画像データを取得する仮想オブジェクト・データ取得ステップと、ＡＲマーカと撮像装置との間の距離（Ｄｔ）、撮像装置の高さ（Ｈｔ）、傾斜角（θｔ）及び方位角（φｔ）並びに仮想オブジェクトの三次元画像データに基づいて、仮想オブジェクトの合成用二次元画像データを生成する仮想オブジェクトの合成用二次元画像データ生成ステップと、ＡＲマーカを含む画像中のＡＲマーカの画像に代えて、仮想オブジェクトの合成用二次元画像データに基づく仮想オブジェクトの画像を背景画像中に合成する合成画像生成ステップとを撮像装置が実行する。
【００３４】
本発明は表示データ作成用コンピュータプログラムとしても把握する（または表現する）ことができる。
【００３５】
所定の場所に設置したＡＲマーカを含む画像を撮像装置で撮像することで、ＡＲマーカを含む画像を背景画像として取得し、背景画像中のＡＲマーカの画像に代えてデータ記憶部に記憶された仮想オブジェクトの画像を背景画像中に合成して表示画面に表示するために、撮像装置に搭載されたコンピュータにインストールされて実行される拡張現実表示用コンピュータプログラムであって、ＡＲマーカは、垂直方向の既知の位置に、垂直方向の長さが既知であるスケール計測用パターンを備え、スケール計測用パターンはＡＲマーカの全周に連続するように設けられており、背景画像中におけるＡＲマーカのスケール計測用パターンの長さ（Ｖｍｔ）とスケール計測用パターンの実際の長さ（Ｈｍ）とからスケール（Ｓｃｔ）を求めるスケール決定部と、ＡＲマーカを撮像したときの撮像装置の傾斜角（θｔ）を測定する傾斜角測定部と、ＡＲマーカに対する撮像装置の位置の方位角（φｔ）を測定する方位角測定部と、スケール計測用パターンの既知の位置の高さ寸法（Ｈｐ）、スケール（Ｓｃｔ）及び傾斜角（θｔ）に基づいて、撮像時におけるＡＲマーカと撮像装置との間の距離（Ｄｔ）及び撮像装置の高さ（Ｈｔ）を演算する演算部と、仮想オブジェクト特定情報に基づいて仮想オブジェクトを特定し、データ記憶部から仮想オブジェクトの三次元画像データを取得する仮想オブジェクト・データ取得部と、ＡＲマーカと撮像装置との間の距離（Ｄｔ）、撮像装置の高さ（Ｈｔ）、傾斜角（θｔ）及び方位角（φｔ）並びに仮想オブジェクトの三次元画像データに基づいて、仮想オブジェクトの合成用二次元画像データを生成する仮想オブジェクトの合成用二次元画像データ生成部と、ＡＲマーカを含む画像中のＡＲマーカの画像に代えて、仮想オブジェクトの合成用二次元画像データに基づく仮想オブジェクトの画像を背景画像中に合成する合成画像生成部とをコンピュータ内に実現するように構成されている。なおこのプログラムをコンピュータ読み取り可能な記録媒体に記録してもよいのはもちろんである。
【図面の簡単な説明】
【００３６】
【図１】本実施の形態の拡張現実表示用コンピュータプログラムを実行することで実現される拡張現実表示システムの一例を示すブロック図である。
【図２】スケール決定部２７Ａが基準スケール（Ｓｃｓ）を取得するまでの処理の流れを示すフローチャートである。
【図３】ＡＲマーカと校正用基準位置の位置関係を示す図であり、（Ａ）は、概略平面図、（Ｂ）は、概略斜視図である。
【図４】撮像時のＡＲマーカ３とユーザ端末５の状態を示す模式図である。
【図５】撮像によって得られる校正用画像の一例である。
【図６】合成画像を表示するまでの処理の流れを示すフローチャートである。
【図７】撮像時のＡＲマーカ３とユーザ端末５の状態を示す模式図である。
【図８】撮像によって得られる背景画像の一例である。
【図９】（Ａ）及び（Ｂ）は、異なる位置からユーザ端末５でＡＲマーカ３を撮像する様子を示しており、（Ｃ）は、位置１から、（Ｄ）は、位置２から撮像した場合に、ユーザ端末５の表示画面２９に表示される合成画像の例である。
【図１０】（Ａ）〜（Ｃ）は、ＡＲマーカの方位角を示す方向認識マークパターン３１を備えたＡＲマーカ３の例である。
【図１１】第２の実施の形態の拡張現実表示システムを用いて、合成画像を表示するまでの処理の流れを示すフローチャートである。
【図１２】固定物データマップを作成するまでのフローチャートである。
【図１３】３Ｄスキャナによって固定物データマップを作成する様子を示す図である。
【図１４】（Ａ）〜（Ｄ）は、固定物データマップを利用した固定物の遮蔽処理の例である。
【図１５】（Ａ）〜（Ｃ）は、移動物の遮蔽処理の例である。
【図１６】第３の実施の形態の拡張現実表示システムを用いて、合成画像を表示するまでの処理の流れを示すフローチャートである。
【図１７】（Ａ）は第１の背景画像、（Ｂ）は第２の背景画像の例を示す図である。
【図１８】差分画像の例である。
【図１９】遮蔽データを重ねた仮想オブジェクトの合成用二次元画像データの例である。
【図２０】ユーザ端末５の表示画面２９に表示される合成画像の例である。
【発明を実施するための形態】
【００３７】
以下、図面を参照して本発明の拡張現実表示システム、拡張現実表示方法、及び、拡張現実表示用コンピュータプログラムの実施の形態を詳細に説明する。
【００３８】
＜第１の実施の形態＞
［全体構成］
図１は、本実施の形態の拡張現実表示用コンピュータプログラムを実行することで実現される拡張現実表示システムの一例を示すブロック図である。本実施の形態の拡張現実表示システム１は、ＡＲマーカ３と、ユーザ端末５と、管理サーバ７とから構成されている。
【００３９】
本実施の形態の拡張現実表示システム１は、ＡＲマーカ３を含む画像をユーザ端末（撮像装置）５で撮像することで、ＡＲマーカ３を含む画像を背景画像として取得し、背景画像中のＡＲマーカ３の画像に代えて仮想オブジェクトの画像を背景画像中に合成して表示画面に表示するものである。
【００４０】
最近では、アニメーション等のコンテンツの舞台になった場所や縁のある場所を宗教的な場所になぞらえて「聖地」と呼び、「聖地」を訪れる行為を「巡礼」と呼ぶことがある。本実施の形態の拡張現実表示システム１を利用すれば、例えば、仮想オブジェクトとして、コンテンツに登場するキャラクタを採用し、ＡＲマーカ３を「聖地」に設置することで、撮像装置５を介して、あたかも「聖地」にキャラクタが現れたように撮像装置のユーザに見せ、また、ユーザに写真撮影させることができる。
【００４１】
本実施の形態では、ＡＲマーカ３は、ポール９と、ポール９に設けられたスケール計測用パターン１１と、識別コードパターン１３とを備えている。スケール計測用パターン１１は、ポール９の垂直方向の既知の位置に設けられており、垂直方向の長さが既知である。本実施の形態では、地面からスケール計測用パターン１１の中心点までの高さ（Ｈｐ）を１５００ｍｍ、スケール計測用パターン１１自体の垂直方向の長さ（Ｈｍ）を３００ｍｍに設定してある。スケール計測用パターン１１は、ＡＲマーカ３の他の部分及びＡＲマーカ３の周囲と同化してしまわないように、発色の強い色彩で区別可能に構成してある。識別コードパターン１３は、仮想オブジェクトを特定するための１次元バーコードであり、識別コードパターン１３を読み込むことで、仮想オブジェクトを特定する仮想オブジェクト特定情報を得ることができる。識別コードパターン１３は、どの角度からＡＲマーカ３を撮像した場合でも仮想オブジェクトを特定できるように、同じ識別コードが複数繰り返し連続して設けられている。スケール計測用パターン１１と識別コードパターン１３は、ポール９の全周に連続するように設けられている。なお、添付の図では、便宜上、識別コードパターン１３の図示を省略していることがある。
【００４２】
ユーザ端末５は、カメラを内蔵した、携帯電話、スマートフォン、パソコン等であり、本実施の形態では、撮像装置として機能するものである。ユーザ端末５は、汎用端末であり、電気通信回線ＮＷと接続するための通信部１５、カメラ部１７、角速度センサ１８、方位角センサ１９、ＧＰＳ２１、タッチパネル等の入力部２３、データ記憶部２５、制御部２７、及び、表示画面２９を有している。本システムのユーザは、予め、自身のユーザ端末５に拡張現実表示用コンピュータプログラムをインストールしておく。これにより、拡張現実表示用コンピュータプログラムを実行することで、該ユーザ向けに拡張現実表示システム１が構築される。ユーザは自身のユーザ端末５を操作することで、拡張現実表示用コンピュータプログラムを介して、拡張現実表示システム１を利用することができる。
【００４３】
ユーザ端末５に拡張現実表示用コンピュータプログラムをインストールすることで、ユーザ端末５には、スケール決定部２７Ａと、傾斜角測定部２７Ｂと、方位角測定部２７Ｃと、演算部２７Ｄと、仮想オブジェクト・データ取得部２７Ｅと、合成用二次元画像データ生成部２７Ｆと、合成画像生成部２７Ｇが実現される。
【００４４】
スケール決定部２７Ａは、背景画像中におけるＡＲマーカ３のスケール計測用パターン１１の長さ（Ｖｍｔ）とスケール計測用パターン１１の実際の長さ（Ｈｍ）とからスケール（Ｓｃｔ）を求める。また、スケール決定部２７Ａは、後述の校正時には、基準スケール（Ｓｃｓ）も取得するようになっている。
【００４５】
傾斜角測定部２７Ｂは、角速度センサ１８からの出力に基づいて、ＡＲマーカ３を撮像したときのユーザ端末３の傾斜角（θｓ及びθｔ）を測定する。
【００４６】
方位角測定部２７Ｃは、方位角センサ１９からの出力に基づいて、ＡＲマーカ３を撮像したときのＡＲマーカ３に対する撮像装置の位置の方位角（φｔ）を測定する。
【００４７】
演算部２７Ｄは、スケール計測用パターン１１の中心点までの高さ（Ｈｐ）、スケール（Ｓｃｔ）及び傾斜角（θｔ）に基づいて、撮像時におけるＡＲマーカ３とユーザ端末５との間の距離（Ｄｔ）及びユーザ端末５の高さ（Ｈｔ）を演算する。
【００４８】
仮想オブジェクト・データ取得部２７Ｅは、ＡＲマーカ３を含む画像中の識別コードパターン１３に基づいて仮想オブジェクトを特定し、データ記憶部から仮想オブジェクトの三次元画像データを取得する。本実施の形態の場合には、三次元画像データは、管理サーバ７に保存されており、仮想オブジェクトが特定されると、管理サーバ７から三次元画像データをダウンロードし、ユーザ端末５のデータ記憶部２５に保存する。
【００４９】
合成用二次元画像データ生成部２７Ｆは、ＡＲマーカ３とユーザ端末５との間の距離（Ｄｔ）、ユーザ端末５の高さ（Ｈｔ）、傾斜角（θｔ）及び方位角（φｔ）並びに仮想オブジェクトの三次元画像データに基づいて、仮想オブジェクトの合成用二次元画像データを生成する。
【００５０】
合成画像生成部２７Ｇは、ＡＲマーカ３を含む画像中のＡＲマーカ３の画像に代えて、仮想オブジェクトの合成用二次元画像データに基づく仮想オブジェクトの画像を背景画像中に合成する。
【００５１】
［フローチャート］
〔校正（基準スケールの取得）〕
図２のフローチャート並びに図３及び図４を用いて、スケール決定部２７Ａが基準スケール（Ｓｃｓ）を取得するまでの処理の流れを説明する。なお、この処理は、ユーザ端末５自体が撮像素子の画素数情報（被写体に対して、カメラ部１７の撮像素子の縦方向に並ぶピクセル数、及び、横方向に並ぶピクセル数に関する情報）を有している場合や、ユーザが利用しているユーザ端末５の機種が特定されることで、撮像素子の画素数情報を特定できる場合には不要な処理である（撮像素子の画素数情報を特定できる場合には、画素数情報とスケール計測用パターン１１の実際の長さ（Ｈｍ）から、基準スケール（Ｓｃｓ）を求める）。
【００５２】
前提として、図３（Ａ）及び（Ｂ）に示すように、ＡＲマーカ３の近くに、校正時にＡＲマーカ３を撮像するための校正用基準位置ＣＰが設定されている。本実施の形態では、校正用基準位置ＣＰは、ＡＲマーカ３の東の位置、且つ、ＡＲマーカ３から所定の距離（Ｄｓ：本実施の形態では、３０００ｍｍ）離れた位置に設定されている。
【００５３】
ユーザがユーザ端末５を操作して拡張現実表示用コンピュータプログラムを起動すると（ステップＳＴ１）、スケール決定部２７Ａは、校正の要否を判断する（ステップＳＴ２）。校正が不要な場合には、校正処理は行わず、図６のフローに移行する。校正が必要な場合、スケール決定部２７Ａは、ユーザに対して、所定の位置に存在する校正用基準位置ＣＰへの移動を促す表示を表示画面２９に表示する（ステップＳＴ３）。ユーザは、表示に促されて校正用基準位置ＣＰへ移動し、その位置からＡＲマーカ３を含む背景画像を撮像し、校正用画像を取得する（ステップＳＴ４）。図４は、撮像時のＡＲマーカ３とユーザ端末５の状態を示す模式図であり、図５は、撮像によって得られる校正用画像の図である。スケール決定部２７Ａは、校正用画像内に表示されているスケール計測用パターン１１の長さ（Ｖｍｓ）に相当する縦方向の画素数をカウントする。また、ユーザ端末５の撮像時のコサインエラーを補正するため、撮像時のユーザ端末５の傾斜角（θｓ）を取得する（ステップＳＴ５）。次に、スケール決定部２７Ａは、下記式（１）に基づいて、基準スケール（Ｓｃｓ）を演算する（ステップＳＴ６）：
Ｓｃｓ＝（Ｈｍ／Ｖｍｓ）／ｃｏｓθｓ  ・・・（１）
なお、Ｓｃｓの単位は、［ｍｍ／画素数］である。
【００５４】
〔撮影〜合成画像の表示〕
図６のフローチャート並びに図７乃至図９を用いて、合成画像を表示するまでの処理の流れを説明する。ユーザは、ユーザ端末５を操作して拡張現実表示用コンピュータプログラムを起動し、ＡＲマーカ３にカメラ部１７のレンズを向ける（ステップＳＴ１１）。図７は、撮像時のＡＲマーカ３とユーザ端末５の状態を示す模式図であり、図８は、撮像によって得られる背景画像の図である。ユーザ端末５は得られた画像を連続的に表示するようになっており、図７及び図８は、その１コマを示している。仮想オブジェクト・データ取得部２７Ｅは、取得したＡＲマーカ３を含む背景画像から、識別コードパターン１３を取得し（ステップＳＴ１２）、識別コードパターン１３を読み取って、仮想オブジェクトに対応する識別ＩＤを特定し（ステップＳＴ１３）、当該識別ＩＤに対応する仮想オブジェクトの三次元画像データを含む仮想オブジェクトに関する各種情報を管理サーバ７から取得する（ステップＳＴ１４）。仮想オブジェクトに関する各種情報には、例えば、仮想オブジェクトのポーズに関する情報、モーションデータ、表情やリップモーションデータ（唇の動きに関する情報）、音声データ等が含まれる。
【００５５】
次に、スケール決定部２７Ａは、背景画像中におけるＡＲマーカ３のスケール計測用パターン１１の長さ（Ｖｍｔ）と、背景画像中における画像の中心点Ｏ１とスケール計測用パターン１１の中心点Ｏ２の間の距離（Ｐｐｔ）を測定する。具体的には、表示されているスケール計測用パターン１１の長さ（Ｖｍｔ）に相当する縦方向の画素数と、画像の中心点Ｏ１とスケール計測用パターン１１の中心点Ｏ２の間の距離（Ｐｐｔ）に相当する縦方向の画素数をカウントする。併せて、傾斜角測定部２７Ｂは、角速度センサ１８からの出力に基づいて、ユーザ端末３の傾斜角（θｔ）を測定し、方位角測定部２７Ｃは、方位角センサ１９からの出力に基づいて、ＡＲマーカ３に対するユーザ端末３の位置の方位角（φｔ）を測定する（ステップＳＴ１５）。
【００５６】
スケール決定部２７Ａは、下記式（２）に基づいて、スケール（Ｓｃｔ）を演算する（ステップ１６）：
Ｓｃｔ＝（Ｈｍ／Ｖｍｔ）／ｃｏｓθｔ  ・・・（２）
続いて、演算部２７Ｄは、撮像時におけるＡＲマーカ３とユーザ端末５との間の距離（Ｄｔ）及びユーザ端末５の高さ（Ｈｔ）を演算する（ステップＳＴ１７）。具体的には、距離（Ｄｔ）は下記式（３）に基づいて求め、高さ（Ｈｔ）は下記式（４）に基づいて求める：
Ｄｔ＝Ｄｓ（Ｓｃｔ／Ｓｃｓ）  ・・・（３）
Ｈｔ＝Ｈｐ−Δｈｔ＋Ｄｔ・ｔａｎθｔ
＝Ｈｐ−Δｈｔ＋Ｄｓ（Ｓｃｔ／Ｓｃｓ）ｔａｎθｔ  ・・・（４）
ただし、Δｈｔは、撮像素子に沿って延びる仮想平面と直交し、且つ、撮像素子の中心を通る仮想中心線とＡＲマーカ３に沿って伸びる仮想線の交点と、スケール計測用パターン１１の中心点の間の距離であり、Δｈｔ＝Ｐｐｔ・Ｓｃｔにより求まる値である。なお、式（１）〜式（４）では、ユーザ端末５の傾斜角（θｔ及びθｓ）は絶対値で表現してある。
【００５７】
合成用二次元画像データ生成部２７Ｆは、ＡＲマーカ３とユーザ端末５との間の距離（Ｄｔ）、ユーザ端末５の高さ（Ｈｔ）、傾斜角（θｔ）及び方位角（φｔ）並びに仮想オブジェクトの三次元画像データに基づいて、仮想オブジェクトの合成用二次元画像データＯＤを生成する（ステップＳＴ１８）。そして、合成画像生成部２７Ｇは、ＡＲマーカ３を含む画像中のＡＲマーカ３の画像に代えて、仮想オブジェクトの合成用二次元画像データに基づく仮想オブジェクトの画像ＯＩを背景画像中に合成する（ステップＳＴ１９）。図９（Ａ）及び（Ｂ）は、位置１と位置２の異なる２つの位置からユーザ端末５でＡＲマーカ３を撮像する様子を示しており、図９（Ｃ）は、位置１から、図９（Ｄ）は、位置２から撮像した場合に、ユーザ端末５の表示画面２９に表示される合成画像の例である。ＡＲマーカ３にカメラ部１７のレンズを向けている間は、ステップＳＴ１５〜ステップＳＴ１９が繰り返される（ステップＳＴ２０、ステップＳＴ２１）。
【００５８】
このようにすることにより、ユーザ端末５を介してＡＲマーカ３を含む場所を撮像させることで、ＡＲマーカ３の位置に、あたかも仮想オブジェクト（キャラクタ）が存在するかのように見せ、また、仮想オブジェクト（キャラクタ）と共に写真や動画を撮ることを可能にさせることができる。
【００５９】
［方向認識マークパターン］
図１０（Ａ）〜（Ｃ）は、ＡＲマーカの方位角を示す方向認識マークパターン３１を備えたＡＲマーカ３の例である。方向認識マークパターン３１は、図１０（Ｂ）に示すように、ＡＲマーカ３の全周に連続するように設けられたアブソリュート・エンコーダ・パターンであり、図１０（Ｂ）及び（Ｃ）に示すように、予め定めた方位角に、予め定めたパターン部分が配置されるようになっている。方位角測定部２７Ｃは、撮像した背景画像からアブソリュート・エンコーダ・パターンを読み取ることで、撮像時の方位角を測定することが可能である。方向認識マークパターン３１を備えることで、ユーザ端末５が方位角センサを搭載していないような場合や、ＡＲマーカ３が設置されている場所の地磁気が安定せず、方位角センサ１９で取得できる方位角に誤差が生じる場合でも、正確に方位角を取得可能である。
【００６０】
＜第２の実施の形態＞
図１１乃至図１４を用いて、第２の実施の形態の拡張現実表示システムを説明する。第２の実施の形態の拡張現実表示システムは、仮想オブジェクトを遮蔽する遮蔽物（固定物及び／または移動物）も考慮して、仮想オブジェクトの合成用二次元画像データを生成する。図１１は、第２の実施の形態の拡張現実表示用コンピュータプログラムを実行することで実現される拡張現実表示システムによる合成画像を表示するまでの処理の流れを示すフローチャートである。図１１のフローチャートは、図６のフローチャートと異なる点についてのみ言及する。
【００６１】
第２の実施の形態では、ステップＳＴ１４で、仮想オブジェクト・データ取得部２７Ｅは、管理サーバ７から、固定物データマップも取得する。固定物データマップは、図１２及び図１３に示す方法で、ＡＲマーカ３の設置後に、拡張現実表示システム１の運営者側で予め準備しておくものである。
【００６２】
図１２は、予め準備しておく固定物データマップを作成するまでのフローチャートである。ＡＲマーカ３を所定の位置に設置したら（ステップＳＴ３１）、図１３に示すように、ＡＲマーカ３の上部に、３Ｄスキャナ３３を設置する（ステップＳＴ３２）。本実施の形態では、３Ｄスキャナ３３は、ＬＩＤＡＲ（LIght Detection and Ranging）技術を利用した機器である。設置した３Ｄスキャナ３３を起動し、ＡＲマーカ３の周囲にレーザ光を照射し、反射光を用いて、ＡＲマーカ３の周囲に存在する固定物までの距離（Ｄｆ）と、ＡＲマーカ３に対する固定物の位置の方位角（φｆ）と、固定物の高さ（Ｈｆ）を測定する（ステップＳＴ３３）。また、併せて、ＡＲマーカ３が設置されている位置に関するＧＰＳデータ（緯度・経度）も取得する（ステップＳＴ３４）。そして、得られたデータに基づいて、ＡＲマーカ３の周囲に存在する固定物に関する固定物データマップを作成する（ステップＳＴ３５）。
【００６３】
第２の実施の形態では、ステップＳＴ１８（ステップＳＴ１８ａ〜１８ｄ）で、合成用二次元画像データ生成部２７Ｆは、仮想オブジェクトを遮蔽する遮蔽物（固定物及び／または移動物）も考慮して、仮想オブジェクトの合成用二次元画像データを生成する。ステップＳＴ１８ａでは、図６のステップＳＴ１８と同様に仮想オブジェクトの合成用二次元画像データを生成し、ステップＳＴ１８ｂで、遮蔽物の有無を判断する。遮蔽物が存在すると判断した場合には、遮蔽データを生成し（ステップＳＴ１８ｃ）、遮蔽データを仮想オブジェクトの合成用二次元画像データに重ねて仮想オブジェクトの合成用二次元画像データとする（ステップＳＴ１８ｄ）。遮蔽物が存在しないと判断した場合には、遮蔽処理は行わない。
【００６４】
図１４（Ａ）〜（Ｄ）は、遮蔽物が固定物である場合の遮蔽処理の一例である。図１４（Ａ）は、ユーザ端末５による撮像を行う位置から、ＡＲマーカ３を見た様子を示す図である。図１４（Ａ）に示すように、ＡＲマーカ３とユーザ端末５の間には、固定物（この例の場合には、「灯籠」）が存在している。合成用二次元画像データ生成部２７Ｆは、固定物データマップ並びにＡＲマーカ３とユーザ端末５の間の距離（Ｄｔ）及び方位角（φｔ）に基づいて、ＡＲマーカ３とユーザ端末５の間に固定物が存在するか否かを判断する（ステップＳＴ１８ｂ）。この例では、合成用二次元画像データ生成部２７Ｆは、固定物が存在すると判断し、固定物データマップから図１４（Ｂ）の遮蔽データＢＤを生成し（ステップＳＴ１８ｃ）、図１４（Ｃ）に示すように、遮蔽データＢＤを仮想オブジェクトの合成用二次元画像データＯＤに重ねて仮想オブジェクトの合成用二次元画像データとする（ステップＳＴ１８ｄ）。図１４（Ｄ）は、ユーザ端末５の表示画面２９に表示される合成画像の例である。
【００６５】
図１５（Ａ）〜（Ｃ）は、遮蔽物が移動物である場合の遮蔽処理の一例である。図１５（Ａ）は、ユーザ端末５による撮像を行う位置から、ＡＲマーカ３を見た様子を示す図である。図１５（Ａ）に示すように、ＡＲマーカ３とユーザ端末５の間には、移動物（この例の場合には、「人物」）が存在し、しかも、移動物は、その一部（人物の「腕」）がＡＲマーカ３と重なっている。合成用二次元画像データ生成部２７Ｆは、ＡＲマーカ３を遮る移動物が存在するか否かを判断する（ステップＳＴ１８ｂ）。この例では、合成用二次元画像データ生成部２７Ｆは、ＡＲマーカ３を遮っている移動物が存在すると判断し、移動物を抽出し、移動物による遮蔽データＢＤを生成し（ステップＳＴ１８ｃ）、図１５（Ｂ）に示すように、遮蔽データＢＤを仮想オブジェクトの合成用二次元画像データＯＤに重ねて仮想オブジェクトの合成用二次元画像データとする（ステップＳＴ１８ｄ）。図１５（Ｃ）は、ユーザ端末５の表示画面２９に表示される合成画像の例である。
【００６６】
＜第３の実施の形態＞
図１６乃至図２０を用いて、第３の実施の形態の拡張現実表示システムを説明する。第３の実施の形態の拡張現実表示システムは、視差を利用して、仮想オブジェクトを遮蔽する遮蔽物（固定物及び／または移動物）も考慮して、仮想オブジェクトの合成用二次元画像データを生成する。図１６は、第３の実施の形態の拡張現実表示用コンピュータプログラムを実行することで実現される拡張現実表示システムによる合成画像を表示するまでの処理の流れを示すフローチャートである。図１６のフローチャートは、図６のフローチャートと異なる点についてのみ言及する。なお、必要に応じて、以下では、必要に応じて、第２の背景画像中におけるＡＲマーカに「′」の符号を付して、第１の背景画像中におけるＡＲマーカと区別する場合がある。
【００６７】
第３の実施の形態では、ステップＳＴ１５ａで、第１の背景画像（図１７（Ａ））と、第１の背景画像と方位角がずれた第２の背景画像（図１７（Ｂ））の２枚の背景画像を取得し、また、それぞれの撮像時のユーザ端末３の傾斜角（θｔ）と方位角（φｔ）を測定する。第１及び第２の背景画像は、静止画を撮像するモードで左右にユーザ端末５をずらして１枚ずつ取得してもよく、動画を撮像するモードで連続的に撮像した中から適切なもの（例：左右のずれが２０ｃｍ程度のもの）を選択して取得してもよい。また、ユーザ端末５のカメラ部１７が、２枚の背景画像を同時に取得可能な二眼式のものであれば、それによって得られた２枚の背景画像を利用することもできる。スケール決定部２７Ａは、第２の背景画像から、背景画像中におけるＡＲマーカ３′のスケール計測用パターン１１の長さ（Ｖｍｔ）と、背景画像中における画像の中心点Ｏ１とスケール計測用パターン１１の中心点Ｏ２の間の距離（Ｐｐｔ）を測定する（ステップＳＴ１５ｂ）。スケール決定部２７Ａは、スケール（Ｓｃｔ）を演算し（ステップＳＴ１６）、演算部２７Ｄは、撮像時におけるＡＲマーカ３′とユーザ端末５との間の距離（Ｄｔ）及びユーザ端末５の高さ（Ｈｔ）を演算する（ステップＳＴ１７）。合成用二次元画像データ生成部２７Ｆは、ＡＲマーカ３′とユーザ端末５との間の距離（Ｄｔ）、ユーザ端末５の高さ（Ｈｔ）、傾斜角（θｔ）及び方位角（φｔ）並びに仮想オブジェクトの三次元画像データに基づいて、仮想オブジェクトの合成用二次元画像データＯＤを生成する（ステップＳＴ１８ａ）。
【００６８】
次に、本実施の形態では、第１の背景画像と、第２の背景画像を用いて、図１８に示す差分画像を生成し、視差の比較を行う（ステップＳＴ１８ｂ）。具体的には、第１の背景画像に含まれているＡＲマーカ３と、第２の背景画像に含まれているＡＲマーカ３′の間に生じている視差を基準視差ＳＰとし、基準視差ＳＰよりも大きな視差が生じている部分を検出する（ステップＳＴ１８ｃ）。基準視差ＳＰよりも大きな視差が生じている物が存在する場合、その物は、ＡＲマーカ３の前、すなわち、ＡＲマーカ３とユーザ端末５の間に存在するものと判断でき、その物をターゲットＴとして抽出し、ターゲットＴによる遮蔽データを生成し、（ステップＳＴ１８ｄ）、図１９に示すように、遮蔽データＢＤを仮想オブジェクトの合成用二次元画像データＯＤに重ねて仮想オブジェクトの合成用二次元画像データとする（ステップＳＴ１８ｅ）。図２０は、ユーザ端末５の表示画面２９に表示される合成画像の例である。基準視差ＳＰよりも大きな視差が生じている物が存在しない場合は、ＡＲマーカ３とユーザ端末５の間に物は存在しないと判断できるため、遮蔽処理は行わない。
【００６９】
以上、本発明の実施の形態について具体的に説明したが、本発明はこれらの実施の形態に限定されるものではなく、本発明の技術的思想の範囲内で変更が可能であるのは勿論である。例えば、上記実施の形態では、識別コードパターンによって仮想オブジェクトを特定したが、ＡＲマーカを撮像したときのＧＰＳによる座標情報（緯度・経度）に基づいて、ユーザが撮像したＡＲマーカを特定し、仮想オブジェクトを特定することも可能である。この場合には、ＡＲマーカには識別コードパターンは不要である。
【産業上の利用可能性】
【００７０】
本発明によれば、汎用性のある一般的な撮像装置を用いて、仮想オブジェクトの画像のマルチアングル表示が可能な拡張現実表示システム、拡張現実表示方法、及び、拡張現実表示用コンピュータプログラムを提供することができる。また、遮蔽処理が可能である。
【符号の説明】
【００７１】
１  拡張現実表示システム
３  ＡＲマーカ
５  ユーザ端末
７  管理サーバ
９  ポール
１１  スケール計測用パターン
１３  識別コードパターン
１５  通信部
１７  カメラ部
１８  角速度センサ
１９  方位角センサ
２１  ＧＰＳ
２３  入力部
２５  データ記憶部
２７  制御部
２７Ａ  スケール決定部
２７Ｂ  傾斜角測定部
２７Ｃ  方位角測定部
２７Ｄ  演算部
２７Ｅ  仮想オブジェクト・データ取得部
２７Ｆ  合成用二次元画像データ生成部
２７Ｇ  合成画像生成部
２９  表示画面
３１  方向認識マークパターン
３３  ３Ｄスキャナ
【図１】
2020008917.tif 000003
【図２】
2020008917.tif 000004
【図３】
2020008917.tif 000005
【図４】
2020008917.tif 000006
【図５】
2020008917.tif 000007
【図６】
2020008917.tif 000008
【図７】
2020008917.tif 000009
【図８】
2020008917.tif 000010
【図９】
2020008917.tif 000011
【図１０】
2020008917.tif 000012
【図１１】
2020008917.tif 000013
【図１２】
2020008917.tif 000014
【図１３】
2020008917.tif 000015
【図１４】
2020008917.tif 000016
【図１５】
2020008917.tif 000017
【図１６】
2020008917.tif 000018
【図１７】
2020008917.tif 000019
【図１８】
2020008917.tif 000020
【図１９】
2020008917.tif 000021
【図２０】
2020008917.tif 000022