(57)【要約】【課題】  特定の対象物の経時変化を観察するために、対象物の画像を特定の撮像条件下で撮像させることを目的とする。【解決手段】  コンピュータが、撮像装置から第一の画像を取得し、前記第一の画像における基準物の像に基づき推定される該第一の画像の第一の撮像条件と、予め指定された第二の撮像条件との違いに関するガイド情報を出力することを特徴とするガイド方法。【選択図】  図１６
2015082830.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータが、
撮像装置から第一の画像を取得し、
前記第一の画像における基準物の像に基づき推定される該第一の画像の第一の撮像条件と、予め指定された第二の撮像条件との違いに関するガイド情報を出力することを特徴とするガイド方法。
【請求項２】
前記第一の撮像条件は、前記第一の画像の第一の撮像位置および第一の撮像方向の少なくとも一つであって、前記第二の撮像条件は、前記第一の画像よりも前に撮像される第二の画像の第二の撮像位置および第二の撮像方向の少なくとも一つであることを特徴とする請求項１に記載のガイド方法。
【請求項３】
前記第二の撮像条件は、前記第二の画像における前記基準物の他の像に基づき生成されることを特徴とする請求項２に記載のガイド方法。
【請求項４】
前記コンピュータは、
前記第一の画像から前記基準物を認識し、
前記基準物の前記像に基づき、前記基準物を基準とする空間における前記第一の撮像位置および前記第一の撮像方向の少なくとも一つを算出し、
前記第一の撮像位置と前記第二の撮像位置との第一の差分、前記第一の撮像方向と前記第二の撮像方向との第二の差分の少なくとも一つを算出し、
前記第一の差分または前記第二の差分に基づき、前記ガイド情報を生成することを特徴とする請求項２または３のいずれか一項に記載のガイド方法。
【請求項５】
前記ガイド情報は、前記第一の撮像位置を前記第二の撮像位置に一致させる方向または、前記第一の撮像方向を前記第二の撮像方向に一致させる方向を示す矢印を含むことを特徴とする請求項４に記載のガイド方法。
【請求項６】
前記ガイド情報は、前記第二の画像における前記基準物の領域を表示する情報であることを特徴とする請求項２または３のいずれか一項に記載のガイド方法。
【請求項７】
前記ガイド情報は、前記第一の画像上に、前記第二の画像における前記基準物の前記領域を示す矩形を、前記領域と同じ位置に表示する情報であることを特徴とする請求項６記載のガイド方法。
【請求項８】
第一の画像を撮像する撮像部と、
前記第一の画像における基準物の像に基づき推定される該第一の画像の第一の撮像条件と、予め指定された第二の撮像条件との違いに関するガイド情報を出力する制御部とを有することを特徴とする情報処理装置。
【請求項９】
コンピュータに、
撮像装置から第一の画像を取得し、
前記第一の画像における基準物の像に基づき推定される該第一の画像の第一の撮像条件と、予め指定された第二の撮像条件との違いに関するガイド情報を出力する処理を実行させることを特徴とするガイドプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、観察対象の画像を撮像する際のガイドを行う技術に関する。
【背景技術】
【０００２】
保守管理業務を容易化するために、複数の画像データを重ね合わせ、一枚の静止画を生成する表示装置が知られている（例えば、特許文献１）。当該表示装置は、各画像の絶対的な位置および複数の画像データ間での相対的な位置を判断しつつ、互いの位置が対応するように、静止画を生成する。なお、ビデオカメラを所定の方向に向けた後、ビデオカメラを搭載する自動車が被写体に沿って走行することで、複数の画像データが採取される。当該表示装置は、建物や道路・橋などの保守管理業務において、橋梁から道路、のり面などの構造物を一枚の静止画として管理することを目的とする。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００１−１４３１６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
点検業務等においては、対象物を異なる時刻に撮像した複数の画像を比較することが行われる。この場合には、複数の画像が略同一の位置から撮像されていることが、比較作業を正確かつ容易に行うためには好ましい。
【０００５】
そこで、例えば、複数の画像を略同一の位置から撮像するために、カメラを物理的に固定する手法が考えられる。しかしながら、撮像対象が複数存在する場合には、撮像対象それぞれにカメラを設けなくてはならない。
【０００６】
また、特許文献１に開示の表示装置が静止画を合成する際には、合成のもととなる複数の画像データは、作業者がビデオカメラを所定の方向に向けることで採取される。しかし、ビデオカメラの方向は作業者の裁量に起因するため、合成される静止画は、必ずしも、比較作業に適した静止画となるとは限らない。
【０００７】
そこで、本実施例に開示の技術は、特定の対象物の経時変化を観察するために、対象物の画像を特定の撮像条件下で撮像させることを目的とする。
【課題を解決するための手段】
【０００８】
上記課題を解決する為に、ひとつの実施態様において、コンピュータが、撮像装置から第一の画像を取得し、前記第一の画像における基準物の像に基づき推定される該第一の画像の第一の撮像条件と、予め指定された第二の撮像条件との違いに関するガイド情報を出力する。
【発明の効果】
【０００９】
本発明の一観点によれば、対象物の画像を特定の撮像条件下で撮像させることで、特定の対象物の経時変化を、容易に観察することができる。
【図面の簡単な説明】
【００１０】
【図１】図１Ａおよび図１Ｂは、異なる時刻に、同じ観察対象を撮像した２枚の画像を示す。
【図２】図２は、合成画像のイメージ図である。
【図３】図３は、カメラ座標系とマーカー座標系との関係を示す。
【図４】図４は、カメラ座標系とマーカー座標系とにおけるＡＲオブジェクトＥの例を示す。
【図５】図５は、マーカー座標系からカメラ座標系への変換行列Ｍと、変換行列Ｍ内の回転行列Ｒを示す。
【図６】図６は、回転行列Ｒ１、Ｒ２およびＲ３を示す。
【図７】図７Ａおよび図７Ｂは、異なる撮像条件で撮像された画像を示す。
【図８】図８は、第一の実施例にかかるシステム構成図である。
【図９】図９は、第一の実施例にかかる情報処理装置の機能ブロック図である。
【図１０】図１０は、テンプレート情報テーブルを示す。
【図１１】図１１は、コンテンツ情報テーブルを示す。
【図１２】図１２は、撮像条件情報テーブルを示す。
【図１３】図１３は、保存用画像テーブルを示す。
【図１４】図１４は、管理装置の機能ブロック図である。
【図１５】図１５は、第一の実施例にかかるガイド処理のフローチャートを示す。
【図１６】図１６は、ガイド表示を含む合成画像の例である。
【図１７】図１７Ａおよび図１７Ｂは、第二の実施例にかかるガイド表示を説明するための図である。
【図１８】図１８は、第二の実施例にかかる情報処理装置の機能ブロック図である。
【図１９】図１９は、第二の実施例における撮像条件情報テーブルを示す。
【図２０】図２０は、第二の実施例にかかる、ガイド処理のフローチャートを示す。
【図２１】図２１は、変型例１における撮像条件情報テーブルを示す。
【図２２】図２２は、ユーザの移動軌跡がマッピングされた地図データのイメージ図である。
【図２３】図２３は、各実施例の情報処理装置のハードウェア構成例である。
【図２４】図２４は、コンピュータ１０００で動作するプログラムの構成例を示す。
【図２５】図２５は、管理装置のハードウェア構成例である。
【発明を実施するための形態】
【００１１】
以下詳細な本発明の実施例に関して説明する。なお、以下の各実施例は、処理の内容を矛盾させない範囲で適宜組み合わせることが可能である。以下、図面に基づいて各実施例について説明する。
【００１２】
まず、初めに、点検業務や保守管理業務において、特定の対象の経時変化を観察する作業について説明する。なお、観察される対象は、以下、観察対象と称する。図１Ａおよび図１Ｂは、異なる時刻に、同じ観察対象を撮像した２枚の画像を示す。
【００１３】
図１Ａおよび図１Ｂは、同じ観察対象である配管上のヒビを撮像した画像であるが、２つの画像各々の撮像条件が異なる。なお、本実施例における撮像条件は、撮像位置および撮像方向である。撮像位置は、カメラの位置である。撮像方向は、画像を撮像する際のカメラの光軸の向きである。
【００１４】
具体的には、図１Ａの画像１００においては、配管１０２上に存在するヒビ１０４が、図１Ｂの画像１０６においては、配管１０８上に存在するヒビ１１０が含まれる。画像１０６は画像１００の後に撮像されたとすると、観察を行う作業者は、ヒビ１１０の大きさや位置がヒビ１０４の状態から変化しているのか、感覚的に把握しにくい。なお、実際には、配管１０２と配管１０８は、同一の物体であって、ヒビ１０２とヒビ１０４も同一の物体である。
【００１５】
仮に、画像１０６が、画像１００が撮像された際の撮像条件と同様の撮像条件で撮像された画像であれば、作業者は、画像１００と画像１０６とを目視で比較するだけで、ヒビ１０４に変化があるのか確認することができる。画像処理によって、画像１００と画像１０６とを比較容易な画像に変換することも考えらえるが、画像処理技術の導入が必要となる。
【００１６】
一方、現在、点検業務や保守管理業務等、さまざまな業務の効率化を目的として、拡張現実（Ａｕｇｍｅｎｔｅｄ  Ｒｅａｌｉｔｙ：ＡＲ）技術が導入されるケースが増えている。ＡＲ技術は、現実空間に対応する３次元の仮想空間を仮想的に設定し、仮想空間上に３次元の物体のモデルデータを配置する。そして、ＡＲ技術は、カメラが撮像した撮像画像に、モデルデータが配置された仮想空間を重ね合わせることで、ある視点（カメラ位置）から見たモデルデータが、現実空間の撮像画像に重畳表示された合成画像を生成する。つまり、合成画像を閲覧するユーザは、合成画像が表示されるディスプレイを通して、現実空間に実在しないモデルデータが、現実空間に存在するかのように認識することができる。
【００１７】
このように、ＡＲ技術によれば、人間の知覚（視覚など）により収集される情報が拡張する。たとえば、モデルデータが、現実空間に存在する物体に関する説明情報や、作業内容の指示情報、注意喚起情報等を示す場合、ユーザは、これらの情報を把握することができる。
【００１８】
図２は、合成画像のイメージ図である。合成画像２００には、現実空間に存在する配管２０２およびヒビ２０４とともに、現実空間には存在しないＡＲオブジェクトＥが含まれる。なお、配管２０２およびヒビ２０４は、各々図１Ａの配管１０２およびヒビ１０４に対応する。なお、ＡＲオブジェクトＥは、仮想空間上に配置される三次元モデルデータである。また、合成画像２００には、現実空間に存在するマーカーＭが含まれる。なお、マーカーＭとＡＲ技術の関係については後述する。
【００１９】
ＡＲ技術が点検業務に適用されている場合、合成画像２００を点検業務の作業者が閲覧することで、配管２０２上の特定の位置にヒビ２０４が存在することを把握することができる。つまり、作業者が現実空間を直接目視しているときと比較して、作業者はヒビ２０４の存在を容易に把握することができる。このように、申し送り事項や作業内容を共有するためのツールとして、ＡＲ技術を導入することで、施設内の点検作業等の効率化が図られている。
【００２０】
つぎに、図２におけるマーカーＭについて説明する。図２におけるヒビ２０４の位置にＡＲオブジェクトＥを表示するためには、ヒビ２０４が存在する現実空間と、ＡＲオブジェクトが配置される仮想空間との位置関係を対応付ける必要がある。現実空間と仮想空間との位置関係を対応付けるために、マーカーＭが用いられる。
【００２１】
ＡＲオブジェクトＥが配置される仮想空間は、マーカーＭを基準とする三次元空間である。つまり、マーカーに対する配置位置や配置姿勢が、ＡＲオブジェクトに設定される。一方、マーカーＭは現実空間にも実在するため、現実空間を撮像した撮像画像からマーカーＭが認識されると、マーカーＭを介して、仮想空間と現実空間とが対応付けられる。なお、ＡＲ技術においては、マーカーＭのように仮想空間の基準となる物体を、基準物と称する。
【００２２】
つまり、ＡＲオブジェクトが仮想空間上に配置される一方で、カメラが撮像した撮像画像内に写り込んだ基準物の見え方（像）に基づいて、カメラと基準物との現実空間における位置関係が求められる。そして、現実空間内に存在する基準物を基準とする仮想空間上の座標と、現実空間におけるカメラと基準物との位置関係により、現実空間に対応する３次元の仮想空間上でのカメラとＡＲオブジェクトの各点の座標との位置関係が求められる。これらの位置関係に基づいて、仮想空間上でカメラが基準物を撮像した場合に得られるＡＲオブジェクトの像が決定される。そして、ＡＲオブジェクトの像が、撮像画像に重畳して表示される。
【００２３】
ここで、合成画像を生成するために、ＡＲオブジェクトの像を演算する方法について、詳細を説明する。図３は、カメラ座標系とマーカー座標系との関係を示す。図３に例示されるマーカーＭは、正方形形状をしており、予めサイズが定められている（例えば１辺の長さが５ｃｍなど）。なお、図３に示されるマーカーＭは正方形形状であるが、複数の視点のうち、いずれの視点から撮像して得られる像に基づいても、カメラからの相対的な位置および向きが判別可能な形状の他の物体が、基準物に用いられてもよい。
【００２４】
カメラ座標系は、（Ｘｃ，Ｙｃ，Ｚｃ）の３次元で構成され、例えばカメラの焦点を原点（原点Ｏｃ）とする。例えば、カメラ座標系のＸｃ−Ｙｃ平面はカメラの撮像素子面と平行な面であり、Ｚｃ軸は撮像素子面に垂直な軸である。
【００２５】
マーカー座標系は、（Ｘｍ，Ｙｍ，Ｚｍ）の３次元で構成され、例えばマーカーＭの中心を原点（原点Ｏｍ）とする。例えば、マーカー座標系のＸｍ−Ｙｍ平面はマーカーＭと平行な面であり、Ｚｍ軸はマーカーＭの面と垂直である。原点Ｏｍは、カメラ座標系においては、座標Ｖ１ｃ（Ｘ１ｃ，Ｙ１ｃ，Ｚ１ｃ）で示される。なお、マーカー座標系で構成される空間が、仮想空間である。
【００２６】
また、カメラ座標系（Ｘｃ，Ｙｃ，Ｚｃ）に対するマーカー座標系（Ｘｍ，Ｙｍ，Ｚｍ）の回転角は、回転座標Ｇ１ｃ（Ｐ１ｃ，Ｑ１ｃ，Ｒ１ｃ）で示される。Ｐ１ｃはＸｃ軸回りの回転角であり、Ｑ１ｃはＹｃ軸回りの回転角であり、Ｒ１ｃはＺｃ軸回りの回転角である。図３に例示されるマーカー座標系は、Ｙｍ軸回りにのみ回転しているため、Ｐ１ｃおよびＲ１ｃは０である。なお、各々の回転角は、既知の形状を有する基準物が、処理対象となる撮像画像において、どのような像として撮像されているかに基づき、算出される。
【００２７】
図４は、カメラ座標系とマーカー座標系とにおけるＡＲオブジェクトＥの例を示す。図４に示すＡＲオブジェクトＥは、吹き出し形状のオブジェクトであり、吹き出し内に「ヒビあり！」というテキストデータを含む。
【００２８】
ＡＲオブジェクトＥの吹き出しの先の黒丸は、ＡＲオブジェクトＥの基準点を示す。基準点のマーカー座標系における座標は、Ｖ２ｍ（Ｘ２ｍ，Ｙ２ｍ，Ｚ２ｍ）とする。さらにＡＲオブジェクトＥの向きは回転座標Ｇ２ｍ（Ｐ２ｍ，Ｑ２ｍ，Ｒ２ｍ）で定められ、ＡＲオブジェクトＥのサイズは倍率Ｄ（Ｊｘ，Ｊｙ，Ｊｚ）で定められる。なお、ＡＲオブジェクトＥの回転座標Ｇ２ｍは、マーカー座標系に対してＡＲオブジェクトがどの程度回転した状態で配置されるのかを示す。例えば、Ｇ２ｍが（０，０，０）である場合には、マーカーＭと平行にＡＲオブジェクトがＡＲ表示されることとなる。
【００２９】
ＡＲオブジェクトＥを構成する各点の座標は、ＡＲオブジェクトＥの雛型である定義データ（ＡＲテンプレート）に定義されている各点の座標が、基準点の座標Ｖ２ｍ、回転座標Ｇ２ｍおよび倍率Ｄに基づいて調整された座標である。
【００３０】
ＡＲテンプレートにおいては、基準点の座標を（０，０，０）として、各点の座標が定義される。よって、当該ＡＲテンプレートを採用したＡＲオブジェクトの基準点Ｖ２ｍが設定されると、ＡＲテンプレートを構成する各点の座標は、座標Ｖ２ｍに基づいて平行移動される。
【００３１】
さらに、ＡＲテンプレートに含まれる各座標は、設定された回転座標Ｇ２ｍに基づいて回転され、倍率Ｄで拡縮される。つまり、図４のＡＲオブジェクトＥは、ＡＲテンプレートに定義された各点が、基準点の座標Ｖ２ｍ、回転座標Ｇ２ｍおよび倍率Ｄに基づいて調整された点に基づいて構成された状態を示している。
【００３２】
また、初めに、基準点の座標Ｖ２ｍおよび倍率Ｄに基づき調整された点の集合であるＡＲオブジェクトＥ’が生成され、その後、ＡＲオブジェクトＥ’の各軸を、回転座標Ｇ２ｍに従って回転させることで、ＡＲオブジェクトＥが生成されてもよい。
【００３３】
次に、マーカー座標系にＡＲオブジェクトＥが配置されると、ＡＲオブジェクトＥの各点の座標は、マーカー座標系からカメラ座標系に変換される。さらに、ＡＲオブジェクトＥを撮像画像に投影するために、カメラ座標系からスクリーン座標系への変換が行われる。つまり、撮像画像に、ＡＲオブジェクトＥを重畳表示するための像が生成される。
【００３４】
以下、座標系を変換する処理について説明する。まず、マーカー座標系をカメラ座標系へ変換するモデル・ビュー変換について説明する。ＡＲオブジェクトＥに含まれる各点について、マーカー座標系における座標を、マーカーの原点Ｏｍのカメラ座標系における座標Ｖ１ｃおよび、カメラ座標系に対するマーカー座標系の回転座標Ｇ１ｃに基づき座標変換することで、カメラ座標系における座標は算出される。
【００３５】
例えば、モデル・ビュー変換が、ＡＲオブジェクトＥの基準点Ｖ２ｍに対して行なわれることにより、マーカー座標系で規定された基準点が、カメラ座標系におけるどの点に対応するのかが求められる。なお、実際には、Ｖ２ｍに対応する、カメラ座標系の座標Ｖ２ｃが求められる。
【００３６】
図５は、マーカー座標系からカメラ座標系への変換行列Ｍと、変換行列Ｍ内の回転行列Ｒを示す。変換行列Ｍは、４×４の行列である。変換行列Ｍと、マーカー座標系の座標Ｖｍに関する列ベクトル（Ｘｍ，Ｙｍ，Ｚｍ，１）との積により、カメラ座標系の対応する座標Ｖｃに関する列ベクトル（Ｘｃ，Ｙｃ，Ｚｃ，１）が得られる。
【００３７】
すなわち、列ベクトル（Ｘｍ，Ｙｍ，Ｚｍ，１）に、モデル・ビュー変換対象となるマーカー座標系の点座標を代入して、行列演算を行なうことにより、カメラ座標系の点座標を含む列ベクトル（Ｘｃ，Ｙｃ，Ｚｃ，１）が得られる。
【００３８】
変換行列Ｍの１〜３行目且つ１〜３列の部分行列（回転行列Ｒ）がマーカー座標系の座標に作用することにより、マーカー座標系の向きとカメラ座標系との向きを合わせるための回転操作が行なわれる。変換行列Ｍの１〜３行目且つ４列目の部分行列が作用することにより、マーカー座標系の向きとカメラ座標系との位置を合わせるための並進操作が行なわれる。
【００３９】
図６は、回転行列Ｒ１、Ｒ２およびＲ３を示す。なお、図５に示す回転行列Ｒは、回転行列Ｒ１、Ｒ２およびＲ３の積（Ｒ１・Ｒ２・Ｒ３）により算出される。また、回転行列Ｒ１は、Ｘｃ軸に対するＸｍ軸の回転を示す。回転行列Ｒ２は、Ｙｃ軸に対するＹｍ軸の回転を示す。回転行列Ｒ３は、Ｚｃ軸に対するＺｍ軸の回転を示す。
【００４０】
回転行列Ｒ１、Ｒ２およびＲ３は、撮像画像内の基準物の像に基づき、生成される。つまり、回転角Ｐ１ｃ、Ｑ１ｃ、Ｒ１ｃは、先に述べたとおり、既知の形状を有する基準物が、処理対象となる撮像画像において、どのような像として撮像されているかに基づき、算出される。そして、回転角Ｐ１ｃ、Ｑ１ｃ、Ｒ１ｃに基づき、各回転行列Ｒ１、Ｒ２およびＲ３は生成される。
【００４１】
以上のとおり、ＡＲオブジェクトＥを構成する各点のマーカー座標系の座標（Ｘｍ，Ｙｍ，Ｚｍ）は、変換行列Ｍに基づくモデル・ビュー変換により、カメラ座標系の座標（Ｘｃ，Ｙｃ，Ｚｃ）に変換される。モデル・ビュー変換により得られた座標（Ｘｃ，Ｙｃ，Ｚｃ）は、ＡＲオブジェクトＥが存在する仮想的な空間に、仮想的にカメラが存在するとした場合のカメラからの相対的な位置を示す。
【００４２】
つぎに、ＡＲオブジェクトＥの各点のカメラ座標系の座標は、スクリーン座標系に変換される。なお、カメラ座標系をスクリーン座標系へ変換することを、透視変換と称する。スクリーン座標系は、（Ｘｓ，Ｙｓ）の２次元で構成される。また、スクリーン座標系（Ｘｓ，Ｙｓ）は、例えばカメラの撮像処理により得られる撮像画像の中心を原点（原点Ｏｓ）とする。透視変換により得られる各点のスクリーン座標系の座標に基づいて、ＡＲオブジェクトＥを撮像画像に重畳表示する為の像が生成される。
【００４３】
透視変換は、例えば、カメラの焦点距離ｆに基づいて行なわれる。カメラ座標系における座標（Ｘｃ，Ｙｃ，Ｚｃ）に対応するスクリーン座標系の座標のＸｓ座標は、以下の式１で求められる。また、カメラ座標系における座標（Ｘｃ，Ｙｃ，Ｚｃ）に対応するスクリーン座標系の座標のＹｓ座標は、以下の式２で求められる。
Ｘｓ＝ｆ・Ｘｃ／Ｚｃ    （式１）
Ｙｓ＝ｆ・Ｙｃ／Ｚｃ    （式２）
透視変換により得られる座標に基づいて、ＡＲオブジェクトＥの像が生成される。ＡＲオブジェクトＥは、ＡＲオブジェクトＥを構成する複数の点を補間して得られる面にテクスチャをマッピングすることにより生成される。ＡＲオブジェクトＥの元になるＡＲテンプレートには、どの点を補間して面を形成するか、どの面にどのテクスチャをマッピングするかが定義される。
【００４４】
上述のモデル・ビュー変換および透視変換により、マーカー座標系の座標に対応する撮像画像上の座標が算出され、その座標を利用することで、カメラの視点に応じたＡＲオブジェクトＥの像が生成される。なお、生成されるＡＲオブジェクトＥの像は、ＡＲオブジェクトＥの投影画像と呼ばれる。ＡＲオブジェクトＥの投影画像が撮像画像に合成されることで、合成画像が生成される。そして、合成画像は、ユーザに提供される視覚的な情報を拡張する。
【００４５】
また、他の態様では、透過型ディスプレイにＡＲオブジェクトＥの投影画像が表示される。この態様においても、ユーザがディスプレイを透過して得られる現実空間の像と、ＡＲオブジェクトＥの投影画像とが整合するので、ユーザに提供される視覚的な情報が拡張される。
【００４６】
ここで、発明者は、画像における基準物の像を利用することで、基準物に対する撮像位置および撮像方向を推定可能であることに着目した。そして、発明者は、基準物と観察対象物との位置関係が不変である限り、ＡＲ技術を利用することで、観察対象の複数の画像を、特定の撮像条件にて撮像させることが可能であることに気が付いた。
【００４７】
そこで、本実施例にかかる技術は、予め指定された撮像位置および撮像方向（撮像条件）と、入力画像の撮像位置および撮像方向（撮像条件）との差分を把握可能な態様で、ガイドを実行する。よって、本実施例にかかる技術は、ガイドを受けるユーザを、予め指定された撮像位置および撮像方向へ、誘導する。なお、基準物に対する撮像位置および撮像方向は、観察対象物に対する撮像位置および撮像方向とみなすことができる。
【００４８】
図７Ａおよび図７Ｂは、異なる撮像条件で撮像された画像を示す。なお、図７Ａおよび図７Ｂは、図１Ａおよび図１Ｂと同様の現実空間を撮像する撮像画像である。ただし、図１Ａおよび図１Ｂとは異なり、ＡＲ技術を適用するためのマーカーが、配管に添付されている。
【００４９】
さらに、本実施例においては、カメラが一定のフレーム間隔で撮像する画像を撮像画像と称する。撮像画像は一時的に情報処理装置（後述）のバッファに記憶されるが、観察対象の経時変化を観察するための画像は、別途、保存用画像として、メモリに記憶される。
【００５０】
図７Ａにおける画像３００は、観察対象であるヒビ３０４の経時変化を観察する際の基準となる画像である。したがって、作業者は、画像３００におけるヒビ３０４が拡大していないかを確認するために、他の画像と比較する。ここで、他の画像は、先に述べたとおり、画像３００と同様の撮像条件にて撮像されることが好ましい。なお、画像３００は、配管３０２、ヒビ３０４、マーカー３０６を含む。
【００５１】
次に、図７Ｂにおける画像３０８は、観察対象であるヒビ３１２を含む画像であるが、画像３００と比較するための画像としては適切ではない。なぜなら、画像３００におけるマーカー３０６の像と、画像３０８におけるマーカー３１４の像とが、異なる大きさおよび異なる位置に存在するため、画像３０８は、画像３００と異なる撮像位置で撮像されたことが推測されるためである。なお、撮像方向も異なる場合には、マーカー３０６の像の形状とマーカー３０８の像の形状も異なることとなる。
【００５２】
そこで、本実施例に開示の技術は、基準となる画像３００の撮像条件と一致する撮像条件で撮像するように、作業者を誘導する。ただし、本実施例における「一致」とは、完全一致ではなく、略一致も含む。つまり、観察対象の経時変化を観察する人間が、比較する複数の画像が同一の撮像条件下で撮像された画像であると認識できる程度であればよい。
【００５３】
［第一の実施例］
まず、第一の実施例に係る詳細な処理および情報処理装置等の構成について説明する。図８は、第一の実施例にかかるシステム構成図である。システムは、通信端末１−１および通信端末１−２、管理装置２を含む。なお、以下、通信端末１−１および通信端末１−２を総称して、情報処理装置１とする。
【００５４】
情報処理装置１は、例えば、カメラを有する、タブレットＰＣやスマートフォンなどのコンピュータである。たとえば、情報処理装置１は、点検作業を行う作業者により携帯される。情報処理装置１は、合成画像を生成するとともに、撮像条件のガイドを実行する。さらに、情報処理装置１は、ネットワークＮを介して、管理装置２と通信する。管理装置２は、例えば、サーバコンピュータであって、複数の情報処理装置１を管理する。ネットワークＮは、例えば、インターネットである。
【００５５】
まず、情報処理装置１は、撮像画像内に基準物を認識した場合、認識した基準物を識別する識別情報（たとえば、マーカーＩＤ）を、管理装置２へ送信する。管理装置２は、情報処理装置１から識別情報を受信すると、当該識別情報に対応する撮像条件情報を情報処理装置１に提供する。なお、撮像条件情報は、基準となる撮像位置や撮像方向を示す情報である。
【００５６】
情報処理装置１は、撮像画像から認識した基準物の像に基づき、撮像条件を推定するとともに、推定された撮像条件と基準となる撮像条件との差分を作業者が把握できるように、ガイドを実行する。
【００５７】
例えば、情報処理装置１は、推定された撮像位置と基準となる撮像位置との差分を求め、差分を埋める方向への移動を促す矢印を、ガイドとして、撮像画像上に表示する。作業者がガイド表示に従って撮像位置を変更することで、新たな撮像位置と基準となる撮像位置とが略一致した場合、情報処理装置１は、略一致した時点の撮像画像を保存用画像として取得する。また、略一致した場合に、情報処理装置１は、現在の撮像位置で撮像決定入力を行うように、作業者に指示する。たとえば、情報処理装置１は、シャッターボタンの押下を指示する。
【００５８】
そして、情報処理装置１は、取得した保存用画像および取得した日時を、管理装置２へ送信する。管理装置２は、情報処理装置１から受信した保存用画像とともに保存する。
【００５９】
また、本実施例においては、管理装置２は、撮像条件情報とともに、合成画像を生成するために必要な情報（コンテンツ情報、およびテンプレート情報）を、情報処理装置１に提供する。詳細については、後述する。情報処理装置１は、先に述べた方法で合成画像を生成するとともに、ディスプレイに表示する。すると、作業者は、ＡＲコンテンツ（たとえば、図４のオブジェクトＥが投影された投影画像）を閲覧して、ヒビの存在位置を把握することができる。なお、「ヒビを撮像」という作業内容を示すメッセージを含むＡＲコンテンツが、さらに表示されるようにしてもよい。
【００６０】
なお、撮像条件情報、コンテンツ情報、およびテンプレート情報等が管理装置２から情報処理装置１に提供されるタイミングは、情報処理装置１において基準物が認識された後に限られない。たとえば、複数の基準物にかかわる撮像条件情報等が、基準物の認識前に、管理装置２から情報処理装置１に提供されてもよい。
【００６１】
次に、情報処理装置１の機能的構成について説明する。図９は、第一の実施例にかかる情報処理装置の機能ブロック図である。情報処理装置１は、通信部１１、撮像部１２、表示部１３、記憶部１４、制御部１５を含む。
【００６２】
通信部１１は、他のコンピュータと通信を行う。例えば、通信部１１は、管理装置２から撮像条件情報やコンテンツ情報、テンプレート情報を受信する。また、通信部１１は、保存用画像が保存されたのちには、当該保存用画像を管理装置２へ送信する。
【００６３】
撮像部１２は、一定のフレーム間隔で画像を撮像する。上記カメラは、撮像部１２に相当する。そして、撮像部１２は、撮像した画像を、制御部１５へ入力する。表示部１３は、画像を表示する。たとえば、表示部１３は、ＡＲオブジェクトの投影画像を含む合成画像や、ガイド表示を含む合成画像を表示する。
【００６４】
記憶部１４は、制御部１５の制御の下、各種情報を記憶する。記憶部１４は、コンテンツ情報、テンプレート情報、撮像条件情報等を記憶する。さらに、記憶部１４は、制御部１５の制御の下、保存用画像を記憶する。
【００６５】
制御部１５は、情報処理装置１全体の各種処理を制御する。なお、制御部１５は、認識部１６、ガイド実行部１７、画像生成部１８を含む。認識部１６は、入力画像から基準物を認識する。本実施例においては、認識部１６は、マーカーを認識する。例えば、認識部１６は、マーカーの形状を既定した認識用テンプレートを用い、テンプレートマッチングを行うことでマーカーを認識する。
【００６６】
さらに、認識部１６は、基準物を識別する識別情報を取得する。例えば、マーカーＩＤが取得される。マーカーＩＤの読みとりは、例えば、マーカーに該当する画像領域内の輝度情報に基づいて行なわれる。例えば、マーカーが四角形状である場合、認識部１６は、マーカーとして認識された四角形の画像領域を分割した各領域について、輝度が所定値以上の領域を「１」とし、輝度が所定値未満の領域を「０」として、各領域を所定の順序で、「１」または「０」のいずれであるかを判定し、判定して得られた情報の列をマーカーＩＤとする。
【００６７】
また、例えば、輝度が所定値以上の領域と所定値未満の領域の四角形枠内での配置をパターン化しておき、認識部１６は、パターンに対応するマーカーＩＤを用いることとしてもよい。さらに、マーカーＩＤとして採用される数値範囲が予め定められており、読みとったマーカーＩＤがその数値範囲内でない場合には、マーカーＩＤが読みとれなかったと判定することとしてもよい。
【００６８】
つぎに、認識部１６は、基準物の像に基づいて、基準物の位置座標および回転座標を算出する。なお、基準物の位置座標および回転座標は、カメラ座標系での値である。さらに、認識部１６は、基準物の位置座標および回転座標に基づき、変換行列Ｍを生成する。詳細は、すでに説明したとおりである。
【００６９】
ガイド実行部１７は、入力画像における基準物の像に基づき推定される第一の撮像条件と、予め指定された第二の撮像条件との差分を把握可能なガイド情報を生成する。たとえば、ガイド実行部１７は、入力画像における基準物の像に基づき、入力画像の撮像位置を推定する。そして、ガイド実行部１７は、撮像条件情報にて設定されている適切な撮像位置と、入力画像の撮像位置との差分を演算する。そして、ガイド実行部１７は、当該差分を埋める方向を示す矢印を描画するためのガイド情報を生成する。なお、差分の大きさに応じて、矢印の長さ等が調整されてもよい。
【００７０】
ここで、撮像条件の一つである撮像位置を推定する方法について説明する。第一の方法としては、認識部１６により算出される基準物の位置（Ｘｃ１，Ｙｃ１，Ｚｃ１）が利用される。なお、基準物の位置（Ｘｃ１，Ｙｃ１，Ｚｃ１）は、カメラの焦点を原点とするカメラ座標系における基準物の位置である。
【００７１】
図３に示す通り、カメラ座標系における基準物の位置が（Ｘｃ１，Ｙｃ１，Ｚｃ１）である場合、基準物の中心を原点とするマーカー座標系においては、カメラの焦点の位置は、逆に、（−Ｘｃ１，−Ｙｃ１，−Ｚｃ１）となる。つまり、ガイド実行部１７は、（−Ｘｃ１，−Ｙｃ１，−Ｚｃ１）をマーカー座標系における撮像位置（カメラの焦点の位置）と推定することができる。
【００７２】
第二の方法としては、認識部１６が生成した変換行列Ｍが利用される。具体的には、ガイド実行部１７は、マーカー座標系からカメラ座標系への変換行列Ｍの逆行列Ｍ−１と、列ベクトルＡｃ（Ｘｃ，Ｙｃ，Ｚｃ，１）との積により、列ベクトルＡｍ（Ｘｍ，Ｙｍ，Ｚｍ，１）を求める。具体的には、ガイド実行部１７は、は、以下の式３により、列ベクトルＡｍ（Ｘｍ，Ｙｍ，Ｚｍ，１）を求める。
2015082830.tif 000003
【００７３】
なお、撮像位置は、カメラ座標系の原点と略一致すると考えると、撮像位置は（０，０，０）である。よって、Ａｃに列ベクトル（０，０，０，１）を代入する事で、ガイド実行部１７は、式３により、カメラ座標系の原点が、マーカー座標系のどの点に対応するのかを求めることができる。つまり、ガイド実行部１７は、マーカー座標系における撮像位置を推定することができる。
【００７４】
次に、撮像条件の一つである撮像方向について説明する。ガイド実行部１７は、認識部１６により算出される基準物の回転座標（Ｐ１ｃ，Ｑ１ｃ，Ｒ１ｃ）に基づき、入力画像の撮像方向を、（−Ｐ１ｃ，−Ｑ１ｃ，−Ｒ１ｃ）と推定することができる。
【００７５】
以上のように、ガイド実行部１７は、入力画像の撮像条件を推定することができる。以下、入力画像の撮像位置を（Ｘｃｍ，Ｙｃｍ，Ｚｃｍ）とする。たとえば、（Ｘｃｍ，Ｙｃｍ，Ｚｃｍ）は、（−Ｘｃ１，−Ｙｃ１，−Ｚｃ１）である。また、撮像条件情報に含まれる撮像位置を、（Ｘｃｏｎ，Ｙｃｏｎ，Ｚｃｏｎ）とする。また、入力画像の撮像方向を（Ｐｃｍ，Ｑｃｍ，Ｒｃｍ）とする。たとえば、（Ｐｃｍ，Ｑｃｍ，Ｒｃｍ）は、（−Ｐｃ１，−Ｑｃ１，−Ｒｃ１）である。また、撮像条件情報に含まれる撮像方向を、（Ｐｃｏｎ，Ｑｃｏｎ，Ｒｃｏｎ）とする。
【００７６】
次に、ガイド実行部１７は、入力画像の撮像条件と、撮像条件情報に含まれる撮像条件との差分を算出する。なお、撮像条件として撮像位置および撮像方向のいずれかのみが採用される場合は、撮像位置または撮像方向のいずれかについてのみ、差分が算出される。
【００７７】
たとえば、ガイド実行部１７は、マーカー座標系の各座標値について、差分（Ｘｃｏｎ−Ｘｃｍ，Ｙｃｏｎ−Ｙｃｍ，Ｚｃｏｎ−Ｚｃｍ）を演算する。Ｘ軸の差分の値が正の値である場合には、ガイド実行部１７は、情報処理装置１が有する表示部１３（ディスプレイ）と平行な面に対して、左方向を示す矢印を生成する。また、Ｘ軸の差分の値が負の値である場合には、ガイド実行部１７は、右方向を示す矢印を生成する。
【００７８】
Ｙ軸の差分の値が正の値である場合には、ガイド実行部１７は、情報処理装置１が有する表示部１３（ディスプレイ）と平行な面に対して、上方向を示す矢印を生成する。Ｙ軸の差分の値が負の値である場合には、ガイド実行部１７は、下方向を示す矢印を生成する。
【００７９】
Ｚ軸の差分の値が正の値である場合には、ガイド実行部１７は、情報処理装置１が有する表示部１３（ディスプレイ）と垂直な面に対して、手前方向を示す矢印を生成する。Ｚ軸の差分の値が負の値である場合には、ガイド実行部１７は、奥方向を示す矢印を生成する。
【００８０】
さらに、ガイド実行部１７は、矢印の代わりに、ガイド情報として、撮像条件の変更を促す音声を生成してもよい。たとえば、Ｘ軸の差分の値が正の値である場合には、ガイド実行部１７は、「左へ移動してください」という音声を生成する。この場合、生成されたガイド情報は、たとえば、スピーカーのような音声出力部（図示せず）から出力される。
【００８１】
さらに、ガイド実行部１７は、撮像方向に関しても、各回転軸に関して、入力画像の回転座標（Ｐｃｍ，Ｑｃｍ，Ｒｃｍ）と、撮像条件情報において設定された適切な回転座標（Ｐｃｏｎ，Ｑｃｏｎ，Ｒｃｏｎ）との差分を演算する。そして、ガイド実行部１７は、回転座標の差分に応じて、情報処理装置の回転を促すガイド情報を生成する。たとえば、Ｐ１ｃがＸｃ軸回りの回転角を示すため、Ｐｃｏｎ−Ｐｃｍの値が正である場合には、カメラの撮像素子面と平行な面と構成する縦軸に関して、反時計回りに、情報処理装置１を回転させるようなガイド情報を生成する。
【００８２】
さらに、ガイド実行部１７は、差分が閾値以下となった場合に、保存用画像を取得する。たとえば、差分が閾値以下となったときの入力画像を、保存用画像として、記憶部１４へ保存する。さらに、表示部１３を介して、ガイド実行部１７は、観察対象の撮像が終了した旨のメッセージを作業者へ出力してもよい。
【００８３】
または、ガイド実行部１７は、差分が閾値以下となった場合に、表示部１３を介して、当該撮像位置にて、観察対象を撮像するために決定ボタンを押下するように、作業者へ要求してもよい。そして、ガイド実行部１７は、撮像部１２から画像を取得し、保存用画像として、記憶部１４へ保存する。
【００８４】
ガイド実行部１７は、保存用画像の画像データと、撮像日時を対応付けて、記憶部１４へ記憶する。さらに、ガイド実行部１７は、マーカーＩＤや、当該保存用画像の撮像条件を示す情報も、記憶部１４へ記憶してもよい。
【００８５】
次に、画像生成部１８は、表示部１３に表示する画像を生成する。たとえば、画像生成部１８は、ＡＲコンテンツを撮像画像に重畳表示した合成画像を生成する。なお、合成画像は、認識部１６が出力する変換行列Ｍおよび、通信部１１が管理装置２から取得したコンテンツ情報およびテンプレート情報に基づき、生成される。
【００８６】
また、画像生成部１８は、ガイド実行部１７により生成されたガイド情報に基づき、ガイド情報を表示する画像を生成する。たとえば、画像生成部１８は、撮像画像に、ガイド表示を合成する。なお、画像生成部１８は、ＡＲオブジェクトの投影画像を含む合成画像に、ガイド表示を合成してもよい。
【００８７】
次に、記憶部１４が記憶する各種情報について説明する。管理装置２から、テンプレート情報、コンテンツ情報、撮像条件情報が、情報処理装置１に提供されるものとする。そして、提供された各種情報が、記憶部１４に記憶される。
【００８８】
図１０は、テンプレート情報テーブルを示す。テンプレート情報テーブルは、ＡＲオブジェクトのモデルデータとして適用される各テンプレートを定義するためのテンプレート情報を格納する。テンプレート情報は、テンプレートの識別情報（テンプレートＩＤ）、テンプレートを構成する各頂点の座標情報Ｔ２１、およびテンプレートを構成する各面の構成情報Ｔ２２（頂点順序およびテクスチャＩＤの指定）を含む。
【００８９】
頂点順序は、面を構成する頂点の順序を示す。テクスチャＩＤは、面にマッピングされるテクスチャの識別情報を示す。テンプレートの基準点は例えば０番目の頂点である。テンプレート情報テーブルに示される情報により、３次元モデルの形状および模様が定められる。
【００９０】
図１１は、コンテンツ情報テーブルを示す。コンテンツ情報テーブルは、ＡＲコンテンツに関するコンテンツ情報を格納する。コンテンツ情報テーブルには、ＡＲコンテンツのコンテンツＩＤ、マーカー座標系における基準点の位置座標（Ｘｍ，Ｙｍ，Ｚｍ）、マーカー座標系における回転座標（Ｐｍ，Ｑｍ，Ｒｍ）、ＡＲテンプレートを基準とする倍率Ｄ（Ｊｘ，Ｊｙ，Ｊｚ）、ＡＲテンプレートのテンプレートＩＤ、マーカーＩＤおよび追加情報が格納される。
【００９１】
画像生成部１８がＡＲオブジェクトＥの投影画像を生成する際には、図１０に示されるＡＲテンプレートが、コンテンツ情報（位置、向きおよびサイズ）に基づいて調整される。すなわちＡＲオブジェクトＥの位置・姿勢・サイズの指定は、コンテンツ情報テーブルで管理される情報の設定により行なわれる。また、追加情報は、ＡＲオブジェクトＥに追加される情報である。追加情報として、テキストや、Ｗｅｂページやファイルへのアクセス情報などが用いられる。
【００９２】
例えば、図１１に示されたコンテンツＩＤが「Ｃ１」のＡＲコンテンツは、ＡＲテンプレート「Ｔ１」に定義される各頂点座標が、Ｘｍ、Ｙｍ、Ｚｍ方向のそれぞれに拡縮され、回転座標（Ｐｍ１，Ｑｍ１，Ｒｍ１）で回転され、位置座標（Ｘｍ１、Ｙｍ１、Ｚｍ１）に応じて並進されて得られる各頂点により構成される。ＡＲコンテンツは、さらにＡＲオブジェクトＥを構成する面に追加情報のマッピングを行なう。
【００９３】
次に、図１２は、撮像条件情報テーブルを示す。撮像条件情報テーブルは、観察対象を撮像する際の基準となる撮像条件に関する撮像条件情報を格納する。撮像条件情報テーブルには、マーカーＩＤ、撮像位置に関する撮像条件（Ｘｃｏｎ，Ｙｃｏｎ，Ｚｃｏｎ）、撮像方向に関する撮像条件（Ｐｃｏｎ，Ｑｃｏｎ，Ｒｃｏｎ）が格納される。
【００９４】
撮像条件は、あらかじめ管理者が設定した情報であってもよいし、観察対象が初めて撮像された画像の撮像位置や撮像方向であってもよい。たとえば、図７Ａに示すように、作業者が、ヒビ３０４の存在に気が付き、画像３００を撮像したとする。このとき、画像３００におけるマーカー３０６（基準物）の像に基づき、基準とする撮像条件が生成される。なお、撮像条件は、ガイド実行部１７が入力画像の撮像位置を推定する際の算出方法と同様の方法で、生成される。
【００９５】
次に、保存用画像を格納する保存用画像テーブルについて説明する。図１３は、保存用画像テーブルを示す。保存用画像テーブルは、マーカーＩＤ、画像データ、撮像日時、保存用画像が撮像された撮像条件を対応付けて格納する。図１３の例では、撮像条件として、撮像位置および撮像方向が記憶される。なお、画像データは、画像データそのものではなく、画像データが格納された場所を示す情報であってもよい。
【００９６】
次に、第一の実施例にかかる管理装置２の機能的構成について説明する。図１４は、管理装置の機能ブロック図である。管理装置２は、通信部２１、制御部２２、記憶部２３を有する。通信部２１は、他のコンピュータと通信する処理部である。たとえば、通信部２１は、情報処理装置１と通信を行う。
【００９７】
制御部２２は、管理装置２全体の各種処理を制御する処理部である。たとえば、制御部２２は、情報処理装置１からの要求に応じて、記憶部２３からコンテンツ情報や、テンプレート情報、撮像条件情報を読み出す。なお、要求には、情報処理装置１が認識した基準物の識別情報（マーカーＩＤ）が含まれる。具体的には、制御部２２は、識別情報に対応するコンテンツ情報および撮像条件情報を、記憶部２３から読み出す。また、コンテンツに適用されるテンプレートのテンプレート情報も併せて読み出される。
【００９８】
そして、制御部２２は、通信部２１を制御して、読み出した各種情報を、情報処理装置１へ送信する。また、通信部２１を介して、情報処理装置１から保存用画像を受信した場合、制御部２２は、記憶部２３に、保存用画像を記憶する。
【００９９】
記憶部２３は、各種情報を記憶する。たとえば、記憶部２３は、図１０と同様のテンプレート情報テーブルによって、テンプレート情報を記憶する。また、記憶部２３は、図１１と同様のコンテンツ情報テーブルによって、コンテンツ情報を記憶する。さらに、記憶部２３は、図１２と同様の撮像条件情報テーブルによって、撮像条件情報を記憶する。また、記憶部２３は、図１３と同様の保存用画像テーブルによって、保存用画像を記憶する。
【０１００】
次に、ガイドプログラムにより実行されるガイド処理の流れについて説明する。図１５は、ガイド処理のフローチャートを示す。ガイドプログラムは、情報処理装置１の制御部１５により実行されるガイド処理の手順が定義されたプログラムである。
【０１０１】
なお、制御部１５は、ガイド処理の実行に先駆けて、前処理を行なう。前処理においては、テンプレート情報や、コンテンツ情報、撮像条件情報が管理装置２から取得される。また、ＡＲ表示モードの起動指示が行われる。制御部１５は、例えば撮像部１２に所定時間間隔での撮像を開始させ、撮像された画像について認識部１６にマーカー検知処理を開始させる。さらに、制御部１５は、表示部１３に、撮像部１２により撮像された撮像画像を表示させる。
【０１０２】
撮像部１２は、制御部１５から撮像を指示されると、撮像素子により生成される画像を所定の時間間隔で取得し、取得した画像を記憶部１４に記憶する。記憶部１４には、複数枚の画像を格納するバッファが設けられ、撮像部１２により撮像された画像は、そのバッファに格納される。例えば、記憶部１４に設けられるバッファは、表示部１３が表示させる画像が格納される表示用バッファである。表示用バッファに格納される画像は、順次、表示部１３に表示される。
【０１０３】
認識部１６は、記憶部１４に設けられたバッファに格納された画像を取得する（Ｏｐ．１）。なお、ここで取得された画像が、入力画像となる。認識部１６は、入力画像から、マーカーを認識したか判定する（Ｏｐ．３）。例えば、認識部１６は、マーカーの形状を既定したテンプレートを用い、テンプレートマッチングを行うことでマーカーを認識する。
【０１０４】
また、マーカーの認識（Ｏｐ．３）においては、認識部１６は、マーカーのマーカーＩＤの読みとりを行なう。また、認識部１６は、入力画像におけるマーカーの像に基づき、カメラ座標系における基準物の位置（Ｘｃ１，Ｙｃ１，Ｚｃ１）、基準物の回転座標（Ｐ１ｃ，Ｑ１ｃ，Ｒ１ｃ）を算出する。また、認識部１６は、基準物の位置（Ｘｃ１，Ｙｃ１，Ｚｃ１）、基準物の回転座標（Ｐ１ｃ，Ｑ１ｃ，Ｒ１ｃ）に基づき、変換行列Ｍを生成する。
【０１０５】
マーカーが認識されない場合は（Ｏｐ．３Ｎｏ）、認識部１６は、Ｏｐ．１に戻る。一方、マーカーが認識された場合には（Ｏｐ．３Ｙｅｓ）、認識部１６は、認識したマーカーのマーカーＩＤをガイド実行部１７へ出力し、ガイド実行部１７は、観察対象の有無を判定する（Ｏｐ．５）。つまり、ガイド実行部１７は、撮像条件情報テーブルを参照し、取得したマーカーＩＤに対応する撮像条件が格納されているかを判定する。格納されている場合には、入力画像から認識したマーカーに紐づいた観察対象が存在することが判定される。
【０１０６】
観察対象がない場合は（Ｏｐ．５Ｎｏ）、画像生成部１８は、コンテンツ情報、テンプレート情報、変換行列Ｍを用いて、入力画像に対してＡＲコンテンツの投影画像を重畳させた合成画像を生成する（Ｏｐ．７）。そして、表示部１３は、合成画像を表示する（Ｏｐ．９）。そして、処理を終了する。
【０１０７】
ここで、観察対象がない場合に（Ｏｐ．５Ｎｏ）、ガイド実行部１７は、観察対象の追加を実行するか否かを判定してもよい。たとえば、ユーザが新たにヒビを発見した場合に、ヒビを、観察対象として追加する旨の入力を実行する。ガイド実行部１７は、認識部１６による出力を用いて、撮像条件を生成する。なお、生成された撮像条件は、マーカーＩＤとともに管理装置２へ送信され、管理される。
【０１０８】
一方、観察対象が存在する場合には（Ｏｐ．５Ｙｅｓ）、ガイド実行部１７は、認識部１６から取得したカメラ座標系における基準物の位置（Ｘｃ１，Ｙｃ１，Ｚｃ１）および回転座標（Ｐ１ｃ，Ｑ１ｃ，Ｒ１ｃ）を用いて、撮像位置および撮像方向を算出する（Ｏｐ．１１）。たとえば、ガイド実行部１７は、カメラ座標系における基準物の位置（Ｘｃ１，Ｙｃ１，Ｚｃ１）に基づき、入力画像の撮像位置（Ｘｃｍ，Ｙｃｍ，Ｚｃｍ）として、（−Ｘｃ１，−Ｙｃ１，−Ｚｃ１）を算出する。
【０１０９】
そして、ガイド実行部１７は、基準となる撮像条件と、算出した撮像条件とが一致するか比較する（Ｏｐ．１３）。ここで、一致とは完全一致であってもよいし、略一致であってもよい。一致するか否かの判定閾値は、人間の目視の精度を考慮した値が設定される。
【０１１０】
基準となる撮像条件と、算出した撮像条件とが一致しない場合には（Ｏｐ．１３Ｎｏ）、ガイド実行部１７は、ガイド情報を生成する（Ｏｐ．１５）。たとえば、ガイド情報は、撮像条件に含まれる撮像位置と、算出した撮像位置との差分を埋める方向への移動を促す矢印を描画するための情報である。
【０１１１】
次に、画像生成部１８は、コンテンツ情報、テンプレート情報、変換行列Ｍを用いて、合成画像を生成するとともに、ガイド情報に基づき、合成画像上にガイド表示を描画する（Ｏｐ．１７）。なお、ガイド情報の描画位置は任意である。たとえば、合成画像の中央付近等にガイド表示が行われる。
【０１１２】
そして、ガイド表示を含む合成画像を、表示部１３が表示する（Ｏｐ．１９）。その後、制御部１５は、は、処理を終了するか判定する（Ｏｐ．２１）。例えば、ユーザにより、処理終了の入力が行われた場合には、処理の終了が判定される。処理を終了する場合には（Ｏｐ．２１Ｙｅｓ）、そのまま一連のガイド処理を終了する。一方、処理を終了しない場合には（Ｏｐ．２１Ｎｏ）、Ｏｐ．１に戻る。
【０１１３】
また、Ｏｐ．１３において、基準となる撮像条件と、算出した撮像条件とが一致した場合には（Ｏｐ．１３Ｙｅｓ）、ガイド実行部１７は、Ｏｐ．１で取得した入力画像を、保存用画像として保存する（Ｏｐ．２５）。なお、ガイド実行部１７は、別途、作業者に撮像操作を実行させたのちに、新たな画像を保存用画像として保存してもよい。
【０１１４】
そして、制御部１５は、通信部１１を介して、保存用画像を、管理装置２へ送信する（Ｏｐ．２７）。なお、送信処理は、他のタイミングで実行されてもよい。たとえば、通信部１１は、一連の業務が終了した旨の入力を作業者から受け付けた場合、一連の業務の中で保存されたすべての保存用画像を、管理装置２へ送信してもよい。なお、保存用画像とともに、図１３に示した保存用画像テーブルに記憶された各種情報も併せて、管理装置２へ送信される。
【０１１５】
図１６は、ガイド表示を含む合成画像の例である。ガイド表示を含む合成画像４００は、配管４０２、ヒビ４０４、マーカー４０６、ＡＲオブジェクトＥ、ガイド表示４０８、ガイド表示４１０を含む。図１６の例では、作業者に対して「左」および「後」への移動を示すガイド表示がなされている。
【０１１６】
図１６は、基準となる撮像条件と、算出した撮像条件との差分が、Ｘの値が正の値であって、Ｚの値が正の値である場合のガイド表示の例である。ユーザは、ガイド表示にしたがって、情報処理装置１が基準となる撮影位置と実際の撮影位置とが一致したと判定するまで、左および後ろへの移動を行うことで、基準となる撮像位置と一致する位置で保存用画像を撮像することができる。
【０１１７】
以上のように、本実施例における情報処理装置１は、ＡＲ技術における基準物相対の撮像位置や撮像方向を用いることで、基準物との位置関係が不変である観察対象を撮像する複数の画像について、撮像位置や撮像方向を推定することができる。そして、情報処理装置１は、撮像位置や撮像方向について、基準と現在の差分を示すガイドを実行することで、作業者に、観察対象を撮像する複数の画像を、ほぼ同一の撮像条件にて撮像させることができる。ひいては、管理装置２は、情報処理装置１から、ほぼ同一の撮像条件にて撮像された保存用画像を収集することができる。したがって、観察対象の経時変化を、人間の目であっても容易に比較することができる。
【０１１８】
［第二の実施例］
第一の実施例においては、マーカーの像からマーカー座標系における撮像条件を推定し、ガイドを実行する情報処理装置１を示した。第二の実施例においては、画像における基準物の像の領域から撮像条件を推定し、ガイドを実行する情報処理装置３について説明する。
【０１１９】
なお、第二の実施例は、第一の実施例と同様に、基準物と観察対象との位置関係が不変であって、基準物と観察対象がひとつの画像内に撮像されることを前提とする。第二の実施例は、同一の撮像条件で第一の画像と第二の画像が撮像される場合には、第一の画像における基準物の像と、第二の画像における基準物の像とは同じ大きさおよび同じ形状となることに着目する。
【０１２０】
情報処理装置３は、基準となる画像から基準物の領域を抽出し、抽出した領域の情報を撮像条件として利用する。なお、基準となる画像は、基準物および観察対象が含まれる。そして、新たに観察対象が撮像される際には、基準となる画像における基準物の領域を示すガイド表示が表示される。たとえば、ガイド表示は、基準物を当てはめる枠である。作業者は、当該枠に、基準物が当てはまる位置に移動し、観察対象を撮像する。
【０１２１】
図１７Ａおよび図１７Ｂは、第二の実施例にかかるガイド表示を説明するための図である。図１７Ａは、基準となる画像５００を示す。情報処理装置３は、画像５００におけるマーカー５０６（基準物）の像の領域を用いて、撮像条件を生成する。なお、画像５００には、観察対象であるヒビ５０４、配管５０２も含まれる。
【０１２２】
情報処理装置３は、画像５００から認識したマーカー５０６の像の領域を、ヒビ５０４の撮像条件として利用する。なお、先に説明したとおり、マーカー５０６の像の領域は、ヒビ５０４の撮像位置および撮像方向を推定可能な情報である。
【０１２３】
図１７Ｂは、ガイド表示５１６を含む合成画像５０８を示す。なお、合成画像５０８には、撮像時点でのマーカー５１４の像、配管５１０、ヒビ５１２が含まれる。ガイド表示５１６は、基準となる画像５００におけるマーカー５０６の像の領域を示す。作業者が、ガイド表示５１６を参照しながら、マーカー５１４をガイド表示５１６に当てはめるように、移動することで、画像５００と同様の撮像条件で画像を撮像することができる。
【０１２４】
第二の実施例にかかるシステムは、情報処理装置３と管理装置２とを含む。次に、第二の実施例にかかる情報処理装置３の機能的構成について説明する。図１８は、第二の実施例にかかる情報処理装置の機能ブロック図である。なお、第一の実施例にかかる情報処理装置１と同様の処理を行う処理部については、同一の符号を付すとともに、説明を省略する。
【０１２５】
情報処置装置３は、通信部１１、撮像部１２、表示部１３、記憶部３１、制御部３２を含む。さらに、制御部２５は、認識部３３、条件生成部３４、ガイド実行部３５、画像生成部３６を含む。
【０１２６】
認識部３３は、認識部１６と同様の方法で、入力画像から基準物を認識するとともに、基準物を識別する識別情報を取得する。さらに、認識部３３は、認識部１６と同様に、変換行列Ｍを生成する。また、認識部３３は、入力画像における基準物の領域情報を生成する。たとえば、領域情報として、基準物の特徴点に相当する画素の位置を取得する。
【０１２７】
条件生成部３４は、基準となる画像の撮像条件を生成する。たとえば、作業者により新たな観察対象の追加が命令された場合、条件生成部３４は、基準となる画像における領域情報を認識部３３から取得する。そして、条件生成部３４は、領域情報と、マーカーＩＤとを対応付けて、撮像条件情報を生成する。なお、生成された撮像条件情報は、通信部１１を介して、管理装置２へ送信される。
【０１２８】
次に、ガイド実行部３５は、ガイド実行部１７と同様に、入力画像における基準物の像に基づき推定される第一の撮像位置と、予め指定された第二の撮像位置との差分を把握可能なガイド情報を生成する。ただし、ガイド実行部２７は、基準となる画像における基準物の領域情報を表示するためのガイド情報を生成する。
【０１２９】
画像生成部３６は、画像生成部１８と同様に、合成画像を生成する。また、画像生成部３６は、ガイド情報に基づき、基準物を当てはめるべき枠を、入力画像上に描画する。
【０１３０】
記憶部３１は、第一の実施例と同様に、テンプレート情報テーブル、コンテンツ情報テーブル、撮像条件情報テーブル、保存用画像テーブルを有する。ただし、撮像条件情報テーブルのデータ構成が、第一の実施例とは異なる。
【０１３１】
図１９は、第二の実施例における撮像条件情報テーブルを示す。第二の実施例においては、撮像条件情報として、基準物であるマーカーの領域を示す領域情報が、マーカーＩＤと対応付けて格納される。
【０１３２】
領域情報は、たとえば、基準物を構成する複数の特徴点に相当する画素の位置を示す情報である。マーカーＭのように正方形の基準物が採用される場合、図１９に示すように、マーカーの４つの角に相当する画素が特徴点とされる。そして、各特徴点の位置が、第一の特徴点位置、第二の特徴点位置、第三の特徴点位置、および第四の特徴点位置として、撮像条件情報テーブルに格納される。ここで、各特徴点の位置として格納される座標値は、いずれの座標系による値であってもよい。ただし、スクリーン座標系の座標値が採用されている場合には、座標変換することなく、ガイド表示の枠を描画することができる。
【０１３３】
また、第二の実施例にかかる管理装置２の記憶部２３にも、図１９と同様のデータ構成の撮像条件情報テーブルが保持される。
【０１３４】
次に、第二の実施例に関する各種処理の流れについて説明する。図２０は、第二の実施例にかかる、ガイド処理のフローチャートを示す。ガイドプログラムは、制御部３２により実行されるガイド処理の手順が定義されたプログラムである。なお、制御部３２は、本ガイド処理に先駆けて、前処理を行なう。前処理は、第一の実施例と同様の処理である。
【０１３５】
認識部３３は、記憶部３１に設けられたバッファに格納された画像を取得する（Ｏｐ．３１）。なお、ここで取得された画像が、入力画像となる。認識部３３は、入力画像から、マーカーを認識したか判定する（Ｏｐ．３３）。また、認識部３３は、Ｏｐ．３と同様に、マーカーＩＤを読み取る。さらに、認識部３３は、Ｏｐ．３と同様に、位置座標（Ｘｃ１，Ｙｃ１，Ｚｃ１）および回転座標（Ｐ１ｃ，Ｑ１ｃ，Ｒ１ｃ）を算出し、変換行列Ｍを生成する。また、認識部３３は、入力画像における、基準物の像の領域情報を生成する。
【０１３６】
マーカーが認識されない場合は（Ｏｐ．３３Ｎｏ）、認識部３３は、Ｏｐ．３１に戻る。一方、マーカーが認識された場合には（Ｏｐ．３３Ｙｅｓ）、認識部３３はマーカーＩＤをガイド実行部３５へ出力し、ガイド実行部３５は、観察対象の有無を判定する（Ｏｐ．３５）。
【０１３７】
観察対象がない場合は（Ｏｐ．３５Ｎｏ）、画像生成部３６は、コンテンツ情報、テンプレート情報、変換行列Ｍを用いて、合成画像を生成する（Ｏｐ．３７）。そして、表示部１３は、合成画像を表示する（Ｏｐ．３９）。そして、処理を終了する。ここで、第一の実施例と同様に、観察対象がない場合に、ガイド実行部３５は、新たな観察対象の追加を実行するかを判定してもよい。
【０１３８】
一方、観察対象が存在する場合には（Ｏｐ．３５Ｙｅｓ）、ガイド実行部３５は、記憶部３１から、認識したマーカーＩＤに対応する撮像条件情報を取得する（Ｏｐ．４１）。撮像条件情報は、図１９に示すように、基準となる画像における基準物の領域情報である。
【０１３９】
次に、画像生成部３６は、コンテンツ情報、テンプレート情報、変換行列Ｍを用いて、入力画像に対してＡＲコンテンツを投影した合成画像を生成するとともに、ガイド実行部３５から出力された撮像条件情報に基づきガイド表示を描画する（Ｏｐ．４３）。
【０１４０】
そして、ガイド表示を含む合成画像を、表示部１３が表示する（Ｏｐ．４５）。次に、ガイド実行部３５は、ユーザから画像を保存する旨の決定入力を受け付けたか否かを判定する（Ｏｐ．４７）。ユーザは、ガイド表示に、現在入力されている画像における基準物が略一致した場合に、当該入力画像を保存用画像とする旨の決定入力を実行する。なお、決定入力用のボタンが、Ｏｐ．４５にて表示される合成画像上に設けられてもよい。
【０１４１】
決定入力を受け付けない場合（Ｏｐ．４７Ｎｏ）、制御部３２は、処理を終了するか判定する（Ｏｐ．４９）。例えば、ユーザにより、処理終了の入力が行われた場合には（Ｏｐ．４９Ｙｅｓ）、処理の終了が判定される。処理を終了する場合には、そのまま一連のガイド処理を終了する。一方、処理を終了しない場合には（Ｏｐ．４９Ｎｏ）、Ｏｐ．３１に戻る。
【０１４２】
Ｏｐ．４７において、決定入力を受け付けた場合には（Ｏｐ．４７Ｙｅｓ）、ガイド実行部３５は、Ｏｐ．３１で取得した入力画像を、保存用画像として保存する（Ｏｐ．５３）。そして、制御部３２は、通信部１１を介して、保存用画像を、管理装置２へ送信する（Ｏｐ．５５）。そして、一連の処理を終了する。
【０１４３】
なお、Ｏｐ．４７において、ガイド実行部３５は、ユーザからの入力に基づき、決定入力の有無を判定することとしたが、第一の実施例と同様に、ガイド表示として表示される基準物の領域情報と、入力画像における基準物の領域情報とが一致した場合に、保存用画像を保存することとしてもよい。
【０１４４】
具体的には、ガイド実行部３５は、撮像条件として規定された基準物の領域情報と、入力画像における基準物の領域情報とを比較する。ガイド実行部３５は、マーカーＭの複数の特徴点各々につき、位置が略一致するかを判定する。たとえば、４つすべての特徴点について略一致が判定された場合に、ガイド実行部３５は、入力画像を保存用画像として、記憶部３１に保存する。
【０１４５】
以上のように、第二の実施例にかかる情報処理装置３は、基準画像における基準物の領域情報を、保存用画像の撮像位置および撮像方向を示す情報として、表示する。作業者は、基準画像における基準物の領域情報に基づき、撮像位置や撮像方向を調整することで、情報処理装置３は、基準画像と同様の撮像条件で撮像された画像を保存することができる。
【０１４６】
［変型例１］
第一の実施例および第二の実施例の変型例として、一つの基準物に対して複数の撮像条件情報が対応付けられていてもよい。たとえば、点検業務と保守管理業務とにおいて、ある基準物とともに撮像されるべき観察対象が異なる場合がある。よって、変型例１は、業務種別ごとに、異なる撮像条件情報を管理する。なお、業務種別を識別する情報として、シナリオＩＤが利用される。
【０１４７】
はじめに、作業者が、あらかじめ自身が実行する業務内容を識別するシナリオＩＤを入力することで、基準物の識別情報（マーカーＩＤ）およびシナリオＩＤに応じた撮像条件情報が一意に特定される。なお、管理装置２は、情報処理装置１または情報処理装置３から、撮像条件情報の要求を受け付ける際、マーカーＩＤとともにシナリオＩＤを取得する構成としてもよいし、予めシナリオＩＤの指定を受け付ける構成としてもよい。
【０１４８】
また、点検業務の中でも、点検業務Ａと点検業務Ｂとの間で、ある基準物とともに撮像されるべき観察対象が異なる場合がある。変型例１は、さらに、同一の業務種別であっても、具体的な作業内容に応じて、撮像条件情報を管理する。なお、作業内容を識別する情報として、シーンＩＤが利用される。作業者はシナリオＩＤを選択した後に、さらにシーンＩＤを選択することで、業務内容および作業内容に対応する撮像条件情報が一意に特定される。
【０１４９】
以上のように、変型例１は、シナリオおよびシーンを利用して、ある基準物に対して、複数の撮像条件を設定することができる。よって、シナリオおよびシーンごとに、基準物を設置することなく、一つの基準物に対して、複数の撮像条件を設定し、基準物の設置負荷を低減することができる。
【０１５０】
図２１は、変型例１における撮像条件情報テーブルを示す。なお、図２１の例は、第一の実施例にかかる撮像条件情報テーブルに変型例１を適用した場合を示す。撮像条件情報テーブルは、マーカーＩＤ、シナリオＩＤ、シーンＩＤ、撮像条件を対応付けて記憶する。なお、撮像条件は、撮像位置と撮像方向である。変型例にかかる情報処理装置１は、マーカーＩＤ「Ｍ１」に対する撮像条件を、シナリオＩＤおよびシーンＩＤに応じて、切り替えることができる。なお、シナリオＩＤおよびシーンＩＤのいずれかのみが設定される態様であってもよい。
【０１５１】
［変型例２］
管理装置２がガイド処理を実行してもよい。管理装置２の制御部２２は、たとえば、図１５に示す、Ｏｐ．１、Ｏｐ．３、Ｏｐ．５、Ｏｐ．７、Ｏｐ．９、Ｏｐ．１１、Ｏｐ．１３、Ｏｐ．１５、Ｏｐ．１７、Ｏｐ．１９、Ｏｐ．２１．Ｏｐ．２５を実行する。なお、Ｏｐ．９およびＯｐ．１９においては、合成画像が情報処理装置１に送信され、情報処理装置１にて表示される。Ｏｐ．１および．２１においては、情報処理装置１から入力画像が受信される。同様に、第二の実施例にかかるガイド処理が、管理装置の制御部２２によって実行されてもよい。
【０１５２】
変型例２においては、テンプレート情報、コンテンツ情報、撮像条件情報は、情報処理装置１へ提供されなくともよい。情報処理装置１または情報処理装置３は、画像の撮像および画像の表示を行うのみであるため、処理負荷が軽減される。
【０１５３】
［変型例３］
第一の実施例にかかる情報処理装置１は、さらに、マーカーに対する撮像位置や撮像方向をログ情報とて記録し、ユーザの移動軌跡を生成してもよい。具体的には、情報処理装置は、基準物を認識するとともに、第一の実施例と同様の方法で、基準物相対の撮像位置および撮像方向を求める。そして、情報処理装置１は、認識した基準物の識別情報（マーカーＩＤ）と、撮像位置および撮像方向と、撮像日時とを対応付けて、ログ情報として記録する。さらに、ユーザを識別するユーザＩＤもログ情報に含まれるとしてもよい。
【０１５４】
なお、ログ情報の記録は、あるマーカーが認識されてから認識が終了するまで継続されるとともに、新たなマーカーが認識されると、新たなマーカーＩＤを含むログ情報の記録が開始される。このように、情報処理装置１は、マーカーが認識されている間におけるユーザの移動（マーカーに対する撮像位置）に関するログ情報を収集することができる。
【０１５５】
さらに、本変型例にかかる情報処理装置１は、収集したログ情報に基づき、ユーザの移動軌跡を生成してもよい。具体的には、予め各マーカーの現実空間における位置情報（施設内での設置位置の情報）と、施設の地図情報とが対応付けられた地図データが用意される。そして、情報処理装置は、各マーカーに対するユーザの位置（撮像位置）を、地図上にプロットすることで、地図データ上にユーザの位置の変化が、移動軌跡として、マッピングされる。
【０１５６】
ユーザの移動軌跡はマーカー座標系に、マーカー相対座標として記録される。地図データはグローバル座標系で設定され、マーカー位置・方向をグローバル座標で保持する。情報処理装置は、ユーザの移動軌跡のマーカー相対座標を、地図データ上のマーカー位置を基準としてグローバル座標系に座標変換することで、地図データ上に移動軌跡をプロットする。
【０１５７】
図２２は、ユーザの移動軌跡がマッピングされた地図データのイメージ図である。図２２は、作業場６００および、作業場６００に設置されたマーカーＭ１、Ｍ２、Ｍ３、Ｍ４、Ｍ５、Ｍ６を含む地図データに、ユーザの移動軌跡６０２、６０４、６０６、６０８、６１０、６１２がマッピングされた例である。なお、マーカーの配置間隔を狭くすることでユーザの移動軌跡を、途切れることなく追跡することも可能である。
【０１５８】
移動軌跡６０２は、マーカーＭ１のマーカーＩＤを含むログ情報から生成される。移動軌跡６０４は、マーカーＭ２のマーカーＩＤを含むログ情報から生成される。移動軌跡６０６は、マーカーＭ３のマーカーＩＤを含むログ情報から生成される。移動軌跡６０８は、マーカーＭ４のマーカーＩＤを含むログ情報から生成される。移動軌跡６１０は、マーカーＭ５のマーカーＩＤを含むログ情報から生成される。移動軌跡６１２は、マーカーＭ６のマーカーＩＤを含むログ情報から生成される。
【０１５９】
具体的には、移動軌跡６０２は、マーカーＭ１のマーカーＩＤを含むログ情報について、ログ情報の撮像位置をプロットされたものである。さらに、プロットされた各点が、ログ情報内の撮像日時が早い順に接続される。
【０１６０】
このように、各マーカーを認識している間に生成されたログ情報を、地図データ上にマッピングすることで、ユーザの滞留場所や移動軌跡を、視認することができる。例えば、図２２において、６１４で示した範囲に、ユーザが滞在していることがわかる。さらに、地図データには、ユーザの滞在日時が、合わせて表示されてもよい。
【０１６１】
［他の適用例］
実施例の開示の技術は、観察対象の画像を撮像する撮像条件を制御する以外にも適用されうる。ここでは、他の適用例について説明する。
【０１６２】
撮像画像においてマーカーが認識されたとしても、ＡＲオブジェクトが撮像画像に重畳表示されない場合がある。これは、ＡＲオブジェクトの配置位置が撮像画像に重畳表示可能な範囲を超えている場合である。具体的には、作業者がマーカーに接近した状態にあるときには、マーカーから離れたところに設定されたＡＲコンテンツは、合成画像内に含まれない。よって、ユーザは、ＡＲコンテンツを把握することができない。
【０１６３】
このような事態を回避するために、上記実施例が適用される。つまり、ユーザに対して、適切な撮像条件をガイドする。具体的には、予め撮像位置や撮像方向にかかる撮像条件を、管理者が設定する。そして、作業者が撮像した撮像画像から推測される撮像条件と、予め設定された撮像条件との差分が把握可能な態様で、ガイド表示が実行される。作業者が、ガイド表示に従って移動を行うことで、基準物に対応付けられたＡＲオブジェクトが、撮像条件の影響で表示されないという事態を回避することができる。
【０１６４】
［ハードウェア構成例］
各実施例に示した情報処理装置１および管理装置２のハードウェア構成について説明する。図２３は、各実施例の情報処理装置のハードウェア構成例である。情報処理装置１および情報処理装置３は、コンピュータ１０００によって、実現される。つまり、図９及び図１８に示す機能ブロックは、例えば、図２３に示すハードウェア構成により実現される。
【０１６５】
コンピュータ１０００は、例えば、プロセッサ１００１、Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ（ＲＡＭ）１００２、Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ（ＲＯＭ）１００３、ドライブ装置１００４、記憶媒体１００５、入力インターフェース（入力Ｉ／Ｆ）１００６、入力デバイス１００７、出力インターフェース（出力Ｉ／Ｆ）１００８、出力デバイス１００９、通信インターフェース（通信Ｉ／Ｆ）１０１０、カメラモジュール１０１１、加速度センサ１０１２、角速度センサ１０１３、表示インターフェース（表示Ｉ／Ｆ）１０１４、表示デバイス１０１５およびバス１０１６などを含む。それぞれのハードウェアはバス１０１６を介して接続されている。
【０１６６】
通信インターフェース１０１０はネットワークＮを介した通信の制御を行なう。通信インターフェース１０１０が制御する通信は、無線通信を利用して、無線基地局を介してネットワークＮにアクセスする態様でもよい。通信インターフェース１０１０の一例は、ネットワーク・インタフェース・カード（ＮＩＣ）である。入力インターフェース１００６は、入力デバイス１００７と接続されており、入力デバイス１００７から受信した入力信号をプロセッサ１００１に伝達する。出力インターフェース１００８は、出力デバイス１００９と接続されており、出力デバイス１００９に、プロセッサ１００１の指示に応じた出力を実行させる。入力インターフェース１００６および出力インターフェース１００８の一例は、Ｉ／Ｏコントローラである。
【０１６７】
入力デバイス１００７は、操作に応じて入力信号を送信する装置である。入力信号は、例えば、キーボードやコンピュータ１０００の本体に取り付けられたボタンなどのキー装置や、マウスやタッチパネルなどのポインティングデバイスである。出力デバイス１００９は、プロセッサ１００１の制御に応じて情報を出力する装置である。出力デバイス１００９は、例えば、スピーカーなどの音声出力装置などである。
【０１６８】
表示インターフェース１０１４は、表示デバイス１０１５と接続されている。表示インターフェース１０１４は、表示インターフェース１０１４に設けられた表示用バッファにプロセッサ１００１により書き込まれた画像情報を、表示デバイス１０１５に表示させる。表示インターフェース１０１４の一例は、グラフィックカードやグラフィックチップである。表示デバイス１０１５は、プロセッサ１００１の制御に応じて情報を出力する装置である。表示デバイス１０１５は、ディスプレイなどの画像出力装置や、透過型ディスプレイなどが用いられる。
【０１６９】
透過型ディスプレイが用いられる場合には、ＡＲコンテンツの投影画像は、撮像画像と合成されるのではなく、例えば透過型ディスプレイ内の適切な位置に表示されるように制御されてもよい。これにより、ユーザは、現実空間とＡＲコンテンツが整合した状態の視覚が得られる。また、例えば、タッチスクリーンなどの入出力装置が、入力デバイス１００７及び表示デバイス１０１５として用いられる。また、入力デバイス１００７及び表示デバイス１０１５が、コンピュータ１０００内部に組み込まれる代わりに、例えば、入力デバイス１００７及び表示デバイス１０１５が、コンピュータ１０００に外部から接続されてもよい。
【０１７０】
ＲＡＭ１００２は読み書き可能なメモリ装置であって、例えば、ＳＲＡＭ（Ｓｔａｔｉｃ  ＲＡＭ）やＤＲＡＭ（Ｄｙｎａｍｉｃ  ＲＡＭ）などの半導体メモリ、またはＲＡＭ以外にもフラッシュメモリなどが用いられてもよい。ＲＯＭ１００３は、ＰＲＯＭ（Ｐｒｏｇｒａｍｍａｂｌｅ  ＲＯＭ）なども含む。
【０１７１】
ドライブ装置１００４は、記憶媒体１００５に記憶された情報の読み出しか書き込みかの少なくともいずれか一方を行なう装置である。記憶媒体１００５は、ドライブ装置１００４によって書き込まれた情報を記憶する。記憶媒体１００５は、例えば、ハードディスク、ＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）、ＣＤ（Ｃｏｍｐａｃｔ  Ｄｉｓｃ）、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｃ）、ブルーレイディスクなどの種類の記憶媒体のうちの少なくとも１つである。また、例えば、コンピュータ１０００は、コンピュータ１０００内の記憶媒体１００５の種類に対応したドライブ装置１００４を含む。
【０１７２】
カメラモジュール１０１１は、撮像素子（イメージセンサ）を含み、撮像素子が光電変換して得られたデータを、カメラモジュール１０１１に含まれる入力画像用の画像バッファに書き込む。加速度センサ１０１２は、加速度センサ１０１２に対して作用する加速度を計測する。角速度センサ１０１３は、角速度センサ１０１３による動作の角速度を計測する。
【０１７３】
プロセッサ１００１は、ＲＯＭ１００３や記憶媒体１００５に記憶されたプログラムをＲＡＭ１００２に読み出し、読み出されたプログラムの手順に従って処理を行なう。例えば、制御部１５の機能は、プロセッサ１００１が、第一の実施例にかかるガイドプログラムに基づいて、他のハードウェアの制御を行なうことにより実現される。例えば、制御部３２の機能は、プロセッサ１００１が、第二の実施例にかかるガイドプログラムに基づいて、他のハードウェアの制御を行なうことにより実現される。
【０１７４】
通信部１１の機能は、プロセッサ１００１が、通信インターフェース１０１０を制御してデータ通信を実行させ、受信したデータを記憶媒体１００５に格納させることにより実現される。
【０１７５】
記憶部１４および記憶部３１の機能は、ＲＯＭ１００３および記憶媒体１００５がプログラムファイルやデータファイルを記憶すること、また、ＲＡＭ１００２がプロセッサ１００１のワークエリアとして用いられることによって実現される。例えば、コンテンツ情報、テンプレート情報、撮像条件情報などがＲＡＭ１００２に格納される。
【０１７６】
撮像部１２の機能は、カメラモジュール１０１１が入力画像用の画像バッファに画像データを書込み、入力画像用の画像バッファ内の画像データをプロセッサ１００１が読み出すことにより実現される。画像データは、モニタリングモードにおいては、例えば、入力画像用の画像バッファに書き込まれるとともに、表示デバイス１０１５の表示用バッファに並行して書き込まれる。
【０１７７】
また、表示部１３の機能は、プロセッサ１００１により生成された画像データが表示インターフェース１０１４に備えられた表示用バッファに書き込まれ、表示デバイス１０１５が表示用バッファ内の画像データの表示を行なうことにより実現される。
【０１７８】
次に、図２４は、コンピュータ１０００で動作するプログラムの構成例を示す。コンピュータ１０００において、ハードウェア群の制御を行なうＯＳ（オペレーティング・システム）３００２が動作する。ＯＳ３００２に従った手順でプロセッサ１００１が動作して、ＨＷ（ハードウェア）３００１の制御・管理が行なわれることで、ＡＰ（アプリケーションプログラム）３００４やＭＷ（ミドルウェア）３００３による処理がＨＷ３００１上で実行される。
【０１７９】
コンピュータ１０００において、ＯＳ３００２、ＭＷ３００３及びＡＰ３００４などのプログラムは、例えば、ＲＡＭ１００２に読み出されてプロセッサ１００１により実行される。また、各実施例に示したガイドプログラムは、例えば、ＭＷ３００３としてＡＰ３００４から呼び出されるプログラムである。
【０１８０】
または、例えば、ガイドプログラムを含むＡＲ制御プログラムは、ＡＰ３００４としてＡＲ機能を実現させるプログラムである。ＡＲ制御プログラムは、記憶媒体１００５に記憶される。記憶媒体１００５は、本実施例に係るガイドプログラム単体または、ガイドプログラムを含むＡＲ制御プログラムを記憶した状態で、コンピュータ１０００本体と切り離して流通され得る。
【０１８１】
次に、各実施例における管理装置２のハードウェア構成について説明する。図２５は、管理装置のハードウェア構成例である。管理装置２は、コンピュータ２０００によって、実現される。管理装置２は、例えば、図２５に示すハードウェア構成により実現される。コンピュータ２０００は、例えば、プロセッサ２００１、ＲＡＭ２００２、ＲＯＭ２００３、ドライブ装置２００４、記憶媒体２００５、入力インターフェース（入力Ｉ／Ｆ）２００６、入力デバイス２００７、出力インターフェース（出力Ｉ／Ｆ）２００８、出力デバイス２００９、通信インターフェース（通信Ｉ／Ｆ）２０１０、ＳＡＮ（Ｓｔｏｒａｇｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）インターフェース（ＳＡＮ  Ｉ／Ｆ）２０１１及びバス２０１２などを含む。それぞれのハードウェアはバス２０１２を介して接続されている。
【０１８２】
例えば、プロセッサ２００１はプロセッサ１００１と同様なハードウェアである。ＲＡＭ２００２は、例えばＲＡＭ１００２と同様なハードウェアである。ＲＯＭ２００３は、例えばＲＯＭ１００３と同様なハードウェアである。ドライブ装置２００４は、例えばドライブ装置１００４と同様なハードウェアである。記憶媒体２００５は、例えば記憶媒体１００５と同様なハードウェアである。入力インターフェース（入力Ｉ／Ｆ）２００６は、例えば入力インターフェース１００６と同様なハードウェアである。入力デバイス２００７は、例えば入力デバイス１００７と同様なハードウェアである。
【０１８３】
出力インターフェース（出力Ｉ／Ｆ）２００８は、例えば出力インターフェース１００８と同様なハードウェアである。出力デバイス２００９は、例えば出力デバイス１００９と同様なハードウェアである。通信インターフェース（通信Ｉ／Ｆ）２０１０は、例えば通信インターフェース１０１０と同様なハードウェアである。ＳＡＮ（Ｓｔｏｒａｇｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）インターフェース（ＳＡＮ  Ｉ／Ｆ）２０１１は、コンピュータ２０００をＳＡＮに接続するためのインターフェースであり、ＨＢＡ（Ｈｏｓｔ  Ｂｕｓ  Ａｄａｐｔｅｒ）を含む。
【０１８４】
プロセッサ２００１は、ＲＯＭ２００３や記憶媒体２００５に記憶されたプログラムをＲＡＭ２００２に読み出し、読み出されたプログラムの手順に従って処理を行なう。その際にＲＡＭ２００２はプロセッサ２００１のワークエリアとして用いられる。なお、プログラムは、管理装置２における各種処理に係るプログラムを含む。たとえば、当該プログラムは、コンピュータ１０００へ提供するテンプレート情報、コンテンツ情報、撮像条件情報を選択する処理等が、記述されたプログラムである。
【０１８５】
ＲＯＭ２００３および記憶媒体２００５が、プログラムファイルやデータファイルを記憶すること、もしくは、ＲＡＭ２００２がプロセッサ２００１のワークエリアとして用いられることによって、管理装置２は、各種情報を記憶する。また、プロセッサ２００１が、通信インターフェース２０１０を制御して通信処理を行なう。
【符号の説明】
【０１８６】
１      情報処理装置
１１    通信部
１２    撮像部
１３    表示部
１４    記憶部
１５    制御部
１６    認識部
１７    ガイド実行部
１８    画像生成部
２      管理装置
２１    通信部
２２    制御部
２３    記憶部
３      情報処理装置
３１    記憶部
３２    制御部
３３    認識部
３４    条件生成部
３５    ガイド実行部
３６    画像生成部
【図１】
2015082830.tif 000004
【図２】
2015082830.tif 000005
【図３】
2015082830.tif 000006
【図４】
2015082830.tif 000007
【図５】
2015082830.tif 000008
【図６】
2015082830.tif 000009
【図７】
2015082830.tif 000010
【図８】
2015082830.tif 000011
【図９】
2015082830.tif 000012
【図１０】
2015082830.tif 000013
【図１１】
2015082830.tif 000014
【図１２】
2015082830.tif 000015
【図１３】
2015082830.tif 000016
【図１４】
2015082830.tif 000017
【図１５】
2015082830.tif 000018
【図１６】
2015082830.tif 000019
【図１７】
2015082830.tif 000020
【図１８】
2015082830.tif 000021
【図１９】
2015082830.tif 000022
【図２０】
2015082830.tif 000023
【図２１】
2015082830.tif 000024
【図２２】
2015082830.tif 000025
【図２３】
2015082830.tif 000026
【図２４】
2015082830.tif 000027
【図２５】
2015082830.tif 000028