[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

JP4810403B2 - 情報処理装置、情報処理方法 - Google Patents

情報処理装置、情報処理方法 Download PDF

Info

Publication number
JP4810403B2
JP4810403B2 JP2006303378A JP2006303378A JP4810403B2 JP 4810403 B2 JP4810403 B2 JP 4810403B2 JP 2006303378 A JP2006303378 A JP 2006303378A JP 2006303378 A JP2006303378 A JP 2006303378A JP 4810403 B2 JP4810403 B2 JP 4810403B2
Authority
JP
Japan
Prior art keywords
index
information
size
image
orientation
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2006303378A
Other languages
English (en)
Other versions
JP2008122109A (ja
JP2008122109A5 (ja
Inventor
雅博 鈴木
晋二 内山
憲司 守田
大輔 小竹
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2006303378A priority Critical patent/JP4810403B2/ja
Publication of JP2008122109A publication Critical patent/JP2008122109A/ja
Publication of JP2008122109A5 publication Critical patent/JP2008122109A5/ja
Application granted granted Critical
Publication of JP4810403B2 publication Critical patent/JP4810403B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Length Measuring Devices By Optical Means (AREA)
  • Image Processing (AREA)
  • Image Analysis (AREA)

Description

本発明は、3次元空間中に配置した指標の配置情報を推定する為の技術に関するものである。
近年、複合現実感(Mixed Reality; MR)技術の研究が盛んである。MR技術は、現実空間とコンピュータによって作られる仮想空間を継ぎ目なく融合する技術である。MR技術の中でも、現実空間に仮想空間を重ね合わせて表示するAugmented Reality(AR、拡張現実感、増強現実感とも呼ばれる)技術が特に注目を集めている。
ARの画像表示装置は、ビデオシースルー方式か、光学シースルー方式の何れかによって実現される。
前者は、ビデオカメラ等の撮像装置により撮影された現実空間の画像にこの撮像装置の位置及び姿勢に応じて生成された仮想空間(コンピュータグラフィクス(CG)により描画された仮想物体や文字情報等)の画像を重畳描画した合成画像を表示する方式である。
後者は、観察者の頭部に装着された光学シースルー型ディスプレイに、観察者の視点の位置及び姿勢に応じて生成された仮想空間の画像を表示する方式である。
AR技術は、患者の体表面に体内の様子を重畳表示する手術支援や、空き地に仮想のビルを重畳表示する建築シミュレーション、組立作業時に作業手順や配線の様子を重畳表示する組み立て支援等様々な分野への応用が期待される。
AR技術において最も重要な課題の一つは、現実空間と仮想空間の間の位置合わせをいかに正確に行うかということであり、従来より多くの取り組みが行われてきた。ARにおける位置合わせの問題は、ビデオシースルー方式の場合はシーン中における(すなわち基準座標系における)撮像装置の位置及び姿勢を求める問題に帰結する。一方、光学シースルー方式の場合は、シーン中における観察者の視点あるいはディスプレイの位置及び姿勢を求める問題に帰結する。
前者の問題を解決する方法としては、次のような方法が一般的に用いられている。先ず、シーン中に複数の指標を配置或いは設定する。そして、撮像装置が撮影した画像内における指標の投影位置と指標の基準座標系における位置との対応関係から、基準座標系におけるこの撮像装置の位置及び姿勢を求める。
また、後者の問題を解決する方法としては、次のような方法が一般的に用いられている。計測対象物(すなわち観察者の頭部あるいはディスプレイ)に撮像装置を装着し、前者と同様な方法によってこの撮像装置の位置及び姿勢を求め、それに基づいて計測対象物の位置及び姿勢を求める。
図1は、従来の位置姿勢計測装置の機能構成を示すブロック図である。撮像装置が撮影した画像から検出される指標の2次元座標と、基準座標系における指標の3次元位置とを対応づけることでこの撮像装置の位置及び姿勢を計測する。
図1に示すように、従来の位置姿勢計測装置100は、指標検出部110、位置姿勢算出部120により構成されており、指標検出部110には、現実空間を撮像する撮像装置130が接続されている。
また、現実空間中には、撮像装置130の位置姿勢を求めるための指標として、基準座標系における位置が既知であるk個の指標Qk(k=1,2,・・・,K)が配置されている。図1の例では、4個の指標Q1、Q2、Q3、Q4が配置されており、そのうちの3個Q1、Q3、Q4が撮像装置130の視野内に含まれている状況を示している。
指標Qkは、例えば各々が異なる色を有する円形状のマーカ等、撮影画像内における指標の投影位置が検出可能であって、かつ何れの指標であるのかが同定可能であるような指標であれば何れの形態であってもよい。例えば、3次元空間中の自然特徴点を指標として用い、撮影画像内からテンプレートマッチングによって検出してもよい。
撮像装置130により撮像された現実空間の画像は、指標検出部110に入力される。指標検出部110は、撮像装置130から入力された画像上に撮影されている指標Qkの画像座標を検出する。例えば、指標Qkの各々が異なる色を有する円形状のマーカによって構成されている場合には、入力画像上から各々のマーカ色に対応する領域を検出し、検出した領域の重心位置を、この領域に対応する指標の検出座標とする。
そして指標検出部110は、検出した各々の指標Qknの画像座標uMknとその識別子knを位置姿勢算出部120へと出力する。ここで、n(=1,2,…,P)は、検出された指標の通し番号を表す変数であり、Pは検出された指標の総数を表している。例えば図1の場合には、P=3であり、識別子k1=1、k2=3、k3=4とこれらに対応する画像座標uMk1、uMk2、uMk3、が指標検出部110から出力される。
位置姿勢算出部120は、検出された各々の指標Qknの画像座標uMknと、既知な情報として予め保持しているこの指標Qknの基準座標系における位置との対応関係に基づいて、撮像装置130の位置及び姿勢を算出する。指標の3次元座標と画像座標の組から撮像装置の位置及び姿勢を算出する方法は、コンピュータビジョンや、写真測量の分野において古くから提案されている(非特許文献1、非特許文献2を参照)。位置姿勢算出部120は、例えば非特許文献1に記載の手法によって、撮像装置130の位置及び姿勢を算出する。
なお、ここでは3次元空間中に存在する複数の点指標を用いる場合について説明したが、例えば非特許文献3、4で開示されているように、大きさが既知の正方形形状の指標(以下、正方形指標)を用いた撮像装置の位置姿勢算出方法が提案されている。
また例えば非特許文献7で開示されているように、正方形指標と点指標とを組み合わせた撮像装置の位置姿勢算出方法も提案されている。点指標には、狭いところにも設定できるというメリットがある。また、正方形指標には、指標上のパターンを認識した結果により同定が簡単である、さらには、一つの指標の情報量が多いため一つの指標だけから撮像装置の位置及び姿勢を求めることができるというメリットがある。このように点指標、正方形指標にはそれぞれメリットがあるため、相補的に利用することができる。
以上の方法によって、撮像装置が撮影した画像に基づいて、この撮像装置の位置及び姿勢を取得することが従来からなされてきた。
一方、例えば特許文献1、2や非特許文献5で開示されているような方法もある。即ち、計測対象である撮像装置に磁気センサや超音波センサ等の6自由度位置姿勢センサを取り付け、前述のような画像処理による指標の検出との併用によって位置及び姿勢を計測することも行われている。センサの出力値は測定範囲によって精度は変わるが安定的に得ることができるため、センサと画像処理とを併用する方法は、画像処理だけによる方法に比べてロバスト性を向上させることができる。
指標を利用した位置合わせ手法では、計測対象である撮像装置の基準座標系における位置及び姿勢を求めるために、点指標の場合は基準座標系における位置、正方形指標の場合は基準座標系における位置及び姿勢及びサイズが既知である必要がある。正方形指標の場合には基準座標系を別途設けることなく、正方形指標そのものを座標系の基準とする場合も多い。しかし、複数の正方形指標を用いる場合には、互いの相対的な位置及び姿勢及びサイズの関係が既知である必要があるため、基準座標系が必要であることに変わりはない。
指標の位置及び姿勢及びサイズの計測は、巻尺や分度器を用いた手作業や、測量器によって行うことが可能である。しかし、精度や手間の問題から、画像を利用した指標の位置及び姿勢の計測が、従来より行われている。点指標の位置計測は、バンドル調整法と呼ばれる方法によって行うことができる。
バンドル調整法とは、点指標を撮像装置によって多方向から撮影し、点指標、点指標の画像上での投影点、撮像装置の視点の3点が同一直線上に存在するという拘束条件に基づくものである。係る拘束条件の下に、指標が実際に画像上で観察される投影位置と撮像装置の位置及び姿勢と指標の位置から計算される投影位置との誤差(投影誤差)が最小化されるように、繰返し演算によって画像を撮影した撮像装置の位置及び姿勢と、点指標の位置を求める。
また、非特許文献6では、3次元空間中に配置された多数の正方形マーカの位置及び姿勢を計測する方法が開示されている。非特許文献6では、3次元空間中に配置された多数の正方形マーカの画像を多数撮影し、投影誤差が最小になるように繰返し演算によって各画像を撮影した撮像装置の位置及び姿勢と、正方形マーカの位置及び姿勢を求めている。
特開平11-084307号公報 特開2000-041173号公報 R. M. Haralick, C. Lee, K. Ottenberg, and M. Nolle: "Review and analysis of solutions of the three point perspective pose estimation problem", Int’l. J. Computer Vision, vol.13, no.3, pp.331-356, 1994. M. A. Fischler and R. C. Bolles: "Random sample consensus: a paradigm for model fitting with applications to image analysis and automated cartography", Comm. ACM, vol.24, no.6, pp.381-395, 1981. 暦本純一: "2次元マトリックスコードを利用した拡張現実感の構成手法", インタラクティブシステムとソフトウェア IV, 近代科学社, 1996. 加藤, M. Billinghurst, 浅野, 橘: "マーカー追跡に基づく拡張現実感システムとそのキャリブレーション", 日本バーチャルリアリティ学会論文誌, vol.4, no.4, pp.607-616, 1999. A. State, G. Hirota, D. T. Chen, W. F. Garrett and M. A. Livingston: "Superior augmented reality registration by integrating landmark tracking and magnetic tracking", Proc. SIGGRAPH’96, pp.429-438, 1996. G. Baratoff, A. Neubeck and H. Regenbrecht: "Interactive multi-marker calibration for augmented reality applications", Proc. ISMAR2002, pp.107-116, 2002. H. Kato, M. Billinghurst, I. Poupyrev, K. Imamoto and K. Tachibana: "Virtual object manipulation on a table-top AR environment", Proc. ISAR2000, pp.111-119, 2000.
従来の、画像を利用する指標の位置及び姿勢の計測手法では、指標の位置及び姿勢の計測に先立って、あらかじめ指標のサイズを巻尺や分度器を用いた手作業や、測量器によって求めていた。しかし、様々なサイズの指標を多数利用する場合、手間の問題から、画像を利用した計測手法が求められていた。
しかし、画像を利用して指標のサイズを求めたとしても、測定誤差が生じる場合がある。すなわち、画像を利用して求めた指標のサイズと、ユーザがプリンタなどで指標を印刷する際に実際に指定した指標のサイズとが異なっている場合がある。このとき、サイズの誤差が原因となり、最終的に得られる指標の位置及び姿勢の計測結果に誤差が生じていた。よって、最終的に指標の位置及び姿勢を求める際に利用する指標のサイズを、実際にユーザが作成した指標のサイズと同じにすることが求められていた。
本発明は以上の問題に鑑みてなされたものであり、本願請求項1記載の発明は、指標の配置情報をより高精度に求めることを目的とする。
本発明の目的を達成するために、例えば、本発明の情報処理方法は以下の構成を備える。
即ち、指標の配置情報を推定する情報処理方法であって、
画像取得手段が、指標が含まれるシーンが撮影された画像を取得する画像取得工程と、
指標検出手段が、前記画像から指標を検出する指標検出工程と、
第1の指標配置情報推定手段が、前記指標検出工程で検出した指標のシーン中における配置情報を推定する第1の指標配置情報推定工程と、
指標情報修正手段が、前記第1の指標配置情報推定工程で推定した配置情報のうち少なくとも1つを既知の値に修正する指標情報修正工程と、
第2の指標配置情報推定手段が、前記指標情報修正工程で修正した配置情報を定数として、前記指標情報修正工程で値を修正していない配置情報を推定する第2の指標配置情報推定工程と
を備えることを特徴とする。
本願請求項1記載の発明によれば、指標の配置情報をより高精度に求めることができる。また、本願請求項2記載の発明によれば、指標の位置、もしくは姿勢もしくはサイズをより高精度に求めることができる。
以下添付図面を参照して、本発明をその好適な実施形態に従って詳細に説明する。
[第1の実施形態]
図2は、本実施形態に係るシステムの機能構成を示すブロック図である。同図に示す如く、本実施形態に係るシステムは、撮像部210と指標位置姿勢推定装置2とで構成されている。
先ず、撮像部210について説明する。撮像部210は現実空間の動画像/静止画像を撮像するカメラであり、指標が配置された現実空間であるシーンを撮影する。撮影した1以上の画像は、指標位置姿勢推定装置2が有する画像取り込み部220に入力される。
次に、指標位置姿勢推定装置2について説明する。同図に示す如く、指標位置姿勢推定装置2は、画像取り込み部220、指標検出同定部230、指標位置姿勢サイズ算出部235、指標配置条件設定部240、指標位置姿勢算出部250、により構成されている。
画像取り込み部220は、撮像部210から入力された画像を受け取り、後段の指標検出同定部230に送出する。指標検出同定部230はこの画像から指標を検出し、検出したそれぞれの指標の同定を行う。指標位置姿勢サイズ算出部235は、指標検出同定部230による指標検出同定結果に基づいて、指標の位置及び姿勢及びサイズを求める。指標配置条件設定部240は、指標の配置に関する拘束条件を設定する。本実施形態では、指標位置姿勢サイズ算出部235が求めた指標のサイズを、実際にユーザが作成した指標のサイズに修正する。指標位置姿勢算出部250は、指標検出同定部230による指標検出同定結果に基づいて、指標配置条件設定部240が設定した指標の配置に関する拘束条件を満たすように指標の位置及び姿勢を算出する。
図3は、指標位置姿勢推定装置2に適用可能なコンピュータ300のハードウェア構成を示すブロック図である。301はCPUで、ROM306やRAM307に格納されているプログラムやデータを用いて本コンピュータ300全体の制御を行うと共に、指標位置姿勢推定装置2が行う後述の処理を実行する。即ち、図2に示した画像取り込み部220、指標検出同定部230、指標位置姿勢サイズ算出部235、指標配置条件設定部240、指標位置姿勢算出部250として機能する。従って以下の説明において、これら各部を動作の主体として説明した場合には、何れも、CPU301がこれらの各部として機能しているものと解釈すべきである。
302はグラフィックアクセラレータで、仮想空間の画像を生成するなど、画像処理に係る部分的な処理を行う。処理後の画像は、HMD(ヘッドマウントディスプレイ)304が有する不図示の表示部に対して出力する。
310は画像取り込み器で、撮像部210として機能するカメラ311から入力された画像をハードディスク305やRAM307に対して送出するものである。なお、ここでの説明の趣旨ではないので、余り詳しくは触れないが、画像取り込み器310は、カメラ311から入力された画像信号に対してA/D変換や、適切な信号処理等を行う。これにより、カメラ311により撮像された画像を、適切なフォーマットを有する画像データとしてハードディスク305やRAM307に対して送出する。
ハードディスク305には、OS(オペレーティングシステム)や、指標位置姿勢推定装置2が行うものとして説明する後述の各処理をCPU301に実行させるためのプログラムやデータが保存されている。係るプログラムには、画像取り込み部220、指標検出同定部230、指標位置姿勢サイズ算出部235、指標配置条件設定部240、指標位置姿勢算出部250の各部の機能をCPU301に実行させるためのプログラムも含まれている。また、ハードディスク305には、既知の情報として後述するものについても保存されている。このように、ハードディスク305に保存されているプログラムやデータは、CPU301による制御に従って適宜RAM307にロードされる。CPU301はこのロードされたプログラムやデータを用いて処理を実行するので、本コンピュータ300は、指標位置姿勢推定装置2が行うものとして後述する各処理を実行することになる。
ROM306には、本コンピュータ300の設定データやブートプログラムなどが格納されている。
RAM307は、ハードディスク305からロードされたプログラムやデータ、画像取り込み器310から入力された画像データなどを一時的に記憶する為のエリアを有する。更にRAM307は、CPU301が各種の処理を実行する際に用いるワークエリアも有する。即ち、RAM307は、各種のエリアを適宜提供することができる。
308,309はそれぞれマウス、キーボードで、何れも本コンピュータ300の操作者が操作することで、各種の指示をCPU301に対して入力することができる。
380はI/F(インターフェース)で、プリンタ312を本コンピュータ300に接続するためのもので、プリンタ312への印刷データは、このI/F380を介して本コンピュータ300からプリンタ312に対して送出される。
399は、CPU301、グラフィックアクセラレータ302、画像取り込み器310、ハードディスク305、ROM306、RAM307、マウス308、キーボード309、I/F380の各部を繋ぐバスである。
プリンタ312は、周知の通り、本コンピュータ300から送出された印刷データに従って、紙等の記録媒体上に画像や文字などを形成するものである。なお、プリンタ312は、印刷機能を有するものであれば、如何なる装置で構成されていても良い。
次に、以上の構成を備えた指標位置姿勢推定装置2の動作の概要について説明する。
先ず、本実施形態で用いる指標について説明する。図4は、本実施形態で用いる指標を説明する図である。図4に示す指標は、配置情報が3次元空間中における位置と姿勢によって表現される平面指標である。本実施形態では、平面指標として正方形指標を用いるが、平面指標は正方形指標に限るものではなく、平面図形の指標であれば何れの形態であってもよい。正方形指標の3次元空間における位置は、正方形の中心、すなわち正方形の2本の対角線の交点であるとする。また、図4に示すように、指標の法線方向をz軸とし、x軸、y軸を指標の隣接する二つの辺に平行になるように正方形指標の座標系をとり、基準座標系から見た正方形指標の座標系の姿勢を正方形指標の姿勢とする。本実施形態における正方形指標は画像上で容易に検出可能なように黒枠で囲まれており、黒枠内部の正方形を正方形指標として用いる。
また、正方形指標のサイズは、図4に示すx軸、もしくはy軸方向の長さであるとする。すなわち、正方形の一辺の長さを指標のサイズとする。指標のサイズとしては、図4では1種類しか示していないが、実際には異なる複数サイズの指標を用いる。なおユーザは、本実施形態の方法を実施する前に、指標をあらかじめ1つ以上印刷し、シーン中の壁や床や天井、シーン中の物体等に貼り付けておくものとする。
<1. 指標の撮影>
撮像部210は、指標が配置されたシーンの画像を多数撮影し、撮像した画像はそれぞれ、画像取り込み部220に対して出力する。画像取り込み部220は、受けたそれぞれの画像を後段の指標検出同定部230に送出する。
<2. 指標の検出同定>
指標検出同定部230は、画像取り込み部220から受けた画像から指標を検出し、同定を行う。ここで、指標の検出とは、2次元画像上での指標の画像座標を求めることであり、正方形指標の場合、各頂点の画像座標を求めることである。指標の画像座標は、自動で求めてもよいし、ユーザが画像上をマウスでクリックするなどして手動で指定してもよい。正方形指標の各頂点の画像座標を自動で求める場合、例えば画像を二値化し、正方形指標の黒枠領域を検出する。そして、黒枠領域に内接する四角形を求め、求めた四角形の各頂点の画像座標を、正方形指標の各頂点の画像座標として求める。一方、手動で求める場合、ユーザにより指示された画像座標を、指標の画像座標として求める。
指標の同定とは、画像内で検出される指標を一意に特定することである。指標の同定は、自動で行ってもよいし、ユーザが手動で行ってもよい。正方形指標の同定を自動的に行う場合には、例えば指標毎に固有のパターンを持たせ、指標を撮影した画像から各指標が持つパターンを認識することで同定を行う。後者の場合には、ユーザ入力に対応して同定を行う。
なお、指標検出同定部230による指標の画像座標の検出処理、及び指標の同定処理については周知の技術であるので、これ以上の詳細な説明は省略する。
<3. 指標位置姿勢サイズ算出>
指標位置姿勢サイズ算出部235は、シーン中に存在する指標の位置及び姿勢及びサイズを求める。
より詳しくは、指標位置姿勢サイズ算出部235は、指標検出同定部230による指標の検出同定結果に基づいて、基準座標系における指標の位置及び姿勢及びサイズの算出を行う。以下では、係る処理の詳細について説明する。
先ず始めに透視投影変換について説明する。図6は、カメラ(撮像部210)座標系及び画面座標系を説明する図である。画面座標系の原点oiは視軸と画像面との交点にとり、画像面の水平方向をxi軸、垂直方向をyi軸にとる。また、カメラ座標系の原点ocと画像面との距離(焦点距離)をfとする。カメラ座標系のzc軸は撮像部210の視軸に沿った視線方向とは反対の方向、xc軸は画像の水平方向と平行に、yc軸は画像の垂直方向と平行にとる。
透視投影変換により、カメラ座標系上の点
Figure 0004810403
は下記の式(1)に示す如く、画面座標が
Figure 0004810403
である点に投影される。
Figure 0004810403
本実施形態では撮像部210におけるレンズ歪みは存在しないか、もしくは補正されているものと仮定し、撮像部210はピンホールカメラであると想定している。式(1)は図7に示すように、空間中の点701と、この点701の画像上の投影点702と、撮像部210(カメラ)位置(視点)703と、は同一直線(共線)上に存在することを示しており、共線条件式とも呼ばれる。図7は、共線条件式を説明する図である。
基準座標系における撮像部210の位置を
Figure 0004810403
、撮像部210の姿勢(実際には、カメラ座標系に対する基準座標系の姿勢)を
Figure 0004810403
であるとする。
Figure 0004810403
は3自由度の姿勢表現方法であり、姿勢を回転軸ベクトル及び回転角で表現している。回転角をraとすると、ra
Figure 0004810403
によって下記の式(2)のように表される。
Figure 0004810403
また、回転軸ベクトルを
Figure 0004810403
とすると、
Figure 0004810403
Figure 0004810403
の関係は式(3)のように表される。
Figure 0004810403
Figure 0004810403
(回転角ra、回転軸ベクトル
Figure 0004810403
)と3×3回転変換行列
Figure 0004810403
との関係は下記の式(4)のように表される。
Figure 0004810403
基準座標系上の点
Figure 0004810403
のカメラ座標
Figure 0004810403
Figure 0004810403
、及び
Figure 0004810403
によって下記の式(5)のように表される。
Figure 0004810403
式(1)、(5)から、透視投影変換によって、基準座標上の点
Figure 0004810403
は下記の式(6)のように画像上の点
Figure 0004810403
に投影される。
Figure 0004810403
理想的には、
Figure 0004810403
Figure 0004810403
Figure 0004810403
をもとに式(6)から計算される投影位置(計算位置)と実際に画像上で観察される位置(観察位置)は一致する。そのため、計算位置と観察位置の画像の水平方向のずれをF、垂直方向のずれをG、観察位置を
Figure 0004810403
とすると、下記の式(7)に示すようにF、Gは0となる。
Figure 0004810403
F、Gは撮像部210位置
Figure 0004810403
、撮像部210姿勢
Figure 0004810403
、観察対象点の基準座標上での位置
Figure 0004810403
に関する関数である。正方形指標は、基準座標系における位置
Figure 0004810403
及び基準座標系に対する姿勢
Figure 0004810403
Figure 0004810403
に対応した3×3回転変換行列を
Figure 0004810403
とする)及び基準座標系におけるスケール
Figure 0004810403
(スケールは、図4に示す指標の中心を基準とした大きさであるため、指標サイズは指標スケールの2倍となる)で表現される。正方形指標の頂点の正方形指標座標系における位置を
Figure 0004810403
とする。正方形指標の頂点の基準座標系における位置
Figure 0004810403
は下記の式(8)のように、
Figure 0004810403
Figure 0004810403
Figure 0004810403
に関する関数となる。
Figure 0004810403
そのため、下記の式(9)に示すように、F、Gは、撮像部210位置
Figure 0004810403
、撮像部210姿勢
Figure 0004810403
、正方形指標の位置
Figure 0004810403
及び正方形指標の姿勢
Figure 0004810403
及び正方形指標のスケール
Figure 0004810403
の関数となる。
Figure 0004810403
式(9)は撮像部210の位置及び姿勢、指標の位置及び姿勢及びスケールについて非線形な方程式となっている。そこで、1次の項までのテイラー展開を用いて撮像部210の位置及び姿勢、指標の位置及び姿勢及びスケールの近似値の近傍で線形化し、繰返し計算によって撮像部210の位置及び姿勢、指標の位置及び姿勢及びスケールを求める。
式(10)は、それぞれ式(9)を線形化したものである。Δtx、Δty、Δtzは撮像部210の位置、Δωx、Δωy、Δωzは撮像部210の姿勢である。また、Δtsx、Δtsy、Δtszは正方形指標の位置、Δωsx、Δωsy、Δωszは正方形指標の姿勢、ΔLは正方形指標のスケールの近似値に対する補正量を表す。
Figure 0004810403
ここで式(10)のF、Gは定数であり、撮像部210位置及び姿勢、正方形指標の位置及び姿勢及びスケールの近似値から求まる指標の投影位置(計算位置)と観察位置
Figure 0004810403
との差である。
式(10)は、ある画像上で観察される正方形指標の一個の頂点についての観測方程式である。実際には複数の画像上で正方形指標の各頂点が観察されるため、式(10)は複数得られる。そこで複数の式(10)を、撮像部210の位置及び姿勢、正方形指標の位置及び姿勢及びスケールの近似値に対する補正値についての連立方程式として解き、近似値を補正することを繰り返す。これにより、撮像部210の位置及び姿勢、正方形指標の位置及び姿勢及びスケールを求める。
図8は、指標位置姿勢サイズ算出部235によって正方形指標の位置及び姿勢及びサイズ(指標スケールの2倍)を求める処理のフローチャートである。尚、詳しくは後述するが、指標位置姿勢算出部250が正方形指標の位置及び姿勢を求める場合にも、図8のフローチャートに従った処理とほぼ同じ処理を行う。
なお、同図のフローチャートに従った処理を行う前段で、指標を含むシーンの撮影及び撮影画像からの指標抽出及び同定処理については完了しているものとする。
先ずステップS100では、指標位置姿勢サイズ算出部235は、各画像を撮影した撮像部210の位置及び姿勢、正方形指標の位置及び姿勢及びスケールの近似値の設定を行う。
そしてステップS110以降では、ステップS100で設定された近似値を補正するための補正値を求める。
ステップS110では、指標位置姿勢サイズ算出部235は、撮像部210の位置及び姿勢、正方形指標の位置及び姿勢及びスケールの近似値から、投影誤差を最小化するような各近似値の補正値を同時に求めるための連立方程式を確定させる処理を行う。
次にステップS120では、ステップS110で確定させた連立方程式を解く数値計算処理を行い、各近似値に対する補正値を求める。
次にステップS130では、ステップS120で求めた補正値を用いて近似値を補正し、新たな近似値とする。
次にステップS140では、ステップS130で補正された撮像部210の位置及び姿勢、正方形指標の位置及び姿勢及びスケールが最適値に収束しているか否かの判定を行う。係る判定の結果、収束していない場合には処理をステップS110に戻し、以降の処理を繰り返す。一方、収束している場合には、同図のフローチャートに従った指標位置姿勢サイズ算出部235による処理は終了する。
次に、図8に示した各ステップにおける処理について、より詳細に説明する。
先ず、ステップS100について説明する。
ステップS100において、各画像を撮影した撮像部210の位置及び姿勢、正方形指標の位置及び姿勢及びスケールの近似値を設定する。ここで、撮影された画像の枚数をN枚とし、それぞれの画像を撮影した撮像部210の位置を
Figure 0004810403
、姿勢を
Figure 0004810403
とする。
また、位置及び姿勢及びスケールを求める正方形指標の数をKs1個とし、正方形指標の位置を
Figure 0004810403
とし、姿勢を
Figure 0004810403
とし、スケールをLi(i=1,・・・, Ks1)とする。
撮像部210の位置及び姿勢の近似値は、撮像部210に磁気センサのような6自由度位置姿勢センサを装着し、このセンサの出力値から得てもよいし、基準座標系における位置が既知の点と、この点の画像上での投影位置の対応関係から求めてもよい。また、モーションコントロールカメラのように機械的に撮像部210の位置姿勢を係る近似値として得てもよいし、予め位置姿勢がキャリブレーション済みの撮像部210を用いて撮影し、そのキャリブレーション結果を係る近似値として用いてもよい。即ち、撮像部210の位置及び姿勢の近似値の取得、及び設定については特定の手法に限定するものではない。
一方、指標の位置及び姿勢及びスケールの近似値は、磁気センサのような6自由度位置姿勢センサを装着した撮像部210を用いて複数の位置から撮影し、それら複数枚の画像を元にステレオ計測を行い、概略的に求めた値を用いてもよい。またモーションコントロールカメラのように機械的に位置姿勢を測定可能な撮像部210や、予め位置姿勢がキャリブレーション済みの撮像部210を用いて複数の位置から撮影し、それら複数枚の画像を元にステレオ計測を行い、概略に求めた値を用いてもよい。また、本実施形態の方法等で一度推定された値を用いてもよい。
このように、何れの近似値についても、その取得形態については特に限定するものではない。
なお、ステップS100では、シーン中に貼られたサイズが既知の指標を1つ以上撮影し、基準座標系における指標スケールの基準になるようにしておく。こうすることで、ステップS110〜ステップS140で求める指標スケールと、基準座標系のスケールとの関係(即ち、ステップS110〜ステップS140で求める指標スケールと、シーン中に存在する指標のサイズとの関係)を対応付けることができる。
次にステップS110では、画像上で観察される指標の数だけ式(10)の観測方程式を確立する。式(10)は、一台の撮像部210の位置及び姿勢の補正値と、一個の正方形指標の位置及び姿勢及びスケールの補正値を未知パラメータとして含む観測方程式である。ここでは、下記の式(11)に示すように、N台のカメラの位置及び姿勢、Ks1個の正方形指標の位置及び姿勢及びスケールについての観測方程式を確立する。この場合、未知数となる補正値の数は、(6×N+7×Ks1)個である。
Figure 0004810403
画像i(i=1,・・・,N)から検出される正方形指標の数をdsi個とすると、N枚の画像から検出される正方形指標の数Dsは、下記の式(12)のようになる。
Figure 0004810403
N枚の画像から検出される正方形指標の数がDs個である場合、観測方程式(11)が(4×Ds)組、つまり(2×4×Ds)本の観測方程式が立つ。式(11)の観測方程式の左辺の定数項F、Gを右辺に移項し、連立方程式を立てると、この連立方程式は下記の式(13)に示す如く、行列形式で書くことができる。
Figure 0004810403
Figure 0004810403
はヤコビ行列と呼ばれ、F、Gの撮像部210位置及び姿勢、正方形指標の位置及び姿勢及びスケールについての偏微分係数を並べたものである。ヤコビ行列
Figure 0004810403
の行数は、観測方程式の数(2×4×Ds)個であり、列数は未知数の数(6×N+7×Ks1)個である。
Figure 0004810403
は補正値ベクトルである。補正値ベクトルの要素数は未知数の数(6×N+7×Ks1)個である。
Figure 0004810403
は誤差ベクトルであり、近似値による投影位置の計算位置と観察位置
Figure 0004810403
の差−F0、−G0を要素として持つ。
Figure 0004810403
の要素数は、観測方程式の数(2×4×Ds)個である。
なお、基準座標系における位置が既知である点指標、又は位置及び姿勢及びスケールが既知の正方形指標を同時に撮影することによって、基準座標系の原点、スケール、姿勢を明示的に指定することができる。これらの指標についての式(11)の方程式では、指標の位置及び姿勢及びスケールについての偏微分係数の値はすべて0となる。基準座標系の原点、スケール、姿勢を明示的に指定するためには、点指標であれば位置が既知の同一直線状にない点指標を3個用いればよく、正方形指標であれば位置及び姿勢及びスケールが既知の正方形指標を1個用いればよい。
次に、ステップS120では、撮像部210の位置及び姿勢、正方形指標の位置及び姿勢及びスケールの近似値に対する補正値を求める。補正値は上記式(13)に基づいて求める。ヤコビ行列
Figure 0004810403
が正方行列である場合には、式(13)の両辺に
Figure 0004810403
の逆行列をかけることで補正値ベクトル
Figure 0004810403
を求める。
Figure 0004810403
が正方行列でない場合には、下記の式(14)に示すように最小二乗法によって補正値ベクトル
Figure 0004810403
を求める。
Figure 0004810403
ここで、ヤコビ行列
Figure 0004810403
の各要素の求め方について説明する。
まず
Figure 0004810403
とおく。上記式(6)、(7)よりF、Gは下記の式(15)のように書ける。F、Gはxc、yc、zcの関数となる。
Figure 0004810403
F、Gのxc、yc、zcによる偏微分係数を各要素に持つヤコビ行列
Figure 0004810403
は、下記の式(16)のように書ける。
Figure 0004810403
ここで、xc、yc、zcが変数s1、s2、・・・、smの関数であるならば、F、Gもまたs1、s2、・・・、smの関数である。F、Gのs1、s2、・・・、smによる偏微分係数を各要素に持つヤコビ行列
Figure 0004810403
は、下記の式(17)のように分解することができる。
Figure 0004810403
Figure 0004810403
をそれぞれカメラ位置、カメラ姿勢、指標位置、指標姿勢、指標スケールに置き換えて
Figure 0004810403
を求めることにより、F、Gのカメラ位置、カメラ姿勢、指標位置、指標姿勢、指標スケールについての偏微分係数を求めることができる。
F、Gのカメラ位置tx、ty、tzによる偏微分係数を各要素に持つヤコビ行列
Figure 0004810403
は、式(5)より、下記の式(18)のように書ける。
Figure 0004810403
ただし、姿勢
Figure 0004810403
と3×3回転変換行列
Figure 0004810403
の関係は式(4)で表される。
F、Gのカメラ姿勢ωx、ωy、ωzによる偏微分係数を各要素に持つヤコビ行列
Figure 0004810403
は、下記の式(19)のように分解して書ける。
Figure 0004810403
ここで、
Figure 0004810403
は下記の式(20)に示すようなヤコビ行列である。
Figure 0004810403
また、
Figure 0004810403
は下記の式(21)に示すようなヤコビ行列である。
Figure 0004810403
また、
Figure 0004810403
として、
Figure 0004810403
は下記の式(22)に示すようなヤコビ行列である。
Figure 0004810403
さらに、
Figure 0004810403
は下記の式(23)に示すようなヤコビ行列である。
Figure 0004810403
F、Gの正方形指標の位置tsx、tsy、tszによる偏微分係数を各要素に持つヤコビ行列
Figure 0004810403
は、式(5)、式(8)より、下記の式(24)のように書ける。
Figure 0004810403
F、Gの正方形指標の姿勢
Figure 0004810403
による偏微分係数を各要素に持つヤコビ行列
Figure 0004810403
は、下記の式(25)のように分解することができる。
Figure 0004810403
Figure 0004810403
は、式(21)〜(23)と同様にして求めることができる。
F、Gの正方形指標のスケールLによる偏微分係数を各要素に持つヤコビ行列
Figure 0004810403
は、下記の式(26)のように分解することができる。
Figure 0004810403
そしてこのようにして求めた補正値を用いて、ステップS130では、近似値の更新を行う。
次にステップS140では、上述の収束判定を行う。収束判定は、補正値の絶対値が指定した閾値を下回る、投影位置の計算位置と観察位置の差が指定した閾値を下回るなどの条件を判定することにより行う。この例の場合、「下回った」場合には、「収束した」と判定する。
係る収束判定処理の結果、収束していると判定された場合、指標の位置及び姿勢及びスケール推定を終了し、指標のスケールの値を2倍にした指標サイズを出力する。収束していない場合は、処理をステップS110に戻し、補正された撮像部210の位置及び姿勢、正方形指標の位置及び姿勢及びスケールの近似値をを用いて再度、再度連立方程式を確立し、補正値を求める処理を繰り返し行う。
<4. 指標配置条件設定>
指標配置条件設定部240は、指標の配置に関する拘束条件を設定する。本実施形態では、指標の配置に関する拘束条件として、最終的に指標の位置及び姿勢を求める際の指標のサイズを、実際にユーザが作成した指標のサイズと同じにするという拘束条件を与える。
上記ステップS100〜ステップS140で求めた正方形指標のサイズ(スケールの2倍)は、あくまで計算上求めたサイズであり、実際にユーザが作成した指標のサイズとは一致せずに誤差が生じている場合がある。そこで、ステップS100〜ステップS140で求めた少なくとも1つ以上の正方形指標のサイズの各々を、実際にユーザが作成した指標のサイズに修正する。
実際にユーザが作成した指標のサイズとしては、以下の2つのケースが考えられる。
・ (ケース1) 本実施形態の方法を実行する前に、プリンタ312を利用して指標を印刷する。この印刷することになっている指標のサイズは予め定められた幾つかのサイズのうち、ユーザが指示したものであるとする。
例えば、予め幾つかの指標サイズを決めておき、決めた幾つかのサイズを登録したテーブルを作成する。そして作成したテーブルのデータをハードディスク305に登録しておく。図5(a)は、複数種の指標サイズが登録されているテーブルの構成例を示す図である。
同図に示す如く、テーブルには、10mm毎に指標サイズが登録されている。即ち、ここで用いられる指標のサイズとは、既定の離散値(10mm刻み)のうち何れかである。そしてユーザは、係るテーブルに登録されている何れか1つのサイズを選択する。選択方法については、例えば、本コンピュータ300に不図示の表示装置を接続し、この表示装置の表示画面上にこのテーブルに登録されている全てのサイズを表示し、何れか1つをマウス308やキーボード309を用いて指示するようにする。即ち、選択方法は特に限定するものではない。そして選択したサイズの指標をプリンタ312にて印刷する。
・ (ケース2) ケース1と同様、本実施形態の方法を実行する前に、プリンタ312を利用して指標を印刷する。ただ、ケース1と異なる点は、予め各指標のサイズは定められておらず、ユーザが任意の大きさを指定して印刷したサイズを、ハードディスク305等に新たなテーブル値として保存する。
図5(b)は、ユーザが指定した任意のサイズが登録されているテーブルの構成例を示す図である。同図に示す如く、ユーザが実際に印刷した23mm、12mm、45mm、73mmといった(任意の)大きさの指標サイズがテーブルに登録されている。
指標配置条件設定部240は、ステップS100〜ステップS140で求めた1つ以上の正方形指標のサイズ(スケールの2倍)の各々を元に、図5(a)、若しくは図5(b)に示すテーブルに登録されているサイズのうち最も近いサイズに修正する。
例えば、ステップS100〜ステップS140で求めた正方形指標の一辺のサイズが32mmである場合、図5(a)の例では、最も近いサイズである30mmに修正する。また、図5(b)の例では、最も近いサイズである23mmに修正する。
<5. 指標の位置姿勢算出
指標位置姿勢算出部250は、シーン中に存在する1つ以上の指標各々の位置及び姿勢を求める。このとき、本実施形態では、指標配置条件設定部240でサイズを修正した後の正方形指標のスケールを利用する。即ち、上記説明において図5(a)のテーブルを用いた場合には、ステップS100〜S140で求めた正方形指標のサイズ32mmではなく、図5(a)のテーブル中の最も近いサイズである30mmを「修正した指標スケール」として利用する。また、図5(b)のテーブルを用いた場合には、図5(b)のテーブル中の最も近いサイズである23mmを「修正した指標スケール」として利用する。
指標位置姿勢算出部250は、シーン中に存在する指標の位置及び姿勢を求めるのであるが、基本的には指標位置姿勢サイズ算出部235で指標の位置及び姿勢及びサイズを求める方法(式(1)〜(26)を用いた方法)とほぼ同じ方法によって行う。唯一異なる点は、指標配置条件設定部240で修正した指標のサイズを元に換算した指標スケールを定数として、撮像部210の位置姿勢と指標の位置及び姿勢を求めるようにすることである。
以上の説明により、本実施形態によれば、指標が配置されたシーンの画像を多数撮影し、撮影された画像から指標を検出・同定し、先ず、指標の位置及び姿勢及びサイズを求める。そして、求めた指標のサイズを、ユーザがプリンタで指標を印刷する際に実際に指定した指標のサイズに修正し、修正したサイズを用いて指標の位置及び姿勢を求め直す。
このようにすることで、画像を利用して指標のサイズを求めることができる。また、実際にユーザが作成する指標のサイズを、最終的に指標の位置及び姿勢を求める際の指標のサイズにすることにより、指標の位置及び姿勢を、より高精度に求めることが可能となる。
[第2の実施形態]
第1の実施形態では、指標が配置されたシーンの画像を多数撮影し、撮影された画像から指標を検出・同定し、まず指標の位置及び姿勢及びサイズを求めた。そして、求めた指標のサイズを、ユーザがプリンタで指標を印刷する際に実際に指定した指標のサイズに修正し、修正したサイズを用いて指標の位置及び姿勢を求め直した。
本実施形態では、指標が配置されたシーンの画像を多数撮影し、撮影された画像から指標を検出・同定し、まず指標の位置及び姿勢及びサイズを求めるところまでは第1の実施形態と同じであり、以降の処理が異なる。本実施形態では次に、求めた指標の位置を、ユーザが実際に指標を配置した位置に修正し、修正した位置を用いて指標の姿勢及びサイズを求めなおす。ここで、「ユーザが実際に指標を配置した位置」とは、例えば指標の配置対象としてグリッドが付されている現実の机を想定し、「机のグリッドに合わせてユーザが指標を配置する場合の位置」である。
図9は、本実施形態に係るシステムの機能構成を示すブロック図である。なお、同図において図2と同じ部分については同じ番号を付けており、その説明は省略する。
同図に示す如く、本実施形態に係るシステムは、撮像部210と、指標姿勢サイズ推定装置900とで構成されている。指標姿勢サイズ推定装置900は、画像取り込み部220、指標検出同定部230、指標位置姿勢サイズ算出部235、指標配置条件設定部241、指標姿勢サイズ算出部251により構成されている。
なお、図3に示したコンピュータ300は、指標姿勢サイズ推定装置900についても同様に適用することができる。その場合には、指標配置条件設定部241、指標姿勢サイズ算出部251の機能をCPU301に実行させるためのプログラムやデータをハードディスク305に保存しておく。そしてこのプログラムやデータをRAM307にロードし、CPU301がこのロードされたプログラムやデータを用いて処理を実行すれば、CPU301は、指標姿勢サイズ推定装置900が行うものとして後述する各処理を実行することになる。
以下では、図9における指標配置条件設定部241、指標姿勢サイズ算出部251についての説明を行う。
<4. 指標配置条件設定>
指標配置条件設定部241は、指標の配置に関する拘束条件を設定する。本実施形態では、指標の配置に関する拘束条件として、最終的に指標の姿勢及びサイズを求める際の指標の位置を、ユーザが実際に指標を配置した位置と同じにするという拘束条件を与える。
指標位置姿勢サイズ算出部235が求めた正方形指標の位置(換言すれば、上記ステップS100〜S140で求めた正方形指標の位置)は、あくまで計算上求めた位置であり、ユーザが実際に指標を配置した位置とは一致せずに誤差が生じている場合がある。そこで、ステップS100〜S140で求めた1つ以上の正方形指標の位置の各々を、ユーザが実際に指標を配置した位置に修正する。
指標配置条件設定部241は、ステップS100〜S140で求めた1つ以上の正方形指標の位置の各々を、図10に示す現実の机上のグリッドのうちの最も近い位置に修正する。例えば、図10に示す現実の机の上には50mm刻みに離散的なグリッドが書かれているとする。
図10は、現実物体としての机の上に設けられたグリッドについて説明する図である。そして、ステップS100〜S140で求めた正方形指標の位置が、机座標の原点を基準として(X,Y)=(141mm、203mm)である場合、最も近いグリッド位置である(X,Y)=(150mm、200mm)に修正する。なお、机座標は、机の法線方向をZ軸とし、X軸、Y軸を机の二つの辺に平行になるようにとっている。そして各グリッド位置に関する情報は予め作成され、ハードディスク305に登録されているものとする。
<5. 指標の姿勢サイズ算出>
指標姿勢サイズ算出部251は、シーン中に存在する1つ以上の指標各々の姿勢及びサイズを求める。このとき、本実施形態においては、指標配置条件設定部241で修正した後の正方形指標の位置を利用する。すなわち上記説明においては、ステップS100〜S140で求めた正方形指標の位置(X,Y)=(141mm、203mm)ではなく、図10の机上のグリッドで最も近い位置である(X,Y)=(150mm、200mm)を、修正した位置として利用する。
指標姿勢サイズ算出部251は、シーン中に存在する指標の姿勢及びサイズを求めるのであるが、基本的には指標位置姿勢サイズ算出部235で指標の位置及び姿勢及びサイズを求める方法(式(1)〜(26)を用いた方法)とほぼ同じ方法によって行う。唯一異なる点は、指標配置条件設定部241で修正した指標の位置を定数として、撮像部210の位置姿勢と指標の姿勢及びサイズを求めるようにすることである。
以上の説明により、本実施形態によれば、指標が配置されたシーンの画像を多数撮影し、撮影された画像から指標を検出・同定し、まず指標の位置及び姿勢及びサイズを求める。そして、求めた指標の位置を、ユーザが実際に指標を配置した位置に修正し、修正した位置を用いて指標の姿勢及びサイズを求め直す。
このようにすることで、画像を利用して指標のサイズを求めることができる。また、ユーザが実際に指標を配置した位置を、最終的に指標の姿勢及びサイズを求める際の指標の位置にすることにより、指標の姿勢及びサイズを、より高精度に求めることが可能となる。
[第3の実施形態]
第1の実施形態では、指標が配置されたシーンの画像を多数撮影し、撮影された画像から指標を検出・同定し、まず指標の位置及び姿勢及びサイズを求めた。そして、求めた指標のサイズを、ユーザがプリンタで指標を印刷する際に実際に指定した指標のサイズに修正し、修正したサイズを用いて指標の位置及び姿勢を求め直した。
本実施形態では、指標が配置されたシーンの画像を多数撮影し、撮影された画像から指標を検出・同定し、まず指標の位置及び姿勢及びサイズを求めるところまでは第1の実施形態と同じであり、以降の処理が異なる。本実施形態では次に、求めた指標の姿勢を、ユーザが実際に指標を配置した姿勢に修正し、修正した姿勢を用いて指標の位置及びサイズを求めなおす。ここで、「ユーザが実際に指標を配置した姿勢」とは、例えば指標の配置対象として現実の床や壁や天井を想定し、「床や壁や天井に対してユーザが指標を配置する場合の姿勢」である。
図11は、本実施形態に係るシステムの機能構成を示すブロック図である。なお、同図において図2と同じ部分については同じ番号を付けており、その説明は省略する。
同図に示す如く、本実施形態に係るシステムは、撮像部210と、指標位置サイズ推定装置1100とで構成されている。指標位置サイズ推定装置1100は、画像取り込み部220、指標検出同定部230、指標位置姿勢サイズ算出部235、指標配置条件設定部242、指標位置サイズ算出部252により構成されている。
なお、図3に示したコンピュータ300は、指標姿勢サイズ推定装置1100についても同様に適用することができる。その場合には、指標配置条件設定部242、指標位置サイズ算出部252の機能をCPU301に実行させるためのプログラムやデータをハードディスク305に保存しておく。そしてこのプログラムやデータをRAM307にロードし、CPU301がこのロードされたプログラムやデータを用いて処理を実行すれば、CPU301は、指標位置サイズ推定装置1100が行うものとして後述する各処理を実行することになる。
以下では、図11における指標配置条件設定部242、指標位置サイズ算出部252についての説明を行う。
<4. 指標配置条件設定>
指標配置条件設定部242は、指標の配置に関する拘束条件を設定する。本実施形態では、指標の配置に関する拘束条件として、最終的に指標の位置及びサイズを求める際の指標の姿勢を、ユーザが実際に指標を配置した姿勢と同じにするという拘束条件を与える。
指標位置姿勢サイズ算出部235が求めた正方形指標の姿勢(換言すれば、上記ステップS100〜S140で求めた正方形指標の姿勢)は、あくまで計算上求めた姿勢であり、ユーザが実際に指標を配置した姿勢とは一致せずに誤差が生じている場合がある。そこで、ステップS100〜S140で求めた1つ以上の正方形指標の姿勢の各々を、ユーザが実際に指標を配置した姿勢に修正する。
指標配置条件設定部242は、ステップS100〜S140で求めた1つ以上の正方形指標の姿勢の各々を、図12に示す現実の床や壁のうちの最も近い姿勢に修正する。例えば、図12に示す床や壁は、基準座標系の各軸に対して水平もしくは垂直といった離散的な姿勢となっている。そしてステップS100〜S140で求めた正方形指標の姿勢が、基準座標系に対して水平或いは垂直からずれている場合は、基準座標系に対して最も近い水平姿勢或いは垂直姿勢になるように、即ち最も近い床や壁の姿勢と同じになるように修正する。指標のz軸を中心とした回転誤差が生じている場合は、図4に示す指標のx軸、y軸が、基準座標系に対して最も近い水平もしくは垂直方向になるように修正すればよい。図12は、指標を配置する壁や床を示す図である。なお、指標の姿勢を修正するための基準としては、床や壁に加え、天井を用いても良い。
<5. 指標の位置サイズ算出>
指標位置サイズ算出部252は、シーン中に存在する1つ以上の指標各々の位置及びサイズを求める。このとき、本実施形態においては、指標配置条件設定部242で修正した後の正方形指標の姿勢を利用する。すなわち上記説明においては、ステップS100〜S140で求めた正方形指標の姿勢ではなく、図12の床や壁で最も近い姿勢を、修正した姿勢として利用する。
指標位置サイズ算出部252は、シーン中に存在する指標の位置及びサイズを求めるのであるが、基本的には指標位置姿勢サイズ算出部235で指標の位置及び姿勢及びサイズを求める方法(式(1)〜(26)を用いた方法)とほぼ同じ方法によって行う。唯一異なる点は、指標配置条件設定部242で修正した指標の姿勢を定数として、撮像部210の位置姿勢と、指標の位置及びサイズを求めることである。
以上の説明により、本実施形態によれば、指標が配置されたシーンの画像を多数撮影し、撮影された画像から指標を検出・同定し、まず指標の位置及び姿勢及びサイズを求める。そして、求めた指標の姿勢を、ユーザが実際に指標を配置した姿勢に修正し、修正した姿勢を用いて指標の位置及びサイズを求め直す。
このようにすることで、画像を利用して指標のサイズを求めることができる。また、ユーザが実際に指標を配置した姿勢を、最終的に指標の位置及びサイズを求める際の指標の姿勢にすることにより、指標の位置及びサイズを、より高精度に求めることが可能となる。
<変形例1>
第1乃至3の実施形態では、指標の位置、姿勢、サイズのうち1つのパラメータを固定し、残りの2つのパラメータを求めなおしていた。しかし、指標の位置、姿勢、サイズのうち2つのパラメータを固定し、残りの1つのパラメータを求めなおしてもよいことは言うまでもない。
<変形例2>
第1乃至3の実施形態では、指標の位置、姿勢、サイズのうち1つのパラメータを固定する際、ユーザによって物理的に設定したパラメータに最も近いパラメータに修正していた。
しかし、指標を撮影するシーンの光源環境が劣悪な場合など、特殊なケースにおいては、最も近いパラメータが正しい値とは限らない場合がある。そのようなケースに対処するために、最終的に求めた撮像部210の位置姿勢に仮想空間を観察する視点を設定し、設定した視点から見える仮想空間の画像を生成し、現実空間画像に合成する。そして、適切に合成されていないとユーザが判断した場合は、その旨をマウス308やキーボード309を用いて入力する。この入力がなされた場合には、固定するパラメータの値を、最も近い3個(2以上の整数で表される個数)のパラメータの中から選択可能にし、CGが適切に合成されるまで選択したパラメータを元に計算し直してもよい。
<変形例4>
第2の実施形態では、指標の位置をグリッドのうちの最も近い位置に修正していた。しかしその代わりに、推定した指標の位置を元に、複数の指標間の距離が一定であるという拘束条件を導入し、指標の配置情報を、より高精度に求めてもよい。すなわち、複数の指標間の距離が一定であるという拘束条件を用いることで複数の指標位置を定数とし、指標の姿勢及びサイズを求め直してもよい。
<変形例5>
第1乃至3の実施形態では、指標の配置情報の補正方法として、観測方程式をテイラー展開し、その1次の項までを利用して繰り返し補正していく方法を用いた。これは、ある繰り返しの一過程において、局所的に観測方程式を線形近似し、誤差0となると仮定した場合の未知パラメータの補正量を推定する方法であり、一般にニュートン法と呼ばれている方法と等価な方法である。ニュートン法は非線形方程式を数値演算により求解する代表的な方法であるが、上記実施形態に利用する繰り返し演算方法はこの方法に限ったものではない。
例えば、ニュートン法と同様に周知の技術として知られているLevenberg-Marquardt法のように、一過程において推定される未知パラメータの補正量のばらつきに基づいて、補正量を動的に変更してもよい。また、テイラー展開した結果をより高次の項まで考慮して、繰り返し演算を行うような方法であっても良い。
即ち、上記各実施形態の本質は、配置情報量の異なる複数種類の指標が混在して存在している場合であっても、それぞれの種類の指標を有効に利用して最適な解を求めることにある。従って、数値解法としての繰り返し演算の具体的な方法によって本質が失われるものではない。
[その他の実施形態]
また、本発明の目的は、以下のようにすることによって達成されることはいうまでもない。即ち、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録した記録媒体(または記憶媒体)を、システムあるいは装置に供給する。そして、そのシステムあるいは装置のコンピュータ(またはCPUやMPU)が記録媒体に格納されたプログラムコードを読み出し実行する。この場合、記録媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記録した記録媒体は本発明を構成することになる。
また、コンピュータが読み出したプログラムコードを実行することにより、そのプログラムコードの指示に基づき、コンピュータ上で稼働しているオペレーティングシステム(OS)などが実際の処理の一部または全部を行う。その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
さらに、記録媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書込まれたとする。その後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
本発明を上記記録媒体に適用する場合、その記録媒体には、先に説明したフローチャートに対応するプログラムコードが格納されることになる。
従来の位置姿勢計測装置の機能構成を示すブロック図である。 本発明の第1の実施形態に係るシステムの機能構成を示すブロック図である。 指標位置姿勢推定装置2に適用可能なコンピュータ300のハードウェア構成を示すブロック図である。 本発明の第1の実施形態で用いる指標を説明する図である。 (a)は、複数種の指標サイズが登録されているテーブルの構成例を示す図、(b)は、ユーザが指定した任意のサイズが登録されているテーブルの構成例を示す図である。 カメラ(撮像部210)座標系及び画面座標系を説明する図である。 共線条件式を説明する図である。 指標位置姿勢サイズ算出部235によって正方形指標の位置及び姿勢及びサイズ(指標スケールの2倍)を求める処理のフローチャートである。 本発明の第2の実施形態に係るシステムの機能構成を示すブロック図である。 現実物体としての机の上に設けられたグリッドについて説明する図である。 本発明の第3の実施形態に係るシステムの機能構成を示すブロック図である。 指標を配置する壁や床を示す図である。

Claims (12)

  1. 指標の配置情報を推定する情報処理方法であって、
    画像取得手段が、指標が含まれるシーンが撮影された画像を取得する画像取得工程と、
    指標検出手段が、前記画像から指標を検出する指標検出工程と、
    第1の指標配置情報推定手段が、前記指標検出工程で検出した指標のシーン中における配置情報を推定する第1の指標配置情報推定工程と、
    指標情報修正手段が、前記第1の指標配置情報推定工程で推定した配置情報のうち少なくとも1つを既知の値に修正する指標情報修正工程と、
    第2の指標配置情報推定手段が、前記指標情報修正工程で修正した配置情報を定数として、前記指標情報修正工程で値を修正していない配置情報を推定する第2の指標配置情報推定工程と
    を備えることを特徴とする情報処理方法。
  2. 前記指標の配置情報当該指標のシーン中における位置、若しくは姿勢、若しくはサイズであることを特徴とする請求項1に記載の情報処理方法。
  3. 前記指標は、シーン中に複数あることを特徴とする請求項1又は2に記載の情報処理方法。
  4. 前記既知の値とは、あらかじめ定められた離散値の中から選択された値であることを特徴とする請求項1乃至3の何れか1項に記載の情報処理方法。
  5. 前記指標情報修正工程では、前記指標のサイズを、前記指標を印刷するための既定サイズに修正することを特徴とする請求項1乃至3の何れか1項に記載の情報処理方法。
  6. 前記指標情報修正工程では、前記指標のサイズを、前記指標を印刷した際に記憶したサイズに修正することを特徴とする請求項1乃至3の何れか1項に記載の情報処理方法。
  7. 前記指標情報修正工程では、前記指標の位置を、シーン中に配置されたグリッド上の位置に修正することを特徴とする請求項1乃至3の何れか1項に記載の情報処理方法。
  8. 前記指標情報修正工程では、前記指標の姿勢を、シーン中の床や壁や天井に対して垂直あるいは水平な姿勢に修正することを特徴とする請求項1乃至3の何れか1項に記載の情報処理方法。
  9. 指標の配置情報を推定する情報処理装置であって、
    指標が含まれるシーンが撮影された画像を取得する画像取得手段と、
    前記画像から指標を検出する指標検出手段と、
    前記指標検出手段が検出した指標のシーン中における配置情報を推定する第1の指標配置情報推定手段と、
    前記第1の指標配置情報推定手段が推定した配置情報のうち少なくとも1つを既知の値に修正する指標情報修正手段と、
    前記指標情報修正手段が修正した配置情報を定数として、前記指標情報修正手段が値を修正していない配置情報を推定する第2の指標配置情報推定手段と
    を備えることを特徴とする情報処理装置。
  10. 前記指標の配置情報当該指標のシーン中における位置、若しくは姿勢、若しくはサイズであることを特徴とする請求項9に記載の情報処理装置。
  11. コンピュータを、請求項9又は10に記載の情報処理装置が有する各手段として機能させるためのコンピュータプログラム。
  12. 請求項11に記載のコンピュータプログラムを格納した、コンピュータ読み取り可能な記憶媒体。
JP2006303378A 2006-11-08 2006-11-08 情報処理装置、情報処理方法 Active JP4810403B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2006303378A JP4810403B2 (ja) 2006-11-08 2006-11-08 情報処理装置、情報処理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2006303378A JP4810403B2 (ja) 2006-11-08 2006-11-08 情報処理装置、情報処理方法

Publications (3)

Publication Number Publication Date
JP2008122109A JP2008122109A (ja) 2008-05-29
JP2008122109A5 JP2008122109A5 (ja) 2009-12-24
JP4810403B2 true JP4810403B2 (ja) 2011-11-09

Family

ID=39507028

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006303378A Active JP4810403B2 (ja) 2006-11-08 2006-11-08 情報処理装置、情報処理方法

Country Status (1)

Country Link
JP (1) JP4810403B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5988364B2 (ja) * 2012-08-06 2016-09-07 Kddi株式会社 画像処理装置及び方法
JP2015225014A (ja) * 2014-05-29 2015-12-14 日本電信電話株式会社 位置推定装置、位置推定方法、およびプログラム

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1184307A (ja) * 1997-09-01 1999-03-26 M R Syst Kenkyusho:Kk 頭部装着型の光学装置
JP3976900B2 (ja) * 1998-07-23 2007-09-19 キヤノン株式会社 視点位置姿勢の決定方法及びカメラ装置
JP4533193B2 (ja) * 2004-05-14 2010-09-01 キヤノン株式会社 情報処理装置および情報処理方法
JP4522140B2 (ja) * 2004-05-14 2010-08-11 キヤノン株式会社 指標配置情報推定方法および情報処理装置
JP4599184B2 (ja) * 2005-02-02 2010-12-15 キヤノン株式会社 指標配置計測方法、指標配置計測装置

Also Published As

Publication number Publication date
JP2008122109A (ja) 2008-05-29

Similar Documents

Publication Publication Date Title
US7529387B2 (en) Placement information estimating method and information processing device
JP4599184B2 (ja) 指標配置計測方法、指標配置計測装置
US7657065B2 (en) Marker placement information estimating method and information processing device
JP4926817B2 (ja) 指標配置情報計測装置および方法
JP4976756B2 (ja) 情報処理方法および装置
US7974462B2 (en) Image capture environment calibration method and information processing apparatus
JP5036260B2 (ja) 位置姿勢算出方法及び装置
JP5196825B2 (ja) 画像処理装置、画像処理方法
US20190026919A1 (en) Information processing apparatus, information processing method, and program
JP2004233334A (ja) 位置姿勢計測方法
JP2005326282A (ja) 位置姿勢計測方法および装置
JP2005326275A (ja) 情報処理方法および装置
JP4242529B2 (ja) 関連情報呈示装置及び関連情報呈示方法
JP2006267879A (ja) 画像処理方法、画像処理装置、マーカ
JP2008046749A (ja) 画像処理方法および装置
JP5726024B2 (ja) 情報処理方法および装置
JP4926598B2 (ja) 情報処理方法、情報処理装置
JP4810403B2 (ja) 情報処理装置、情報処理方法
JP6109213B2 (ja) 情報処理装置および方法、プログラム
JP2007048068A (ja) 情報処理方法および装置
JP2008140047A (ja) 情報処理方法、情報処理装置
JP2005351886A (ja) 位置姿勢計測方法および情報処理装置
JP2016065830A (ja) 画像処理装置、画像処理方法

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20091106

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20091106

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110808

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20110812

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110822

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140826

Year of fee payment: 3

R151 Written notification of patent or utility model registration

Ref document number: 4810403

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151