(57)【特許請求の範囲】
【請求項１】
カメラが撮像した対象物の画像を取得する画像取得部と、
前記画像取得部が取得した画像の特徴量を算出する特徴量算出部と、
前記対象物のＣＧ画像と位置を記述するＣＧ画像データを格納するＣＧ画像データベースと、
前記特徴量算出部が算出した前記画像の前記特徴量と前記ＣＧ画像データベースが格納している前記ＣＧ画像の特徴量を比較して前記画像に合致する前記ＣＧ画像を特定することにより前記カメラの位置と姿勢を推定する推定部と、
前記対象物上の点の位置と色を記述する点群データを格納する点群データベースと、
前記点群データからＣＧ画像を生成してその生成時に設定した仮想カメラの位置および方向とともに前記ＣＧ画像データベースへ格納するＣＧ画像生成部と、
を備え、
前記推定部は、
前記推定によって得られた前記カメラの位置と方向を前記仮想カメラの位置と方向の初期値として、前記ＣＧ画像生成部に前記点群データからポイントベースレンダリングによりＣＧ画像を生成させ、
前記仮想カメラの位置と方向を変化させながら前記ポイントベースレンダリングにより生成したＣＧ画像と前記画像とを比較する処理を繰り返して前記画像に合致する前記ＣＧ画像を特定することにより、前記カメラの位置と姿勢を推定する
ことを特徴とする画像処理装置。
【請求項２】
前記推定部は、
前記初期値を用いた前記推定が失敗した場合は、
前記初期値を得るための前記推定を実施した際に前記画像との間の合致度が所定値以上であった、前記カメラのその他の位置および方向を、新たな前記初期値として前記繰り返しを実施することにより、前記カメラの位置と姿勢を再推定する
ことを特徴とする請求項１記載の画像処理装置。
【請求項３】
前記推定部は、
前記推定が成功した場合には、前記推定によって得られた前記画像と、前記推定によって得られた前記カメラの位置および方向を、前記ＣＧ画像データの追加分として前記ＣＧ画像データベースに追加する
ことを特徴とする請求項１記載の画像処理装置。
【請求項４】
前記推定部は、
前記カメラが撮影した直前の画像について前記推定が成功した場合は、
前記直前の画像について推定した前記カメラの位置と方向を前記仮想カメラの初期値として前記繰り返しを実施することにより、前記カメラの位置と方向を推定し、
前記カメラが撮影した直前の画像について前記推定が失敗した場合は、
前記特徴量算出部が算出した現在の前記画像についての特徴量と前記ＣＧ画像データベースが格納している前記ＣＧ画像の特徴量を比較して前記画像に合致する前記ＣＧ画像を特定することにより前記カメラの位置と姿勢を推定し、
その位置と方向を前記仮想カメラの位置と方向の初期値として前記繰り返しを実施することにより、前記カメラの位置と方向を推定する
ことを特徴とする請求項１記載の画像処理装置。
【請求項５】
前記カメラが撮像している画像に重畳表示すべきメッセージとその表示位置を記述するメッセージデータを格納するメッセージデータベースと、
前記推定部が推定した前記カメラの位置と姿勢に応じて、前記メッセージを前記カメラが撮像している画像に重畳表示すべき位置を特定し、その位置およびその位置に重畳表示すべきメッセージを前記カメラに通知するメッセージ位置推定部と、
を備えることを特徴とする請求項１記載の画像処理装置。
【請求項６】
対象物の画像を撮影するカメラと、
請求項１記載の画像処理装置と、
を有し、
前記画像取得部は、前記カメラが撮像した前記対象物の画像を取得する
ことを特徴とする画像処理システム。
【請求項７】
前記画像処理装置は、
前記カメラが撮像している画像に重畳表示すべきメッセージとその表示位置を記述するメッセージデータを格納するメッセージデータベースと、
前記推定部が推定した前記カメラの位置と姿勢に応じて、前記メッセージを前記カメラが撮像している画像に重畳表示すべき位置を特定し、その位置およびその位置に重畳表示すべきメッセージを前記カメラに通知するメッセージ位置推定部と、
を備え、
前記カメラは、
前記メッセージ位置推定部が通知した前記メッセージを表示する表示部を備える
ことを特徴とする請求項６記載の画像処理システム。
【請求項８】
カメラが撮像した対象物の画像を取得する画像取得ステップ、
前記画像取得ステップで取得した画像の特徴量を算出する特徴量算出ステップ、
前記対象物のＣＧ画像と位置を記述するＣＧ画像データを格納するＣＧ画像データベースから前記ＣＧ画像データを読み出すステップ、
前記特徴量算出ステップで算出した前記画像の前記特徴量と前記ＣＧ画像データベースが格納している前記ＣＧ画像の特徴量を比較して前記画像に合致する前記ＣＧ画像を特定することにより前記カメラの位置と姿勢を推定する推定ステップ、
前記対象物上の点の位置と色を記述する点群データを格納する点群データベースから前記点群データを読み出すステップ、
前記点群データからＣＧ画像を生成してその生成時に設定した仮想カメラの位置および方向とともに前記ＣＧ画像データベースへ格納するＣＧ画像生成ステップ、
を有し、
前記推定ステップは、
前記推定によって得られた前記カメラの位置と方向を前記仮想カメラの位置と方向の初期値として、前記点群データからポイントベースレンダリングによりＣＧ画像を生成するステップ、
前記仮想カメラの位置と方向を変化させながら前記ポイントベースレンダリングにより生成したＣＧ画像と前記画像とを比較する処理を繰り返して前記画像に合致する前記ＣＧ画像を特定することにより、前記カメラの位置と姿勢を推定するステップ、
を有する
ことを特徴とする画像処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、カメラの位置と姿勢を、このカメラが撮像した画像を用いて求める技術に関するものである。
【背景技術】
【０００２】
拡張現実（Ａｕｇｍｅｎｔｅｄ  Ｒｅａｌｉｔｙ：ＡＲ）とは、現実環境を撮影した画像に、現実環境に対応する画像や文字などの情報を付加する技術である。ユーザは、現実環境の画像と付加画像が合成された画像を見ることにより、あたかも付加画像として表示されている物体または画像が実際に存在しているかのような感覚を得ることができる。
【０００３】
ＡＲの応用は、教育、娯楽、広告、ナビゲーション、医療など多岐にわたるが、その応用の一つに設備プラントの保守や建築の支援があげられる。
【０００４】
近年、海外で設備プラントの保守や建設の計画が進む一方、熟練者不足のため、経験の浅いユーザの割合が増加すると予測されている。そこで、ＡＲを応用して作業者を支援する技術が期待されている。ＡＲをプラントの保守や建設現場で応用することにより、機器の状態や内部構造を可視化し、状態把握を補助することができる。これにより、効率的に作業を支援することができる。
【０００５】
ＡＲにおいて最も重要な課題の１つは、現実空間と仮想空間との位置合わせである。すなわち、撮像に用いるカメラの位置や姿勢をいかに正確かつロバストに求めるかが重要である。このように、カメラ画像からカメラの位置姿勢を連続的に求める処理はトラッキングと呼ばれている。この課題に対処するため、様々な方法が開発されている。
【０００６】
カメラの位置や姿勢を推定する第１の方法として、ＧＰＳおよび電子コンパスを用いた方法がある。下記特許文献１には、ＧＰＳと電子コンパスと焦点距離に基づき、カメラの地図情報空間上での位置を取得し、３Ｄ−ＣＡＤ上での視野空間を求め、その視野空間中に存在する構造物の属性情報をカメラで得た画像に重畳表示することが記載されている。
【０００７】
カメラの位置や姿勢を推定する第２の方法として、下記非特許文献１、特許文献２に記載されているものがある。これらの文献では、情報提供したい箇所に２次元コードを記述した表示物をあらかじめ設置し、表示物上の２次元コードをカメラで読み取ってその位置を認識し、その位置に情報を提示する。
【０００８】
カメラの位置や姿勢を推定する第３の方法として、モデルベースの方法が提案されている。モデルベースの方法では、３次元ＣＡＤによって設計した物体のように形状が既知である物体に対して仮想カメラを用いて画像を生成する。以下、既知の形状から生成される画像をＣＧ画像と呼ぶ。生成されたＣＧ画像がカメラで撮像されたカメラ画像と類似していれば、そのＣＧ画像を生成するときに用いた仮想カメラの位置や姿勢が、実際のカメラの位置や姿勢に対応していると考えられる。
【０００９】
下記非特許文献２、特許文献３には、モデルベース手法の例として、撮像装置からの２次元的な画像情報に基づいて、物体の頂点やエッジなどの３次元的な幾何特徴を抽出し、これを物体の幾何モデルと照合することにより、物体の位置や姿勢を決定する方法が提案されている。さらに下記非特許文献３では、カメラ画像とＣＧ画像との類似度として、照明変化に対してロバストな相互情報量を用いた方法が提案されている。
【先行技術文献】
【特許文献】
【００１０】
【特許文献１】特開平１０−２６７６７１号公報
【特許文献２】特開２００２−２２８４４２号公報
【特許文献３】特開平０７−１４６１２１号公報
【非特許文献】
【００１１】
【非特許文献１】X.Zhang, S.Fronz, N.Navab: Visual Marker Detection and Decoding in ＡＲ Systems: A Comparative Study, Proc. of International Symposium on Mixed and Augmented Reality （ISMAR’02）, 2002.
【非特許文献２】V. Lepetit, L. Vacchetti, D. Thalmann, and P. Fua: Fully Automated and Stable Registration for Augmented Reality Applications, proc. of International Symposium on Mixed and Augmented Reality （ISMAR’03）, 2003.
【非特許文献３】A. Dame, E. Marchand: Accurate real-time tracking using mutual information, proc. of International Symposium on Mixed and Augmented Reality （ISMAR’10）, 2010, pp. 47-56 （2010）.
【発明の概要】
【発明が解決しようとする課題】
【００１２】
特許文献１に記載されている技術では、プラント保守などのように屋内においてＡＲを実現する場合に、作業場所が屋内であるためＧＰＳによる位置把握ができないという課題がある。屋内ＧＰＳも実用化されているが、施設の条件によっては設置が困難な場合がある。また、磁場の変化に対して敏感な電子コンパスや磁界センサは、プラント内部で使用できない場合がある。さらに、ＧＰＳおよび電子コンパスを使用する方法では、位置合わせの精度が低いため、ＣＧ画像を重畳すると大きな誤差を生じてしまう。
【００１３】
非特許文献１、特許文献２のように、２次元コードを作業場所にあらかじめ配置する技術では、２次元コードを設置する手間がかかり、場所によっては設置自体が困難なこともある。例えば、プラント内は配管等が複雑に入り組んでいるため２次元コードが隠れて撮影されない場合や、２次元コードを設置した位置にしか情報が提示できないため情報提示が離散的になるという課題がある。また、稼働中の機器に関しては２次元コードを設置することが困難である。
【００１４】
非特許文献２、特許文献３に記載されているモデルベースの方法は、ＣＧ画像とカメラ画像との照合によってカメラ位置と姿勢を推定することができるので、２次元コードやＧＰＳなどを利用する必要がない。しかし、現実物体の３次元ＣＡＤデータなどの３次元形状データをあらかじめ準備しておくことが必要となる。実際には、現実物体の３次元ＣＡＤデータが存在しない場合がある。さらに、現場作業の過程で設備を操作した結果として３次元ＣＡＤデータが実際の形状と適合していない場合がある。このような場合には、３次元形状データを新規に作成する必要があるが、これには膨大な手間がかかる。この理由について以下に説明する。
【００１５】
３次元形状データを作成するために、レーザレンジファインダなどによって実際の形状を３次元計測する方法がある。レーザレンジファインダによって現実物体の形状と色を精密に計測することができる。レーザレンジファインダによる計測データは、点群である場合が多い。すなわち、大量の点群の３次元座標と各点における色が計測される。モデルベースの方法において計測データを適用する場合には、点群データなどの３次元計測データからポリゴンなどの面データを生成する必要がある。しかし、点群データから面データへの変換には多大な工数が必要である。
【００１６】
本発明は、上記のような課題に鑑みてなされたものであり、カメラが撮像した画像に基づきカメラの位置や姿勢を推定する場合において、事前に必要な作業量を削減することを目的とする。
【課題を解決するための手段】
【００１７】
本発明に係る画像処理装置は、対象物のＣＧ画像と位置を記述するＣＧ画像データを格納するＣＧ画像データベースを備え、カメラ画像の特徴量とＣＧ画像の特徴量を比較してカメラ画像に合致するＣＧ画像を特定することにより、カメラ位置と姿勢を推定する。
【発明の効果】
【００１８】
本発明に係る画像処理装置によれば、対象物のＣＧ画像データを準備しておくのみでカメラの位置や姿勢を特定できるため、ＧＰＳや電子コンパスのようなセンサが不要となり、かつ２次元コードをあらかじめ作業場所に設置する必要がなく、さらには対象物の３次元形状データ（面データ）をあらかじめ作成しておく必要がない。これにより、カメラの位置や姿勢を推定するために必要な事前の作業量を削減することができる。
【図面の簡単な説明】
【００１９】
【図１】実施形態１に係る画像処理システム１０００の構成を示すブロック図である。
【図２】カメラ付端末１０の機能ブロック図である。
【図３】カメラ位置姿勢推定サーバ３０の機能ブロック図である。
【図４】カメラサーバ２０の機能ブロック図である。
【図５】ＣＧ画像ＤＢ３２のフォーマットを示す図である。
【図６】カメラ画像１１のデータフォーマットを示す図である。
【図７】３次元タグＤＢ３３の構成を示す図である。
【図８】カメラ情報データ１３のデータフォーマットを示す図である。
【図９】点群ＤＢ３１の構成を示す図である。
【図１０】カメラ１０１の位置と姿勢を推定する方法を示す模式図である。
【図１１】カメラ付端末１０がカメラ１０１の位置と姿勢を取得する手順を示すシーケンス図である。
【図１２】カメラ付端末１０がメッセージを表示部１０３に画面表示する方法を示した模式図である。
【図１３】カメラ付端末１０がカメラ１０１の撮像範囲に付随するメッセージを取得する手順を示すシーケンス図である。
【図１４】実施形態２に係るカメラ位置姿勢推定サーバ３０の機能ブロック図である。
【図１５】実施形態２においてカメラ付端末１０がカメラ１０１の位置と姿勢を取得する手順を示すシーケンス図である。
【図１６】図１５のステップＳ１５０１における詳細を示すフローチャートである。
【図１７】カメラ１０１の位置と姿勢を収束計算によって推定した後、カメラ画像１１をＣＧ画像ＤＢ３２に追加する手順を示すシーケンス図である。
【図１８】実施形態４においてカメラ位置姿勢推定サーバ３０がカメラ１０１の位置と姿勢を推定する処理を示すフローチャートである。
【発明を実施するための形態】
【００２０】
＜実施の形態１：システム構成＞
図１は、本発明の実施形態１に係る画像処理システム１０００の構成を示すブロック図である。画像処理システム１０００は、カメラが撮像した画像に基づき当該カメラの位置や姿勢を推定するためのシステムであり、カメラ付端末１０、カメラサーバ２０、カメラ位置姿勢推定サーバ３０を備える。
【００２１】
カメラ付端末１０は、ユーザ５０が保持する端末であり、例えばプラント内の設備などの対象物を撮像し、撮像した画像を基地局４０経由でカメラ位置姿勢推定サーバ３０に送信する。また、撮像した画像をユーザ５０が確認するための表示部を備え、対象物と併せて対象物に関連するメッセージを重畳表示することもできる。カメラ付端末１０の詳細構成については後述する。
【００２２】
カメラサーバ２０は、カメラ付端末１０から受け取った画像の特徴量を計算してカメラ位置姿勢推定サーバ３０に出力する機能を備えるサーバである。カメラサーバ２０はカメラ位置姿勢推定サーバ３０と一体的に構成してもよい。カメラサーバ２０の詳細構成については後述する。
【００２３】
カメラ位置姿勢推定サーバ３０は、カメラ付端末１０から受け取った画像に基づき、カメラ付端末１０が備えているカメラの位置や姿勢を推定し、カメラ付端末１０に通知する。カメラ位置姿勢推定サーバ３０の詳細構成については後述する。カメラサーバ２０とカメラ位置姿勢推定サーバ３０は、本実施形態１における「画像処理装置」に相当する。
【００２４】
図２は、カメラ付端末１０の機能ブロック図である。カメラ付端末１０は、カメラ１０１、通信部１０２、表示部１０３、制御部１０４を備える。
【００２５】
カメラ１０１は、周辺に存在する対象物の画像を撮像してカメラ画像１１を生成する。通信部１０２は、カメラ１０１が撮像した画像をカメラ位置姿勢推定サーバ３０に送信し、カメラ位置姿勢推定サーバ３０から３次元タグデータ１２とカメラ情報データ１３を受け取る。表示部１０３は、カメラ１０１が撮像した画像と必要に応じて後述するメッセージを画面表示する。制御部１０４は、各部の動作を制御する。
【００２６】
制御部１０４は、その機能を実現する回路デバイスのようなハードウェアを用いて構成することもできるし、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）のような演算装置とその動作を規定するソフトウェアを用いて構成することもできる。
【００２７】
図３は、カメラ位置姿勢推定サーバ３０の機能ブロック図である。カメラ位置姿勢推定サーバ３０は、点群データベース（ＤＢ）３１、ＣＧ画像データベース（ＤＢ）３２、３次元タグデータベース（ＤＢ）３３、制御部３０１、データベース管理部３０２、ＣＧ画像生成部３０３、検索部３０４、通信部３０５、特徴量算出部３０６を備える。
【００２８】
点群ＤＢ３１は、ユーザ５０が作業するプラントなどの設備をあらかじめレーザレンジファインダなどによって３次元計測することにより取得した、対象物の点群データを格納するデータベースである。点群ＤＢ３１の構成については後述する。
【００２９】
ＣＧ画像ＤＢ３２は、点群ＤＢ３１が格納している点群データを仮想カメラによってレンダリングして生成したＣＧ画像を格納するデータベースである。ＣＧ画像ＤＢ３２の構成については後述する。
【００３０】
３次元タグＤＢ３３は、カメラ付端末１０の表示部１０３が撮像画像とともに表示するメッセージを格納するデータベースである。３次元タグＤＢ３３の構成については後述する。
【００３１】
制御部３０１は、データベース管理部３０２、ＣＧ画像生成部３０３、検索部３０４、通信部３０５の各プロセスを管理する。データベース管理部３０２は、点群ＤＢ３１、ＣＧ画像ＤＢ３２、３次元タグＤＢ３３のデータ入出力を管理する。
【００３２】
ＣＧ画像生成部３０３は、点群ＤＢ３１が格納している点群データより、公知のポイントベースレンダリング手法を用いてＣＧ画像データを生成し、ＣＧ画像ＤＢ３２に格納する。また、カメラ画像１１と点群データを比較する際に、点群ＤＢ３１が格納している点群データをＣＧ画像に変換する。ＣＧ画像生成部３０３は、ＣＧ画像を生成したときに使用した仮想カメラの位置と仮想カメラの方向を、生成したＣＧ画像とともにＣＧ画像ＤＢ３２へ保存する。
【００３３】
特徴量算出部３０６は、ＣＧ画像生成部３０３が生成したＣＧ画像より、色合い・形状等の、当該画像の特徴を数値列として表現した画像特徴量を算出する。
【００３４】
ＣＧ画像は、色合いや表面の質感といったテクスチャが、実物を撮影した画像と異なることがありうるため、ＣＧ画像そのものに代えて、またはＣＧ画像そのものと併用して、画像特徴量を用いてもよい。ＣＧ画像内の形状を表す特徴量の代表例としては、下記参考文献に記載されているエッジパターン特徴量が挙げられる。エッジパターン特徴量は、画像内に撮影されている物体のエッジのパターンを数値化した特徴量である。エッジパターン特徴量を算出する場合、あらかじめ複数の特徴的なエッジパターンを設定する。次に、ＣＧ画像を格子状の領域に分割し、各領域内に含まれるエッジパターンの数を数えてヒストグラムを生成することにより、多次元ベクトルを生成する。この多次元ベクトルを画像特徴量として用いることができる。
（参考文献）D. Matsubara and A. Hiroike, "High-speed Similarity-based Image Retrieval with Data-alignment Optimization using Self-organization Algorithm," 11th IEEE International Symposium on Multimedia, pp.312--317, 2009。
【００３５】
ＣＧ画像を生成する対象は、人間の視点が通る箇所に限定してもよい。例えばプラントのタービン建屋の面積が２万ｍ２で４階建てである場合、床上１．５ｍの高さで１ｍ置きに１０°刻みでＣＧ画像を生成した場合、画像数は２８８万枚となる。
【００３６】
検索部３０４は、カメラサーバ２０が算出した特徴量１４をクエリとして受け取り、ＣＧ画像ＤＢ３２に格納されているＣＧ画像のうち、その画像特徴量がクエリと合致するものを、検索結果として戻す。具体的には、画像特徴量のベクトル空間中における距離が所定値以下のものが互いに類似した画像であると判定し、この類似画像を検索結果として戻す。検索部３０４は、本実施形態１における「推定部」に相当する。非特許文献２によれば、２８８万枚のＣＧ画像を検索するために要する時間は１秒未満である。
【００３７】
通信部３０５はネットワークインタフェースであり、カメラサーバ２０と通信して画像特徴量１４やカメラ画像１１を受信し、３次元タグデータ１２やカメラ情報データ１３を送信する。
【００３８】
図４は、カメラサーバ２０の機能ブロック図である。カメラサーバ２０は、制御部２０１、特徴量算出部２０２、ＩＤ変換部２０３、通信部２０４を備える。
【００３９】
制御部２０１は、特徴量算出部２０２、ＩＤ変換部２０３、通信部２０４の各プロセスを管理する。特徴量算出部２０２は、カメラ付端末１０が対象物を撮影して得たカメラ画像１１を受け取り、カメラ画像データ１１の色合い・形状等の情報を数値列として表現した特徴量１４を算出し、算出した特徴量１４をカメラ位置姿勢推定サーバ３０へ送信する。ＩＤ変換部２０３は、カメラ付端末１０に割り振られているＩＰ（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）アドレスやＭＡＣ（Ｍｅｄｉａ  Ａｃｃｅｓｓ  Ｃｏｎｔｒｏｌ）アドレス等の固有ＩＤを、カメラ位置姿勢推定サーバ３０が解釈できるカメラＩＤへ変換する。通信部２０４はネットワークインタフェースであり、カメラ付端末１０と通信してカメラ画像１１を受信し、カメラ位置姿勢推定サーバ３０と通信して特徴量１４を送信する。
【００４０】
図５は、ＣＧ画像ＤＢ３２のフォーマットを示す図である。ＣＧ画像ＤＢ３２は、ＩＤフィールド３２１、カメラ位置フィールド３２２、カメラ方向フィールド３２３、ＣＧ画像データフィールド３２４、画像特徴量フィールド３２５を有する。
【００４１】
ＩＤフィールド３２１は、レコード毎に割り振られている固有番号を保持する。カメラ位置フィールド３２２は、ＣＧ画像データフィールド３２４が格納しているＣＧ画像をＣＧ画像生成部３０３が生成する際に点群データをレンダリングするために用いた仮想カメラの位置座標を保持する。カメラ方向フィールド３２３は、ＣＧ画像データフィールド３２４が格納しているＣＧ画像をＣＧ画像生成部３０３が生成する際に点群データをレンダリングするために用いた仮想カメラの方向を保持する。ＣＧ画像データ３２４は、ＣＧ画像生成部３０３が点群データより生成するＣＧ画像データである。画像特徴量３２５は、特徴量算出部３０６がＣＧ画像データ３２４より算出する特徴量を表す数値列である。
【００４２】
図６は、カメラ画像１１のデータフォーマットを示す図である。カメラ画像１１は、カメラ１０１が対象物を撮像することによって取得する画像データであり、カメラＩＤフィールド１１１、取得時刻フィールド１１２、画像データフィールド１１３を有する。
【００４３】
カメラ１０１は、対象物を撮像して得た画像データに、自身のＩＤ（カメラ１０１内のレジスタ等に記録しておけばよい）と撮像年月日をそれぞれカメラＩＤフィールド１１１、取得時刻フィールド１１２として付与し、カメラ画像１１を生成する。カメラサーバ２０の特徴量算出部２０２は、カメラ画像１１内に含まれる画像データ１１３より特徴量を算出し、通信部２０４を介してカメラ位置姿勢推定サーバ３０へ送信する。
【００４４】
図７は、３次元タグＤＢ３３の構成を示す図である。３次元タグＤＢ３３は、メッセージＩＤフィールド３３１、メッセージフィールド３３２、メッセージ位置フィールド３３３を有する。
【００４５】
メッセージＩＤフィールド３３１は、３次元タグＤＢ３３が保持する個々のレコードを識別するための識別子である。メッセージフィールド３３２は、表示部１０３上に重畳表示するメッセージであり、例えばテキストデータ、画像、工程表や作業手順などのドキュメントなどをメッセージとすることができる。メッセージ位置フィールド３３３は、メッセージを重畳表示すべきプラント内の位置を示す３次元座標値を保持する。メッセージ位置フィールド３３３が指定する位置をカメラ１０１が撮像しているとき、表示部１０３がメッセージフィールド３３２のメッセージを撮像画像と併せて重畳表示することを想定する。
【００４６】
図８は、カメラ情報データ１３のデータフォーマットを示す図である。カメラ情報データ１３は、カメラ１０１の位置と姿勢を推定した結果をカメラ付端末１０へ通知するためのデータであり、カメラ位置フィールド１３１、カメラ方向フィールド１３２を有する。
【００４７】
カメラ位置フィールド１３１は、カメラ１０１の位置の３次元座標値を保持する。カメラ方向フィールド１３２は、カメラ１０１の姿勢を示す値を保持する。カメラ位置フィールド１３１は、例えばプラント設備内の所定位置を基準とする３次元座標値によって記述することができる。カメラ方向フィールド１３２は、Ｘ軸まわりの回転角度、Ｙ軸まわりの回転角度、Ｚ軸周りの回転角度によって記述することができる。その他の方法、例えば４元数などでカメラ１０１の姿勢を記述してもよい。
【００４８】
図９は、点群ＤＢ３１の構成を示す図である。点群ＤＢ３１は、ＩＤフィールド３１１、位置フィールド３１２、色フィールド３１３を有する。ＩＤフィールド３１１は、点群ＤＢ３１が保持する個々の点についてのレコードを識別するための識別子である。位置フィールド３１２は、対象物上の点の３次元座標値を保持する。色フィールド３１３は、位置フィールド３１２が指定する座標点の色を示す値を保持する。
【００４９】
＜実施の形態１：カメラの位置と姿勢の推定＞
図１０は、カメラ１０１の位置と姿勢を推定する方法を示す模式図である。カメラ付端末１０は、カメラ１０１が撮影したカメラ画像１１をクエリとし、カメラ１０１の位置と姿勢を推定するよう、カメラ位置姿勢推定サーバ３０へ要求する。カメラサーバ２０はカメラ画像１１の特徴量を算出し、カメラ位置姿勢推定サーバ３０へ送信する。カメラ位置姿勢推定サーバ３０は、ＣＧ画像ＤＢ３２が格納しているＣＧ画像データの特徴量とカメラ画像１１の特徴量との間のベクトル空間内での距離を算出し、最も距離が近いＣＧ画像データがカメラ画像１１に類似していると判定する。カメラ位置姿勢推定サーバ３０は、類似していると判定したＣＧ画像データのカメラ位置フィールド３２２とカメラ方向フィールド３２３を、クエリ結果としてカメラ付端末１０へ返信する。
【００５０】
図１１は、カメラ付端末１０がカメラ１０１の位置と姿勢を取得する手順を示すシーケンス図である。以下、図１１の各ステップについて説明する。
（図１１：ステップＳ１１０１〜Ｓ１１０２）
カメラ付端末１０は、対象物を撮像してカメラ画像１１を生成し（Ｓ１１０１）、カメラサーバ２０へ送信する（Ｓ１１０２）。このときカメラ付端末１０は、カメラ１０１の位置と姿勢を推定して返信するように、カメラサーバ２０へ要求する。
【００５１】
（図１１：ステップＳ１１０３〜Ｓ１１０４）
カメラサーバ２０の特徴量算出部２０２は、カメラ画像１１の特徴量１４を算出し（Ｓ１１０３）、カメラ画像１１とともにカメラ位置姿勢推定サーバ３０へ送信する（Ｓ１１０４）。本ステップにおいてカメラ位置姿勢推定サーバ３０へ送信する情報は、類似画像を検索するために必要な情報のみでもよい。例えばカメラＩＤ１１１と特徴量１４のみでもよい。
【００５２】
（図１１：ステップＳ１１０５）
カメラ位置姿勢推定サーバ３０の検索部３０４は、特徴量１４とＣＧ画像ＤＢ３２に登録されている画像特徴量３２５との間のベクトル空間中における距離を評価することにより、カメラ画像１１に類似する画像を検索する。具体的には、ベクトル空間中における距離が最も近いＣＧ画像データを、類似画像として取得する。検索部３０４は、ステップＳ１１０５で取得した類似画像に対応するカメラ位置フィールド３２２とカメラ方向フィールド３２３を取得する。
【００５３】
（図１１：ステップＳ１１０６〜Ｓ１１０７）
検索部３０４は、ステップＳ１１０５で取得したカメラ位置フィールド３２２とカメラ方向フィールド３２３を、カメラサーバ２０へ送信する（Ｓ１１０６）。カメラサーバ２０は、受け取ったカメラ位置フィールド３２２とカメラ方向フィールド３２３を、クエリ結果としてカメラ付端末１０へ送信する（Ｓ１１０７）。
【００５４】
＜実施の形態１：メッセージの表示＞
図１２は、カメラ付端末１０がメッセージを表示部１０３に画面表示する方法を示した模式図である。以下、図１２に示す手順について説明する。
【００５５】
カメラ付端末１０は、カメラ１０１が撮影したカメラ画像１１をクエリとし、カメラ１０１が撮影している位置に表示するメッセージを送信するよう、カメラ位置姿勢推定サーバ３０へ要求する。カメラサーバ２０はカメラ画像１１の特徴量を算出し、カメラ位置姿勢推定サーバ３０へ送信する。
【００５６】
カメラ位置姿勢推定サーバ３０は、ＣＧ画像ＤＢ３２が格納しているＣＧ画像データの特徴量とカメラ画像１１の特徴量との間のベクトル空間内での距離を算出し、最も距離が近いＣＧ画像データがカメラ画像１１に類似していると判定する。カメラ位置姿勢推定サーバ３０は、類似していると判定したＣＧ画像データのカメラ位置フィールド３２２とカメラ方向フィールド３２３を取得する。
【００５７】
カメラ位置姿勢推定サーバ３０は、取得したカメラ位置フィールド３２２とカメラ方向フィールド３２３に基づき、カメラ１０１の撮影範囲を算出する。カメラ位置姿勢推定サーバ３０は、カメラ１０１の撮影範囲内に含まれるメッセージを、メッセージ位置フィールド３２３にしたがって３次元タグＤＢ３３から検索する。カメラ位置姿勢推定サーバ３０は、検索によって得られたメッセージの座標をカメラ１０１から見た座標に変換した上で、カメラ付端末１０へ送信する。
【００５８】
カメラ付端末１０の表示部１０３は、カメラ１０１が撮像している画像に、カメラ位置姿勢推定サーバ３０から受け取ったメッセージを重畳表示する（図１２の画面１０３２）。重畳表示するメッセージはカメラ１０１の位置座標をキーにして取得するため、物体の影に隠れた箇所に対応付けられているメッセージを重畳表示することもできる。また、カメラ１０１の位置をユーザ５０の作業場所の地図上に画面表示することにより、ユーザ５０は自身の位置を把握することができる（図１２の画面１０３１）。
【００５９】
図１３は、カメラ付端末１０がカメラ１０１の撮像範囲に付随するメッセージを取得する手順を示すシーケンス図である。以下、図１３の各ステップについて説明する。
（図１３：ステップＳ１３０１〜Ｓ１３０５）
これらのステップは、図１１のステップＳ１１０１〜Ｓ１１０５と同様である。ただしステップＳ１３０１において、カメラ付端末１０は、カメラ１０１の撮像範囲に付随するメッセージを返信するように、カメラサーバ２０へ要求する。
【００６０】
（図１３：ステップＳ１３０６）
カメラ位置姿勢推定サーバ３０の検索部３０４は、ステップＳ１３０５で取得したカメラ位置フィールド３２２とカメラ方向フィールド３２３に基づき、カメラ１０１が撮影し得る範囲を算出し、メッセージ位置３３３がその撮影範囲内にあるメッセージ３３２を３次元タグＤＢ３３から検索する。
【００６１】
（図１３：ステップＳ１３０７〜Ｓ１３０９）
検索部３０４は、ステップＳ１３０６で取得したメッセージ位置３３３をカメラ画像１１上の座標へ変換し、メッセージ３３２とともにカメラサーバ２０へ送信する（Ｓ１３０７）。カメラサーバ２０は、受信したメッセージ位置３３３とメッセージ３３２を、カメラ付端末１０へ送信する（Ｓ１３０８）。カメラ付端末１０は、そのメッセージ位置３３３にしたがって、表示部１０３上でカメラ１０１が撮像している画像に重ねてメッセージ３３２を表示する（Ｓ１３０９）。
【００６２】
＜実施の形態１：まとめ＞
以上のように、本実施形態１に係る画像処理システム１０００は、点群データから仮想カメラを用いてレンダリングしたＣＧ画像データをＣＧ画像ＤＢ３２内に保持しておき、カメラ付端末１０が撮影した画像の特徴量とＣＧ画像データの特徴量を比較することにより、カメラ１０１の位置と姿勢を推定する。これにより、カメラ１０１の位置と姿勢を推定するためにあらかじめ３次元ＣＡＤデータを準備しておく必要がなくなり、作業負担を軽減することができる。また、画像の特徴量同士を比較することにより、高速に推定結果を得ることができる。
【００６３】
また、本実施形態１に係る画像処理システム１０００は、表示部１０３上で撮像画像に重畳して表示するメッセージを３次元タグＤＢ３３内に保持しておき、カメラ位置と姿勢の推定結果に応じて、表示部１０３上で重畳表示すべきメッセージをカメラ付端末１０に送信する。これにより、ユーザ５０の現在位置に応じて、適切なメッセージを表示部１０３上で提示することができる。
【００６４】
＜実施の形態２＞
カメラ画像を用いてカメラの位置姿勢を推定する処理（トラッキング）は、実施の形態１のように類似画像検索を用いることも可能である。さらに、トラッキングは、カメラ画像と、仮想カメラの位置姿勢をパラメータとしてレンダリングしたＣＧ画像との類似度を用いた収束計算によって実現することが可能である。このような類似度を用いた収束計算によるトラッキングでは、収束計算の初期値が重要である。収束計算に用いる初期値が適切でない場合には、正しくない位置姿勢に収束することが考えられる。これは、類似度の収束計算において、局所最大に陥るためである。正しい位置姿勢を求めるためには、収束計算の初期値が重要である。そこで本発明の実施形態２では、実施形態１で説明した手法を初期値設定のために転用し、その初期値を開始点として類似度最大化の計算を繰り返してカメラパラメータを収束させることにより、カメラ１０１の位置と姿勢の推定精度を高めることを図る。
【００６５】
図１４は、本実施形態２に係るカメラ位置姿勢推定サーバ３０の機能ブロック図である。本実施形態２に係るカメラ位置姿勢推定サーバ３０は、実施形態１で説明した構成に加えて新たに収束計算部３０７を備える。その他の構成は実施形態１と同様である。
【００６６】
収束計算部３０７は、検索部３０４が求めたカメラ１０１の位置と姿勢を初期値として、後述の図１６で説明する収束計算によってカメラ１０１の位置と姿勢を求める。収束計算部３０７と検索部３０４は、本実施形態２における「推定部」に相当する。
【００６７】
図１５は、本実施形態２においてカメラ付端末１０がカメラ１０１の位置と姿勢を取得する手順を示すシーケンス図である。実施形態１で説明した図１１と比較して、ステップＳ１１０５の後に新たにステップＳ１５０１が追加されている。その他のステップは図１１と同様である。
【００６８】
ステップＳ１５０１において、収束計算部３０７は、ステップＳ１１０５で取得したカメラ位置フィールド３２２とカメラ方向フィールド３２３を初期値として、画像類似度の最大化処理を繰り返して収束計算することにより、カメラ１０１の位置と姿勢を推定する。本ステップの詳細は後述の図１６で改めて説明する。
【００６９】
図１６は、図１５のステップＳ１５０１における詳細を示すフローチャートである。以下、図１６の各ステップについて説明する。
（図１６：ステップＳ１６０１）
収束計算部３０７は、検索部３０４が取得したカメラ位置フィールド３２２とカメラ方向フィールド３２３を、ＣＧ画像生成部３０３が使用する仮想カメラの位置および方向の初期値として設定する。ただし本ステップを２回目以降に実施するときは、後述するステップＳ１６０７で更新したカメラ位置と方向を、仮想カメラの位置および方向として設定する。
【００７０】
（図１６：ステップＳ１６０２）
収束計算部３０７は、ＣＧ画像生成部３０３の機能を使用して、点群ＤＢ３１が格納している点群データに対して現在の仮想カメラの位置と姿勢を基準としてポイントベースレンダリングを実施することにより、ＣＧ画像を生成する。点群データは対象物を撮像した画像そのものではなく、対象物上の複数点の座標と色を示すものであるため、カメラ画像１１と直接的に比較することはできない。点群データが表すドット集合と２次元画像は、互いに異なる種類のデータだからである。そこで本ステップにおいて、点群データから公知のポイントベースレンダリングを用いて２次元画像を生成し、カメラ画像１１と直接比較できるようにすることとした。
【００７１】
（図１６：ステップＳ１６０３）
収束計算部３０７は、カメラ付端末１０から受け取ったカメラ画像１１と、ステップＳ１６０２で生成したＣＧ画像とを比較し、両者の類似度を求める。類似度は、２つの画像間の誤差の２乗平均（ＳＳＤ：Ｓｕｍ  ｏｆ  Ｓｑｕａｒｅｄ  Ｄｉｆｆｅｒｅｎｃｅｓ）によって求められる他、後述する相互情報量を画像間の類似度とすることができる。また、これらの値に何らかの演算を施して導出した値を類似度としてもよい。
【００７２】
（図１６：ステップＳ１６０４）
収束計算部３０７は、ステップＳ１６０３で算出した類似度が極大値に収束したか否かを判定する。類似度が収束している場合はステップＳ１６０５に進み、収束していない場合はステップＳ１６０６に進む。
【００７３】
（図１６：ステップＳ１６０５）
収束計算部３０７は、通信部３０５を介して、現在の仮想カメラの位置と姿勢をカメラ情報データ１３としてカメラ付端末１０に送信する。
【００７４】
（図１６：ステップＳ１６０６）
収束計算部３０７は、本ステップを前回実施したときよりも類似度が改善されているかどうかを判定する。改善されている場合にはステップＳ１６０７に進み、改善されていない場合にはステップＳ１６０８に進む。
【００７５】
（図１６：ステップＳ１６０７）
収束計算部３０７は、より高い類似度を得るために、仮想カメラの位置と姿勢を更新する。具体的には、例えば現在の仮想カメラの位置と姿勢を適当に変化させて新たな位置と姿勢を設定する。本ステップの後はステップＳ１６０１に戻り、同様の処理を繰り返すことにより、カメラ画像１１とＣＧ画像との間の類似度を最大化する。
【００７６】
（図１６：ステップＳ１６０８）
収束計算部３０７は、類似度が収束せず、かつ改善もされない場合には、カメラ１０１の位置と姿勢を推定することに失敗したと判定し、計算を打ち切って本処理フローを終了する。
【００７７】
（図１６：ステップＳ１６０３：補足）
ステップＳ１６０３において、画像間の類似度として相互情報量を用いることができる。相互情報量を計算するためには、まずＣＧ画像の輝度値と、カメラ画像１１の輝度値とから、２次元ヒストグラムを求める。次に、その２次元ヒストグラムを用いて計算される確率密度関数を用いて、相互情報量を計算する。
【００７８】
相互情報量とは、２つの事象ＡとＢについて、事象Ａが有している事象Ｂに関する情報量を定量化した尺度である。本発明における類似度を計算するために用いる正規化相互情報量ＮＭＩ（Ａ，Ｂ）は、事象Ａと事象Ｂの２次元結合ヒストグラムＨｉｓｔ（Ａ，Ｂ）に基づき、下記式１によって求められる。
【００７９】
【数１】
0005837848.tif 000002
【００８０】
Ｈ（Ａ）は事象Ａのエントロピー、Ｈ（Ｂ）は事象Ｂのエントロピー、Ｈ（Ａ，Ｂ）は事象Ａ，Ｂの結合エントロピーである。ｐ（ａ）はａの確率密度分布、ｐ（ｂ）はｂの確率密度分布である。ｐ（ａ，ｂ）はａ，ｂの同時確率分布であり、Ｈｉｓｔ（Ａ，Ｂ）から求められる。事象Ａと事象Ｂが完全に独立である場合には、Ｈ（Ａ，Ｂ）＝Ｈ（Ａ）＋Ｈ（Ｂ）となる。事象Ａと事象Ｂが完全に従属である場合には、Ｈ（Ａ，Ｂ）＝Ｈ（Ａ）＝Ｈ（Ｂ）となる。
【００８１】
＜実施の形態２：まとめ＞
以上のように、本実施形態２に係る画像処理システム１０００は、特徴量１４を用いて推定したカメラ位置と姿勢を初期値として、図１６の収束計算によってカメラ画像とＣＧ画像の類似度を最大化うる。これにより、カメラ１０１の位置と姿勢の推定精度を高めることができる。
【００８２】
本実施形態２において、初期値として設定した仮想カメラの位置と姿勢が適切でなかったため、カメラ１０１の位置と姿勢の推定に失敗したり、正しい位置と姿勢を得られなかったりする可能性がある。この場合は、別の初期値を用いて図１６と同様の収束計算を実施することにより、精度の高い結果を得られる可能性がある。具体的には、検索部３０４が特徴量１４を用いて類似検索を実施した際に、検索結果の上位１位のＣＧ画像データのみを初期値の対象とするのではなく、２位以下の検索結果も初期値の対象とすることが考えられる。これにより、複数のＣＧ画像データに対応する仮想カメラの位置と姿勢を初期値として収束計算を実施することができる。初期値の対象とする順位の範囲については、例えば類似検索における合致度が所定値以上のＣＧ画像データを初期値の対象とする、などとすればよい。
【００８３】
＜実施の形態３＞
ＣＧ画像ＤＢ３２が格納しているＣＧ画像データは、カメラ１０１が撮影した画像そのものではないため、ＣＧ画像データを対象とする類似画像検索の精度は、カメラ画像１１を対象とする類似画像検索の精度と比較して必ずしも高くないと考えられる。そこで本発明の実施形態３では、実施形態２において推定結果が収束した場合には、そのカメラ画像１１をＣＧ画像データの追加分としてＣＧ画像ＤＢ３２に追加し、以後の類似画像検索においてＣＧ画像データと同様に取り扱うこととする。本実施形態３に係る画像処理システム１０００の構成は、カメラ画像１１をＣＧ画像ＤＢ３２に追加する点を除いて実施形態２と同様であるため、以下では差異点を中心に説明する。
【００８４】
図１７は、カメラ１０１の位置と姿勢を収束計算によって推定した後、カメラ画像１１をＣＧ画像ＤＢ３２に追加する手順を示すシーケンス図である。本シーケンスは、図１５で説明した手順に加えて、ステップＳ１５０１の後にステップＳ１７０１が追加されている。その他のステップは図１５と同様である。ステップＳ１７０１は、ステップＳ１１０６と並行に開始してもよい。
【００８５】
ステップＳ１７０１において、収束計算部３０７は、収束計算によるカメラ１０１の位置および姿勢の推定に成功した場合は、ステップＳ１１０２で受け取ったカメラ画像１１と、推定結果であるカメラ位置および姿勢を、ＣＧ画像ＤＢ３２に格納する。
【００８６】
点群ＤＢ３１より生成するＣＧ画像データは、色などのテクスチャが実際の画像と異なる場合があるため、カメラ画像１１をクエリとしてＣＧ画像データを検索するときはエッジ方向などの特徴量を用いて検索する必要がある。一方、カメラ画像１１を用いて類似画像検索を実施する場合は、画像のテクスチャ情報も使用することができるので、検索精度を向上させることができる。
【００８７】
＜実施の形態３：まとめ＞
以上のように、本実施形態３に係る画像処理システム１０００は、点群データから生成したＣＧ画像データに加えて、カメラ画像１１をＣＧ画像ＤＢ３２に登録する。これにより、カメラ１０１の位置および姿勢の推定精度を向上させることができる。
【００８８】
＜実施の形態４＞
一般にカメラ１０１の位置方向は急激に変化するものではないため、直前のカメラ画像１１を用いてカメラ位置方向の推定に成功した場合には、そのカメラ位置方向を推定の初期値として収束計算を実施することにより、カメラ位置方向を推定することができると考えられる。そこで本発明の実施形態４では、実施形態２において直前のカメラ画像１１を用いてカメラ位置方向の推定に成功した場合には、現在のカメラ画像１１のカメラ位置方向推定の初期値として直前のカメラ位置方向を用いる。初期値の設定以外の構成については実施形態２と同様であるため、以下では差異点を中心に説明する。
【００８９】
図１８は、本実施形態４においてカメラ位置姿勢推定サーバ３０がカメラ１０１の位置と姿勢を推定する処理を示すフローチャートである。以下、図１８の各ステップについて説明する。
（図１８：ステップＳ１８０１〜Ｓ１８０２）
収束計算部３０７は、カメラ画像１１を取得する（Ｓ１８０１）。直前の推定対象であるカメラ画像１１についてカメラ位置方向の推定が成功している場合にはステップＳ１８０３に進み、失敗している場合にはステップＳ１８０４に進む（Ｓ１８０２）。
【００９０】
（図１８：ステップＳ１８０３）
収束計算部３０７は、直前の推定対象であるカメラ画像１１のカメラ位置方向の推定結果を、現在の推定対象であるカメラ画像１１についての仮想カメラの位置方向の初期値として設定する。
【００９１】
（図１８：ステップＳ１８０４〜Ｓ１８０５）
直前の推定対象であるカメラ画像１１についてカメラ位置方向の推定が失敗している場合には、検索部３０４は、ステップＳ１８０１で取得したカメラ画像１１に対して、実施形態１で説明した手法により、類似するＣＧ画像データをＣＧ画像ＤＢ３２から検索する（Ｓ１８０４）。収束計算部３０７は、その結果得られたＣＧが像データに対応するカメラ位置フィールド３２２とカメラ方向フィールド３２３を、現在の推定対象であるカメラ画像１１についての仮想カメラの位置方向の初期値として設定する（Ｓ１８０５）。
【００９２】
（図１８：ステップＳ１８０６）
収束計算部３０７は、ステップＳ１８０３〜Ｓ１８０５で設定した初期値を用いて、図１６で説明した手法により収束計算を実施する
【００９３】
（図１８：ステップＳ１８０７）
収束計算部３０７は、ステップＳ１８０６においてカメラ位置方向の推定が成功したかどうかを判定する。成功した場合にはステップＳ１８０８に進み、失敗した場合には本フローチャートを終了する。
【００９４】
（図１８：ステップＳ１８０８）
収束計算部３０７は、ステップＳ１８０６で求められたカメラ位置方向の推定値を、カメラサーバ２０経由でカメラ付端末１０に送信する。
【００９５】
＜実施の形態４：まとめ＞
以上のように、本実施形態４に係る画像処理システム１０００は、直前のカメラ画像１１についての推定結果を初期値とするため、高速にカメラ位置方向を推定することができる。また、カメラ１０１の急激な移動などによってカメラ位置方向の推定が失敗した場合であっても、実施形態２と同様の手法により初期値を設定することにより、カメラ位置方向の推定を再開することができる。
【００９６】
本発明は上記した実施形態に限定されるものではなく、様々な変形例が含まれる。上記実施形態は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、ある実施形態の構成の一部を他の実施形態の構成に置き換えることもできる。また、ある実施形態の構成に他の実施形態の構成を加えることもできる。また、各実施形態の構成の一部について、他の構成を追加・削除・置換することもできる。
【００９７】
上記各構成、機能、処理部、処理手段等は、それらの一部や全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、上記の各構成、機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによりソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリ、ハードディスク、ＳＳＤ（Ｓｏｌｉｄ  Ｓｔａｔｅ  Ｄｒｉｖｅ）等の記録装置、ＩＣカード、ＳＤカード、ＤＶＤ等の記録媒体に格納することができる。
【符号の説明】
【００９８】
１０：カメラ付端末、１０１：カメラ、１０２：通信部、１０３：表示部、１０４：制御部、１１：カメラ画像、１２：３次元タグデータ、１３：カメラ情報データ、１４：特徴量、２０：カメラサーバ、２０１：制御部、２０２：特徴量算出部、２０３：ＩＤ変換部、２０４：通信部、３０：カメラ位置姿勢推定サーバ、３１：点群データベース、３２：ＣＧ画像データベース、３３：３次元タグデータベース、３０１：制御部、３０２：データベース管理部、３０３：ＣＧ画像生成部、３０４：検索部、３０５：通信部、３０６：特徴量算出部、３０７：収束計算部、４０：基地局、５０：ユーザ、１０００：画像処理システム。
【図１】
0005837848.tif 000003
【図２】
0005837848.tif 000004
【図３】
0005837848.tif 000005
【図４】
0005837848.tif 000006
【図５】
0005837848.tif 000007
【図６】
0005837848.tif 000008
【図７】
0005837848.tif 000009
【図８】
0005837848.tif 000010
【図９】
0005837848.tif 000011
【図１０】
0005837848.tif 000012
【図１１】
0005837848.tif 000013
【図１２】
0005837848.tif 000014
【図１３】
0005837848.tif 000015
【図１４】
0005837848.tif 000016
【図１５】
0005837848.tif 000017
【図１６】
0005837848.tif 000018
【図１７】
0005837848.tif 000019
【図１８】
0005837848.tif 000020