(57)【要約】【課題】  位置姿勢算出処理時における３次元情報を用いた計算負荷を減らすとともに、位置合わせの精度や安定性の低下を抑制させるようにした情報処理装置、その処理方法及びプログラムを提供する。【解決手段】  撮像装置により撮像される物体に対する該撮像装置の位置及び姿勢の情報を算出する情報処理装置であって、物体を構成する複数の線分を含む３次元情報を保持し、撮像装置により撮像された物体の画像を取得し、当該取得された画像から線分を表す画像特徴を検出し、当該検出された線分と、保持された線分との対応に基づいて位置姿勢算出処理を実施し撮像装置の位置及び姿勢の情報を算出し、画像特徴の検出結果と、位置及び姿勢の算出過程で得られる情報との少なくともいずれかに基づいて、保持する線分各々についてそれ以降の位置姿勢算出処理に利用するか否かを判定する。【選択図】  図１
2010134649.tif 000002
【特許請求の範囲】
【請求項１】
撮像装置により撮像される物体に対する該撮像装置の位置及び姿勢の情報を算出する情報処理装置であって、
前記物体を構成する複数の線分を含む３次元情報を保持する保持手段と、
前記撮像装置により撮像された前記物体の画像を取得する取得手段と、
前記取得手段により取得された画像から線分を表す画像特徴を検出する検出手段と、
前記検出手段により検出された線分と、前記保持手段により保持された線分との対応に基づいて位置姿勢算出処理を実施し前記撮像装置の位置及び姿勢の情報を算出する算出手段と、
前記検出手段による画像特徴の検出結果と、前記算出手段による位置及び姿勢の算出過程で得られる情報との少なくともいずれかに基づいて、前記保持手段が保持する線分各々についてそれ以降の前記位置姿勢算出処理に利用するか否かを判定する判定手段と
を具備することを特徴とする情報処理装置。
【請求項２】
前記検出手段は、
前記取得手段により取得された複数の画像から前記線分を表す画像特徴を検出し、
前記判定手段は、
前記検出手段により複数の画像から検出された画像特徴の検出結果と、前記算出手段による位置及び姿勢の算出過程で得られる情報との少なくともいずれかに基づいて前記判定を行なう
ことを特徴とする請求項１記載の情報処理装置。
【請求項３】
前記検出手段は、
前記保持手段により保持された線分各々に対応する線分を表す画像特徴を前記画像から検出し、
前記判定手段は、
前記検出手段による前記線分各々についての前記画像からの線分の検出率に基づいて前記判定を行なう
ことを特徴とする請求項２記載の情報処理装置。
【請求項４】
前記検出手段は、
前記保持手段により保持された線分各々に所定の間隔で分割点を設け、該分割点に対応する対応点を探索することにより前記対応する線分を表す画像特徴を前記画像から検出し、
前記判定手段は、
前記検出手段による前記線分各々についての前記対応点の検出率に基づいて前記判定を行なう
ことを特徴とする請求項１又は２記載の情報処理装置。
【請求項５】
前記判定手段は、
前記検出率が所定の閾値よりも小さい場合に、前記保持手段により保持された該当する線分をそれ以降の前記位置姿勢算出処理に利用しないと判定する
ことを特徴とする請求項３又は４記載の情報処理装置。
【請求項６】
前記判定手段は、
前記算出手段による前記検出手段により検出された前記線分を表す画像特徴と、前記保持手段により保持された線分との対応により生じる位置のずれを示す誤差の大きさに基づいて前記判定を行なう
ことを特徴とする請求項１記載の情報処理装置。
【請求項７】
前記判定手段による判定の結果をユーザに提示する提示手段と、
前記提示手段により提示された判定結果をもとにユーザが承認するか否かを入力する入力手段と
を更に具備することを特徴とする請求項１記載の情報処理装置。
【請求項８】
撮像装置により撮像される物体に対する該撮像装置の位置及び姿勢の情報を算出する情報処理装置の処理方法であって、
前記撮像装置により撮像された前記物体の画像を取得する取得工程と、
前記取得工程で取得された画像から線分を表す画像特徴を検出する検出工程と、
前記検出工程で検出された線分と、保持手段により保持された前記物体を構成する３次元情報の複数の線分との対応に基づいて位置姿勢算出処理を実施し前記撮像装置の位置及び姿勢の情報を算出する算出工程と、
前記検出工程での画像特徴の検出結果と、前記算出工程での位置及び姿勢の算出過程で得られる情報との少なくともいずれかに基づいて、前記保持手段が保持する線分各々についてそれ以降の前記位置姿勢算出処理に利用するか否かを判定する判定工程と
を含むことを特徴とする情報処理装置の処理方法。
【請求項９】
撮像装置により撮像される物体に対する該撮像装置の位置及び姿勢の情報を算出する情報処理装置に内蔵されたコンピュータを、
前記物体を構成する複数の線分を含む３次元情報を保持する保持手段、
前記撮像装置により撮像された前記物体の画像を取得する取得手段、
前記取得手段により取得された画像から線分を表す画像特徴を検出する検出手段、
前記検出手段により検出された線分と、前記保持手段により保持された線分との対応に基づいて位置姿勢算出処理を実施し前記撮像装置の位置及び姿勢の情報を算出する算出手段、
前記検出手段による画像特徴の検出結果と、前記算出手段による位置及び姿勢の算出過程で得られる情報との少なくともいずれかに基づいて、前記保持手段が保持する線分各々についてそれ以降の前記位置姿勢算出処理に利用するか否かを判定する判定手段
として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、撮像装置により撮像される物体に対する該撮像装置の位置及び姿勢の情報を算出する情報処理装置、その処理方法及びプログラム。
【背景技術】
【０００２】
近年、現実空間に仮想空間の情報を重ね合わせて表示するＡＲ（拡張現実感：Augmented Reality）技術の研究が盛んに行なわれている。ＡＲ技術を採用した情報提示装置の代表格としては、例えば、ビデオシースルー型のＨＭＤ（ヘッドマウントディスプレイ：Head Mounted Display）が知られている。ビデオシースルー型ＨＭＤには、現実空間を撮像するカメラが内蔵されている。ビデオシースルー型ＨＭＤでは、カメラ等の位置及び姿勢に応じてＣＧ（コンピュータグラフィクス：Computer Graphics）により仮想物体を描画する。そして、描画された仮想物体を現実空間の画像上に重畳した合成画像を、液晶パネルなどのＨＭＤの表示デバイス上に表示する。これにより、利用者は、あたかも仮想物体が現実空間中に実在するかのように感じることができる。
【０００３】
ＡＲ技術を実現する上で解決しなければならない大きな問題の一つとして「位置合わせ」の問題がある。ＡＲにおける位置合わせとは、仮想物体と現実空間との間の幾何学的な整合性を取ることである。仮想物体が現実空間に実在するように利用者が感じるためには、位置合わせが正しく行なわれ、仮想物体が常に現実空間中の存在すべき位置に存在するようにして利用者に提示されなければならない。
【０００４】
ビデオシースルー型ＨＭＤを利用するＡＲでは、一般に、ＨＭＤに内蔵されているカメラから画像が入力される毎に、現実空間におけるカメラの画像撮像時の位置及び姿勢を計測する。そして、このカメラの位置や姿勢と、焦点距離などのカメラ固有のパラメータとに基づいてＣＧを描画し、現実空間の画像上に重畳する。そのため、ＡＲにおける位置合わせでは、ＨＭＤに内蔵されたカメラの位置や姿勢の計測を正確に行なう必要がある。一般に、カメラの位置及び姿勢の計測は、６自由度のカメラの位置及び姿勢を計測できる磁気センサや超音波センサ、光学式センサなどの物理センサを用いて行なわれる。
【０００５】
また、ビデオシースルー型ＨＭＤでは、内蔵されているカメラからの画像情報を位置合わせに利用することができる。画像情報を利用して位置合わせを行なう場合、物理センサを利用する方法に比べ、手軽且つ低コストである。この位置合わせ方法では、一般に、現実空間中で３次元位置が既知の指標をカメラで撮像し、撮像画像上での指標の位置と３次元位置との対応をもとにカメラの位置及び姿勢を算出する。指標には、例えば、現実空間中に人為的に配置したマーカや、現実空間中に元来存在するコーナー点やエッジなどの自然特徴を利用する。実用上は、安定性や計算負荷の点から、画像情報から検出や識別が容易である人工的なマーカが広く利用されている。
【０００６】
このような技術に関連して、非特許文献１では、固有の２次元パターンが内部に描かれた正方形形状のマーカを指標に用いて位置合わせを行なう方法が開示されている。このような正方形マーカなどの人工的なマーカは、手軽に利用できるため広く用いられている。しかし、マーカを配置するのが物理的に不可能・困難な場合や、美観を損ねるなどの理由のためにマーカを配置したくない場合にはマーカを利用することができない。
【０００７】
一方、近年の計算機能力の向上に伴い、現実シーン中に元来存在する自然特徴を利用して位置合わせを行なう技術の研究が盛んに行なわれている。位置合わせに用いられる自然特徴としては、コーナー点などの点形状の特徴（以下、点特徴）や、エッジなどの線特徴が挙げられる。非特許文献２、３、４では、エッジを利用した位置合わせの方法が開示されている。エッジは、スケールや観察方向に対して不変であるため、エッジを利用した位置合わせは精度が高いという特徴がある。エッジを利用した位置合わせでは、線分の集合により記述されている現実空間や現実物体の３次元モデルデータを持つことが前提となる。非特許文献２、３、４で開示されているエッジを利用した位置合わせは、次の１から４の処理によって実現される。
（１）．前フレームでのカメラの位置及び姿勢及び予め校正済みのカメラの固有パラメータに基づいて、前述の３次元モデルデータ（線分モデル）を画像上に投影する。
（２）．投影された各線分を、画像上で一定間隔となるように分割し、分割点を設定する。そして、各分割点について、分割点を通過し向きが投影された線分の法線方向である線分（探索ライン）上でエッジ探索し、探索ライン上における輝度値の勾配が極大であり且つ分割点に最も近い点を対応エッジとして検出する。
（３）．各分割点毎に検出された対応エッジと、投影される線分との間の画像上での距離の総和が最小となるようなカメラの位置及び姿勢の補正値を算出し、その補正値に基づいてカメラの位置及び姿勢を算出する。
（４）．（３）の処理を収束するまで繰り返し最適化計算を行なう。
【０００８】
点特徴と違って、エッジは画像上での識別性が低い。エッジ探索時には、探索ライン上における輝度値の勾配が極大であるという情報しか利用していないため、しばしば誤ったエッジが検出されてしまう。そのため、非特許文献２、３、４では、誤検出されたエッジが最適化計算に悪影響を及ぼさないように、Ｍ推定と呼ばれる手法を用い、誤検出と思われるエッジのデータの重みを小さくして最適化計算を行なっている。
【０００９】
また、上述した通り、エッジを利用した位置合わせでは、位置合わせの対象となる現実空間や現実物体を構成する線分の３次元モデルデータが必要となる。従来、線分の３次元モデルデータの計測は、手作業若しくは画像を用いて行なわれていた。手作業による計測には、メジャー、定規、分度器などが用いられる。また、計測の対象となるシーンや物体の画像を撮像し、画像上で計測者が手作業で線分を指定した結果をもとに３次元データの算出を行なう写真測量ソフトウェアなども用いられている。計測者は、面と面の交線や、線の両側で輝度が大きく変わる線など、位置合わせを行なう際にエッジとして検出されそうな線分を現実空間／現実物体から探して、前述の道具やソフトウェアを用いて計測を行なう。また、これ以外にも、非特許文献５に示されるように、画像を用いた線分の３次元データの計測方法も知られている。非特許文献５では、複数の画像における画像上での線分の対応をもとに、３次元空間における直線の方向と通過位置とを推定している。非特許文献５では、実画像上でのエッジの検出方法として、非特許文献６に示される２次元的なエッジ検出方法を用いている。
【非特許文献１】加藤, M. Billinghurst, 浅野, 橘, “マーカー追跡に基づく拡張現実感システムとそのキャリブレーション", 日本バーチャルリアリティ学会論文誌, vol.4, no.4, pp.607-617, 1999.
【非特許文献２】T. Drummond and R. Cipolla, “Real-time visual tracking of complex structures," IEEE Transactions on Pattern Analysis and Machine Intelligence, vol.24, no.7, pp.932-946, 2002.
【非特許文献３】A. I. Comport, E. Marchand, and F. Chaumette, “A real-time tracker for markerless augmented reality," Proc. The 2nd IEEE/ACM International Symposium on Mixed and Augmented Reality (ISMAR03), pp.36-45, 2003.
【非特許文献４】L. Vacchetti, V. Lepetit, and P. Fua, “Combining edge and texture information for real-time accurate 3D camera tracking," Proc. The 3rd IEEE/ACM International Symposium on Mixed and Augmented Reality (ISMAR04), pp.48-57, 2004.
【非特許文献５】C. J. Taylor and D. J. Kriegman, “Structure from motion from line segments in multiple images," IEEE Transactions on Pattern Analysis and Machine Intelligence, vol.17, no.11, pp.1021-1032, 1995.
【非特許文献６】J. Canny, “A computational approach to edge detection," IEEE Transactions on Pattern Analysis and Machine Intelligence, vol.8, no.6, pp.679-698, 1986.
【非特許文献７】R. Y. Tsai, “A versatile camera calibration technique for high-accuracy 3D machine vision metrology using off-the-shelf TV camera and lenses," IEEE Journal of Robotics and Automation, vol.3, no.4, pp.323-344, 1987.
【非特許文献８】H. Wuest, F. Vial, and D. Stricker, “Adaptive line tracking with multiple hypotheses for augmented reality," Proc. The Fourth Int'l Symp. on Mixed and Augmented Reality (ISMAR05), pp.62-69, 2005.
【発明の開示】
【発明が解決しようとする課題】
【００１０】
上述したエッジを用いた位置合わせでは、３次元モデルデータを投影し、その投影像をもとに１次元探索によってエッジを検出している。そのため、３次元モデルデータを計測する時点では、３次元モデルデータが存在しないため、このような３次元モデルデータの投影に基づいた１次元探索によるエッジ検出を行なうことはできない。すなわち、計測者がエッジであると推定したエッジや、２次元的なエッジ検出方法により検出されたエッジが位置合わせを行なう際に検出されるか否かが事前には分からない。これは、上述の濃度勾配の極値を検出するエッジ検出方法に限らず、３次元モデルデータを投影して１次元探索を行なう他の方法（例えば、エッジ周辺の画像情報を利用して対応するエッジを１次元探索するような方法等）においても共通の問題である。
【００１１】
そのため、手作業で計測する場合には、計測者が自分の目で位置合わせに利用されるエッジであるか否かの判定を行なう必要があるので、作業に熟練を要してしまう。更に、熟練した計測者であっても判定を間違う場合もあるので、３次元モデルデータの計測後、実際に位置合わせし、どの線分が不要かの判定を繰り返す必要がある。従って、計測に手間がかかる。
【００１２】
また、従来のエッジを用いた位置合わせでは、実際にエッジとして検出されない線分の情報が３次元モデルに含まれている場合であっても、それら線分に対するエッジを検出し対応付けしようとしていた。そのため、画像上のエッジの誤検出や、モデルの線分との間で誤対応が起こるので、位置合わせの精度や安定性が低下してしまっていた。
【００１３】
そこで、本発明は、上記問題点に鑑みてなされたものであり、位置姿勢算出処理時における３次元情報を用いた計算負荷を減らすとともに、位置合わせの精度や安定性の低下を抑制させるようにした技術を提供することを目的とする。
【課題を解決するための手段】
【００１４】
上記目的を達成するため、本発明の一態様は、撮像装置により撮像される物体に対する該撮像装置の位置及び姿勢の情報を算出する情報処理装置であって、前記物体を構成する複数の線分を含む３次元情報を保持する保持手段と、前記撮像装置により撮像された前記物体の画像を取得する取得手段と、前記取得手段により取得された画像から線分を表す画像特徴を検出する検出手段と、前記検出手段により検出された線分と、前記保持手段により保持された線分との対応に基づいて位置姿勢算出処理を実施し前記撮像装置の位置及び姿勢の情報を算出する算出手段と、前記検出手段による画像特徴の検出結果と、前記算出手段による位置及び姿勢の算出過程で得られる情報との少なくともいずれかに基づいて、前記保持手段が保持する線分各々についてそれ以降の前記位置姿勢算出処理に利用するか否かを判定する判定手段とを具備することを特徴とする。
【００１５】
また、本発明の一態様は、撮像装置により撮像される物体に対する該撮像装置の位置及び姿勢の情報を算出する情報処理装置の処理方法であって、前記撮像装置により撮像された前記物体の画像を取得する取得工程と、前記取得工程で取得された画像から線分を表す画像特徴を検出する検出工程と、前記検出工程で検出された線分と、保持手段により保持された前記物体を構成する３次元情報の複数の線分との対応に基づいて位置姿勢算出処理を実施し前記撮像装置の位置及び姿勢の情報を算出する算出工程と、前記検出工程での画像特徴の検出結果と、前記算出工程での位置及び姿勢の算出過程で得られる情報との少なくともいずれかに基づいて、前記保持手段が保持する線分各々についてそれ以降の前記位置姿勢算出処理に利用するか否かを判定する判定工程とを含むことを特徴とする。
【００１６】
また、本発明の一態様によるプログラムは、撮像装置により撮像される物体に対する該撮像装置の位置及び姿勢の情報を算出する情報処理装置に内蔵されたコンピュータを、前記物体を構成する複数の線分を含む３次元情報を保持する保持手段、前記撮像装置により撮像された前記物体の画像を取得する取得手段、前記取得手段により取得された画像から線分を表す画像特徴を検出する検出手段、前記検出手段により検出された線分と、前記保持手段により保持された線分との対応に基づいて位置姿勢算出処理を実施し前記撮像装置の位置及び姿勢の情報を算出する算出手段、前記検出手段による画像特徴の検出結果と、前記算出手段による位置及び姿勢の算出過程で得られる情報との少なくともいずれかに基づいて、前記保持手段が保持する線分各々についてそれ以降の前記位置姿勢算出処理に利用するか否かを判定する判定手段として機能させる。
【発明の効果】
【００１７】
本発明によれば、位置姿勢算出処理時における３次元情報を用いた計算負荷を減らすとともに、位置合わせの精度や安定性の低下を抑制できる。
【発明を実施するための最良の形態】
【００１８】
以下、本発明に係わる情報処理装置、その処理方法及びプログラムの一実施の形態について添付図面を参照して詳細に説明する。
【００１９】
（実施形態１）
図１は、本発明の一実施の形態に係わる情報処理装置が組み込まれたビデオシースルー型のＨＭＤの概要の一例を示す図である。なお、本実施形態においては、情報処理装置１をＡＲ（拡張現実感：Augmented Reality）の位置合わせに用いる場合を例に挙げて説明するが、情報処理装置１は、勿論、これ以外の用途に使用されてもよい。
【００２０】
観察者４０は、ビデオシースルー型のＨＭＤ３０を装着している。観察者４０は、ビデオシースルー型ＨＭＤ３０を介して観察対象物体１０を観察する。これにより、観察者４０には、観察対象物体１０上に仮想物体２０が重畳された映像が表示される。この場合、仮想物体２０として、例えば、観察対象物体１０に対する注釈が表示されている。
【００２１】
ビデオシースルー型ＨＭＤ３０には、それぞれ左眼、右眼に対応した撮像装置（１００、１０１）が内蔵されている。撮像装置１００は、観察対象物体１０を撮像する。撮像装置１００により撮像された画像は、情報処理装置１に入力される。情報処理装置１は、撮像装置（１００、１０１）により撮像された画像と、観察対象物体１０の３次元モデルデータとに基づいて撮像装置（１００、１０１）の位置及び姿勢を算出する。なお、撮像装置（１００、１０１）の焦点距離などカメラ固有のパラメータは、公知のカメラ校正方法（例えば、非特許文献７）により予め求めておけばよい。
【００２２】
ビデオシースルー型ＨＭＤ３０は、情報処理装置１が算出した撮像装置（１００、１０１）の位置及び姿勢に基づいて仮想物体２０の画像を描画し、それを撮像装置（１００、１０１）夫々によって撮像された現実空間の画像に重畳する。これにより、合成した画像がＨＭＤ３０の表示デバイス（不図示）上に表示される。
【００２３】
以上が、ビデオシースルー型のＨＭＤ３０の概要の一例についての説明である。なお、上記説明した、情報処理装置１には、コンピュータが組み込まれている。コンピュータには、ＣＰＵ等の主制御手段、ＲＯＭ(Read Only Memory)、ＲＡＭ(Random Access Memory)、ＨＤＤ（Hard Disk Drive）等の記憶手段が具備される。また、コンピュータにはその他、ボタンやディスプレイ又はタッチパネル等の入出力手段、ネットワークカード等の通信手段等も具備されていてもよい。なお、これら各構成部は、バス等により接続され、主制御手段が記憶手段に記憶されたプログラムを実行することで制御される。
【００２４】
また、図１では、情報処理装置１がビデオシースルー型のＨＭＤ３０に組み込まれているが、ビデオシースルー型のＨＭＤ３０の装置外に、別個の装置として情報処理装置１が実現されていてもよい。
【００２５】
また、本実施形態においては、説明を簡単にするために、撮像装置１０１により撮像された画像を利用して３次元モデルデータの検証を行なう場合を例に挙げて説明する。勿論、撮像装置１００及び撮像装置１０１の両方により撮像された画像を用いてこの処理を行なうようにしても構わない。
【００２６】
図２は、図１に示す情報処理装置１の構成の一例を示す図である。
【００２７】
情報処理装置１は、画像取得部１１０と、画像特徴検出部１２０と、モデルデータ記憶部１３０と、位置姿勢算出部１４０と、モデルデータ検証部１５０とを具備して構成される。
【００２８】
画像取得部１１０は、撮像装置１００によって撮像された画像を情報処理装置１に入力する。画像取得部１１０は、撮像装置１００の出力がＮＴＳＣなどのアナログ出力であれば、例えば、アナログビデオキャプチャボードによって実現される。また、撮像装置の出力がＩＥＥＥ１３９４などのデジタル出力であれば、例えば、ＩＥＥＥ１３９４インタフェースボードによって実現される。なお、画像取得部１１０による画像の取得は、記憶装置に予め記憶された静止画像や動画像のデジタルデータを読み出すことで行なわれてもよい。
【００２９】
画像特徴検出部１２０は、３次元空間中の線分を表す画像特徴を、画像取得部１１０により入力された画像から検出する。３次元空間中の線分を表す画像特徴とは、例えば、濃度勾配の極値を取る点、すなわち、エッジである。画像特徴検出部１２０は、後述するモデルデータ記憶部１３０に格納されている３次元情報で構成されるモデルデータや、撮像装置１００の位置及び姿勢の予測値に基づいてエッジ検出を行なう。
【００３０】
モデルデータ記憶部１３０は、位置合わせの基準物体となる観察対象物体１０の３次元モデルデータ（以下、３次元モデルと略す場合もある）を記憶する。ここで、図３を用いて、本実施形態に係わる３次元モデルの定義方法の一例について説明する。３次元モデルは、点の集合や各点を結んで構成される面の情報、面を構成する線分の情報によって定義される。図３（ａ）左図に示すように、本実施形態に係わる３次元モデルは、点Ｐ１〜点Ｐ８の８点から構成される直方体である。ここで、直方体の座標系のＸ軸は、点Ｐ１から点Ｐ４に向かう方向に取り、直方体の座標系のＹ軸は、点Ｐ５から点Ｐ１に向かう方向に取り、直方体の座標系のＺ軸は、点Ｐ１から点Ｐ２に向かう方向に取り、更に、原点をＰ５に取る。
【００３１】
図３（ａ）中央の図及び右図に示すように、直方体は面Ｆ１〜Ｆ６により構成されている。同様に、直方体は線分Ｌ１〜Ｌ１２により構成されている。更に、本実施形態に係わる３次元モデルは、面Ｆ１上に線分Ｌ１３、面Ｆ２上に線分Ｌ１４を有している。線分Ｌ１３は、点Ｐ９と点Ｐ１０とを結び、線分Ｌ１４は、点Ｐ１０と点Ｐ１１とを結ぶ。
【００３２】
図３（ｂ）に示すように、点Ｐ１〜点Ｐ１１は、３次元座標値によって表される。また、図３（ｃ）に示すように、面Ｆ１〜Ｆ６は、面を構成する点のＩＤ（識別子）と、各点を接続する順番とによって表される。また、図３（ｄ）に示すように、各線分Ｌ１〜Ｌ１４に対応して、位置姿勢算出に利用できる情報であるか否かを示す利用可否フラグＦｕ（ＴＲＵＥであれば利用可）が設けられる。
【００３３】
また、モデルデータ記憶部１３０には、モデルデータ検証用データが記憶される。モデルデータ検証用データは、フレームデータＤ１と蓄積データＤＳとを含んで構成される。モデルデータ検証用データに含まれるＤ１、ＤＳは、モデルデータを構成する線分各々に対応して記憶される。フレームデータＤ１は、１フレーム分の検証用データを記憶し、「検出されるべきエッジ数ＮＥ１」と「実際に検出されたエッジ数ＮＤ１」とから構成される。また、蓄積データＤＳは、「蓄積データ数ＮＳ」と、「検出されるべき総エッジ数ＮＥＳ」と、「実際に検出された総エッジ数ＮＤＳ」とから構成される。
【００３４】
位置姿勢算出部１４０は、観察対象物体１０を基準とした座標系（以下、基準座標系と呼ぶ）における撮像装置１００の位置及び姿勢を算出する。なお、撮像装置１００の位置及び姿勢は、画像特徴検出部１２０において検出された撮像画像内におけるエッジと、モデルデータ記憶部１３０に記憶された３次元モデルデータとに基づいて算出される。
【００３５】
モデルデータ検証部１５０は、３次元モデルデータを構成する各線分を位置姿勢算出に利用するか否かの検証を行なう。この検証は、画像特徴検出部１２０によるエッジ検出結果から得られる統計データに基づいて行なわれる。
【００３６】
また、情報処理装置１は、モデルデータ検証フラグＦＭＤを持つ。モデルデータ検証フラグＦＭＤは、モデルデータの検証を行なうか否かを示すフラグである。フラグＦＭＤ＝ＴＲＵＥの場合は、モデルデータを検証し、フラグＦＭＤ＝ＦＡＬＳＥの場合は検証を行なわない。初期状態では、フラグＦＭＤは、ＦＡＬＳＥにセットされる。
【００３７】
フラグＦＭＤの切り替えは、例えば、利用者がキーボードやマウスなどの入力手段（不図示）を使って行なう。フラグＦＭＤがＴＲＵＥにセットされると、モデルデータ記憶部１３０に格納されている蓄積データＤＳが０にリセットされる。また、蓄積データに対して、何フレーム分のデータを蓄積するかのフレーム数Ｎｍａｘを予め設定しておく。すなわち、利用者は、フラグＦＭＤをＴＲＵＥにした後、何フレーム分のデータを蓄積し、モデルデータの検証に利用するかを予め決めておく。蓄積データ数ＮＳがＮｍａｘと等しくなるとモデルデータの検証が行なわれる。モデルデータの検証が終わると、フラグＦＭＤはＦＡＬＳＥにセットされ、蓄積データＤＳが全て０にリセットされる。
【００３８】
次に、図４を用いて、図１に示す情報処理装置１における処理の流れの一例について説明する。
【００３９】
（ステップＳ１０１０）
ステップＳ１０１０では、情報処理装置１は、初期化処理を行なう。初期化処理では、基準座標系における撮像装置１００の位置及び姿勢を予測した予測値の設定、モデルデータ検証フラグ、利用可否フラグ、蓄積データのリセットを行なう。
【００４０】
ここで、初期化処理について詳述する。まず、撮像装置１００の位置及び姿勢の予測値の設定について説明する。本実施形態においては、概略の撮像装置の位置及び姿勢を、線分の情報を使って逐次更新していく方法で位置姿勢計測を行なう。そのため、位置姿勢計測を開始する前に予め概略の撮像装置の位置及び姿勢を与えておく必要がある。そこで、例えば、予め決まった位置及び姿勢を設定しておき、撮像装置１００をその位置及び姿勢になるように移動する。又は、非特許文献１に示すように、画像内で検出するだけで認識可能な人工的な指標を配置し、当該人工的な指標の各頂点の座標と各頂点の基準座標系における３次元位置との対応から撮像装置の位置及び姿勢を求めて概略の撮像装置の位置及び姿勢としてもよい。更に、磁気式や光学式、超音波式などの６自由度位置姿勢センサを撮像装置に設け、センサから得られる位置及び姿勢を概略の撮像装置の位置及び姿勢としてもよい。人工的な指標と前述の６自由度位置姿勢センサや３自由度の姿勢センサ、３自由度の位置センサを併用して計測される撮像装置の位置及び姿勢を概略の撮像装置の位置及び姿勢としてもよい。
【００４１】
また、ステップＳ１０１０では、モデルデータ検証フラグＦＭＤをＦＡＬＳＥにセットする。そして、モデルデータ記憶部１３０に記憶されている各線分について、位置姿勢算出に利用できる情報であるか否かを示す利用可否フラグＦｕをＴＲＵＥにセットする。更に、蓄積データＤＳを全て０にリセットする。この初期化が終わったらステップＳ１０２０の処理に進む。
【００４２】
（ステップＳ１０１５）
ステップＳ１０１５では、位置姿勢計測の終了判定を行なう。利用者により、マウスやキーボードなどの入力手段を介して終了の指示が入力された場合には、ステップＳ１０１５でＹＥＳとなり、この処理を終了する。それ以外の場合には、ステップＳ１０１５でＮＯとなり、ステップＳ１０２０の処理に進む。
【００４３】
（ステップＳ１０２０）
ステップＳ１０２０では、情報処理装置１は、画像取得部１１０において、撮像装置１００が撮像した画像を装置内（情報処理装置１内）に取り込む。
【００４４】
（ステップＳ１０３０）
ステップＳ１０３０では、情報処理装置１は、画像特徴検出部１２０において、ステップＳ１０２０で入力された画像上でエッジの検出を行なう。この処理の開始に際しては、各線分ごとのフレームデータＮＥ１、ＮＤ１を０にセットする。なお、エッジ検出処理の詳細については、後述する。
【００４５】
（ステップＳ１０４０）
ステップＳ１０４０では、情報処理装置１は、位置姿勢算出部１４０において、撮像装置１００の位置及び姿勢を算出する。上述した通り、この算出は、ステップＳ１０４０で検出された画像上のエッジと、モデルデータ記憶部１３０に記憶された３次元モデルデータとに基づいて行なわれる。なお、位置姿勢算出処理の詳細については、後述する。
【００４６】
（ステップＳ１０５０）
ステップＳ１０５０では、情報処理装置１は、モデルデータ検証部１５０において、検証モードであるか否かの判定を行なう。この判定は、モデルデータ検証フラグＦＭＤの値に基づいて行なわれる。ここで、モデルデータの検証を行なう場合（ＦＭＤ＝ＴＲＵＥ）には、ステップＳ１０６０の処理に進み、検証を行なわない場合には、ステップＳ１０１５の処理に戻る。
【００４７】
（ステップＳ１０６０）
ステップＳ１０６０では、情報処理装置１は、モデルデータ検証処理を開始する。この処理では、まず、モデルデータ記憶部１３０に格納されている３次元モデルデータを構成する各線分についての蓄積データＮＥＳ及びＮＤＳを更新する。具体的には、ステップＳ１０３０において更新された各線分についてのフレームデータＮＥ１、ＮＤ１をそれぞれＮＥＳ、ＮＤＳに加える。
【００４８】
（ステップＳ１０７０）
ステップＳ１０７０では、情報処理装置１は、蓄積データ数ＮＳを１増やす（蓄積データカウント＋＋）。
【００４９】
（ステップＳ１０８０）
ステップＳ１０８０では、情報処理装置１は、蓄積データ数ＮＳが予め設定された蓄積データ数Ｎｍａｘと等しいか否かの判定を行なう。等しければ、ステップＳ１０９０の処理に進み、等しくなければ、ステップＳ１０１５の処理に戻り、ステップＳ１０２０の処理で次の画像、すなわち、次フレームの画像を取得する。
【００５０】
（ステップＳ１０９０）
ステップＳ１０９０では、情報処理装置１は、モデルデータ検証部１５０において、３次元モデルデータを構成する線分各々について位置姿勢算出に利用するか否かの検証を行なう。なお、この処理についての詳細は、後述するが、各線分ごとの蓄積データＮＥＳ、ＮＤＳに基づいてモデルデータ記憶部１３０に格納されたモデルデータを検証する。この処理が終わると、ステップＳ１０１５の処理に戻る。
【００５１】
次に、図５を用いて、図４のステップＳ１０３０におけるエッジ検出処理の流れの一例について説明する。
【００５２】
（ステップＳ１１１０）
まず、情報処理装置１は、ステップＳ１１１０においてモデル投影を行なう。ここで、モデル投影とは、撮像装置１００の位置及び姿勢の予測値に基づいて、観察対象物体の３次元モデルデータを画像上に投影することである。より具体的には、３次元モデルデータを構成する各線分を画像上に投影したときの、画像上での直線の方程式を求める。直線の方程式は、線分の両端を画像上に投影し、画像上での両端の座標を結んだ直線の方程式となる。撮像装置１００の位置及び姿勢の予測値には、図４に示すステップＳ１０１０の初期化直後であれば、その初期化によって得られる撮像装置１００の位置及び姿勢を用いる。初期化直後でなければ、前フレームで算出された撮像装置１００の位置及び姿勢を用いる。モデル投影を行なうためには、撮像装置１００の位置及び姿勢とともに、焦点距離や主点位置などのカメラの固有パラメータが既知である必要がある。前述したように、本実施形態においては、カメラの固有パラメータは、予め計測されて分かっているものとする。また、線分が位置姿勢算出に利用できるか否かの利用可否フラグＦｕがＦＡＬＳＥの線分についてはモデル投影及びエッジ検出を行なわない。
【００５３】
図６は、画像上への３次元モデルの投影の一例を示す図である。図６（ａ）は撮像された画像そのものであり、図６（ｂ）は画像上に３次元モデルを投影した態様を示している。位置及び姿勢の予測値と実際の位置及び姿勢とが異なる場合には、図６（ｂ）に示すように、実際に撮像される物体と太線で示される３次元モデルの投影像との間に相対的なずれが生じる。図６（ｂ）において、破線で示される線分は、３次元モデルを構成する線分のうち、実際には隠れて見えない線分を表している。
【００５４】
（ステップＳ１１２０、ステップＳ１１３０）
次に、情報処理装置１は、ステップＳ１１２０において、ステップＳ１１１０で算出された直線の方程式を利用して投影された線分が画像上で等間隔に分割されるような分割点を設定する。この分割点は、３次元モデルデータを構成する線分全てに設定される。
【００５５】
図７は、３次元モデルの画像上での分割点の一例を示す図である。ここで、分割点の総数をＮとし、各分割点をＤＰｊ（ｊ＝１，２，．．．，Ｎ）とする。分割点の数Ｎは、画像上での分割点の間隔を変える事で制御できる。また、分割点の数が一定になるように、画像上での分割点間の間隔を逐次変更してもよい。
【００５６】
以下、ＤＰｊ（ｊ＝１，２，…，Ｎ）についてエッジ検出を順次行なう。まず、ステップＳ１１３０においてｊを１にセットする。
【００５７】
（ステップＳ１１４０）
次に、情報処理装置１は、ステップＳ１１４０において、分割点ＤＰｊが隠蔽されているか否かの判定を行なう。隠蔽とは、分割点ＤＰｊが３次元モデルの他の面に隠れている状態を指す。例えば、図７に破線で示される線分上の分割点ＤＰｊは、可視ではなく、隠蔽されていることになる。分割点ＤＰｊが可視か否かの判定は、例えば、非特許文献８に示されるように、グラフィクスハードウェアを利用して３次元モデルを描画した後、当該分割点を描画し、グラフィクスハードウェアにデプスバッファが更新されたか否かを確認することで行なえる。この結果、分割点ＤＰｊが隠蔽されている場合には、ステップＳ１１６０の処理に進み、そうでない場合には、該当する線分のフレームデータＮＥ１の値に１を加えた後、ステップＳ１１５０の処理に進む。
【００５８】
（ステップＳ１１５０）
ステップＳ１１５０では、情報処理装置１は、分割点ＤＰｊに対応するエッジを検出する。図８は、本実施形態に係わるエッジ検出方法の概要の一例を示す図である。図８に示すように、各分割点において、投影された線分の法線方向に平行で且つ分割点を通過する線分（以下、探索ライン）上においてエッジを１次元探索する。エッジは、探索ライン上において濃度勾配が極値をとる位置に存在する。濃度勾配の極値の絶対値に閾値を設け、極値の絶対値の小さいエッジは検出されないようにする。本実施形態では、探索ライン上でエッジが複数存在する場合には、最も分割点に近いエッジを対応点とし、その画像座標と分割点の３次元座標とを保持する。なお、本実施形態では最も分割点に近いエッジを対応点としているが、これに限られず、探索ライン上で濃度勾配の極値の絶対値が最も大きいエッジを対応点としてもよい。ステップＳ１１５０でエッジが検出された場合には、該当する線分のフレームデータＮＤ１の値に１を加える。
【００５９】
（ステップＳ１１６０、ステップＳ１１７０）
ステップＳ１１６０では、情報処理装置１は、ｊを１増分し、ステップＳ１１７０に進む。全ての分割点ＤＰｊについて処理が終了した場合には、ステップＳ１１７０でＹＥＳとなり、エッジ検出処理を終了する。終了していない場合には、ステップＳ１１７０でＮＯとなり、ステップＳ１１４０の処理に戻る。
【００６０】
次に、図４のステップＳ１０４０における位置姿勢算出処理の一例について詳述する。  位置姿勢算出処理では、エッジ検出終了後、非線形最適化計算により、物体と撮像装置との間の位置及び姿勢（以下、ｓで表す）の予測値を反復演算により補正する。これにより、撮像装置の位置及び姿勢を算出する。
【００６１】
ここで、上述した分割点ＤＰｊのうち、隠蔽されておらず、ステップＳ１０３０のエッジ検出処理において対応点が求まった分割点の総数がＮＤ１となる。図９は、エッジの情報を利用して撮像装置１００の位置及び姿勢を算出する処理の概要の一例を示す図である。この場合、画像の水平方向、垂直方向をそれぞれｘ軸、ｙ軸としている。
【００６２】
ある分割点の投影された画像座標を（ｕ０，ｖ０）、当該分割点が所属する線分Ｌの画像上での傾きをｘ軸に対する傾きθと表す。傾きθは、線分の両端の３次元座標をｓに基づいて画像上に投影し、画像上での両端の座標を結んだ直線の傾きとして算出される。線分Ｌの画像上での法線ベクトルは（ｓｉｎθ，−ｃｏｓθ）となる。また、分割点の対応点の画像座標を（ｕ’，ｖ’）とする。
【００６３】
ここで、点（ｕ，ｖ）を通り、傾きがθである直線上の点（ｘ，ｙ）は、
【００６４】
【数１】
2010134649.tif 000003
【００６５】
と表せる（ｕ、ｖ、θは定数）。
【００６６】
分割点が画像に投影される座標は、撮像装置１００の位置及び姿勢により変化する。また、撮像装置１００の位置及び姿勢の自由度は６自由度である。すなわち、ｓは６次元ベクトルであり、撮像装置１００の位置を表す３つの要素と、姿勢を表す３つの要素からなる。姿勢を表す３つの要素は、例えば、オイラー角による表現や、方向が回転軸を表し大きさが回転角を表す３次元ベクトルなどによって表現される。分割点の画像座標（ｕ，ｖ）は、（ｕ０，ｖ０）の近傍で１次のテイラー展開によって「数３」のように近似できる。
【００６７】
【数２】
2010134649.tif 000004
【００６８】
「数２」による近似式を数１に代入することにより、「数３」が得られる。
【００６９】
【数３】
2010134649.tif 000005
【００７０】
ここで、「数３」に示す直線が分割点の対応点の画像座標（ｕ’，ｖ’）を通過するように、撮像装置１００の位置及び姿勢ｓの補正値Δｓを算出する。
【００７１】
【数４】
2010134649.tif 000006
【００７２】
が得られる。「数４」はＮＤ１個の分割点について成り立つため、「数５」のようなΔｓに対する線形連立方程式が成り立つ。
【００７３】
【数５】
2010134649.tif 000007
【００７４】
ここで、「数５」を「数６」のように簡潔に表す。
【００７５】
【数６】
2010134649.tif 000008
【００７６】
「数６」をもとにＧａｕｓｓ−Ｎｅｗｔｏｎ法などによって、行列Ｊの一般化逆行列（ＪＴ・Ｊ）−１・ＪＴを用いてΔｓが求められる。しかし、エッジの検出には誤検出が多いので、次に述べるようなロバスト推定手法を用いる。一般に、誤検出されたエッジに対応する分割点では誤差ｄ−ｒが大きくなる。そのため、「数５」、「数６」の連立方程式に対する寄与度が大きくなり、その結果得られるΔｓの精度が低下してしまう。そこで、誤差ｄ−ｒが大きい分割点のデータには小さな重みを与え、誤差ｄ−ｒが小さい分割点のデータには大きな重みを与える。重みは、例えば、「数７」に示すようなＴｕｋｅｙの関数により与える。
【００７７】
【数７】
2010134649.tif 000009
【００７８】
ｃは定数である。なお、重みを与える関数は、Ｔｕｋｅｙの関数である必要はなく、例えば、「数８」で示されるようなＨｕｂｅｒの関数などであってもよい。すなわち、誤差ｄ−ｒが大きい分割点には小さな重みを与え、誤差ｄ−ｒが小さい分割点には大きな重みを与える関数であれば特に問わない
【００７９】
【数８】
2010134649.tif 000010
【００８０】
分割点ＤＰｉに対応する重みをｗｉとする。ここで「数９」のように重み行列Ｗを定義する
【００８１】
【数９】
2010134649.tif 000011
【００８２】
重み行列Ｗは、対角成分以外は全て０のＮｃ×Ｎｃ正方行列であり、対角成分には重みｗｉが入る。この重み行列Ｗを用いて、「数６」を「数１０」のように変形する。
【００８３】
【数１０】
2010134649.tif 000012
【００８４】
「数１１」のように「数１０」を解くことにより補正値Δｓを求める。
【００８５】
【数１１】
2010134649.tif 000013
【００８６】
これにより得られたΔｓを用いて、撮像装置１００の位置及び姿勢を更新する。次に、撮像装置１００の位置及び姿勢の反復演算が収束しているか否かを判定する。補正値Δｓが十分に小さい、誤差ｄ−ｒの総和が十分小さい、誤差ｄ−ｒの総和が変化しないといった場合には、撮像装置１００の位置及び姿勢の計算が収束したと判定する。収束していないと判定した場合には、更新された撮像装置１００の位置及び姿勢を用い、Ｎｃ個の点について再度線分の傾きθ、ｒ、ｄ及びｕ、ｖの偏微分を計算し直し、「数１１」より再度補正値Δｓを求め直す。なお、ここでは、非線形最適化手法としてＧａｕｓｓ−Ｎｅｗｔｏｎ法を用いた。しかし、非線形最適化手法はこれに限るものではなく、Ｎｅｗｔｏｎ−Ｒａｐｈｓｏｎ法、Ｌｅｖｅｎｂｅｒｇ−Ｍａｒｑｕａｒｄｔ法、最急降下法、共役勾配法など、その他の非線形最適化手法を用いてもよい。以上が、ステップＳ１０４０における撮像装置の位置姿勢算出方法についての説明である。
【００８７】
次に、図１０を用いて、図４のステップＳ１０９０におけるモデルデータ検証処理の流れの一例について説明する。
【００８８】
（ステップＳ１２１０）
ステップＳ１２１０では、情報処理装置１は、「検出されるべき総エッジ数ＮＥＳ」と、「実際に検出された総エッジ数ＮＤＳ」とに基づいてモデルデータの検証を行なう。具体的には、ＮＥＳに対するＮＤＳの割合ＲＥＤを算出する。
【００８９】
（ステップＳ１２２０、ステップＳ１２３０）
ステップＳ１２２０では、情報処理装置１は、ステップＳ１２１０で算出された割合ＲＥＤと、閾値ＴＥＤとを比較する。比較の結果、ＲＥＤが閾値ＴＥＤを越えていれば、ステップＳ１２３０でＮＯとなり、この処理は終了する。一方、ＲＥＤが閾値ＴＥＤ未満となれば、ステップＳ１２３０でＹＥＳとなり、ステップＳ１２４０の処理に進む。
【００９０】
（ステップＳ１２４０）
ステップＳ１２４０では、情報処理装置１は、線分の検出率が低いとして、該当する線分の利用可否フラグＦｕをＦＡＬＳＥに設定する。これにより、以後、位置姿勢算出処理にその線分を用いないようにする。例えば、図３に示すモデルデータにおいて、照明条件などによってＬ１４に対応するエッジが検出されない場合には、Ｌ１４のフラグＦｕがＦＡＬＳＥに設定され、位置姿勢算出処理に利用されないようになる。
【００９１】
（ステップＳ１２５０）
ステップＳ１２５０では、情報処理装置１は、モデルデータ検証フラグＦＭＤをＦＡＬＳＥにセットし、蓄積データＤＳを全て０にリセットし、この処理を終了する。
【００９２】
以上説明したように実施形態１によれば、各線分について、「検出されるべきエッジ数」に対する「実際に検出されたエッジ数」の割合を算出し、その割合に基づいて該当のエッジが属する線分を位置姿勢算出に使用するか否かの判定を行なう。これにより、実際は検出されない線分が位置姿勢算出に利用されることを防止できる。これにより、３次元モデルの計測を簡便化し、位置合わせの精度や安定性の低下を抑制できる。
【００９３】
なお、上述した説明では、エッジ（対応点）を検出できなかった分割点の割合に基づいて該当の線分を位置姿勢算出に使用するか否かの判定を行なっていたが、エッジを検出できなかった分割点の割合以外の情報に基づいて判定を行なうようにしてもよい。例えば、複数の画像から同一の線分を検出するようにし、その線分を検出できなかった割合に基づいてその線分を位置姿勢算出に使用するか否かの判定を行なうようにしてもよい。
【００９４】
（実施形態２）
上述した実施形態１では、「検出されるべきエッジ数」に対する「実際に検出されたエッジ数」の割合を算出し、その割合に基づいて各線分を位置姿勢算出に使用するか否かの判定を行なっていた。これに対して、実施形態２では、位置姿勢算出を行なう際の誤差に基づいて、各線分を位置姿勢算出に使用するか否かの判定を行なう場合について説明する。なお、実施形態２における構成は、実施形態１を説明した図１及び図２と同様となるため、その説明については省略し、ここでは相違点について重点的に説明する。
【００９５】
まず、実施形態２に係わるモデルデータ検証用データについて説明する。ここでは、実施形態１と同様に、モデルデータ記憶部１３０には、モデルデータ検証用データが記憶され、モデルデータ検証用データは、フレームデータＤ１と蓄積データＤＳとを含んで構成される。また、モデルデータ検証用データに含まれるＤ１、ＤＳは、モデルデータを構成する線分各々に対応して記憶される。
【００９６】
フレームデータＤ１は、１フレーム分の検証用データを記憶し、「検出されるべきエッジ数ＮＥ１」と「位置姿勢算出において実効的な情報として利用されたエッジ数ＮＣ１」とから構成される。また、蓄積データＤＳは、「蓄積データ数ＮＳ」と、「検出されるべき総エッジ数ＮＥＳ」と、「位置姿勢算出において実効的な情報として利用されたエッジ数ＮＣＳ」とから構成される。ＮＥＳは、Ｎｍａｘフレーム分のＮＥ１の総和であり、ＮＣＳはＮｍａｘフレーム分のＮＣ１の総和である。すなわち、実施形態２は、蓄積データとして、「実際に検出されたエッジ数」ではなく、「位置姿勢算出において実効的な情報として利用されたエッジ数」を保持するという点で実施形態１と異なる。
【００９７】
図１１を用いて、実施形態２に係わる情報処理装置１における処理の流れの一例について説明する。
【００９８】
（ステップＳ２０１０）
ステップＳ２０１０では、情報処理装置１は、初期化処理を行なう。初期化処理では、基準座標系における撮像装置１００の位置及び姿勢の予測値の設定、モデルデータ検証フラグ、利用可否フラグ、蓄積データのリセットを行なう。なお、撮像装置１００の位置及び姿勢の予測値の設定やモデルデータ検証フラグ、利用可否フラグのリセットについては、ステップＳ１０１０と同一の処理となるためその説明は省略する。実施形態２においては、「蓄積データ数ＮＳ」、「検出されるべき総エッジ数ＮＥＳ」、「位置姿勢算出において実効的な情報として利用されたエッジ数ＮＣＳ」を全て０にし、蓄積データＤＳをリセットする。
【００９９】
（ステップＳ２０１５）
ステップＳ２０１５では、位置姿勢計測の終了判定を行なう。利用者により、マウスやキーボードなどの入力手段を介して終了の指示が入力された場合には、ステップＳ２０１５でＹＥＳとなり、この処理を終了する。それ以外の場合には、ステップＳ２０１５でＮＯとなり、ステップＳ２０２０の処理に進む。
【０１００】
（ステップＳ２０２０）
ステップＳ２０２０では、情報処理装置１は、画像取得部１１０において、撮像装置１００が撮像した画像を装置内（情報処理装置１内）に取り込む。
【０１０１】
（ステップＳ２０３０）
ステップＳ２０３０では、情報処理装置１は、画像特徴検出部１２０において、ステップＳ２０２０で入力された画像上でエッジの検出を行なう。この処理の開始に際しては、各線分ごとのフレームデータＮＥ１、ＮＣ１を０にセットする。なお、エッジ検出処理は、実施形態１の図５と同様の処理となるため、その詳細な説明については省略する。実施形態１との相違点としては、実施形態１では、フレームデータであるＮＥ１、ＮＤ１を更新していたのに対し、ステップＳ２０３０ではＮＥ１のみを更新する点である。
【０１０２】
（ステップＳ２０４０）
ステップＳ２０４０では、情報処理装置１は、位置姿勢算出部１４０において、撮像装置１００の位置及び姿勢を算出する。なお、位置姿勢算出処理は、実施形態１と同様の処理となるため、その詳細な説明については省略する。実施形態１との相違点としては、ステップＳ２０３０では、ステップＳ１０３０で説明した位置姿勢算出処理が終了した後、その算出過程で得られる重み行列Ｗ（数９参照）に基づいてフレームデータＮＣ１を更新する。重み行列Ｗは、各分割点に対応する重みによって定義されており、この重みは、誤差ｄ−ｒの値が小さいほど大きい。そこで、重みが一定値未満のエッジは、誤検出又は誤対応であるとみなし、重みが一定値以上のエッジの情報が実効的に利用されたとして、該当する分割点が属する線分のフレームデータＮＣ１の値に１を加える。
【０１０３】
（ステップＳ２０５０）
ステップＳ２０５０では、情報処理装置１は、モデルデータ検証部１５０において、検証モードであるか否かの判定を行なう。この判定は、モデルデータ検証フラグＦＭＤの値に基づいて行なわれる。モデルデータの検証を行なう場合（ＦＭＤ＝ＴＲＵＥ）には、ステップＳ２０６０の処理に進み、検証を行なわない場合には、ステップＳ２０１５の処理に戻る。
【０１０４】
（ステップＳ２０６０）
ステップＳ２０６０では、情報処理装置１は、モデルデータ検証処理を開始する。この処理では、まず、モデルデータ記憶部１３０に格納されている３次元モデルデータを構成する各線分について、蓄積データＮＥＳ及びＮＣＳを更新する。すなわち、ステップＳ２０３０、ステップＳ２０４０の処理において更新された各線分についてのフレームデータＮＥ１、ＮＣ１をそれぞれＮＥＳ、ＮＣＳに加える。
【０１０５】
（ステップＳ２０７０）
ステップＳ２０７０では、情報処理装置１は、蓄積データ数ＮＳを１増やす（蓄積データカウント＋＋）。
【０１０６】
（ステップＳ２０８０）
ステップＳ２０８０では、情報処理装置１は、蓄積データ数ＮＳが予め設定された蓄積データ数Ｎｍａｘと等しいか否かの判定を行なう。等しければ、ステップＳ２０９０の処理に進み、等しくなければ、ステップＳ２０１５の処理に戻り、ステップＳ２０２０の処理で次の画像、すなわち、次フレームの画像を取得する。
【０１０７】
（ステップＳ２０９０）
ステップＳ２０９０では、情報処理装置１は、モデルデータ検証部１５０において、３次元モデルデータを構成する線分各々について位置姿勢算出に利用するか否かの検証を行なう。なお、この処理についての詳細は、後述するが、実施形態２においては、各線分ごとの蓄積データＮＥＳ、ＮＣＳに基づいてモデルデータ記憶部１３０に格納されたモデルデータを検証する。この処理が終わると、ステップＳ２０１５の処理に戻る。
【０１０８】
次に、図１２を用いて、図１１のステップＳ２０９０におけるモデルデータ検証処理の流れの一例について説明する。
【０１０９】
（ステップＳ２１１０）
ステップＳ２１１０では、情報処理装置１は、「検出されるべき総エッジ数ＮＥＳ」と、「位置姿勢算出において実効的な情報として利用されたエッジ数ＮＣＳ」とに基づいてモデルデータの検証を行なう。具体的には、ＮＥＳに対するＮＣＳの割合ＲＥＣを算出する。
【０１１０】
（ステップＳ２１２０、ステップＳ２１３０）
ステップＳ２１２０では、情報処理装置１は、ステップＳ２１１０で算出された割合ＲＥＣと、閾値ＴＥＣとを比較する。比較の結果、ＲＥＣが閾値ＴＥＣを越えていれば、ステップＳ２１３０でＮＯとなり、この処理は終了する。一方、ＲＥＣが閾値ＴＥＣ未満となれば、ステップＳ２１３０でＹＥＳとなり、ステップＳ２１４０の処理に進む。
【０１１１】
（ステップＳ２１４０）
ステップＳ２１４０では、情報処理装置１は、誤検出又は誤対応の可能性が高いとして、該当する線分の利用可否フラグＦｕをＦＡＬＳＥに設定する。これにより、以後、位置姿勢算出処理にその線分を用いないようにする。
【０１１２】
（ステップＳ２１５０）
ステップＳ２１５０では、情報処理装置１は、モデルデータ検証フラグＦＭＤをＦＡＬＳＥにセットし、蓄積データＤＳを全て０にリセットし、この処理を終了する。
【０１１３】
以上説明したように実施形態２によれば、各線分について、位置姿勢算出を行なう際の誤差の大きさにより決定される重みの値に基づいて、各線分を位置姿勢算出に使用するか否かの判定を行なう。これにより、誤検出や誤対応の多い線分が位置姿勢算出に利用されることを防止できる。
【０１１４】
（実施形態３）
上述した実施形態１及び２では、本発明の一実施の形態に係わる情報処理装置１をＡＲの位置合わせに適用した場合について説明した。これに対して、実施形態３においては、画像による線分データの計測に適用し、エッジを利用した位置合わせに適した線分データの計測を行なう場合を例に挙げて説明する。
【０１１５】
図１３は、実施形態３に係わる情報処理装置１の構成の一例を示す図である。
【０１１６】
情報処理装置３は、画像取得部３１０と、画像記憶部３２０と、モデルデータ算出部３３０と、モデルデータ記憶部３４０と、モデルデータ検証部３５０とを具備して構成される。情報処理装置３は、撮像装置３００により撮像された現実空間又は現実物体の複数の画像に基づいて線分の３次元モデルを算出する。
【０１１７】
画像取得部３１０は、撮像装置３００によって撮像された画像を情報処理装置３に入力する。画像取得部３１０は、実施形態１を説明した図２の画像取得部１１０と同等の機能を果たす。
【０１１８】
画像記憶部３２０は、画像取得部３１０から入力される画像を記憶する。なお、画像記憶部３２０により画像の記憶は、利用者からの入力手段を介した指示に基づき行なわれる。
【０１１９】
モデルデータ算出部３３０は、画像記憶部３２０に格納されている複数の画像を用いて線分の３次元モデルを算出する。実施形態３においては、非特許文献５に開示されている方法を用いて線分の３次元モデルを算出する。
【０１２０】
モデルデータ記憶部３４０は、モデルデータ算出部３３０により算出された線分の３次元モデルを記憶する。
【０１２１】
モデルデータ検証部３５０は、画像取得部３１０から入力される画像に基づいて位置姿勢算出を行なうことにより、モデルデータ記憶部３４０に格納されている線分の３次元モデルを検証する。
【０１２２】
次に、図１４を用いて、実施形態３に係わる情報処理装置３における処理の流れの一例について説明する。
【０１２３】
（ステップＳ３０１０）
ステップＳ３０１０では、情報処理装置３は、画像記憶部３２０において、線分の３次元モデルの算出に必要となる画像を保存する。非特許文献５では、「線分の３次元モデルを復元するのに３枚の画像における６つの対応が必要である」と述べられているため、ステップＳ３０１０では最低３枚以上の画像を保存する。画像の保存は、例えば、利用者が撮像装置３００を自由に移動させながら、キーボードやマウスなどの入力手段により画像保存命令を入力することにより行なう。画像保存命令が入力されると、命令を入力した時点において、画像取得部３１０から入力される画像が画像記憶部３２０に保存される。なお、ここでは画像の保存を利用者の入力によって行なっているが、画面の変化に基づいて、自動的に画像を保存するようにしてもよい。
【０１２４】
（ステップＳ３０２０）
ステップＳ３０２０では、情報処理装置３は、ステップＳ３０１０において保存された画像上からラインを検出する。ラインの検出は、利用者の指示に基づいて行なわれる。具体的には、利用者が画像上でラインの始点と終点を指定することにより手動で行なう。なお、ラインの検出法は、これに限られず、画像上のラインを検出できるのであればよい。例えば、非特許文献７に示す方法によりエッジ検出を実施した後、ハフ変換によって画像上のラインを検出してもよい。
【０１２５】
（ステップＳ３０３０）
ステップＳ３０３０では、情報処理装置３は、ステップＳ３０２０において検出されたラインの画像間での対応付けを行なう。この対応付けは、利用者の指示に基づいて行なわれる。すなわち、利用者が手動で行なう。なお、ラインの対応付け方法は、これに限られず、例えば、ライン周辺の画素の情報を利用して、類似したラインを自動的に対応付けるようにしてもよい。
【０１２６】
（ステップＳ３０４０）
ステップＳ３０４０では、情報処理装置３は、モデルデータ算出部３３０において、ステップＳ３０３０で対応付けられたラインの情報に基づいて線分（ライン）の３次元モデルの算出を行なう。そして、算出した線分の３次元モデルと、画像上での端点の位置とから端点の３次元位置を算出し、図３に示す様式で線分の３次元モデルとしてモデルデータ記憶部３４０に格納する。なお、線分の３次元モデルとは、３次元空間における直線の方向ベクトルと通過位置とにより表されるものとする。線分の３次元モデルの算出は、例えば、非特許文献５に開示されている方法により行なう。線分の３次元モデルの算出方法は、これに限られず、画像間のラインの対応から算出する方法であればよい。
【０１２７】
ここで、非特許文献５における線分の３次元モデルの算出方法の概略について簡単に説明する。
（１）．各画像を撮像したときの撮像装置の姿勢についてランダムに初期値を与える。
（２）．画像上でのラインの方程式、３次元空間中でのラインの方向ベクトル、撮像装置の姿勢が満たす制約条件をもとに、ラインの方向ベクトルを算出する。
（３）．画像上でのラインの方程式、ラインの通過位置、撮像装置の位置が満たす制約条件をもとに、ラインの通過位置及び撮像装置の位置を算出する。
（４）．（１）、（２）、（３）で得られた未知パラメータを最適化する。
（５）．（４）で得られた未知パラメータを精度評価し、精度が悪ければ（１）に戻る。精度がよければ終了する。
【０１２８】
（ステップＳ３０５０）
ステップＳ３０５０では、情報処理装置３は、モデルデータ検証部３５０において、ステップＳ３０４０で算出された線分の３次元モデルの検証を行なう。具体的には、画像取得部３１０から入力される画像とモデルデータ記憶部３４０に格納された３次元モデルとに基づいて、実施形態１又は実施形態２で説明した方法でモデルデータを構成する各線分を評価する。そして、検出されるべき回数に対して実際の検出回数が少ない線分や、実効的な情報として使われる回数の少ない線分をモデルデータから削除する。これにより、モデルデータ記憶部３４０に格納された３次元モデルを更新する。
【０１２９】
（ステップＳ３０６０）
ステップＳ３０６０では、情報処理装置３は、ステップＳ３０４０の３次元モデル算出結果、ステップＳ３０５０のモデル検証結果を、例えば、表示するなどして利用者に提示する。これにより、利用者は、その３次元モデル算出結果やモデル検証結果を受け入れるか否かを判定する。利用者が結果を受け入れる場合には、その旨が情報処理装置３に入力され、ステップＳ３０６０でＹＥＳとなり、この処理は終了する。受け入れない場合には、その旨が情報処理装置３に入力され、ステップＳ３０６０でＮＯとなり、ステップＳ３０１０の処理に戻る。
【０１３０】
以上説明したように実施形態３によれば、画像を用いた線分データの計測結果の評価を行なう場合にも、エッジを用いた位置合わせに適したモデルデータを計測できる。
【０１３１】
以上が本発明の代表的な実施形態の一例であるが、本発明は、上記及び図面に示す実施形態に限定することなく、その要旨を変更しない範囲内で適宜変形して実施できるものである。
【０１３２】
（変形実施形態１）
上述した説明では、実施形態１及び２を用いて、各線分を位置姿勢算出に使用するか否かの判定について２パターン説明した。これら２パターンの処理は、必ずしも別々に実施する必要はなく、２つの判定方法を併用して実施してもよい。すなわち、本発明は、少なくともいずれかの判定処理を用いて実施できる。
【０１３３】
例えば、フレームデータとして、各フレームにおける線分毎に、「検出されるべきエッジ数ＮＥ１」、「位置姿勢算出において実効的な情報として利用されたエッジ数ＮＣ１」、「実際に検出されたエッジ数ＮＤ１」の３つの情報を得る。そして、蓄積データとして、各線分ごとに、「検出されるべきエッジ数ＮＥＳ」、「位置姿勢算出において実効的な情報として利用されたエッジ数ＮＣＳ」、「実際に検出されたエッジ数ＮＤＳ」の３つを蓄積する。なお、ＮＥＳ、ＮＣＳ、ＮＤＳは、Ｎｍａｘフレーム分のフレームデータＮＥ１、ＮＣ１、ＮＥＳの和である。この蓄積データＮＥＳ、ＮＣＳ、ＮＤＳに基づいて、線分を位置姿勢算出に使用するか否かの判定を行なう。例えば、ＮＤＳに対するＮＥＳ、ＮＣＳの割合ＲＥＤ、ＲＣＤの両方を用いて判定を行なう。すなわち、ＲＥＤ、ＲＣＤに対して、それぞれ閾値ＴＥＤ、ＴＣＤを設け、ＲＥＤ、ＲＣＤがともに閾値ＴＥＤ、ＴＣＤ未満である場合には、該当の線分は検出率が低く、且つその線分は誤検出又は誤対応の可能性が高いと判定する。そして、位置姿勢算出に利用するフラグＦｕをＦＡＬＳＥに設定し、以降、その線分を位置姿勢算出に用いないようにする。また、ＲＥＤ、ＲＣＤがともに閾値ＴＥＤ、ＴＣＤ未満でなく、いずれか一方が閾値未満である場合に、その線分を位置姿勢算出に用いないと判定するようにしてもよい。更に、ＮＤＳに対する（ＮＥＳ、＋ＮＣＳ）の割合を利用してもよい。
【０１３４】
（変形実施形態２）
上述した説明では、利用者の入力をトリガーとしてモデルデータの検証を行なっていた。しかし、モデルデータの検証を利用者の入力をトリガーとして行なうのではなく、自動的に行なってもよい。
【０１３５】
例えば、位置姿勢計測開始後一定時間はモデルデータ検証フラグＦＭＤをＴＲＵＥにセットして、自動的にモデルデータの検証を行なってもよい。また、位置姿勢算出の精度が低下した場合（誤差の総和が大きくなった場合）に、自動的にモデルデータ検証フラグＦＭＤをＴＲＵＥにセットして、モデルデータの検証を自動的に行なうようにしてもよい。この場合には、一度、全ての線分に対応する利用可否フラグＦｕをＴＲＵＥにセットした後、モデルデータの検証を行なう。これにより、過去の検証が誤っていた場合や、照明条件などが変わった場合などにも対応できる。
【０１３６】
（変形実施形態３）
上述した説明では、線分を位置姿勢算出に利用するか否かは、情報処理装置側で閾値Ｔに基づいて自動的に判定を行なっていたが、利用者が判定するようにしてもよい。
【０１３７】
例えば、実施形態１及び２においては、線分の３次元モデルの描画に際して、その色や太さを変えるなど、位置姿勢算出に利用される線分と利用されない線分とで表示方法を変えて利用者に提示する。利用者は、提示された線分の３次元モデルを参照し、判定結果を承認するか否かを決定する。利用者の承認は、例えば、マウスやキーボードなどの入力手段を介して行なう。
【０１３８】
また、例えば、実施形態３においては、算出された線分の３次元モデルと、各画像を撮像したときの撮像装置の位置及び姿勢とに基づいて、各画像上に線分の３次元モデルを描画する。このとき、色や太さを変えるなど、位置姿勢算出に利用される線分と利用されない線分とで表示方法を変えて利用者に提示する。利用者は、その提示結果に基づいて判定結果を承認するか否かを決定する。
【０１３９】
（変形実施形態４）
上述した説明では、３次元モデルデータを構成する線分各々について、位置姿勢算出に利用するか否かの判定を行なっていたが、この判定は、必ずしも線分という単位に限られない。
【０１４０】
例えば、複数の線分の集合を一つの単位として位置姿勢算出に利用するか否かの判定を行なってもよい。これとは逆に、一つの線分を複数に分割して、分割された線分ごとに位置姿勢算出に利用するか否かの判定を行なってもよい。非特許文献５には、無限長の直線の３次元モデルを算出する方法が示される。端点の３次元座標は、画像上で指定された端点の位置と直線の３次元モデルとから算出される。しかし、直線を複数の線分に分割し、それぞれの線分ごとに位置姿勢算出に利用するか否かの判定を行えば、実際に存在する線分のみ利用されるようになるため、端点座標の算出処理は不要となる。
【０１４１】
（変形実施形態５）
上述した説明では、検証を行なうか否かを示すフラグ（モデルデータ検証フラグ）の設定により、線分の３次元モデルの検証を明示的に行なっていた。しかし、検証を明示的に行なうのではなく、位置姿勢算出を行ないつつモデル検証を常に行なうようにしてもよい。
【０１４２】
例えば、位置姿勢算出に利用する線分を用いて位置姿勢算出し、その算出結果をもとにモデル投影を実施し、投影された各線分の分割点の近傍でエッジ検出を行なう。このとき、投影する各線分はモデルデータ内の全ての線分である。エッジが検出されるべき回数と、実際に検出された回数を蓄積データとして保存しておき、Ｎｍａｘフレーム分蓄積されたら、線分を位置姿勢算出に利用するか否かの判定を行なう。そして、判定終了後、蓄積データをクリアして、再度、Ｎｍａｘフレーム分のデータを蓄積し、線分を位置姿勢算出に利用するか否かの判定を繰り返す。これにより、照明条件や撮像装置の位置及び姿勢が大幅に変わる場合であっても、それぞれに適した線分を利用することができる。なお、エッジ検出の計算負荷は大きいため、蓄積データを１フレームごとに蓄積する必要はなく、数フレームおきに蓄積してもよい。
【０１４３】
（変形実施形態６）
上述した説明では、画像上に投影された線分を等分割し、分割点を通り且つ投影線分に垂直な探索ライン上において、対応するエッジを検出する場合を例に挙げて説明した。しかし、エッジの検出方法は、これに限られず、画像上に投影された線分を基準にして対応するエッジを検出する方法であればよい。
【０１４４】
例えば、エッジ周辺の画像情報を利用して対応するエッジを検出するようにしてもよい。また、非特許文献８に開示されているように、上述の方法により探索ライン上で複数のエッジを検出した後、エッジ周辺の画像情報を利用して対応エッジを決定するようにしてもよい。また、投影された線分を分割することなく、線分の法線方向に１次元探索するようにしてもよい。以上が、変形実施形態についての説明である。
【０１４５】
なお、本発明は、例えば、システム、装置、方法、プログラム若しくは記録媒体等としての実施態様を採ることもできる。具体的には、複数の機器から構成されるシステムに適用してもよいし、また、一つの機器からなる装置に適用してもよい。
【０１４６】
また、本発明は、ソフトウェアのプログラムをシステム或いは装置に直接或いは遠隔から供給し、そのシステム或いは装置に内蔵されたコンピュータが該供給されたプログラムコードを読み出して実行することにより実施形態の機能が達成される場合をも含む。この場合、供給されるプログラムは実施形態で図に示したフローチャートに対応したコンピュータプログラムである。
【０１４７】
従って、本発明の機能処理をコンピュータで実現するために、該コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明は、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、ＯＳ（Operating System）に供給するスクリプトデータ等の形態であってもよい。
【０１４８】
コンピュータプログラムを供給するためのコンピュータ読み取り可能な記録媒体としては以下が挙げられる。例えば、フロッピー（登録商標）ディスク、ハードディスク、光ディスク、光磁気ディスク、ＭＯ、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷ、磁気テープ、不揮発性のメモリカード、ＲＯＭ、ＤＶＤ（ＤＶＤ−ＲＯＭ，ＤＶＤ−Ｒ）などである。
【０１４９】
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続し、該ホームページから本発明のコンピュータプログラムをハードディスク等の記録媒体にダウンロードすることが挙げられる。この場合、ダウンロードされるプログラムは、圧縮され自動インストール機能を含むファイルであってもよい。また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるＷＷＷサーバも、本発明に含まれるものである。
【０１５０】
また、本発明のプログラムを暗号化してＣＤ−ＲＯＭ等の記録媒体に格納してユーザに配布するという形態をとることもできる。この場合、所定の条件をクリアしたユーザに、インターネットを介してホームページから暗号を解く鍵情報をダウンロードさせ、その鍵情報を使用して暗号化されたプログラムを実行し、プログラムをコンピュータにインストールさせるようにもできる。
【０１５１】
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される他、そのプログラムの指示に基づき、コンピュータ上で稼動しているＯＳなどとの協働で実施形態の機能が実現されてもよい。この場合、ＯＳなどが、実際の処理の一部又は全部を行ない、その処理によって前述した実施形態の機能が実現される。
【０１５２】
更に、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれて前述の実施形態の機能の一部或いは全てが実現されてもよい。この場合、機能拡張ボードや機能拡張ユニットにプログラムが書き込まれた後、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵ（Central Processing Unit）などが実際の処理の一部又は全部を行なう。
【図面の簡単な説明】
【０１５３】
【図１】本発明の一実施の形態に係わる情報処理装置が組み込まれたビデオシースルー型のＨＭＤの概要の一例を示す図である。
【図２】図１に示す情報処理装置１の構成の一例を示す図である。
【図３】実施形態１に係わる３次元モデルの定義方法の一例について説明する。
【図４】図１に示す情報処理装置１における処理の流れの一例を示すフローチャートである。
【図５】図４のステップＳ１０３０におけるエッジ検出処理の流れの一例を示すフローチャートである。
【図６】画像上へ３次元モデルを投影した一例を示す図である。
【図７】３次元モデルの画像上での分割点の一例を示す図である。
【図８】実施形態１に係わるエッジ検出方法の概要の一例を示す図である。
【図９】エッジの情報を利用して撮像装置１００の位置及び姿勢を算出する処理の概要の一例を示す図である。
【図１０】図４のステップＳ１０９０におけるモデルデータ検証処理の流れの一例を示すフローチャートである。
【図１１】実施形態２に係わる情報処理装置１における処理の流れの一例を示すフローチャートである。
【図１２】図１１のステップＳ２０９０におけるモデルデータ検証処理の流れの一例を示すフローチャートである。
【図１３】実施形態３に係わる情報処理装置１の構成の一例を示す図である。
【図１４】実施形態３に係わる情報処理装置３における処理の流れの一例を示すフローチャートである。
【符号の説明】
【０１５４】
１、３    情報処理装置
１０    観察対象物体
２０    仮想物体
３０    ビデオシースルー型ＨＭＤ
１００、１０１    撮像装置
１１０、３１０    画像取得部
１２０    画像特徴検出部
１３０、３４０    モデルデータ記憶部
１４０    位置姿勢算出部
１５０、３５０    モデルデータ検証部
３２０    画像記憶部
３３０    モデルデータ算出部
【図１】
2010134649.tif 000014
【図２】
2010134649.tif 000015
【図３】
2010134649.tif 000016
【図４】
2010134649.tif 000017
【図５】
2010134649.tif 000018
【図６】
2010134649.tif 000019
【図７】
2010134649.tif 000020
【図８】
2010134649.tif 000021
【図９】
2010134649.tif 000022
【図１０】
2010134649.tif 000023
【図１１】
2010134649.tif 000024
【図１２】
2010134649.tif 000025
【図１３】
2010134649.tif 000026
【図１４】
2010134649.tif 000027