(57)【特許請求の範囲】
【請求項１】
コンピュータに、
基準物を撮影した画像を、カメラから取得し、
前記画像に含まれる前記基準物の像に基づき、前記カメラを基準とする三次元空間のうち、少なくとも、該カメラの撮影方向を俯瞰可能な平面図であって、かつ、前記カメラおよび前記基準物に対応する図形を含む、平面図を生成し、
前記カメラから取得した前記画像を、表示装置に表示し、
選択されたオブジェクトの仮の配置位置として、前記画像における二次元位置の指定を受け付け、
前記二次元位置および前記三次元空間における前記撮影方向の所定位置に基づき、前記二次元位置を、前記三次元空間における三次元位置に変換し、
前記平面図上の前記三次元位置に対応する合成位置に、前記オブジェクトを示す他の図形を合成し、
前記他の図形が合成された前記平面図を、前記表示装置に表示し、
前記オブジェクトの配置位置として、前記合成位置に合成表示された前記他の図形を移動させるべき、前記平面図における他の二次元位置の指定を受け付け、
前記他の二次元位置に基づき、前記三次元位置を更新し、
更新された前記三次元位置を、前記基準物を基準とする他の三次元空間における他の三次元位置へ変換し、
前記他の三次元位置と前記オブジェクトのオブジェクトデータとを対応付けた管理情報を生成する、
処理を実行させることを特徴とする表示プログラム。
【請求項２】
前記コンピュータに、さらに、
前記画像に含まれる前記基準物の像に基づいて、前記三次元空間内における前記基準物と前記カメラとの間の相対位置を算出する処理を実行させ、
前記図形は、前記カメラおよび前記基準物を、算出した前記相対位置に応じた位置関係で示す、
ことを特徴とする請求項１に記載の表示プログラム。
【請求項３】
前記コンピュータに、さらに、
前記画像に含まれる前記基準物の像に基づいて、前記三次元空間内における前記基準物と前記カメラとの間の相対位置を算出する処理を実行させ、
前記平面図内の前記他の二次元位置が指定された場合に、前記他の二次元位置および前記相対位置に基づいて、前記三次元位置を更新する、
処理を実行させることを特徴とする請求項１に記載の表示プログラム。
【請求項４】
前記オブジェクトデータは、３次元の座標で形状が定められたデータであって、
前記コンピュータに、さらに、
前記他の三次元位置に基づいて前記他の三次元空間内に仮想的に配置された前記オブジェクトデータが前記カメラにより投影された状態を示す投影画像を生成し、
生成された前記投影画像を、前記カメラにより新たに撮影された他の画像に重ねて表示する、
処理を実行させることを特徴とする請求項３に記載の表示プログラム。
【請求項５】
前記他の二次元位置は、前記平面図が表示された表示画面内の位置指定に応じて指定されること、
を特徴とする請求項３または請求項４に記載の表示プログラム。
【請求項６】
前記コンピュータに、
前記他の二次元位置が指定されると、前記平面図内の前記他の二次元位置に、前記オブジェクトデータに対応する前記他の図形を、移動して表示させ、
前記平面図内の新たな二次元位置が指定されると、前記オブジェクトデータに対応する前記他の図形を、前記新たな二次元位置に、移動して表示させる、
処理を実行させることを特徴とする請求項４に記載の表示プログラム。
【請求項７】
前記コンピュータに、
前記画像の表示が行われている間に、ユーザから切替指示が入力された場合に、前記平面図を表示する、
処理を実行させることを特徴とする請求項１〜６のいずれか１項に記載の表示プログラム。
【請求項８】
コンピュータが、
基準物を撮影した画像を、カメラから取得し、
前記画像に含まれる前記基準物の像に基づき、前記カメラを基準とする三次元空間のうち、少なくとも撮影方向を俯瞰可能な平面図であって、かつ、前記カメラおよび前記基準物に対応する図形を含む、平面図を生成し、
前記カメラから取得した前記画像を、表示装置に表示し、
選択されたオブジェクトの仮の配置位置として、前記画像における二次元位置の指定を受け付け、
前記二次元位置および前記三次元空間における前記撮影方向の所定位置に基づき、前記二次元位置を、前記三次元空間における三次元位置に変換し、
前記平面図上の前記三次元位置に対応する合成位置に、前記オブジェクトを示す他の図形を合成し、
前記他の図形が合成された前記平面図を、前記表示装置に表示し、
前記オブジェクトの配置位置として、前記合成位置に合成表示された前記他の図形を移動させるべき、前記平面図における他の二次元位置の指定を受け付け、
前記他の二次元位置に基づき、前記三次元位置を更新し、
更新された前記三次元位置を、前記基準物を基準とする他の三次元空間における他の三次元位置へ変換し、
前記他の三次元位置と前記オブジェクトのオブジェクトデータとを対応付けた管理情報を生成する、
ことを特徴とする表示方法。
【請求項９】
撮像部と、
基準物を撮影した画像を、前記撮像部から取得し、前記画像に含まれる前記基準物の像に基づき、前記撮像部を基準とする三次元空間のうち、少なくとも撮影方向を俯瞰可能な平面図であって、かつ、前記撮像部および前記基準物に対応する図形を含む、平面図を生成し、前記画像を表示させ、選択されたオブジェクトの仮の配置位置として、前記画像における二次元位置の指定を受け付け、前記二次元位置および前記三次元空間における前記撮影方向の所定位置に基づき、前記二次元位置を、前記三次元空間における三次元位置に変換し、前記平面図上の前記三次元位置に対応する合成位置に、前記オブジェクトを示す他の図形を合成し、前記他の図形が合成された前記平面図を表示させ、前記オブジェクトの配置位置として、前記合成位置に合成表示された前記他の図形を移動させるべき、前記平面図における他の二次元位置の指定を受け付け、前記他の二次元位置に基づき、前記三次元位置を更新し、更新された前記三次元位置を、前記基準物を基準とする他の三次元空間内における他の三次元位置へ変換し、前記他の三次元位置と前記オブジェクトのオブジェクトデータとを対応付けた管理情報を生成する処理部と、
前記撮像部から取得した前記画像を表示するとともに、ユーザからの指示に応じて、前記他の図形が合成された前記平面図を表示する表示部と、
を含むことを特徴とする表示装置。
【請求項１０】
第１のコンピュータおよび第２のコンピュータを含む位置設定システムであって、
前記第１のコンピュータは、
撮像部と、
基準物を撮影した画像を、前記撮像部から取得し、前記画像に含まれる前記基準物の像に基づき、前記撮像部を基準とする三次元空間のうち、少なくとも撮影方向を俯瞰可能な平面図であって、かつ、前記撮像部および前記基準物に対応する図形を含む、平面図を生成し、前記画像を表示させ、選択されたオブジェクトの仮の配置位置として、前記画像における二次元位置の指定を受け付け、前記二次元位置および前記三次元空間における前記撮影方向の所定位置に基づき、前記二次元位置を、前記三次元空間における三次元位置に変換し、前記平面図上の前記三次元位置に対応する合成位置に、前記オブジェクトを示す他の図形を合成し、前記他の図形が合成された前記平面図を表示させ、前記オブジェクトの配置位置として、前記合成位置に合成表示された前記他の図形を移動させるべき、前記平面図における他の二次元位置の指定を受け付け、前記他の二次元位置に基づき、前記三次元位置を更新し、更新された前記三次元位置を、前記基準物を基準とする他の三次元空間内における他の三次元位置へ変換し、前記他の三次元位置と前記オブジェクトのオブジェクトデータとを対応付けた管理情報を生成する処理部と、
前記撮像部から取得した前記画像を表示するとともに、ユーザからの指示に応じて、前記他の図形が合成された前記平面図を表示する表示部と、
前記管理情報を前記第２のコンピュータに送信する送信部と、を含み、
前記第２のコンピュータは、
前記送信部から送信された前記管理情報を受信する受信部と、
受信した前記管理情報を記憶する記憶部と、を含む、
ことを特徴とする位置設定システム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、空間内の位置を指定する技術に関する。
【背景技術】
【０００２】
撮像装置により得られた撮像画像の一部分に他の画像を重ねて表示させることが行なわれる。例えば、プリントシール機は、撮像装置でユーザを撮像し、撮像により得られた撮像画像を予め用意されたフレーム画像と合成して、合成して得られた画像をシール紙などに印刷して提供する画像印刷装置である。そして、このプリントシール機では、ユーザが、撮像画像上に付属のペンで任意の文字や図形（スタンプ画像）などを編集することができるようになされている（いわゆる落書き機能）。スタンプ画像は、タッチペンがタッチパネルに接触している位置に描画される（例えば特許文献１参照）。【０００３】
また、現実空間に対応する３次元の仮想空間上に配置された３次元物体のモデルデータであるＡＲオブジェクトを、撮像装置が撮像する撮像画像に重ねて表示することが行なわれる。この技術は、人間の知覚（視覚など）により収集される情報を拡張させるため、拡張現実（Ａｕｇｍｅｎｔｅｄ  Ｒｅａｌｉｔｙ：ＡＲ）技術などと呼ばれる。ＡＲオブジェクトは現実空間に対応する仮想空間上の位置が設定されており、撮像装置とＡＲオブジェクトとの位置関係に基づいてＡＲオブジェクトの投影画像が生成され、生成された投影画像が撮像画像に重ねて表示される。ＡＲオブジェクトの仮想空間内での位置は予め設定される（例えば特許文献２参照）。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００３−１４１５５８号公報
【特許文献２】特開２００２−０９２６４７号公報
【発明の概要】
【解決しようとする課題】
【０００５】
現実空間に存在する物体と整合させて表示させるＡＲオブジェクトを設定する場合には、ＡＲオブジェクトの位置を指定する座標の測量作業が行なわれる。また、測量作業を行なったとしても、位置指定にズレが生じている場合には、ＡＲオブジェクトと整合させて表示させる対象である物体とＡＲオブジェクトとがずれた状態で表示されてしまう。位置指定のズレが生じた場合には、正しい位置を指定するために再度測量作業が行なわれる。
【０００６】
本発明の一側面においては、撮像画面に対して奥行き方向の位置指定において、現実空間と対応する目安を提供することを目的とする。
【課題を解決するための手段】
【０００７】
一態様によれば、表示プログラムは、コンピュータに、基準物を撮影した画像を、カメラから取得し、前記画像に含まれる前記基準物の像に基づき、前記カメラを基準とする三次元空間のうち、少なくとも撮影方向を俯瞰可能な平面図であって、かつ、前記カメラおよび前記基準物に対応する図形を含む、平面図を生成し、前記カメラから取得した前記画像を、表示装置に表示し、選択されたオブジェクトの仮の配置位置として、前記画像における二次元位置の指定を受け付け、前記二次元位置および前記三次元空間における前記撮影方向の所定位置に基づき、前記二次元位置を、前記三次元空間における三次元位置に変換し、前記平面図上の前記三次元位置に対応する合成位置に、前記オブジェクトを示す他の図形を合成し、前記他の図形が合成された前記平面図を、前記表示装置に表示し、前記オブジェクトの配置位置として、前記合成位置に合成表示された前記他の図形を移動させるべき、前記平面図における他の二次元位置の指定を受け付け、前記他の二次元位置に基づき、前記三次元位置を更新し、更新された前記三次元位置を、前記基準物を基準とする他の三次元空間における他の三次元位置へ変換し、前記他の三次元位置と前記オブジェクトのオブジェクトデータとを対応付けた管理情報を生成する処理を実行させる。
【発明の効果】
【０００８】
一側面によれば、撮像画面に対して奥行き方向の位置指定において、現実空間と対応する目安を提供することができる。
【図面の簡単な説明】
【０００９】
【図１】図１は、カメラ座標系とマーカー座標系との関係を示す。
【図２】図２は、カメラ座標系とマーカー座標系とにおけるＡＲオブジェクトＥの例を示す。
【図３】図３は、マーカー座標系からカメラ座標系への変換行列Ｍと、変換行列Ｍ内の回転行列Ｒを示す。
【図４】図４は、回転行列Ｒ１、Ｒ２およびＲ３を示す。
【図５】図５は、表示画面の例を示す。
【図６】図６は、ＡＲオブジェクトＥの配置例を示す。
【図７】図７は、表示画面の例を示す。
【図８】図８は、ＡＲオブジェクトＥの配置例を示す。
【図９】図９は、入力画面（俯瞰モデル図）の例を示す。
【図１０】図１０は、入力画面（俯瞰モデル図）の例を示す。
【図１１】図１１は、入力画面（Ｚｃ−Ｙｃ平面図）の例を示す。
【図１２】図１２は、入力画面（撮像画像）の例を示す。
【図１３】図１３は、コンピュータ１の機能構成例を示す。
【図１４】図１４は、マーカー管理テーブルＴ１を示す。
【図１５】図１５は、定義テーブルＴ２を示す。
【図１６】図１６は、管理テーブルＴ３を示す。
【図１７】図１７は、編集テーブルＴ４を示す。
【図１８】図１８は、位置指定プログラムの処理手順例を示す。
【図１９】図１９は、マーカー認識処理の処理手順例を示す。
【図２０】図２０は、編集処理の処理手順例を示す。
【図２１】図２１は、俯瞰モデル図生成の処理手順例を示す
【図２２】図２２は、撮像画像に基づく位置指定処理の処理手順例を示す。
【図２３】図２３は、俯瞰モデル図に基づく位置指定処理の処理手順例を示す。
【図２４】図２４は、編集処理の処理手順例を示す。
【図２５】図２５は、ＡＲテンプレートメニュー例を示す。
【図２６】図２６は、コンピュータ１のハードウェア構成例を示す。
【図２７】図２７は、コンピュータ１で動作するプログラムの構成例を示す。
【図２８】図２８は、コンピュータ１を含むシステムの例を示す。
【図２９】図２９は、管理サーバ２の機能構成例を示す。
【図３０】図３０は、管理サーバ２のハードウェア構成例を示す。
【発明を実施するための形態】
【００１０】
まず、現実空間に対応する３次元の仮想空間上に配置されたＡＲオブジェクトを、カメラが撮像する撮像画像に重ねて表示させるＡＲ技術について説明する。
【００１１】
ＡＲオブジェクトは、例えば、複数の点を含むモデルデータである。複数の点を直線や曲線で補間して得られる複数の面ごとに模様（テクスチャ）が設定され、複数の面が合成されることで３次元のモデルが形成される。ＡＲオブジェクトの仮想空間上での配置は、ＡＲオブジェクトを構成する各点の座標が現実空間内に存在する基準物を基準として定められることで行なわれる。現実空間において各点の座標の位置にオブジェクトが存在するわけではなく、各点の座標は基準物を基準として仮想空間上に定められるものである。
【００１２】
ＡＲオブジェクトが仮想空間上に配置される一方で、カメラが撮像した撮像画像内に写り込んだ基準物の見え方（像）に基づいて、カメラと基準物との現実空間における位置関係が求められる。現実空間内に存在する基準物を基準とする仮想空間上の座標と、現実空間におけるカメラと基準物との位置関係により、現実空間に対応する３次元の仮想空間上でのカメラとＡＲオブジェクトの各点の座標との位置関係が求められる。これらの位置関係に基づいて、仮想空間上でカメラがＡＲオブジェクトを撮像した場合に得られるＡＲオブジェクトの像が算出される。ＡＲオブジェクトの像を算出するための演算について、図１〜図４に基づいてさらに説明する。
【００１３】
図１は、カメラ座標系とマーカー座標系との関係を示す。図１に示されるマーカーＭは、ＡＲオブジェクト表示に用いられる基準物の一例である。図１に例示されるマーカーＭは、正方形形状をしており、予めサイズが定められている（例えば１辺の長さが１０ｃｍなど）。図１に示されるマーカーＭは正方形形状であるが、複数の視点のいずれから撮像して得られる像に基づいても、カメラからの相対的な位置および向きが判別可能な形状の他の物体が基準物に用いられてもよい。例えば、撮像画像から生成される特徴点などを基準物として用いてもよい。
【００１４】
カメラ座標系は、（Ｘｃ，Ｙｃ，Ｚｃ）の３次元で構成され、例えばカメラの焦点を原点（原点Ｏｃ）とする。例えば、カメラ座標系のＸｃ−Ｙｃ平面はカメラの撮像素子面と平行な面であり、Ｚｃ軸は撮像素子面に垂直な軸である。
【００１５】
マーカー座標系は、（Ｘｍ，Ｙｍ，Ｚｍ）の３次元で構成され、例えばマーカーＭの中心を原点（原点Ｏｍ）とする。例えば、マーカー座標系のＸｍ−Ｙｍ平面はマーカーＭと平行な面であり、Ｚｍ軸はマーカーＭの面と垂直である。原点Ｏｍは、カメラ座標系において座標Ｖ１ｃ（Ｘ１ｃ，Ｙ１ｃ，Ｚ１ｃ）で示される。また、カメラ座標系（Ｘｃ，Ｙｃ，Ｚｃ）に対するマーカー座標系の回転角は、回転座標Ｇ１ｃ（Ｐ１ｃ，Ｑ１ｃ，Ｒ１ｃ）で示される。Ｐ１ｃはＸｃ軸回りの回転角であり、Ｑ１ｃはＹｃ軸回りの回転角であり、Ｒ１ｃはＺｃ軸回りの回転角である。図１に例示されるマーカー座標系は、Ｙｍ軸回りにのみ回転しているため、Ｐ１ｃおよびＲ１ｃは０である。
【００１６】
図２は、カメラ座標系とマーカー座標系とにおけるＡＲオブジェクトＥの例を示す。図２に示すＡＲオブジェクトＥは、吹き出し形状のオブジェクトであり、吹き出し内に「ヒビあり！」というテキストデータを含む。ＡＲオブジェクトＥの吹き出しの先に黒丸は、ＡＲオブジェクトＥの基準点を示す。ＡＲオブジェクトＥのマーカー座標系における座標は、Ｖ２ｍ（Ｘ２ｍ，Ｙ２ｍ，Ｚ２ｍ）とする。さらにＡＲオブジェクトＥの向きは回転座標Ｇ２ｍ（Ｐ２ｍ，Ｑ２ｍ，Ｒ２ｍ）で定められ、ＡＲオブジェクトＥのサイズは倍率Ｄ（Ｊｘ，Ｊｙ，Ｊｚ）で定められる。
【００１７】
ＡＲオブジェクトＥを構成する各点の座標は、ＡＲオブジェクトＥの雛型である定義データ（ＡＲテンプレート）に定義されている各点の座標が、基準点の座標Ｖ２ｍ、回転座標Ｇ２ｍおよび倍率Ｄに基づいて調整された座標である。ＡＲテンプレートに定義される点の座標は、基準点の座標が（０，０，０）の状態で示される。ＡＲテンプレートに含まれる各座標は、設定された回転座標Ｇ２ｍに基づいて回転され、倍率Ｄで拡縮され、さらに基準点の座標Ｖ２ｍに基づいて平行移動されて調整される。図２のＡＲオブジェクトＥは、ＡＲテンプレートに定義された各点が、基準点の座標Ｖ２ｍ、回転座標Ｇ２ｍおよび倍率Ｄに基づいて調整された点に基づいて構成された状態を示している。
【００１８】
マーカー座標系で座標が設定されたＡＲオブジェクトＥの各点の座標が、カメラ座標系に変換され、さらにカメラ座標系の座標に基づいて画面内の位置が算出されることにより、ＡＲオブジェクトＥの像が生成される。
【００１９】
ＡＲオブジェクトＥに含まれる各点のカメラ座標系における座標は、マーカー座標系における各点の座標を座標Ｖ１ｃおよび回転座標Ｇ１ｃに基づく座標変換（モデル−ビュー変換）により算出される。例えば、モデル−ビュー変換が座標Ｖ２ｍに対して行なわれることにより、基準点のカメラ座標系における座標Ｖ２ｃ（Ｘ２ｃ，Ｙ２ｃ，Ｚ２ｃ）が求められる。
【００２０】
図３は、マーカー座標系からカメラ座標系への変換行列Ｍと、変換行列Ｍ内の回転行列Ｒを示す。変換行列Ｍは、４×４の行列である。変換行列Ｍと列ベクトル（Ｘｍ，Ｙｍ，Ｚｍ，１）との積により、列ベクトル（Ｘｃ，Ｙｃ，Ｚｃ，１）が得られる。すなわち、列ベクトル（Ｘｍ，Ｙｍ，Ｚｍ，１）に座標変換（モデル−ビュー変換）対象のマーカー座標系の点座標を代入して、行列演算を行なうことにより、カメラ座標系の点座標を含む列ベクトル（Ｘｃ，Ｙｃ，Ｚｃ，１）が得られる。変換行列Ｍの１〜３行目且つ１〜３列の部分行列（回転行列Ｒ）がマーカー座標系の座標に作用することにより、マーカー座標系の向きとカメラ座標系との向きを合わせるための回転操作が行なわれる。変換行列Ｍの１〜３行目且つ４列目の部分行列が作用することにより、マーカー座標系の向きとカメラ座標系との位置を合わせるための並進操作が行なわれる。
【００２１】
図４は、回転行列Ｒ１、Ｒ２およびＲ３を示す。図３に示す回転行列Ｒは、回転行列Ｒ１、Ｒ２およびＲ３の積（Ｒ１・Ｒ２・Ｒ３）により算出される。
【００２２】
ＡＲオブジェクトＥを構成する各点のマーカー座標系の座標（Ｘｍ，Ｙｍ，Ｚｍ）は、変換行列Ｍに基づくモデル−ビュー変換により、カメラ座標系の座標（Ｘｃ，Ｙｃ，Ｚｃ）に変換される。上述の通り、座標Ｖ２ｍはモデル−ビュー変換により座標Ｖ２ｃに変換される。モデル−ビュー変換により得られた座標（Ｘｃ，Ｙｃ，Ｚｃ）は、ＡＲオブジェクトＥが存在する仮想的な空間にカメラが存在するとした場合のカメラからの相対的な位置を示す。
【００２３】
スクリーン座標系は、（Ｘｓ，Ｙｓ）の２次元で構成され、例えばカメラの撮像処理により得られる撮像画像の中心を原点（原点Ｏｓ）とする。ＡＲオブジェクトＥの各点のカメラ座標系の座標は、スクリーン座標系に変換される。この座標変換（透視変換）により得られる各点のスクリーン座標系の座標に基づいて、ＡＲオブジェクトＥの像が生成される。
【００２４】
カメラ座標系からスクリーン座標系への座標変換（透視変換）は、例えば、カメラの焦点距離ｆに基づいて行なわれる。カメラ座標系における座標（Ｘｃ，Ｙｃ，Ｚｃ）に対応するスクリーン座標系の座標のＸｓ座標は、Ｘｓ＝ｆ・Ｘｃ／Ｚｃで求められる。また、カメラ座標系における座標（Ｘｃ，Ｙｃ，Ｚｃ）に対応するスクリーン座標系の座標のＹｓ座標は、Ｙｓ＝ｆ・Ｙｃ／Ｚｃで求められる。
【００２５】
ＡＲオブジェクトＥを構成する各点の座標（カメラ座標系）が透視変換されて得られる座標（スクリーン座標系）に基づいて、ＡＲオブジェクトＥの像が生成される。ＡＲオブジェクトＥは、ＡＲオブジェクトＥを構成する複数の点を補間して得られる面にテクスチャをマッピングすることにより生成される。ＡＲオブジェクトＥの元になるＡＲテンプレートには、どの点を補間して面を形成するか、どの面に殿テクスチャをマッピングするかが定義される。
【００２６】
上述のモデル−ビュー変換および透視変換により、マーカー座標系の座標に対応する撮像画像上の座標が算出され、その座標を利用することで、カメラの視点に応じたＡＲオブジェクトＥの像が生成される。生成されるＡＲオブジェクトＥの像は、ＡＲオブジェクトＥの投影画像と呼ばれる。ＡＲオブジェクトＥの投影画像が撮像画像に合成されることで、ユーザに提供される視覚的な情報が拡張される。また、他の態様では、透過型ディスプレイにＡＲオブジェクトＥの投影画像が表示される。この態様においても、ユーザがディスプレイを透過して得られる現実空間の像と、ＡＲオブジェクトの投影画像とが整合するので、ユーザに提供される視覚的な情報が拡張される。
【００２７】
本実施例では、カメラ機能および表示機能を有するコンピュータ１により、上述のＡＲ技術の適用対象であるＡＲオブジェクトＥの位置や向きの指定が行なわれる。コンピュータ１は、ユーザからの入力に応じてＡＲオブジェクトＥの位置や向きの指定を行なう。
【００２８】
図５は、表示画面の例を示す。図５の表示画面Ｓ１は、マーカーＭの像および物体Ｈの像を含む撮像画像に、ＡＲオブジェクトＥの投影画像が合成されて表示された画面の例である。撮像画像は、例えばコンピュータ１のカメラ機能により取得された画像である。
【００２９】
表示画面Ｓ１で例示される撮像画像は工場内で撮像された画像であり、撮像画像内に写り込んだ物体Ｈはカーブしたパイプである。物体Ｈのカーブした部分にひび割れが生じている。工場の保守点検の作業などにおいては、ひび割れなどが生じていた場合に、ひび割れ箇所の指摘を申し送り事項として記録することが行なわれる。ひび割れ箇所と整合する位置に「ヒビあり！」というメッセージを含む吹き出し形状のＡＲオブジェクトＥが設定されることで、申し送り事項の記録が行なわれる。後から現場に訪れたユーザは、マーカーＭおよび物体Ｈの像を含む撮像画像に、前の作業者により設定されたＡＲオブジェクトＥの投影画像が合成されて表示された画面を見ることにより、ひび割れ箇所の指摘を受けることができる。設定されたＡＲオブジェクトＥのデータは例えば管理サーバにアップロードされており、後から現場に訪れるユーザが操作するコンピュータは、現場に向かう前かもしくは現場で管理サーバからＡＲオブジェクトＥのデータをダウンロードして入手する。
【００３０】
撮像画像に含まれるマーカーＭの像（形状およびサイズ）に基づいて、コンピュータ１は、コンピュータ１が有するカメラに対するマーカーＭの位置座標Ｖ１ｃおよび回転座標Ｇ１ｃを求める。また、マーカーＭの模様に基づいて、マーカーの識別情報（マーカーＩＤ）などの情報がコンピュータ１に読みとられる。基準物として画像の特徴点を用いる場合には、例えば、コンピュータ１が、特徴点の情報とマーカーＩＤとを予め対応づけておき、その対応関係に基づいてマーカーＩＤを取得する。本実施例におけるマーカーＭは、現実空間内での位置および向きが固定されている。
【００３１】
ＡＲオブジェクトＥの座標（カメラ座標系）は、ＡＲオブジェクトＥに設定された各点の座標（マーカー座標系）を位置座標Ｖ１ｃおよび回転座標Ｇ１ｃに基づきモデル−ビュー変換することにより得られる。コンピュータ１は、ＡＲオブジェクトＥの各点の座標（カメラ座標系）を透視変換して得られるスクリーン座標系の座標に基づいて、ＡＲオブジェクトＥの投影画像を生成する。座標変換については前述の通りである。コンピュータ１は、前述の座標変換により、ＡＲオブジェクトＥをコンピュータ１のカメラの視点から眺めるという仮想的な状況におけるＡＲオブジェクトの像（投影画像）を生成する。さらに、コンピュータ１は、生成した投影画像を撮像画像に合成することで、ＡＲオブジェクトがあたかも現実空間に存在するかのように見せることができる。
【００３２】
上述の通り、ＡＲオブジェクトＥの投影画像を撮像画像と合成して表示させるＡＲ技術は、人間の知覚により収集される情報の拡張に用いられる。図５に例示される表示画面Ｓ１では、ＡＲオブジェクトＥがパイプのひび割れ部分に「ヒビあり！」の吹き出しが付加されることで、現実空間に存在する物体に対して情報が付加されている。
【００３３】
しかしながら、ＡＲオブジェクトＥに対する位置指定にズレが生じてしまうと、ＡＲオブジェクトの投影画像による情報の付加対象が示されなくなってしまうので、現実空間に存在する物体に対する情報の付加という目的が果たされなくなる。例えば、ＡＲオブジェクトＥがひび割れと異なる位置に配置されてしまうと、ＡＲオブジェクトＥによる申し送りを受けるユーザがひび割れを発見できない可能性がある。さらには、ＡＲオブジェクトＥが情報の付加対象の物体とは異なる物体の位置に指定されてしまうと、誤った情報が提供されることとなってしまう。例えば、ＡＲオブジェクトＥが別のパイプの位置に配置されてしまうと、ＡＲオブジェクトＥよる申し送りを受けた場合に、ひび割れが無い箇所に対してひび割れの存否の確認を行なうという余分な作業が発生する。そのため、ＡＲオブジェクトＥの位置および向きの設定は、ＡＲオブジェクトＥによる申し送りを受けるユーザがＡＲオブジェクトＥと現実空間内の物体（例えばひび割れ箇所）との対応関係を把握可能な程度に現実空間と整合することが求められる。
【００３４】
例えば、表示画面Ｓ１内の位置を指定することによりＡＲオブジェクトＥの投影画像の位置の設定が行なわれるとする。そのような指定方法ならば、ユーザはＡＲオブジェクトＥの投影画像と物体Ｈのひび割れ箇所との表示画面Ｓ１内での位置関係を確認できる。そのため、ユーザが画面を確認しながら位置指定を行なうことより、ＡＲオブジェクトＥの投影画像が表示画面Ｓ１において物体Ｈのひび割れ箇所と整合する位置に配置される。
【００３５】
図６は、ＡＲオブジェクトＥの配置例を示す。図６の配置例は、図５に例示されたコンピュータ１、マーカーＭ、物体ＨおよびＡＲオブジェクトＥを俯瞰した状態の位置関係を示す。例えば、図６は、コンピュータ１、マーカーＭ、物体ＨおよびＡＲオブジェクトＥをカメラ座標系のＸｃ軸およびＺｃ軸の２次元空間に投影して示した図である。
【００３６】
図６は、図５に例示されるＡＲオブジェクトＥの配置として、２通りの例を示す。図５に示す投影画像となるＡＲオブジェクトＥの一例として、コンピュータ１に対して手前に配置された場合のＡＲオブジェクトＥ（Ｅ１）が図６に示される。また、もうひとつの例として、奥に配置された場合のＡＲオブジェクトＥ（Ｅ２）が示される。いずれの配置のＡＲオブジェクトＥであっても、図６で示す位置のコンピュータ１により生成される投影画像は同じとなる。そのため、ＡＲオブジェクトの位置指定がいずれであっても、表示画面Ｓ１内の投影画像では判別できない状態である。すなわち、図５を用いて例示された表示画面Ｓ１内でＡＲオブジェクトＥの位置を設定したとしても、ＡＲオブジェクトＥ（Ｅ１）のように配置されるか、オブジェクトＥ（Ｅ２）のように配置されるかは定められない。ＡＲオブジェクトＥ（Ｅ１）ように配置されれば、ＡＲオブジェクトＥはパイプのひび割れと整合した位置に設定されている。その一方で、ＡＲオブジェクトＥ（Ｅ２）のように配置されると、ＡＲオブジェクトＥはパイプと整合しない位置（実質的に離れた位置）に設定されたことになる。
【００３７】
図７は、表示画面の例を示す。図７に例示される表示画面Ｓ２も、表示画面Ｓ１と同様に、コンピュータ１のカメラ機能により撮像された撮像画像と、ＡＲオブジェクトＥの投影画像とが合成されて表示された画面である。表示画面Ｓ２内のＡＲオブジェクトＥ（Ｅ１）およびＡＲオブジェクトＥ（Ｅ２）の像は、図６に例示されるＡＲオブジェクトＥ（Ｅ１）およびＡＲオブジェクトＥ（Ｅ２）に対応する投影画像である。表示画面Ｓ２の撮像画像は、表示画面Ｓ１の撮像画像とは異なる位置で撮像された撮像画像である。例えば、ＡＲオブジェクトＥが設定された後に現場を訪れたユーザは、表示画面Ｓ２のような画角でＡＲオブジェクトＥを確認する可能性がある。
【００３８】
図８は、ＡＲオブジェクトＥの配置例を示す。図８は、図６と同様にコンピュータ１、マーカーＭ、物体ＨおよびＡＲオブジェクトＥを俯瞰した状態の位置関係を示す。図７に例示される表示画面Ｓ２の撮像画像は、図８に示す位置に配置されたコンピュータ１により撮像された撮像画像である。
【００３９】
ＡＲオブジェクトＥの位置が図６におけるＡＲオブジェクトＥ（Ｅ１）の位置に設定されると、表示画面Ｓ２のＡＲオブジェクトＥ（Ｅ１）のように、ＡＲオブジェクトＥの投影画像は物体Ｈと整合した位置に表示される。その一方で、ＡＲオブジェクトＥの位置が図６におけるＡＲオブジェクトＥ（Ｅ２）の位置に設定されると、表示画面Ｓ２のＡＲオブジェクトＥ（Ｅ２）のように、ＡＲオブジェクトＥの投影画像は、物体Ｈとは異なる位置に表示される。ＡＲオブジェクトＥ（Ｅ２）のように表示されてしまうと、「ヒビあり！」と情報が付加された位置にはひび割れが存在しないため、「ヒビあり！」という情報の付加という目的が果たされていない。また、ＡＲオブジェクトＥ（Ｅ２）に示される位置にひび割れがあるかのようにユーザに誤解され得る。すなわち、ＡＲオブジェクトＥがＥ２の位置に設定されることにより、必要な情報の提供に漏れが生じるとともに、不要な情報の提供が行なわれてしまう。
【００４０】
上述のように、表示画面Ｓ１に表示される物体Ｈの像とＡＲオブジェクトＥの投影画像とを確認しながらＡＲオブジェクトＥの投影画像の位置を指定したとしても、ＡＲオブジェクトＥのＺｃ方向の位置が指定されない。そのため、他の角度から撮像した表示画面Ｓ２などには、表示画面Ｓ１では物体Ｈと整合する位置に表示されたＡＲオブジェクトＥの像が、表示画面Ｓ２では物体Ｈと整合しない位置に表示される事態が生じる。
【００４１】
一方で、ＡＲオブジェクトＥの奥行きを単純に数値的に指定するなどとすると、ＡＲオブジェクトＥの位置設定に、測量などの作業が発生してしまう。また、目測などに基づいて位置設定を行なう場合には、ユーザの習熟した能力を要することとなる。
【００４２】
本実施例においては、ＡＲオブジェククトの位置指定に撮像画像の奥行き方向の位置を確認可能な画面が用いられる。
【００４３】
図９は、入力画面（俯瞰モデル図）の例を示す。表示画面Ｓ３に示される俯瞰モデル図は、コンピュータ１に対応する図形Ｆ１およびマーカーＭに対応する図形Ｆ２を含む。表示画面Ｓ３には、さらに、縮尺表示と、メニュー群Ｂ１〜Ｂ９が示される。メニュー群Ｂ１〜Ｂ９は、編集終了ボタンＢ１、視点切替ボタンＢ２、取り戻しボタンＢ３、再実行ボタンＢ４、拡大ボタンＢ５、縮小ボタンＢ６、拡縮移動モードボタンＢ７、回転モードボタンＢ８および数値指定モードボタンＢ９などを含む。
【００４４】
縮尺表示は、俯瞰モデル図が示す平面の座標軸（Ｘｃ軸およびＹｃ軸）と、画面内の単位距離に対応する現実空間における距離（図９においては点線で示される正方形の１辺がカメラ座標系における５０ｃｍの距離であることが示される）の表示を含む。編集終了ボタンＢ１は、ＡＲオブジェクトＥの位置座標の設定を確定させる操作指示の入力位置を示す表示要素である。視点切替ボタンＢ２は、俯瞰モデル図を用いた入力画面と撮像画像を用いた入力画面とを切り替えさせる操作指示の入力位置を示す表示要素である。取り戻しボタンＢ３は、表示画面Ｓ３（または取り戻しボタンへの入力が得られた際の表示画面）に対して行なわれた直前の操作の前の状態に戻す操作指示の入力位置を示す表示要素である。再実行ボタンＢ４は、取り戻しボタンＢ３への操作が行なわれた場合に表示され、取り戻された操作を再度実行させる操作指示の入力位置を示す表示要素である。拡大ボタンＢ５は、俯瞰モデル図の縮尺を調整させる操作指示の入力位置を示す表示要素であり、拡大ボタンＢ５の表示位置への入力が行なわれると俯瞰モデル図の拡大を行なう。縮小ボタンＢ６は、俯瞰モデル図の縮尺を調整させる操作指示の入力位置を示す表示要素であり、縮小ボタンＢ６の表示位置への入力が行なわれると俯瞰モデル図の縮小を行なう。拡縮移動モードボタンＢ７は、操作モードを指定する操作指示の入力位置を示す表示要素であり、拡縮移動モードボタンＢ７の表示位置への入力が行なわれると、拡縮移動モードに操作モードが切り換えられる。回転モードボタンＢ８は、操作モードを指定する操作指示の入力位置を示す表示要素であり、回転モードボタンＢ８の表示位置への入力が行なわれると、回転モードに操作モードが切り換えられる。数値指定モードボタンＢ９は、操作モードを指定する操作指示の入力位置を示す表示要素であり、数値指定モードボタンＢ９の表示位置への入力が行なわれると、数値指定モードに操作モードが切り換えられる。
【００４５】
拡縮移動モードでは、入力操作に応じてＡＲオブジェクトＥの位置座標および倍率が調整される。例えば、ＡＲオブジェクトＥの位置指定の開始時の操作モードに、拡縮移動モードが自動設定される。回転モードでは、入力操作に応じてＡＲオブジェクトＥの回転座標が調整される。回転座標は、ＡＲオブジェクトＥを構成する各点の位置座標を、基準点に基づいて定める際に用いられる。数値指定モードでは、数値入力画面が表示される。数値入力画面に対して入力された数値で、ＡＲオブジェクトの基準点の位置、回転座標および倍率が定められる。
【００４６】
表示画面Ｓ３の俯瞰モデル図には、図形Ｆ１および図形Ｆ２が、カメラ（コンピュータ１）およびマーカーＭのカメラ座標系の座標に基づいて表示される。例えば、図形Ｆ１は、カメラ座標系の原点Ｏｃに基づいて配置される。また、図形Ｆ２は、カメラ座標系におけるマーカー座標系の原点Ｏｍの座標Ｖ１ｃ（Ｘ１ｃ，Ｙ１ｃ，Ｚ１ｃ）と、カメラ座標系に対するマーカー座標系の回転座標Ｕ１ｃ（Ｐ１ｃ，Ｑ１ｃ，Ｒ１ｃ）とに基づいて、表示位置および向きが決定される。
【００４７】
例えば、カメラ座標系の原点Ｏｃをスクリーン座標系（Ｘｓ，Ｙｓ）におけるある位置（Ｘ１ｓ，Ｙ１ｓ）に配置し、図形Ｆ２の位置を縮尺に基づいて設定することにより俯瞰モデル図が生成される。その場合、図形Ｆ１は位置（Ｘ１ｓ，Ｙ１ｓ）に配置される。例えば、座標Ｘ１ｓは表示画面Ｓ３のＸｓ方向の中心であり、座標Ｙ１ｓは表示画面内Ｓ３の中心から下方に所定量ずらした位置である。また、図形Ｆ１の形状によりコンピュータ１の向きが示され、表示画面Ｓ３内の図形Ｆ１はコンピュータ１が備えるカメラのレンズが画面上方を向いた状態を示す。また、図形Ｆ２は、位置（Ｘ２ｓ，Ｙ２ｓ）に示される。座標Ｘ２ｓは座標Ｘ１ｃおよび縮尺に応じて設定される。座標Ｙ２ｓは座標Ｚ１ｃおよび縮尺に応じて設定される。縮尺の設定によっては、マーカーＭがカメラに対して遠い位置にあると表示画面Ｓ３内に配置されない場合がある。その場合には、ユーザは、縮小ボタンＢ６用いて俯瞰モデル図を縮小させることにより、図形Ｆ２が表示画面内に収まった俯瞰モデル図を確認できる。
【００４８】
他の態様として、座標Ｙ２ｓの初期値は予め設定しておき、図形Ｆ１と図形Ｆ２と間のスクリーン内の距離（Ｙ２ｓ−Ｙ１ｓ）と、座標Ｚ１ｃとの比に応じて座標Ｘ１ｃが調整されることで、座標Ｘ２ｓが設定されてもよい。すなわち、距離（Ｙ２ｓ−Ｙ１ｓ）と座標Ｚ１ｃとの比に応じて縮尺が求められる。
【００４９】
さらに、座標（Ｘ２ｓ，Ｙ２ｓ）の図形Ｆ２は、例えば、回転座標Ｕ１ｃ（Ｐ１ｃ，Ｑ１ｃ，Ｒ１ｃ）に基づいて回転された状態で表示画面Ｓ３に表示される。また、例えば、図形Ｆ２がＱ１ｃのみに基づいて回転された状態で表示画面Ｓ３に示されてもよい。
【００５０】
表示画面Ｓ３が表示された状態で表示画面Ｓ３内の位置をユーザの操作により指定されると、その指定に基づいてＡＲオブジェクトの位置座標の設定が行なわれる。例えば、タッチスクリーンの画面に表示画面Ｓ３を表示させ、タッチスクリーンに対するユーザ入力に応じて表示画面Ｓ３内の位置が指定される。
【００５１】
表示画面Ｓ３の俯瞰モデル図によれば、カメラ座標系のＺｃ方向（奥行き方向）についてのコンピュータ１とマーカーＭとの位置関係をユーザに確認させることができる。表示画面Ｓ３が提供されると、ユーザは、現実空間におけるコンピュータ１、マーカーＭおよび物体Ｈの位置関係に基づいて、表示画面Ｓ３内に示されるコンピュータ１およびマーカーＭに対するＡＲオブジェクトＥの位置の見当をつけることができる。
【００５２】
例えば、表示画面Ｓ３内の位置ｄ３（Ｘ３ｓ，Ｙ３ｓ）が指定されると、座標Ｙ３ｓと座標Ｙ１ｓとの差および縮尺に基づいて、ＡＲオブジェクトＥの奥行きＺ２ｃが定められる。また、指定された位置にＡＲオブジェクトＥに対応する図形Ｆ３（ｄ３）を表示させる。図形Ｆ３に任意の形状を用いてもよいし、ＡＲオブジェクトの投影画像を用いてもよい。
【００５３】
図１０は、入力画面（俯瞰モデル図）の例を示す。図１０に示す表示画面Ｓ４の俯瞰モデル図は、表示画面Ｓ３の俯瞰モデル図と同様に、コンピュータ１に対応する図形Ｆ１、マーカーＭに対応する図形Ｆ２を含む。また、表示画面Ｓ４には、さらに、縮尺表示と、メニュー群Ｂ１〜Ｂ９が示される。
【００５４】
表示画面Ｓ４の俯瞰モデル図においては、図形Ｆ２が位置（Ｘ２ｓ，Ｙ２ｓ）に固定される。例えば、座標Ｘ２ｓは表示画面Ｓ４の中心を示し、座標Ｙ２ｓは表示画面Ｓ３内の中心から上方に所定量ずらした位置である。図形Ｆ１は、カメラ座標系におけるマーカー座標系の原点Ｏｍの座標Ｖ１ｃ（Ｘ１ｃ，Ｙ１ｃ，Ｚ１ｃ）と、カメラ座標系に対するマーカー座標系の回転座標Ｇ１ｃ（Ｐ１ｃ，Ｑ１ｃ，Ｒ１ｃ）とに基づいて、表示位置（Ｘ１ｓ，Ｙ１ｓ）および向きが決定される。
【００５５】
表示画面Ｓ４が提供されると、ユーザは奥行き方向を含めて、コンピュータ１とマーカーＭとの現実空間での位置関係と、表示画面Ｓ４内の図形Ｆ１と図形Ｆ２との位置関係とを照らし合わせることができる。そのため、ユーザは、コンピュータ１とマーカーＭとの現実空間での位置関係に基づいて、ＡＲオブジェクトＥについて、表示画面Ｓ４内に奥行きを含む位置指定の見当をつけることができる。
【００５６】
図１１は、入力画面（Ｚｃ−Ｙｃ平面図）の例を示す。図１１に示す表示画面Ｓ５の俯瞰モデル図は、表示画面Ｓ３の俯瞰モデル図と同様に、コンピュータ１に対応する図形Ｆ１、マーカーＭに対応する図形Ｆ２を含む。また、表示画面Ｓ５には、さらに、縮尺表示と、メニュー群Ｂ１〜Ｂ９が示される。
【００５７】
表示画面Ｓ５の俯瞰モデル図は、カメラ座標系のＹｃ軸およびＺｃ軸による２次元空間内のコンピュータ１、マーカーＭおよびＡＲオブジェクトＥの位置関係を示す。表示画面Ｓ５においても、ユーザは奥行き方向を含めて、コンピュータ１とマーカーＭとの現実空間での位置関係と、表示画面Ｓ５内の図形Ｆ１と図形Ｆ２との位置関係とを照らし合わせることができる。そのため、ユーザは、コンピュータ１とマーカーＭとの現実空間での位置関係に基づいて、ＡＲオブジェクトＥについて、表示画面Ｓ５内に奥行きを含む位置指定の見当をつけることができる。
【００５８】
表示画面Ｓ３〜Ｓ５の入力画面を初回に表示させる場合には、俯瞰モデル図内でＡＲオブジェクトに対応する図形の初期位置ｄ４が設定される。しかしながら、カメラ座標系の奥行き方向の座標Ｚ２ｃは、撮像画像を用いた位置指定では定められないので、例えば任意の値に初期設定される。座標Ｚ２ｃの初期値は、例えば、マーカーＭの座標Ｚ１ｃでもよい。また、マーカーＭを含む平面（マーカー座標系で（Ｘｍ，Ｙｍ，０）の平面）上の点を初期値としてもよい。ＡＲオブジェクトＥの位置を示す投影画像または図形Ｆ３は、例えば、ドラッグ操作などにより画面内の位置を調整される。もしくは、単にタップされた画面内の位置に図形Ｆ３を移動させることにより、図形Ｆ３の画面内の位置が示される。位置ｄ４に表示された図形Ｆ３がドラッグ操作で位置ｄ３に移動されてもよいし、位置ｄ３の指定（例えばタップ操作）に応じて位置ｄ４に表示されていた図形Ｆ３が位置ｄ３に移動することとしてもよい。
【００５９】
表示画面Ｓ３〜Ｓ５によれば、ＡＲオブジェクトＥについて奥行き方向を含む位置指定の基準が提供される。また、基準を提供されたユーザの入力により、奥行き方向を含む位置指定が行なわれる。視点切替ボタンＢ２へのユーザの入力が行なわれると、コンピュータ１は、俯瞰モデル図を用いた入力画面から、撮像画像を用いた入力画面に切り替える。
【００６０】
図１２は、入力画面（撮像画像）の例を示す。図１２に示す表示画面Ｓ６の撮像画像は、マーカーＭおよび物体Ｈの像を含む。また、表示画面Ｓ６には、さらに、ＡＲオブジェクトＥの投影画像と、メニュー群Ｂ１〜Ｂ４およびＢ７〜Ｂ９が示される。
【００６１】
表示画面Ｓ６内へのユーザの入力により、表示画面Ｓ６内への位置指定が行なわれる。指定された画面内の位置ｄ５（Ｘ５ｓ，Ｙ５ｓ）に基づいてＡＲオブジェクトＥの座標が算出される。ｄ５（Ｘ５ｓ，Ｙ５ｓ）に対して上述の透視変換の逆変換が行なわれることにより、ＡＲオブジェクトＥのカメラ座標系の座標Ｘ２ｃおよび座標Ｙ２ｃが算出される。算出された座標Ｘ２ｃおよびＹ２ｃにＡＲオブジェクトＥの座標が更新される。
【００６２】
また、視点切替ボタンＢ２へのユーザの入力が行なわれると、コンピュータ１は、撮像画像を用いた入力画面から、俯瞰モデル図を用いた入力画面に再度切り替える。撮像画像を用いた入力画面での位置指定と、俯瞰モデル図を用いた入力画面での位置指定の双方が可能であり、編集終了ボタンＢ１へのユーザの入力が行なわれた時点で、ＡＲオブジェクトＥのカメラ座標系の座標（Ｘ２ｃ，Ｙ２ｃ，Ｚ２ｃ）が確定される。
【００６３】
上述の通り、撮像画像を用いた入力画面（表示画面Ｓ６など）と、俯瞰モデル図を用いた表示画面（表示画面Ｓ３〜Ｓ５など）との双方を用いた位置指定により、ＡＲオブジェクトＥの３次元的な位置が指定される。撮像画像を用いた表示画面と、俯瞰モデル図を用いた表示画面との双方が提供されると、ユーザは、ＡＲオブジェクトの位置を３次元的に確認しながら調整することができる。これにより、ＡＲオブジェクトを付加させる対象の物体と整合させた状態でＡＲオブジェクトが設定される。
【００６４】
ＡＲオブジェクトＥのカメラ座標系の座標が確定されると、ＡＲオブジェクトＥの各点の位置座標（カメラ座標系）は、上述のモデル−ビュー変換の逆変換によりマーカー座標系の座標に変換される。変換されたＡＲオブジェクトの各点の座標は、マーカーＭのマーカーＩＤと対応付けて登録される。登録されたＡＲオブジェクトＥに対して、再度別の画角で撮像された撮像画像に基づいて調整が行なわれてもよい。例えば、ＡＲオブジェクトＥの各点の座標の設定が、表示画面Ｓ１の撮像画像に基づく入力画面で行なわれたあと、さらに表示画面Ｓ２の撮像画像に基づく入力画面（俯瞰モデル図および撮像画像）で行なわれることも可能である。
【００６５】
以下に、上述の表示画面（俯瞰モデル図および撮像画像）を用いたＡＲオブジェクトＥの位置指定を実行するコンピュータ１の構成や動作などを説明する。
【００６６】
図１３は、コンピュータ１の機能構成例を示す。コンピュータ１は、処理部１１、記憶部１２、撮像部１３、表示部１４、入力部１５および通信部１６を含む。処理部１１は、制御部１１１、認識部１１２、生成部１１３および算出部１１４を含む。
【００６７】
処理部１１は、オブジェクトＥの位置指定の処理を実行する。また、処理部１１は、処理の実行において、記憶部１２、撮像部１３、表示部１４、入力部１５および通信部１６の制御を行なう。記憶部１２は、他の機能ブロックにおいて用いられる情報を記憶する。例えば、後述のマーカー管理テーブルＴ１、編集テーブルＴ４、定義テーブルＴ２および管理テーブルＴ３などを記憶する。撮像部１３は、撮像処理を行なう。撮像部１３の撮像処理により得られる撮像画像は記憶部１２に記憶される。表示部１４は、処理部１１の制御に応じて画像の表示を行なう。入力部１５は、コンピュータ１の操作者の操作の検知を行ない、検知に応じた信号を処理部１１に伝達する。通信部１６は、処理部１１の指示に応じて他の装置とデータ通信を行なう。
【００６８】
制御部１１１は、入力部１５または通信部１６から得られる情報、または認識部１１２、生成部１１３および算出部１１４の処理結果に応じて、各機能ブロックの制御を行なう。認識部１１２は、撮像画像からマーカーＭの像を認識し、認識した像からコンピュータ１に対するマーカーＭの座標（カメラ座標系）を算出する。認識部１１２は、さらにマーカーＭの像に基づいてマーカーＩＤを読み取る。制御部１１１は、認識部１１２によるマーカーＭの認識結果（座標およびマーカーＩＤなど）を記憶部１２に記憶する。生成部１１３は、表示部１４に表示させる画像を生成する。例えば、生成部１１３は、ＡＲオブジェクトの投影画像を生成し、生成した投影画像を撮像部１３により得られた撮像画像に合成する。また、例えば、コンピュータ１、マーカーＭおよびＡＲオブジェクトに対応する図形を生成し、生成した図形が配置された俯瞰モデル図を生成する。算出部１１４は、マーカー管理テーブルＴ１の情報、入力部１５または通信部１６から得られる情報、およびＡＲオブジェクトＥの定義などに基づいて、ＡＲオブジェクトＥの設定値を算出する。制御部１１１は、演算により得られた設定値を管理テーブルＴ３に記憶する。
【００６９】
図１４〜図１７は、ＡＲオブジェクトＥの座標設定に用いられるデータのデータ構造を示す。
【００７０】
図１４は、マーカー管理テーブルＴ１を示す。認識部１１２は、撮像部１３が撮像した撮像画像にマーカーＭの像が含まれている場合に、マーカーＭの像から得られた認識結果をマーカー管理テーブルＴ１に格納する。マーカー管理テーブルＴ１は、認識部１１２が認識したマーカーのそれぞれについて、マーカーＩＤ、カメラ座標系での座標（Ｘｃ，Ｙｃ，Ｚｃ，Ｐｃ，Ｑｃ，Ｒｃ）、およびオブジェクト追加フラグなどの情報を含む。マーカー管理テーブルＴ１に格納された情報によれば、本実施例におけるマーカーＭのマーカーＩＤは「１００」であり、位置座標は（Ｘ１ｃ，Ｙ１ｃ，Ｚ１ｃ）であり、回転座標は（Ｐ１ｃ，Ｑ１ｃ，Ｒ１ｃ）である。オブジェクト追加フラグは、位置指定処理が行なわれているＡＲオブジェクトがいずれのマーカーに対応づけられるのかを示すフラグである。例えば、マーカー管理テーブルＴ１に格納される情報は撮像画像が取得されるたびに更新される。
【００７１】
図１５は、定義テーブルＴ２を示す。定義テーブルＴ２には、ＡＲテンプレートの定義情報が示される。ＡＲテンプレートの定義情報は、ＡＲテンプレートの識別情報（テンプレートＩＤ）、ＡＲテンプレートを構成する各頂点の座標情報Ｔ２１、およびＡＲテンプレートを構成する各面の構成情報Ｔ２２（頂点順序およびテクスチャＩＤの指定）を含む。頂点順序は、面を構成する頂点の順序を示す。テクスチャＩＤは、面にマッピングされるテクスチャの識別情報を示す。ＡＲテンプレートの基準点は例えば０番目の頂点である。定義テーブルＴ２に示される情報により、３次元モデルの形状および模様が定められる。
【００７２】
図１６は、管理テーブルＴ３を示す。管理テーブルＴ３は、ＡＲテンプレートを利用して設定されるＡＲオブジェクトＥの設定情報を示す。管理テーブルＴ３には、ＡＲオブジェクトＥのオブジェクトＩＤ、基準点のマーカー座標系における位置座標（Ｘｍ，Ｙｍ，Ｚｍ）、マーカー座標系における回転座標（Ｐｍ，Ｑｍ，Ｒｍ）、ＡＲテンプレートを基準とする倍率Ｄ（Ｊｘ，Ｊｙ，Ｊｚ）、ＡＲテンプレートのテンプレートＩＤ、マーカーＩＤおよび追加情報が格納される。管理テーブルＴ３に格納される座標は、同じレコードに格納されたマーカーＩＤに示されるマーカーを基準とするマーカー座標系での座標である。ＡＲオブジェクトＥは、図１５に示されるＡＲテンプレートが管理テーブルＴ３の設定情報（位置、向きおよびサイズ）に基づいて調整される。すなわちＡＲオブジェクトＥの位置・向き・サイズの指定は、管理テーブルＴ３で管理される情報の設定により行なわれる。追加情報は、ＡＲオブジェクトＥに追加される情報である。追加情報として、テキストや、Ｗｅｂページやファイルへのアクセス情報などが用いられる。
【００７３】
例えば、図１６に示されるオブジェクトＩＤが「１０００」のＡＲオブジェクトＥは、ＡＲテンプレート「１０」に定義される各頂点座標が、Ｘｍ、Ｙｍ、Ｚｍ方向のそれぞれに１倍され、回転座標（０，０，０）で回転され、位置座標（１２１．５，５１０．０，８６０．５）に応じて並進されて得られる各頂点により構成される。ＡＲオブジェクトＥは、さらにＡＲオブジェクトＥを構成する面に追加情報のマッピングを行なう。
【００７４】
図１７は、編集テーブルＴ４を示す。位置指定を行なう対象のＡＲオブジェクトＥが決定され、オブジェクトＩＤが指定されると、記憶部１２に編集テーブルＴ４が設けられる。編集テーブルＴ４には、ＡＲオブジェクトＥについて、オブジェクトＩＤ、テンプレートＩＤ、基準点の位置座標（マーカー座標系）、回転座標（マーカー座標系）、倍率Ｄ、基準点の位置座標（カメラ座標系）、回転座標（カメラ座標系）およびフラグαを含む。フラグαは、位置指定の入力画面の切り換えを示す。フラグαは、例えば、俯瞰モデル図に基づく入力画面が表示される場合には「１」であり、撮像画像に基づく入力画面が表示される場合には「０」である。
【００７５】
オブジェクトＩＤが指定されると、指定されたオブジェクトＩＤに関する管理テーブルＴ３内の情報が、編集テーブル内に格納される（管理情報Ｔ４１）。管理情報Ｔ４１には、マーカー座標系におけるＡＲオブジェクトＥの位置座標、回転座標および倍率が含まれる。マーカー管理テーブルＴ１の情報を用いて管理情報Ｔ４１に基づいて編集情報Ｔ４２が生成される。編集情報Ｔ４２は、カメラ座標系におけるＡＲオブジェクトＥの位置座標、回転座標および倍率Ｄｘを含む。ＡＲオブジェクトＥの位置指定においては、位置が確定されるまで編集情報Ｔ４２に対して更新が行なわれる。ＡＲオブジェクトＥの位置が確定された場合に、算出部１１４により編集情報Ｔ４２に基づいて管理情報Ｔ４１算出され、管理情報Ｔ４１の内容が管理テーブルＴ３に反映される。
【００７６】
図１８は、位置指定プログラムの処理手順例を示す。位置指定プログラムは、処理部１１により実行される位置指定処理の手順が定義されたプログラムである。制御部１１１は、位置指定プログラムが起動されると、位置指定の前処理を行なう（Ｓ１０１）。Ｓ１０１の処理においては、定義テーブルＴ２や管理テーブルＴ３などが読み出され、マーカー管理テーブルＴ１や編集テーブルＴ４などの格納領域が確保される。
【００７７】
Ｓ１０１の前処理が行なわれると、制御部１１１は、ＡＲ表示モードの起動指示を行なう（Ｓ１０２）。Ｓ１０２において、制御部１１１は、例えば撮像部１３に所定時間間隔での撮像を開始させ、撮像された画像について認識部１１２にマーカー検知処理を開始させる。さらに、制御部１１１は、表示部１４に撮像部１３により撮像された画像を表示させる。
【００７８】
撮像部１３は、制御部１１１の撮像を指示されると、撮像素子により生成される画像を所定の時間間隔で取得し、取得した画像を記憶部１２に記憶する。記憶部１２には、複数枚の画像を格納するバッファが設けられ、撮像部１３により撮像された画像は、そのバッファに格納される。例えば、記憶部１２に設けられるバッファは、表示部１４が表示させる画像が格納される表示用バッファである。表示用バッファに格納される画像は、順次表示部１４に表示される。
【００７９】
認識部１１２は、記憶部１２に設けられたバッファに格納された画像を取得し、取得した画像にマーカーＭの像が含まれているか否か判定する。認識部１１２は、バッファに格納される所定枚数のうちの１枚の画像について検知処理を行なうこととしてもよい。
【００８０】
画像にマーカーＭの像が含まれているか否かの判定基準は、マーカーの形状および模様に応じて定められる。図１に示すマーカーＭは、正方形であり、その模様は黒い縁を含む。そのため、マーカーＭが画像に含まれているか否かは、例えば、画像内に、輝度が所定値未満で四角形の枠状の領域が存在するか否かに応じて判定される。
【００８１】
また、認識部１１２は、マーカーＭのマーカーＩＤの読みとりを行なう。マーカーＩＤの読みとりは、例えば、四角形の枠内の輝度の情報に基づいて行なわれる。例えば、四角形枠を分割した各領域について、輝度が所定値以上の領域を「１」とし、輝度が所定値未満の領域を「０」として、各領域を所定の順序で「１」か「０」かを判定し、判定して得られた情報の列をマーカーＩＤとする。また、例えば、輝度が所定値以上の領域と所定値未満の領域の四角形枠内での配置をパターン化しておき、パターンに対応するマーカーＩＤを用いることとしてもよい。さらに、マーカーＩＤに割り当てられる数値範囲が予め定められており、読みとったマーカーＩＤがその数値範囲内でない場合には、マーカーＩＤが読みとれなかったと判定することとしてもよい。認識部１１２は読みとったマーカーＩＤを、記憶部１２に記憶されたマーカー管理テーブルＴ１に格納する。さらに、認識部１１２は、マーカーＭの像の位置座標（スクリーン座標系）を制御部１１１に通知する。
【００８２】
認識部１１２は、取得した画像にマーカーＭの像が含まれているか否かの判定結果を制御部１１１に通知する。制御部１１１は、認識部１１２からの通知結果に基づいてマーカーＭが検知されたか否かを判定する（Ｓ１０３）。もしくは、認識部１１２が制御部１１１に対して通知を行なわずに、認識部１１２がマーカー管理テーブルＴ１にマーカーＩＤを格納することを制御部１１１が検知して、マーカーＭが検知されたと判断してもよい。制御部１１１は、マーカーＭが検知されると（Ｓ１０３：ＹＥＳ）、マーカー認識処理を実行する（Ｓ１０４）。制御部１１１は、マーカーＭが検知されなかった場合（Ｓ１０３：ＮＯ）には、プログラムの終了を指示されたか否かを判定する（Ｓ１０８）。終了を指示されていなければ（Ｓ１０８：ＮＯ）、制御部１１１は、マーカーを検知したか否かの判定（Ｓ１０３）を行なう。
【００８３】
図１９は、マーカー認識処理の処理手順例を示す。マーカー認識処理が開始されると、制御部１１１は、認識されたマーカーＭが表示部１４の表示画面内で表示される位置に、マーカーの存在を示す強調表示（ハイライト表示）を行なう（Ｓ２０１）。強調表示は、例えば、マーカーＭの表示位置に四角い枠を表示するなどにより行なわれ、マーカーＭが検知されたことをユーザに通知する役割を果たす。制御部１１１は、生成部１１３に、マーカーＭの位置座標（スクリーン座標系）を通知する。生成部１１３は、表示部１４に表示させる画像（表示用バッファ内の画像）に対し、制御部１１１からの通知に応じた位置に強調表示図形を合成する。強調表示図形は、例えば四角い赤枠などの表示要素である。
【００８４】
Ｓ２０１の処理が行なわれると、制御部１１１は、認識部１１２にマーカーＭの位置・回転座標を算出させる（Ｓ２０２）。認識部１１２は、制御部１１１から指示を受けると、Ｓ１０３で検知されたマーカーＭの像に基づき、マーカーＭの位置・回転座標（カメラ座標系）を算出する。マーカーＭの位置・回転座標（カメラ座標系）は、例えば、マーカーＭの像の形状および画像内の位置に基づいて算出される。算出された位置・回転座標（カメラ座標系）は、マーカー管理テーブルＴ１に格納される。
【００８５】
Ｓ２０２の処理が行なわれると、制御部１１１は、マーカー管理テーブルＴ１に登録されたマーカーと対応付けられたＡＲオブジェクトの表示処理を行なう（Ｓ２０３〜Ｓ２０５）。Ｓ２０３〜Ｓ２０５の表示処理は、付加的手順である。また、マーカー管理テーブルＴ１に登録されたマーカーに対応づけられたＡＲオブジェクトが存在しない場合には、ＡＲオブジェクトの表示処理は実行されない。
【００８６】
制御部１１１は、管理テーブルＴ３に登録されたＡＲオブジェクトのデータのうち、マーカー管理テーブルＴ１に登録された各マーカーのマーカーＩＤを含むものを探索する。該当するＡＲオブジェクトが存在する場合には、制御部１１１は、そのＡＲオブジェクトのデータを管理テーブルから取得し、取得したデータに含まれるテンプレートＩＤに対応する定義テーブルを読みだす（Ｓ２０３）。制御部１１１は、Ｓ２０３でデータを取得した各ＡＲオブジェクトについて、生成部１１３に投影画像を生成させる（Ｓ２０４）。
【００８７】
Ｓ２０４において、生成部１１３は、取得した定義テーブルに含まれる各座標について、算出部１１４に、マーカー座標系からカメラ座標系へのモデル−ビュー変換を実行させ、さらにカメラ座標系からスクリーン座標系への透視変換を実行させる。モデル−ビュー変換に用いられる変換行列Ｍは、マーカー管理テーブルＴ１に格納されたマーカー座標系の位置・回転座標（カメラ座標系）に基づいて求められる。算出部１１４が座標変換を行なうと、さらに、生成部１１３は、座標変換して得られた各点座標に基づいて、点を組み合わせて構成される各面に対応する要素図形（面要素）を生成する。定義テーブルＴ２に定義される各面要素は、面要素を構成する各点に囲まれた領域に、定義されたテクスチャを合成することにより生成される。さらに、生成部１１３は、同じＡＲオブジェクトについての面要素を合成することにより、ＡＲオブジェクトに対応する投影図形を生成する。面要素の合成において、生成された面要素間の前後関係に応じた各面要素のテクスチャを補正（他の面要素に隠れる面要素は表示しないなど）が行なわれてもよい。
【００８８】
制御部１１１は、各ＡＲオブジェクトについて投影画像が生成されると、生成部１１３に、生成された画像を表示用バッファ内の撮像画像に合成させる（Ｓ２０５）。Ｓ２０５の処理により表示部１４には、撮像部１３により撮像された撮像画像にＡＲオブジェクトの投影画像が合成された画像が表示される。
【００８９】
Ｓ２０５の処理が行なわれると、制御部１１１は、表示部１４に編集開始ボタンを表示させる（Ｓ２０６）。Ｓ２０６の処理が行なわれると、制御部１１１は、図１９に示すマーカー認識処理を終了し、図１８に示す位置指定処理のフローチャートに戻る。
【００９０】
続いて制御部１１１は、Ｓ２０６で編集開始ボタンが表示されてから所定時間内に編集開始ボタンへの入力が検知されるか否かの判定を行なう（Ｓ１０５）。編集開始ボタンへの入力が検知される（Ｓ１０５：ＹＥＳ）と、制御部１１１は図２０に示す編集処理を実行する（Ｓ１０６）。所定時間内に編集開始ボタンへの入力が検知されない場合（Ｓ１０５：ＮＯ）には、制御部１１１は、プログラムの終了を指示されたか否かを判定する（Ｓ１０８）。
【００９１】
図２０は、編集処理の処理手順例を示す。編集処理が開始されると、制御部１１１は、表示部１４による表示を静止画表示に切り替える（Ｓ３０１）。例えば、複数のマーカーが撮像画像内で認識されている場合には、Ｓ３０１において複数のマーカーのいずれか（マーカーＭ）がユーザの操作により選択される。制御部１１１は、マーカーＭを選択する情報を入力部１５から受けると、選択されたマーカーＭについて、マーカー管理テーブルＴ１のオブジェクト追加フラグをＯＮにする。
【００９２】
Ｓ３０１の処理が行なわれると、制御部１１１は、生成部１１３に俯瞰モデル図を生成させる（Ｓ３０２）。
【００９３】
図２１は、俯瞰モデル図生成の処理手順例を示す。俯瞰モデル図の生成処理が開始されると、生成部１１３は、記憶部１２に記憶された俯瞰モデル図テンプレートを取得する（Ｓ４０１）。俯瞰モデル図テンプレートは、表示部１４の表示画面に合わせたサイズの画像であり、例えば、図形Ｆ１を所定の位置（Ｘ１ｓ，Ｙ１ｓ）に示す。すなわち、図形Ｆ１は、図９の表示画面Ｓ３のように示される。俯瞰モデル図テンプレートは、図９の表示画面Ｓ３のように、メニュー群Ｂ１〜９などを含んでもよい。
【００９４】
Ｓ４０１の処理が行なわれると、生成部１１３は、選択されたマーカーＭについて、マーカー管理テーブルから位置・回転座標（カメラ座標系）を取得する（Ｓ４０２）。さらに、生成部１１３は、算出部１１４にマーカーＭの位置座標（スクリーン座標系）を算出させる（Ｓ４０３）。算出部１１４は、図９に示す表示画面Ｓ３を用いて説明した通り、マーカーＭの位置（Ｘ２ｓ，Ｙ２ｓ）を、俯瞰モデル図の縮尺、カメラ座標系におけるマーカーＭの座標Ｘ１ｃおよびＺ１ｃに基づいて算出する。縮尺は、例えば所定の初期値が設定されている。さらに、生成部１１３は、算出部１１４にマーカーＭの回転角（スクリーン座標系）を算出させる（Ｓ４０４）。算出される回転角は、図９に示す表示画面Ｓ３を用いて説明した通り、マーカーＭの回転座標（Ｐ１ｃ，Ｑ１ｃ，Ｒ１ｃ）に基づいて算出されてもよいし、回転座標Ｑ１ｃのみに基づいて算出されてもよい。
【００９５】
生成部１１３は、Ｓ４０３およびＳ４０４の算出結果に基づいて俯瞰モデル図テンプレートに図形Ｆ２を合成させる（Ｓ４０５）。制御部１１１は、生成部１１３のＳ４０５の合成により得られた俯瞰モデル図を、記憶部１２に記憶する（Ｓ４０６）。Ｓ４０６の処理が実行されると、制御部１１１は、図２０の処理手順に戻る。
【００９６】
制御部１１１は、俯瞰モデル図の生成処理（Ｓ３０２）が行なわれると、ＡＲテンプレートの選択処理を実行する（Ｓ３０３）。Ｓ３０３において、例えば、制御部１１１が、図２５に示すＡＲテンプレートメニューを表示部１４に表示させ、入力部１５から受けるユーザの入力応じて、ＡＲテンプレートメニュー内のいずれのテンプレートが選択されたかを判断する。制御部１１１は、オブジェクトＩＤを生成し、選択されたＡＲテンプレートのテンプレートＩＤおよびオブジェクトＩＤを管理テーブルＴ３に格納する。管理テーブルＴ３内の他の項目（位置・回転座標およびサイズ）については所定の初期値を格納する。また、制御部１１１は、ｍさらに、管理テーブルＴ３に格納した情報を、編集テーブルＴ４に格納する。さらに、制御部１１１は、編集テーブルＴ４に格納された管理情報Ｔ４１に基づいて算出部１１４に編集情報Ｔ４２を算出させ、編集情報Ｔ４２を編集テーブルＴ４に格納する。
【００９７】
もしくは、Ｓ３０３において、例えば、制御部１１１が、入力部１５から受けるユーザの入力に応じて、Ｓ２０３〜Ｓ２０５により表示されたＡＲオブジェクトのいずれが選択されたかを判断する。この場合には、制御部１１１は、選択されたＡＲオブジェクトの管理テーブル内の情報を編集テーブルＴ４に格納する。さらに、制御部１１１は、編集テーブルＴ４に格納された管理情報Ｔ４１に基づいて算出部１１４に編集情報Ｔ４２を算出させ、編集情報Ｔ４２を編集テーブルＴ４に格納する。
【００９８】
編集テーブルＴ４に情報が格納されたＡＲオブジェクトが、位置指定の対象となるＡＲオブジェクト（ＡＲオブジェクトＥ）である。ＡＲオブジェクトＥが選択されると、制御部１１１は、選択されたＡＲオブジェクトＥについて位置指定処理を実行する（Ｓ３０４およびＳ３０５）。
【００９９】
図２２は、撮像画像に基づく位置指定処理の処理手順例を示す。撮像画像に基づく位置指定処理（Ｓ３０４）が開始されると、制御部１１１は、表示部１４に撮像画像およびメニュー群Ｂ１〜Ｂ９を表示させる（Ｓ５０１）。さらに、制御部１１１は、編集テーブルＴ４のフラグαを「０」にセットする。続いて、制御部１１１は、生成部１１３に、選択されたＡＲオブジェクトＥの投影画像を生成させる（Ｓ５０２）。さらに、制御部１１１は、生成部１１３に、生成された投影画像を表示用バッファに格納された撮像画像に合成させ、さらに、表示部１４に合成された画像を表示させる（Ｓ５０３）。Ｓ５０２およびＳ５０３の処理は、図１９に示すＳ２０３〜Ｓ２０５と同様の手順により行なわれる。
【０１００】
続いて、制御部１１１は、入力部１５から位置決定の入力を受けたか否かを判定する（Ｓ５０４）。位置決定の入力を受けていない場合（Ｓ５０４：ＮＯ）には、制御部１１１は、入力部１５から視点切替の入力を受けたか否かを判定する（Ｓ５０５）。視点切替の入力を受けていない場合（Ｓ５０５：ＮＯ）には、制御部１１１は、入力部１５から画面内の位置指定を受けたか否かを判定する（Ｓ５０６）。
【０１０１】
Ｓ５０４〜Ｓ５０６の判定処理に用いられる入力部１５からの入力は、例えば、表示部１４の表示画面における位置座標（スクリーン座標系）である。制御部１１１は、入力部１５から受けた位置座標と、表示画面に表示させた編集終了ボタンＢ１および視点切替ボタンＢ２の位置に基づいてＳ５０４およびＳ５０５の判定を行なう。
【０１０２】
制御部１１１は、入力部１５から画面内の位置指定を受けた場合（Ｓ５０６：ＹＥＳ）には、算出部１１４に、指定された位置座標（スクリーン座標系）をカメラ座標系に変換させる（Ｓ５０７）。前述の通り、この座標変換において、カメラ座標系の座標Ｚ２ｃには、例えば座標Ｚ１ｃを用いる。制御部１１１は、Ｓ５０７で算出されたカメラ座標系の座標に基づいて、編集テーブルＴ４に格納される座標を更新する（Ｓ５０８）。Ｓ５０８の更新はフラグαに基づいて行なわれ、例えばフラグαが「０」のときにはＸ２ｃおよびＹ２ｃの更新が行なわれる。Ｓ５０８の更新処理が行なわれると、制御部１１１は、Ｓ５０２の処理に戻る。
【０１０３】
Ｓ５０４において、位置決定の入力を受けた場合（Ｓ５０４：ＹＥＳ）には、制御部１１１は、図２４に示すＳ３０６の処理を実行する。
【０１０４】
Ｓ５０５において、視点切替の入力を受けた場合（Ｓ５０５：ＹＥＳ）には、制御部１１１は、撮像画像に基づく位置指定処理（Ｓ３０４）を終了する。
【０１０５】
図２３は、俯瞰モデル図に基づく位置指定処理の処理手順例を示す。俯瞰モデル図に基づく位置指定処理（Ｓ３０５）が開始されると、制御部１１１は、記憶部１２に記憶された俯瞰モデル図およびメニュー群Ｂ１〜Ｂ９を表示部１４に表示させる（Ｓ６０１）。さらに、制御部１１１は、編集テーブルＴ４のフラグαを「１」にセットする。続いて、制御部１１１は、生成部１１３に、選択されたＡＲオブジェクトＥに対応する図形Ｆ３を生成させる（Ｓ６０２）。さらに、制御部１１１は、生成部１１３に、生成された図形Ｆ３を記憶部１２に格納された俯瞰モデル図に合成させ、さらに、表示部１４に合成された画像を表示させる（Ｓ６０３）。記憶部１２に記憶される俯瞰モデル図は、Ｓ３０２の処理で生成された俯瞰モデル図である。Ｓ３０４の処理においては、拡大ボタンＢ５や縮小ボタンＢ６への入力に応じて、図形配置が調整された俯瞰モデル図への更新が適宜行なわれる。
【０１０６】
続いて、制御部１１１は、入力部１５から位置決定の入力を受けたか否かを判定する（Ｓ６０４）。位置決定の入力を受けていない場合（Ｓ６０４：ＮＯ）には、制御部１１１は、入力部１５から視点切替の入力を受けたか否かを判定する（Ｓ６０５）。視点切替の入力を受けていない場合（Ｓ６０５：ＮＯ）には、制御部１１１は、入力部１５から画面内の位置指定を受けたか否かを判定する（Ｓ６０６）。
【０１０７】
Ｓ６０４〜Ｓ６０６の判定処理に用いられる入力部１５からの入力は、Ｓ５０４〜Ｓ５０６の処理と同様に、例えば、表示部１４の表示画面における位置座標（スクリーン座標系）である。制御部１１１は、入力部１５から受けた位置座標と、表示画面に表示させた編集終了ボタンＢ１および視点切替ボタンＢ２の位置に基づいてＳ６０４およびＳ６０５の判定を行なう。
【０１０８】
制御部１１１は、入力部１５から画面内の位置指定を受けた場合（Ｓ６０６：ＹＥＳ）には、図形Ｆ３の位置座標（スクリーン座標系）カメラ座標系に変換させる（Ｓ６０７）。制御部１１１は、Ｓ６０７で算出された座標に基づいて編集テーブルＴ４に格納する座標を更新する（Ｓ６０８）。Ｓ６０８の更新はフラグαに基づいて行なわれ、例えばフラグαが「１」の時にはＸ２ｃおよびＺ２ｃの更新が行なわれる。Ｓ６０８の更新処理が行なわれると、制御部１１１は、Ｓ６０２の処理に戻る。
【０１０９】
Ｓ６０４において、位置決定の入力を受けた場合（Ｓ６０４：ＹＥＳ）には、制御部１１１は、図２４に示すＳ３０６の処理を実行する。
【０１１０】
Ｓ６０５において、視点切替の入力を受けた場合（Ｓ６０５：ＹＥＳ）には、制御部１１１は、俯瞰モデル図に基づく位置指定処理（Ｓ３０５）を終了する。Ｓ３０５の処理が終了すると、制御部１１１は、撮像画像に基づく位置指定処理（Ｓ３０４）を実行する。
【０１１１】
図２４は、編集処理の処理手順例を示す。制御部１１１は、Ｓ３０６の手順において、算出部１１４に、ＡＲオブジェクトＥに対して指定されたカメラ座標系の座標を、マーカー座標系の座標に座標変換させる（Ｓ３０６）。Ｓ３０６において用いられる変換行列は、図３に示す変換座標Ｍの逆行列である。
【０１１２】
Ｓ３０６の処理が行なわれると、制御部１１１は、編集を終了するか否かを判定する（Ｓ３０７）。例えば、制御部１１１は、編集を終了させるか否か指示を求める表示を表示部１４に実行させ、その結果入力部１５により得られた入力内容に応じてＳ３０７の判定を行なう。編集を終了しない場合（Ｓ３０７：ＮＯ）には、制御部１１１は、Ｓ３０３の処理手順に戻る。
【０１１３】
Ｓ３０７で編集終了と判定される（Ｓ３０７：ＹＥＳ）と、制御部１１１は、編集された管理テーブルＴ３を、ＡＲデータの管理サーバにアップロードする（Ｓ１０７）。管理サーバ側では受信した管理テーブルＴ３に含まれるオブジェクトＩＤと、ユーザまたはコンピュータ１を識別する識別情報とを用いて、編集されたＡＲオブジェクトを管理する。制御部１１１は、定義データの送信処理を行なうとともに、静止画表示モードからマーカー検知モードに切り替え、表示部１４はそれに応じて撮像画像の表示を随時更新する。次に、制御部１１１は、プログラムの終了を指示されたか否かを判定する（Ｓ１０８）。Ｓ１０８の処理において、プログラムの終了が指示されている場合（Ｓ１０８：ＹＥＳ）には、制御部１１１は、位置指定プログラムの処理を終了する。Ｓ１０８の処理において、プログラムの終了が指示されていない場合（Ｓ１０８：ＮＯ）には、制御部１１１は、Ｓ１０３の処理に戻る。
【０１１４】
図２２において、画面内で２点位置指定を行なわれた場合には、指定された２点のモーションにより、編集テーブルＴ４内の倍率のデータを更新する。指定された２点が離れる方向に動作した場合には倍率を増大し、指定された２点が近付く方向に動作した場合には倍率を低減させる。
【０１１５】
図２２および図２３において、回転モードボタンＢ８への入力を検知した場合には、画面内位置指定に応じて、編集テーブルＴ４の回転座標を更新する。
【０１１６】
図２２および図２３において、数値指定モードボタンＢ９への入力を検知した場合には、表示部１４は、数値指定画面を表示する。制御部１１１は、数値指定画面内に編集テーブルＴ４内のカメラ座標系の座標を表示させ、表示された座標値に対して直接数値を入力させ、入力された数値に編集テーブルＴ４内の座標値を更新する。
【０１１７】
Ｓ３０３で位置指定の対象となったＡＲオブジェクトＥに対して、複数の位置を設定させるようにしてもよい。編集終了ボタンＢ１への入力があった場合であっても所定回数はＳ３０４に戻るなどの制御により、１つのＡＲオブジェクトに対して複数の位置の設定が行なわれる。管理テーブルＴ３は、複数の位置設定が可能な様に構成される。
【０１１８】
複数の位置が設定されたＡＲオブジェクトの表示は、複数の位置それぞれの設定に基づく複数の投影画像を順次切り替えながら表示させて行なわれる。これにより、ＡＲオブジェクトを動かしながら表示させることができる。
【０１１９】
図２５は、ＡＲテンプレートメニュー例を示す。図２０に示すＳ３０３の処理において、ＡＲテンプレートメニューが表示される。図２５に例示される表示画面Ｓ７は、ＡＲテンプレートメニューが呼び出された状態の表示画面である。図２５に例示されるＡＲテンプレートメニューには、ＡＲテンプレートのタイプを選択可能なボタン群（ボタン１〜ボタン９）が表示される。ＡＲテンプレートメニューの説明において、ボタン領域内に示される番号に基づいてボタンを識別して説明する。例えば、「１」という番号が示される四角いボタンが「ボタン１」である。また、ＡＲテンプレートメニューは、図２５に示したボタン群以外にも選択可能なボタン群を含み、それらのボタン群を表示させるためのスクロール操作をさせるためのスクロールボタンＢ１１を含む。また、ＡＲテンプレートメニューは、ＡＲテンプレートの選択を終了させるメニュークローズボタンＢ１２を含む。
【０１２０】
ボタン１〜ボタン９は、それぞれ個別のテンプレートＩＤに対応する。すなわち、それぞれのボタンに対応する定義テーブルが設けられている。いずれかのボタンに対して入力が行なわれると、そのボタンに対応するテンプレートＩＤが選択され、選択されたテンプレートＩＤに基づいて定義テーブルが呼び出される。
【０１２１】
ボタン１には、吹き出しタイプのＡＲテンプレートが対応付けられている。吹き出しタイプのＡＲテンプレートでは、吹き出し形状の図形内にテキスト情報が追加される。ボタン２は、引き出しボックスタイプのＡＲテンプレートが対応付けられている。引き出しボックスタイプのＡＲテンプレートでは、引き出し線と、引き出し線の先に接合する四角形の図形とを含み、四角形の図形内にテキスト情報が追加される。ボタン３は、テキストボックスタイプのＡＲテンプレートが対応付けられている。テキストボックスタイプのＡＲテンプレートでは、四角形の枠状の図形に対してテキスト情報が追加される。ボタン４は、写真タイプのＡＲテンプレートが対応付けられている。写真タイプのＡＲテンプレートでは、四角形の枠状の図形内に画像データがマッピングされる。この画像データは、記憶部１２に記憶された画像ファイルが用いられる。ボタン５は、撮像タイプのＡＲテンプレートが対応付けられている。撮像タイプのＡＲテンプレートも写真タイプのＡＲテンプレートと同様のＡＲテンプレートであるが、画像データの取得先が異なる。撮像タイプのＡＲテンプレートが使用されると、撮像モードが呼び出され、撮像部１３による撮像処理が行なわれる。撮像タイプのＡＲテンプレートを使用すると、四角形の枠状の図形内に、撮像処理により撮像された画像データがマッピングされる。写真タイプや撮像タイプでマッピングされる画像データは、静止画でも動画でもよい。ボタン６は、手書きタイプのＡＲテンプレートである。手書きタイプのＡＲテンプレートは、透明で四角形の図形であり、さらに図形の模様が手書き操作により編集される。ボタン７は、リンクタイプのＡＲテンプレートであり、テキストボックスタイプのＡＲテンプレートと同様のテンプレートである。リンクタイプのＡＲテンプレートが選択されると、Ｗｅｂページのリストが表示され、リスト内から選択されたＷｅｂページへのアクセス情報がＡＲテンプレートに付加される。Ｗｅｂページのリストは、例えば、Ｗｅｂブラウザのブックマークやアクセス履歴から取得される。ボタン８は、図形タイプのＡＲテンプレートと対応付けられている。図形タイプのＡＲテンプレートは、３次元の立体モデル図形が定義されている。例えば、ボタン８への入力に応じて、立体モデル図形の形状を選択させる画面表示を行なうこととしてもよい。立体モデル図形の形状は、例えば、立方体、直方体、円柱、球、円錐および三角柱などである。また、ボタン８への入力に応じて、ＣＡＤデータの呼び出しを行なうこととしてもよい。ＣＡＤデータは、例えば、記憶部１２に格納されたＣＡＤデータのファイルが選択される。ボタン９は、ファイルタイプのＡＲテンプレートと対応づけられている。ファイルタイプのＡＲテンプレートは、ファイルを示すアイコン画像がマッピングされた四角形の図形である。ファイルタイプのＡＲテンプレートが選択されると、記憶部１２内のファイルを選択させ、選択されたファイルへのリンクをＡＲテンプレートに付加させる。
【０１２２】
図２６は、コンピュータ１のハードウェア構成例を示す。図１３に示す各機能ブロックは、例えば、図２６に示すハードウェア構成により実現される。コンピュータ１は、例えば、プロセッサ３０１、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）３０２、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）３０３、ドライブ装置３０４、記憶媒体３０５、入力インターフェース（入力Ｉ／Ｆ）３０６、入力デバイス３０７、出力インターフェース（出力Ｉ／Ｆ）３０８、出力デバイス３０９、通信インターフェース（通信Ｉ／Ｆ）３１０、カメラモジュール３１１、加速度センサ３１２、角速度センサ３１３、表示インターフェース３１４、表示デバイス３１５およびバス３１６などを含む。それぞれのハードウェアはバス３１６を介して接続されている。
【０１２３】
通信インターフェース３１０はネットワーク３を介した通信の制御を行なう。通信インターフェース３１０が制御する通信は、無線通信を利用して、無線基地局４（図２８参照）を介してネットワーク３にアクセスする態様もあり得る。入力インターフェース３０６は、入力デバイス３０７と接続されており、入力デバイス３０７から受信した入力信号をプロセッサ３０１に伝達する。出力インターフェース３０８は、出力デバイス３０９と接続されており、出力デバイス３０９に、プロセッサ３０１の指示に応じた出力を実行させる。入力デバイス３０７は、操作に応じて入力信号を送信する装置である。入力信号は、例えば、キーボードやコンピュータ１の本体に取り付けられたボタンなどのキー装置や、マウスやタッチパネルなどのポインティングデバイスである。出力デバイス３０９は、プロセッサ３０１の制御に応じて情報を出力する装置である。出力デバイス３０９は、例えば、スピーカーなどの音声出力装置などである。表示インターフェース３１４は、表示デバイス３１５と接続されている。表示インターフェース３１４は、表示インターフェース３１４に設けられた表示用バッファにプロセッサ３０１により書き込まれた画像情報を、表示デバイス３１５に表示させる。表示デバイス３１５は、プロセッサ３０１の制御に応じて情報を出力する装置である。表示デバイス３１５は、ディスプレイなどの画像出力装置や、透過型ディスプレイなどが用いられる。透過型ディスプレイが用いられる場合には、ＡＲオブジェクトの投影画像は、撮像画像と合成されるのではなく、例えば透過型ディスプレイ内の適切な位置に表示されるように制御されてもよい。これにより、ユーザは、現実空間とＡＲオブジェクトが整合した状態の視覚が得られる。また、例えば、タッチスクリーンなどの入出力装置が、入力デバイス３０７及び表示デバイス３１５として用いられる。また、入力デバイス３０７及び表示デバイス３１５がコンピュータ１内部に組み込まれる代わりに、例えば、入力デバイス３０７及び表示デバイス３１５がコンピュータ１に外部から接続されてもよい。
【０１２４】
ＲＡＭ３０２は読み書き可能なメモリ装置であって、例えば、ＳＲＡＭ（Ｓｔａｔｉｃ  ＲＡＭ）やＤＲＡＭ（Ｄｙｎａｍｉｃ  ＲＡＭ）などの半導体メモリ、またはＲＡＭ以外にもフラッシュメモリなどが用いられてもよい。ＲＯＭ３０３は、ＰＲＯＭ（Ｐｒｏｇｒａｍｍａｂｌｅ  ＲＯＭ）なども含む。ドライブ装置３０４は、記憶媒体３０５に記憶された情報の読み出しか書き込みかの少なくともいずれか一方を行なう装置である。記憶媒体３０５は、ドライブ装置３０４によって書き込まれた情報を記憶する。記憶媒体３０５は、例えば、ハードディスク、ＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）、ＣＤ（Ｃｏｍｐａｃｔ  Ｄｉｓｃ）、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｃ）、ブルーレイディスクなどの種類の記憶媒体うちの少なくとも１つである。また、例えば、コンピュータ１は、コンピュータ1内の記憶媒体３０５の種類に対応したドライブ装置３０４を含む。
【０１２５】
カメラモジュール３１１は、撮像素子（イメージセンサ）を含み、例えば、撮像素子が測定した値を読み出し、カメラモジュール３１１に含まれる入力画像用の画像バッファに書き込む。加速度センサ３１２は、加速度センサ３１２に対して作用する加速度を計測する。角速度センサ３１３は、角速度センサ３１３による動作の角速度を計測する。
【０１２６】
プロセッサ３０１は、ＲＯＭ３０３や記憶媒体３０５に記憶されたプログラム（例えば図２７などに例示するプログラム）をＲＡＭ３０２に読み出し、読み出されたプログラムの手順に従って処理を行なう。
【０１２７】
例えば、図２７に示されるプログラムの一部である位置指定プログラムに基づいた処理をプロセッサ３０１が行なうことにより、処理部１１の機能が実現される。制御部１１１は、プロセッサ３０１が位置指定プログラムに示される手順とプロセッサ３０１の演算処理の結果とに応じて、ＲＡＭ３０２へのアクセスを行なうことにより実現される。認識部１１２は、カメラモジュール３１１の入力画像用の画像バッファに格納された画像データに基づいて、プロセッサ３０１が演算処理を行なうことにより実現される。生成部１１３は、プロセッサ３０１がＲＡＭ３０２に格納されたデータ（画像データを含む）に基づき演算処理を行なうことにより生成した画像データを表示用バッファに書き込むことにより実現される。算出部１１４は、プロセッサ３０１がＲＡＭ３０２に格納された座標などのデータと変換行列などのデータに基づいて演算処理を行なうことにより実現される。その際にＲＡＭ３０２はプロセッサ３０１のワークエリアとして用いられる。記憶部１２の機能は、ＲＯＭ３０３および記憶媒体３０５がプログラムファイルやデータファイルを記憶すること、もしくは、ＲＡＭ３０２がプロセッサ３０１のワークエリアとして用いられることによって実現される。例えば、マーカー管理テーブルＴ１、定義テーブルＴ２、管理テーブルＴ３および編集テーブルＴ４などがＲＡＭ３０２に格納される。
【０１２８】
また、カメラモジュール３１１が入力画像用の画像バッファに画像データを書込み、入力画像用の画像バッファ内の画像データをプロセッサ３０１が読み出すことにより、撮像部１３の機能が実現される。画像データは、モニタリングモードにおいては、例えば、入力画像用の画像バッファに書き込まれるとともに、表示デバイス３１５の表示用バッファに並行して書き込まれる。さらに、プロセッサ３０１により生成された画像データが表示インターフェース３１４に備えられた表示用バッファに書き込まれ、表示デバイス３１５が表示用バッファ内の画像データの表示を行なうことで表示部１４の機能が実現される。
【０１２９】
図２７は、コンピュータ１で動作するプログラムの構成例を示す。コンピュータ１において、ハードウェア群５０１（図２６に示されるハードウェア）の制御を行なうＯＳ（オペレーティング・システム）５０２が動作する。ＯＳ５０２に従った手順でプロセッサ３０１が動作して、ハードウェア群５０１の制御・管理が行なわれることで、アプリケーションプログラム５０４やミドルウェア５０３による処理がハードウェア群５０１上で実行される。コンピュータ１において、ＯＳ５０２、ミドルウェア５０３及びアプリケーションプログラム５０４などのプログラムは、例えば、ＲＡＭ３０２に読み出されてプロセッサ３０１により実行される。また、位置指定プログラムは、例えば、ミドルウェア５０３としてアプリケーションプログラム５０４から呼び出されるプログラムである。または、例えば、位置指定プログラムは、アプリケーションプログラム５０４として位置指定処理を実行させるプログラムである。位置指定プログラムは、記憶媒体３０５に記憶される。記憶媒体３０５は、位置指定プログラムを記憶した状態でコンピュータ１本体と切り離して流通され得る。
【０１３０】
図２８は、コンピュータ１を含むシステムの例を示す。図２８に示すシステムは、コンピュータ１、管理サーバ２、管理データベース２ａ、ネットワーク３及び無線基地局４を含む。コンピュータ１と管理サーバ２とは、有線または無線のいずれか少なくとも一方の通信方法により通信可能である。管理サーバ２は、管理データベース２ａを含む。
【０１３１】
図２９は、管理サーバ２の機能構成例を示す。管理サーバ２は、処理部２１、記憶部２２および通信部２３を含む。処理部２１は、記憶部２２および通信部２３の制御を行なう。通信部２３は、コンピュータ１の通信部１６との通信を行なう。記憶部２２は、通信部２３の通信により取得したＡＲオブジェクトの情報（管理テーブルＴ３）を記憶する。また、コンピュータ１からＡＲオブジェクトの情報を要求された場合には、処理部２１は、記憶部２２に記憶された情報（管理テーブルＴ３）を送信させる処理を通信部２３に実行させる。
【０１３２】
図３０は、管理サーバ２のハードウェア構成例を示す。図２９に示す各機能ブロックは、例えば、図３０に示すハードウェア構成により実現される。管理サーバ２は、例えば、プロセッサ４０１、ＲＡＭ４０２、ＲＯＭ４０３、ドライブ装置４０４、記憶媒体４０５、入力インターフェース（入力Ｉ／Ｆ）４０６、入力デバイス４０７、出力インターフェース（出力Ｉ／Ｆ）４０８、出力デバイス４０９、通信インターフェース（通信Ｉ／Ｆ）４１０、ＳＡＮ（Ｓｔｏｒａｇｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）インターフェース（ＳＡＮ  Ｉ／Ｆ）４１１及びバス４１２などを含む。それぞれのハードウェアはバス４１２を介して接続されている。
【０１３３】
例えば、プロセッサ４０１はプロセッサ３０１と同様なハードウェアである。ＲＡＭ４０２は、例えばＲＡＭ３０２と同様なハードウェアである。ＲＯＭ４０３は、例えばＲＯＭ３０３と同様なハードウェアである。ドライブ装置４０４は、例えばドライブ装置３０４と同様なハードウェアである。記憶媒体４０５は、例えば記憶媒体３０５と同様なハードウェアである。入力インターフェース（入力Ｉ／Ｆ）４０６は、例えば入力インターフェース３０６と同様なハードウェアである。入力デバイス４０７は、例えば入力デバイス３０７と同様なハードウェアである。出力インターフェース（出力Ｉ／Ｆ）４０８は、例えば出力インターフェース３０８と同様なハードウェアである。出力デバイス４０９は、例えば出力デバイス３０９と同様なハードウェアである。通信インターフェース（通信Ｉ／Ｆ）４１０は、例えば通信インターフェース３１０と同様なハードウェアである。ＳＡＮ（Ｓｔｏｒａｇｅ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）インターフェース（ＳＡＮ  Ｉ／Ｆ）４１１は、管理サーバ２をＳＡＮに接続するためのインターフェースであり、ＨＢＡ（Ｈｏｓｔ  Ｂｕｓ  Ａｄａｐｔｅｒ）を含む。
【０１３４】
プロセッサ４０１は、ＲＯＭ４０３や記憶媒体４０５に記憶された管理プログラムをＲＡＭ４０２に読み出し、読み出された管理プログラムの手順に従って処理部２１の処理を行なう。その際にＲＡＭ４０２はプロセッサ４０１のワークエリアとして用いられる。記憶部２２の機能は、ＲＯＭ４０３および記憶媒体４０５がプログラムファイルやデータファイル（管理テーブルＴ３など）を記憶すること、もしくは、ＲＡＭ４０２がプロセッサ４０１のワークエリアとして用いられることによって実現される。また、プロセッサ４０１が通信インターフェース４１０を制御して通信処理を行なうことにより、通信部２３の機能が実現される。
【０１３５】
上述の実施形態は本発明の一態様であり、本発明の本旨を逸脱しない範囲の設計変更が適宜行われうる。
【符号の説明】
【０１３６】
１      コンピュータ
１１    処理部
１２    記憶部
１３    撮像部
１４    表示部
１５    入力部
１６    通信部
１１１  制御部
１１２  認識部
１１３  生成部
１１４  算出部
【図１】
0005991423.tif 000002
【図２】
0005991423.tif 000003
【図３】
0005991423.tif 000004
【図４】
0005991423.tif 000005
【図５】
0005991423.tif 000006
【図６】
0005991423.tif 000007
【図７】
0005991423.tif 000008
【図８】
0005991423.tif 000009
【図９】
0005991423.tif 000010
【図１０】
0005991423.tif 000011
【図１１】
0005991423.tif 000012
【図１２】
0005991423.tif 000013
【図１３】
0005991423.tif 000014
【図１４】
0005991423.tif 000015
【図１５】
0005991423.tif 000016
【図１６】
0005991423.tif 000017
【図１７】
0005991423.tif 000018
【図１８】
0005991423.tif 000019
【図１９】
0005991423.tif 000020
【図２０】
0005991423.tif 000021
【図２１】
0005991423.tif 000022
【図２２】
0005991423.tif 000023
【図２３】
0005991423.tif 000024
【図２４】
0005991423.tif 000025
【図２５】
0005991423.tif 000026
【図２６】
0005991423.tif 000027
【図２７】
0005991423.tif 000028
【図２８】
0005991423.tif 000029
【図２９】
0005991423.tif 000030
【図３０】
0005991423.tif 000031