JP2006064585A - 画像処理方法、画像処理装置 - Google Patents
画像処理方法、画像処理装置 Download PDFInfo
- Publication number
- JP2006064585A JP2006064585A JP2004249022A JP2004249022A JP2006064585A JP 2006064585 A JP2006064585 A JP 2006064585A JP 2004249022 A JP2004249022 A JP 2004249022A JP 2004249022 A JP2004249022 A JP 2004249022A JP 2006064585 A JP2006064585 A JP 2006064585A
- Authority
- JP
- Japan
- Prior art keywords
- image
- reading
- feature
- code
- image processing
- 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.)
- Withdrawn
Links
Images
Landscapes
- Image Analysis (AREA)
Abstract
【課題】 画像特徴の一部が隠蔽されていても、この画像特徴を識別するための技術を提供すること。
【解決手段】 現実物体の表面上に当該現実物体を特定するための識別子を表す1セットのコードを複数配する。
【選択図】 図2
【解決手段】 現実物体の表面上に当該現実物体を特定するための識別子を表す1セットのコードを複数配する。
【選択図】 図2
Description
本発明は、現実空間に仮想空間の映像を重畳させて観察者に提示するための技術に関するものである。
近年、現実空間と仮想空間との繋ぎ目のない結合を目的とした複合現実感(以下、「MR」(Mixed Reality)と称す)に関する研究が盛んになっている。
MR技術とは、現実空間画像に仮想空間画像を重ね合わせて、MRを体験するユーザの頭部に装着されたHMD(Head Mounted Display)に提示する技術のことである。その応用としては、患者の体内の様子を透視しているように医師に提示する医療補助の用途や、工場において製品の組み立て手順を実物に重ねて表示する作業補助の用途などがある。
このMRの実現において、もっとも重要な課題となっているのが、現実空間画像と仮想空間画像とを正確に重ね合わせる問題である。この問題は、具体的には、現実空間を観察する視点の位置および姿勢を正確に求める問題に帰着される。そして、カメラなどでリアルタイムに撮影した現実空間画像とCG(Computer Graphics)などの仮想空間画像とをコンピュータ内で重ね合わせる「ビデオシースルー方式」のMRの場合には、撮影視点の位置姿勢を求める問題となる。一方、HMDに現実空間の風景を光学的に透過させつつ、その透過面に仮想空間画像を表示して観察者の網膜上で両者を重ね合わせる「光学シースルー方式」のMRの場合には、観察者視点の位置姿勢を求める問題となる。
撮影視点、もしくは、観察者視点の位置および姿勢を求める方法の一つには、撮影視点画像、もしくは、観察者視点付近から撮影した画像を利用するものがある。これは従来からコンピュータビジョンの分野で研究されている方法で、現実空間上にあるマーカー等の画像特徴が投影される領域を撮影画像から抽出・識別し、画像特徴の現実空間座標と撮影画像上に投影されている画像特徴の画像座標の関係を満たすような撮影視点の位置および姿勢を得るものである。
原理的には、現実空間座標が既知である3つの画像特徴が撮影されていれば、非線形方程式を解くことで解析的に6自由度の位置と姿勢を求めることができる。また、何らかの方法で、例えばセンサを利用して、初期値となる撮影視点の位置と姿勢を得てから、その初期値に従って投影される画像特徴の画像座標と、実際に投影されている画像特徴の画像座標との誤差が最小になる撮影視点位置・姿勢を、数値計算的に求める方法もある。
上述した方法における現実空間上にある画像特徴の識別に関しては、特徴の色や形状などを利用する技術が従来から存在する(例えば非特許文献1,2を参照)。色や形状といった特徴は扱いやすいという利点がある一方で、精度良く、短時間で、安定して識別できる種類に限りがあるという欠点がある。そのため、観察範囲を狭い領域に限定して少ない種類の画像特徴識別ができれば良いようにしたり、色や形状からだけでなくセンサなどを利用して得た初期値や直前の観察位置算出結果も利用して画像特徴識別を行ったりする工夫が必要となる。
より多くの種類が識別できる画像特徴としては、情報がコーディングされた画像パターンを含む画像特徴が良く知られている。例えば、2次元バーコードを含む画像特徴を利用して観察視点の位置および姿勢を求める方法が従来から存在する(例えば非特許文献3を参照)。より広い範囲を観察対象にしたい場合や、より多くの仮想物体を選択的に重畳表示したい場合などに、この多くの種類が識別できる画像特徴が利用されている。ただし、そのような画像特徴は、多くの情報が表現される画像パターンを含むために、比較的広い面積を占めることになる。
"Y.Cho and U.Neumann:Multi−ring color fiducial systems for scalable fiducial tracking augmented reality,Proc.VRAIS‘98,page212,Mar.1998." "加藤,Blinghurst,浅野,橘:マーカー追跡に基づく拡張現実感システムとそのキャリブレーション,日本バーチャルリアリティ学会論文誌,vol.4,no.4,pp.607−616,Dec.1999." "暦本純一:2次元マトリックスコードを利用した拡張現実感システムの構成手法,インタラクティブシステムとソフトウェアIV,近代科学社,pp.199−208,Dec.1996."
"Y.Cho and U.Neumann:Multi−ring color fiducial systems for scalable fiducial tracking augmented reality,Proc.VRAIS‘98,page212,Mar.1998." "加藤,Blinghurst,浅野,橘:マーカー追跡に基づく拡張現実感システムとそのキャリブレーション,日本バーチャルリアリティ学会論文誌,vol.4,no.4,pp.607−616,Dec.1999." "暦本純一:2次元マトリックスコードを利用した拡張現実感システムの構成手法,インタラクティブシステムとソフトウェアIV,近代科学社,pp.199−208,Dec.1996."
ところで、上述した情報がコーディングされた画像パターンは、画像特徴全体でもってコーディングされた情報を示すものが一般的である。そのため、手や物体などが撮影視点と画像特徴の間に現れた場合には、現実空間画像に投影された画像特徴の一部が隠蔽されて画像パターン全体を読み取ることができず、正しく画像特徴の識別ができないという問題があった。
また、この画像特徴は平面的であることが一般的である。そのため、斜めの方向からその画像特徴を観察した場合には、撮影視点に対して奥側に位置する遠くの画像パターンは撮影画像中のサイズが小さくなるため、その読み取りに失敗して画像特徴の識別を誤る場合があるという問題もあった。
情報がコーディングされた画像パターンの読み取り間違い対策としては、パリティチェックやハミングコードに代表されるエラーチェック用の情報を画像パターン内に用意する方法がよく知られているが、この対策は画像パターンの一部で読み取り間違いが起きた場合に有効な方法であり、画像パターンの一部が(読み間違いではなく)読み取れない場合には効果がなかった。
また、画像特徴の位置は、例えばその重心位置などを利用して定義されることが多いが、現実空間画像に投影された画像特徴の一部が隠蔽された場合には、画像特徴の位置が正しく算出できないという問題もあった。
本発明は以上の問題に鑑みて成されたものであり、画像特徴の一部が隠蔽されていても、この画像特徴を識別するための技術を提供することを目的とする。
本発明の目的を達成する為に、例えば、本発明の画像処理方法は以下の構成を備える。
即ち、画像処理方法であって、
現実物体の表面上に当該現実物体を特定するための識別子を表す1セットのコードを複数セット配した特徴物体を現実空間中に配置した場合に、当該特徴物体の現実空間中の位置情報をメモリに保持する保持工程と、
前記特徴物体を含む現実空間の映像を撮像する撮像工程と、
前記現実空間の映像から、前記特徴物体を抽出する抽出工程と、
前記抽出工程で抽出された前記特徴物体の表面に配されるコードを読み取る読み取り工程と、
前記読み取り工程で読み取ったコードから、識別子を表す1セットのコードを抽出するコード抽出工程と、
前記コード抽出工程で抽出した1セットのコードが表す識別子によって特定される特徴物体の位置情報を前記メモリから読み出す読み出し工程と、
前記抽出工程で抽出した前記特徴物体の前記映像上の位置と、前記読み出し工程で読み出した位置情報が示す位置とに基づいて、前記撮像工程で現実空間を撮像した際の視点の位置姿勢を求める計算工程と
を備えることを特徴とする。
現実物体の表面上に当該現実物体を特定するための識別子を表す1セットのコードを複数セット配した特徴物体を現実空間中に配置した場合に、当該特徴物体の現実空間中の位置情報をメモリに保持する保持工程と、
前記特徴物体を含む現実空間の映像を撮像する撮像工程と、
前記現実空間の映像から、前記特徴物体を抽出する抽出工程と、
前記抽出工程で抽出された前記特徴物体の表面に配されるコードを読み取る読み取り工程と、
前記読み取り工程で読み取ったコードから、識別子を表す1セットのコードを抽出するコード抽出工程と、
前記コード抽出工程で抽出した1セットのコードが表す識別子によって特定される特徴物体の位置情報を前記メモリから読み出す読み出し工程と、
前記抽出工程で抽出した前記特徴物体の前記映像上の位置と、前記読み出し工程で読み出した位置情報が示す位置とに基づいて、前記撮像工程で現実空間を撮像した際の視点の位置姿勢を求める計算工程と
を備えることを特徴とする。
本発明の目的を達成する為に、例えば、本発明の画像処理方法は以下の構成を備える。
即ち、画像処理方法であって、
現実物体の表面上に当該現実物体を特定するための識別子を表す1セットのコードを複数セット配した特徴物体を撮像する撮像工程と、
前記撮像工程で撮像された映像から、前記特徴物体を抽出する抽出工程と、
前記抽出工程で抽出された前記特徴物体の表面に配されるコードを読み取る読み取り工程と、
前記読み取り工程で読み取ったコードから、識別子を表す1セットのコードを抽出するコード抽出工程と、
前記コード抽出工程で抽出した1セットのコードが表す識別子によって前記現実物体を特定する特定工程と、
を備えることを特徴とする。
現実物体の表面上に当該現実物体を特定するための識別子を表す1セットのコードを複数セット配した特徴物体を撮像する撮像工程と、
前記撮像工程で撮像された映像から、前記特徴物体を抽出する抽出工程と、
前記抽出工程で抽出された前記特徴物体の表面に配されるコードを読み取る読み取り工程と、
前記読み取り工程で読み取ったコードから、識別子を表す1セットのコードを抽出するコード抽出工程と、
前記コード抽出工程で抽出した1セットのコードが表す識別子によって前記現実物体を特定する特定工程と、
を備えることを特徴とする。
本発明の目的を達成する為に、例えば、本発明の画像処理装置は以下の構成を備える。
即ち、画像処理装置であって、
現実物体の表面上に当該現実物体を特定するための識別子を表す1セットのコードを複数セット配した特徴物体、を現実空間中に配置した場合に、当該特徴物体の現実空間中の位置情報を保持する保持手段と、
前記特徴物体を含む現実空間の映像を撮像する撮像手段と、
前記現実空間の映像から、前記特徴物体を抽出する抽出手段と、
前記抽出手段によって抽出された前記特徴物体の表面に配されるコードを読み取る読み取り手段と、
前記読み取り手段が読み取ったコードから、識別子を表す1セットのコードを抽出するコード抽出手段と、
前記コード抽出手段が抽出した1セットのコードが表す識別子によって特定される特徴物体の位置情報を前記保持手段から読み出す読み出し手段と、
前記抽出手段が抽出した前記特徴物体の前記映像上の位置と、前記読み出し手段が読み出した位置情報が示す位置とに基づいて、前記撮像手段が現実空間を撮像した際の視点の位置姿勢を求める計算手段と
を備えることを特徴とする。
現実物体の表面上に当該現実物体を特定するための識別子を表す1セットのコードを複数セット配した特徴物体、を現実空間中に配置した場合に、当該特徴物体の現実空間中の位置情報を保持する保持手段と、
前記特徴物体を含む現実空間の映像を撮像する撮像手段と、
前記現実空間の映像から、前記特徴物体を抽出する抽出手段と、
前記抽出手段によって抽出された前記特徴物体の表面に配されるコードを読み取る読み取り手段と、
前記読み取り手段が読み取ったコードから、識別子を表す1セットのコードを抽出するコード抽出手段と、
前記コード抽出手段が抽出した1セットのコードが表す識別子によって特定される特徴物体の位置情報を前記保持手段から読み出す読み出し手段と、
前記抽出手段が抽出した前記特徴物体の前記映像上の位置と、前記読み出し手段が読み出した位置情報が示す位置とに基づいて、前記撮像手段が現実空間を撮像した際の視点の位置姿勢を求める計算手段と
を備えることを特徴とする。
本発明の目的を達成する為に、例えば、本発明の画像処理装置は以下の構成を備える。
即ち、画像処理装置であって、
現実物体の表面上に当該現実物体を特定するための識別子を表す1セットのコードを複数セット配した特徴物体を撮像する撮像手段と、
前記撮像手段が撮像された映像から、前記特徴物体を抽出する抽出手段と、
前記抽出手段が抽出した前記特徴物体の表面に配されるコードを読み取る読み取り手段と、
前記読み取り手段が読み取ったコードから、識別子を表す1セットのコードを抽出するコード抽出手段と、
前記コード抽出手段が抽出した1セットのコードが表す識別子によって前記現実物体を特定する特定手段と、
を備えることを特徴とする。
現実物体の表面上に当該現実物体を特定するための識別子を表す1セットのコードを複数セット配した特徴物体を撮像する撮像手段と、
前記撮像手段が撮像された映像から、前記特徴物体を抽出する抽出手段と、
前記抽出手段が抽出した前記特徴物体の表面に配されるコードを読み取る読み取り手段と、
前記読み取り手段が読み取ったコードから、識別子を表す1セットのコードを抽出するコード抽出手段と、
前記コード抽出手段が抽出した1セットのコードが表す識別子によって前記現実物体を特定する特定手段と、
を備えることを特徴とする。
本発明の構成により、画像特徴の一部が隠蔽されていても、この画像特徴を識別することができる。
以下添付図面を参照して、本発明を好適な実施形態に従って詳細に説明する。
[第1の実施形態]
本実施形態では、現実空間における視点の位置姿勢の算出に利用する画像特徴の識別に、画像特徴内の閉曲線上に繰り返し(曲線に対して)同じ向きに並んだ画像パターンを利用するシステムについて説明する。
本実施形態では、現実空間における視点の位置姿勢の算出に利用する画像特徴の識別に、画像特徴内の閉曲線上に繰り返し(曲線に対して)同じ向きに並んだ画像パターンを利用するシステムについて説明する。
図1は、本実施形態に係るシステムの機能構成を示すブロック図である。本実施形態に係るシステムは、画像撮影部101,画像処理装置121、センサ部105に大別される。
以下、本実施形態に係るシステムを構成する画像撮影部101、画像処理装置121、センサ部105の各部について詳細に説明する。
画像撮影部101は、現実空間の映像を撮像する為の撮像装置であり、現実空間と仮想空間とが融合された複合現実空間を観察する観察者の視点位置近傍に設けられるものである。一般に複合現実空間を観察するためには、観察者は自身の頭部にHMDを装着するのであるが、このHMDがビデオシースルー型のものであれば、このHMDには現実空間の映像を撮像するためのカメラが備わっており、画像撮影部101はこのカメラに相当する。本実施形態ではこのHMDはビデオシースルー型のものであるとする。
画像撮影部101が撮像した現実空間の映像(動画像)はフレーム毎に後段の画像処理装置121に入力される。
次に、画像処理装置121について説明する。
本実施形態では、図1に示した画像処理装置121を構成する各部はハードウェアでもって構成されているものとして説明する。
画像処理装置121に入力された現実空間の映像は、画像特徴抽出部102、そして後段のMR空間画像生成部109に入力される。なお、上記HMDが光学シースルー型のものである場合には、画像処理装置121に入力された現実空間の映像は、MR画像生成部109には入力されず、画像特徴抽出部102のみに入力される。
画像特徴抽出部102は、入力された現実空間の映像中の画像特徴の候補を抽出する処理を行う。
ここで「画像特徴」とは、上記観察者の視点の位置、姿勢を算出するために現実空間中に複数配置される現実物体であり、それぞれの画像特徴の配置位置は既知のものとして後段の画像特徴位置記憶部106に保存されている。また、画像特徴は、例えば、あらかじめ決められた色、及び/又は形状を有するベース部分と、そのベース部分上の閉曲線上に繰り返し(曲線に対して)同じ向きに並ぶ画像パターンから構成される。ベース部分の形状は平面に限らず、半球、円柱、立方体といった立体形状でも、もちろん良い。
図3〜6はそれぞれ異なる画像特徴の例を示す図である。
図3に示した画像特徴の例では、円形状のベース部分300上に、その円周に沿って1次元バーコードパターン301(画像パターン)が繰り返し並んでいると共に、1次元バーコードパターン301の始点のバー305の位置近傍に、この位置を示し、且つ1次元バーコードパターン301を読み取る方向を示すマーカ302が配置されている。従って、1つの1次元バーコードパターンとは、マーカが示す位置のバーから、次のマーカが示す位置よりも1つ前のバーまでの1セットのバー群でもって表現されるものである。よって、同図に示した画像特徴には8セットの1次元バーコードパターンと、それぞれの1次元バーコードパターンの先頭バーの位置、及びバーコードの読み取り方向を示すマーカとが配置されていることになる。なお、1つの1次元バーコードパターンを構成する各バー(同図では1つの1次元バーコードパターンは7つのバーにより構成されている)は1もしくは0を示すものであり、例えば斜線部で示すバーは「1」を、白で示すバーは「0」を示す。このように、バーの色が表す情報の値(1もしくは0)は既知のデータとして画像処理装置121が保持しているものとする。
一方、図4に示した画像特徴の例では、円形状のベース部分400上に、その円周に沿って2次元バーコードパターン401(画像パターン)が繰り返し並んでいると共に、2次元バーコードパターン401の上側がどの辺であるのかを示すマーカ402が配置されている。よって、同図に示した画像特徴には12セットの2次元バーコードパターンと、それぞれの2次元バーコードパターンの上側がどの辺であるのかを示すマーカとが配置されていることになる。なお、1つの2次元バーコードパターンを構成する各ます(同図では1つの2次元バーコードパターンは9つのますにより構成されている)は1もしくは0を示すものであり、例えば斜線部で示すますは「1」を、白で示すますは「0」を示す。このように、ますの色が表す情報の値(1もしくは0)は既知のデータとして画像処理装置121が保持しているものとする。
一方、図5に示した画像特徴の例では、四角形のベース部分500上に、円周に沿って「AB」なる文字パターン(画像パターン)が繰り返し並んでいる。また、この文字パターン中に必ず含まれることとする線対称でも点対称でない文字の方向から、パターンの方向を判別することができる。同図に示した画像特徴には8セットの文字パターンが配置されていることになる。
一方、図6に示した画像特徴の例では、円柱の上面、下面に図3に示した画像特徴のパターンを張り付け、円柱の側面には図3に示した1セットの1次元バーコードパターンを複数セット1次元状に並べたものを張り付けている。側面のベース部は円柱の上面、下面と同じ色である。なお、画像特徴は、ベース部の形状、色、画像パターンの種類、沿う閉曲線の形状は上記に限定するものではない。
また、画像特徴のベース部分上に繰り返し並ぶ画像パターンの一つ一つには、その画像特徴を識別するための情報がコーディングされている。例えば図3に示した画像特徴の例では、1次元バーコードパターン301は、図3に示した画像特徴を識別するための情報をコーディングすることで得られるものであり、この1次元バーコードパターン301は、図3に示した画像特徴を識別するための識別子を示すものである。これは2次元バーコードパターン、文字パターンについても同様である。
図1に戻って、画像特徴抽出部102は、現実空間の映像から画像特徴の候補を抽出する処理を行う。
例えば、画像特徴のベース部分が赤色である場合、抽出方法の例としては、次のようなものが考えられる。すなわち、画像特徴抽出部102は、画像撮影部101から得られた現実空間の映像を構成する各画素の画素値を参照し、画素値(R、G、B)が下記の(式1)を満たす画素を赤色の画素であると判定し、赤と判断した画素で囲まれる領域のうち、赤の画素を所定個数以上含む領域を、抽出する画像特徴候補とする。
R−(G+B)/2>θ (1)
ここでθは適当な閾値である。
ここでθは適当な閾値である。
ここで、抽出した画像特徴候補は、単に赤の画素を所定個数以上含む領域であるので、画像特徴であるとは限らないことに注意されたい。また、画像特徴候補が画像特徴であったとしても、観察者の手や机などの現実物体によって部分的に隠蔽された画像特徴である可能性もあることに注意されたい。また、画像特徴候補の抽出処理についてはこれに限定するものではない。
そして、画像特徴抽出部102が現実空間の映像から画像特徴候補を抽出すると、抽出した座標位置(現実空間の映像内における画像特徴候補の座標位置)を求め、これを後段の識別子決定部104に送出すると共に、抽出した画像特徴候補の映像データを後段の画像パターン読み取り部103に送出する。
現実空間の映像における画像特徴候補の座標位置の求め方については特に限定するものではないが、例えば、画像特徴候補の領域を構成する全ての画素の座標位置の重心位置を計算し、計算した重心位置を、この画像特徴候補の座標位置とする。
次に、画像パターン読取部103は、画像特徴抽出部102から送出された画像特徴候補に含まれる画像パターンを読み出し、読み出した画像パターンにコーディングされた情報(識別子)を解釈する処理を行うのであるが、上述の通り、画像特徴候補が画像特徴ではない場合もある。よって画像特徴候補から画像パターンの読み取りができなかった場合には、この画像特徴候補は画像特徴を表すものではないということになる。
図3〜図6に例示したように、画像パターンは、バーコードパターンや文字パターンであり、前述したように、画像特徴には繰り返し同じ画像パターンが含まれている。よって画像特徴の一部が隠蔽され、画像特徴全体が画像撮影部101に撮影されていなくても、得られた現実空間の映像中の画像特徴にいくつかの画像パターンが含まれている可能性が高い。
そこで、画像パターン読取部103は、現実空間の映像中の画像特徴候補に画像パターンが含まれていれば、全ての画像パターン(1つの画像パターンの部分パターンである可能性もある)を読み取る処理を行い、読み取った画像パターンを識別子候補として識別子決定部104へと送出する。
ここで、画像パターン読み取り部103による、画像パターン読み取り処理をより具体的に説明するために、画像パターンが図3〜5のそれぞれである場合を例に取り、それぞれの場合における画像パターンの読み取り処理について以下説明する。
先ず、画像パターンが図3に例示した1次元バーコードパターンである場合について説明する。
この場合、画像パターン読み取り部103は先ず、画像特徴抽出部102から送出された画像特徴候補の端に探索領域を設け、この探索領域内で線特徴の探索を行う。画像から線特徴を検索、抽出する処理については周知のものであるので、これに関する説明は省略する。
線特徴が探索できなければ、探索領域を移動させる。一つの線特徴が探索できたら、その線特徴の色(実際には現実空間の映像における線特徴を構成する画素の値)が「1」を示す色に近いものであるのか「0」を示す色に近いものであるのかを判断し、判断した結果(1もしくは0)のビット値を記録する。
そして、その線特徴周辺から、1次元バーコードパターンの開始位置、及び1次元バーコードパターンを読み取る方向を示す目印(図3ではマーカ302に相当)を探索する。図3の場合には、マーカ302の形状は反時計回りを意味しているので、このマーカ302の形状を認識すれば、マーカ302が時計回り、反時計回りの何れを示しているのかを認識する事ができる。目印が見つかった場合には、その目印が有った旨を示す情報と、その目印が示す方向を、先に記録したビット値と共に記録する。
ここで、目印の検索処理としては、例えば、図12に示す如く、探索した線特徴1201を包含する長方形であって、且つこの長方形の長手方向の辺を画像特徴候補の位置1200に向けて(矢印1203で示す方向に向けて)所定量延長した長方形領域1202を設定し、この長方形領域1202内で、目印を探索する。図12は、目印の探索処理を説明する図である。
続いて、1次元バーコードパターンが配列している閉曲線上に、1次元バーコードパターンが(曲線に対して)同じ向きに並んでいることを利用して、探索領域を移動させる。探索領域の移動については、例えば、現在探索した線特徴が示す線分の傾きと直交し、且つ現在の探索領域の位置から画像特徴候補の位置に向けた方向に所定量移動させる。
そして移動後の探索領域内で更に新たな線特徴の探索処理、及び探索した線特徴が示すビット値を記録する処理、線特徴の近傍位置に目印が位置する場合には位置する旨を示す情報と目印が示す向きを記録する処理を行う。
以上の処理を繰り返し、探索領域を移動させても線特徴が得られない場合、探索領域内の画素において赤の画素の数が所定個数以下の場合(探索領域の位置が画像特徴候補外の位置にある場合)、移動後の探索領域の位置がはじめに探索領域を設定した位置である場合、には1次元バーコードパターンの読み取り処理を終了する。これにより、画像特徴候補に1次元バーコードパターンが配されていた場合には、このバーコードが示すビット列(即ち識別子)を得ることができる。
なお、上述の通り、画像特徴候補が画像特徴でない場合は、探索領域をいくら移動させても、線特徴は得られない。その場合には、この画像特徴候補は画像特徴ではないと判断し、その他の画像特徴候補について上記1次元バーコードパターンの読み取り処理を行う。
図7は、以上説明した、画像特徴候補から1次元バーコードパターンを読み取る処理のフローチャートである。各ステップにおける処理の内容については上述の通りであるので、ここでは簡単に説明する。
先ず、画像特徴候補における初期位置に探索領域を設定し、設定した探索領域内で線特徴を探索する処理を行う(ステップS701)。そして探索の結果、線特徴を見つけた場合には処理をステップS702に進め、この線特徴を構成する画素の値を参照し、参照した画素値がビット値「1」を示すものであるのか、ビット値「0」を示すものであるのかを認識し(ステップS702)、認識したビット値を記録する(ステップS703)。そして見つけた線特徴の位置近傍で目印を検索し、目印が存在すれば、存在した旨を示す情報、目印が示す方向をステップS703で記録したビット値と共に記録する(ステップS704)。目印が存在しなければ当然ステップS704では何も記録しない。
そして次の線特徴を探索すべく、探索領域を移動させる(ステップS705)。そして、移動させた先の位置が、最初に探索領域を設定した位置でもないし、探索領域が画像特徴候補外の位置にあるわけでもない場合には処理をステップS706を介してステップS701に戻し、上記処理を繰り返す。
一方、探索領域を移動させた先の位置が、最初に探索領域を設定した位置である場合、もしくは探索領域が画像特徴候補外の位置にある場合には処理をステップS706を介してステップS707に進め、1つ以上の線特徴を検出したか、換言すれば、1つ以上のビット値をステップS703で記録したか否かを判断し、1つも記録していない場合、即ち、この画像特徴候補が画像特徴ではない場合には本処理を終了し、次の画像特徴候補について、同図のフローチャートに従った処理を行う。
一方、ステップS707で1つ以上の線特徴を検出した場合、換言すれば、1つ以上のビット値をステップS703で記録した場合には処理をステップS708に進め、記録したビット列から、識別子候補を特定する処理を行う。
図8は、ステップS708における処理を説明する図である。同図において800は以上の処理で記録されたビット列である。また802a〜802dはそれぞれ、目印が見つかった旨を示す情報を便宜上記号化して示したものである。上述の通り、目印は、1次元バーコードパターンの先頭位置、及びバーコードの読み取り方向を示すものであるので、同図の場合、1次元バーコードパターンは、目印のついたビットから次の目印がついたビットの手前のビットまで、目印が示す方向(同図矢印803で示す方向)に読み取ったビット列を示すことになり、「011001」となる。即ち、同図の場合、1次元バーコードパターンはビット列「011001」をコーディングしたものとなる。同図では1次元バーコードパターンは805で示す如く3セット存在することになる。
一方、ビット列800には目印に挟まれていないビット列801,804も存在する。これは、画像特徴候補の一部が隠蔽され、その結果、部分的にしか観測されなかった1次元バーコードパターンから読み取ったビット列である。
よって、図7のフローチャートに従って得られたビット列800から、部分的な1次元バーコードパターンではなく、少なくとも1セット分の完全な1次元バーコードパターンを識別子候補として出力する。同図の場合、3セット分の1次元バーコードパターンを識別子候補として出力することになる(ステップS709)。
次に、画像パターンが図4に例示した2次元バーコードパターンである場合について説明する。
この場合、画像パターン読み取り部103は先ず、画像特徴抽出部102から送出された画像特徴候補の端に探索領域を設け、この探索領域内で2次元バーコードパターンの探索処理を行う。画像から2次元バーコードパターンを検索、抽出する処理については周知のものであるので、これに関する説明は省略する。
2次元バーコードパターンが探索できなければ、探索領域を移動させる。一つの2次元バーコードパターンが探索できたら、このときの探索領域のサイズを大きく更新し、サイズ更新後の探索領域内で、2次元バーコードパターンの上側を示すマーカ(図4ではマーカ402に相当)を探索する。
そして、読み取った2次元バーコードパターンをマーカが示す上側から解読する。即ち、各ますの色(実際には現実空間の映像におけるますを構成する画素の値)が「1」を示す色に近いものであるのか「0」を示す色に近いものであるのかを判断し、判断した結果(1もしくは0)のビット値を記録する。
続いて、2次元バーコードパターンが配列している閉曲線上に、2次元バーコードパターンが(曲線に対して)同じ向きに並んでいることを利用して、探索領域を移動させる。探索領域の移動については、例えば、マーカにより2次元バーコードパターンの上側が分かるので、これと直交する方向(左右何れかの方向)、且つ現在の探索領域の位置から画像特徴候補の位置に向けた方向に所定量移動させる。
そして移動後の探索領域内で更に新たな2次元バーコードパターン、マーカの探索処理、及び探索した2次元バーコードパターンが示すビット列を記録する処理を行う。
以上の処理を繰り返し、探索領域を移動させても2次元バーコードパターンが得られない場合、探索領域内の画素において赤の画素の数が所定個数以下の場合(探索領域の位置が画像特徴候補外の位置にある場合)、移動後の探索領域の位置がはじめに探索領域を設定した位置である場合、には2次元バーコードパターンの読み取り処理を終了する。これにより、画像特徴候補に2次元バーコードパターンが配されていた場合には、このバーコードが示すビット列(即ち識別子)を得ることができる。
なお、上述の通り、画像特徴候補が画像特徴でない場合は、探索領域をいくら移動させても、2次元バーコードパターンは得られない。その場合には、この画像特徴候補は画像特徴ではないと判断し、その他の画像特徴候補について上記2次元バーコードパターンの読み取り処理を行う。
図9は、以上説明した、画像特徴候補から2次元バーコードパターンを読み取る処理のフローチャートである。各ステップにおける処理の内容については上述の通りであるので、ここでは簡単に説明する。
先ず、画像特徴候補における初期位置に探索領域を設定し、設定した探索領域内で2次元バーコードパターンを探索する処理を行う(ステップS901)。そして探索の結果、2次元バーコードパターンを見つけた場合には処理をステップS902に進め、その近傍位置にあるマーカを探索する(ステップS902)。
そして見つけた2次元バーコードパターンを構成する各ますの画素の値を、見つけたマーカで示される上側から参照し、参照した画素値がビット値「1」を示すものであるのか、ビット値「0」を示すものであるのかを認識し(ステップS903)、認識したビット列を記録する(ステップS904)。
そして次の2次元バーコードパターンを探索すべく、探索領域を移動させる(ステップS905)。そして、移動させた先の位置が、最初に探索領域を設定した位置でもないし、探索領域が画像特徴候補外の位置にあるわけでもない場合には処理をステップS906を介してステップS901に戻し、上記処理を繰り返す。
一方、探索領域を移動させた先の位置が、最初に探索領域を設定した位置である場合、もしくは探索領域が画像特徴候補外の位置にある場合には処理をステップS906を介してステップS907に進め、1つ以上の2次元バーコードパターンを検出したか否かを判断し、1つも記録していない場合、即ち、この画像特徴候補が画像特徴ではない場合には本処理を終了し、次の画像特徴候補について、同図のフローチャートに従った処理を行う。
一方、ステップS907で1つ以上の2次元バーコードパターンを検出した場合には処理をステップS908に進め、記録したビット列が即ち、見つけた2次元バーコードパターン毎のビット列であるので、これらを識別子候補として特定し、識別子決定部104に出力する。
次に、画像パターンが図5に例示した文字パターンである場合について説明する。
この場合、画像パターン読み取り部103は先ず、画像特徴抽出部102から送出された画像特徴候補の端に探索領域を設け、この探索領域内で、(読み取られる可能性のある全ての)文字パターンのテンプレートとのマッチングをとる。その際、文字パターンが映像上で回転・変形している可能性があることも考慮する。なお、このような文字パターンを検索、抽出する処理については周知のものであるので、これに関する説明は省略する。
文字パターンが探索できなければ、探索領域を移動させる。一つの文字パターンが探索できたら、その文字パターンが示す文字のコードを記録する。このように文字パターンが示す文字を認識し、認識した文字のコードを特定する処理については周知のものであるので、これに関する説明は省略する。
続いて、文字パターンが配列している閉曲線上に、文字パターンが(曲線に対して)同じ向きに並んでいることを利用して、探索領域を移動させる。探索領域の移動については、例えば、現在探索した文字パターンの傾きと同じ傾きを有する方向に移動させる。そして所定移動量の移動で新たな文字パターンが見つかれば、先に見つけた文字パターンとセットにして文字コードを記録する。図5の場合、「A」の文字コードと、「B」の文字コードとはセットにして記録されることになる。
そして所定量移動させても文字パターンが見つからない場合には、セットの文字パターンが存在しないと判断し、前回移動した方向から、画像特徴候補の位置に向けた方向に探索領域を移動させ、次なる文字パターンの探索を行う。
以上の処理を繰り返し、探索領域を移動させても文字パターンが得られない場合、探索領域内の画素において赤の画素の数が所定個数以下の場合(探索領域の位置が画像特徴候補外の位置にある場合)、移動後の探索領域の位置がはじめに探索領域を設定した位置である場合、には文字パターンの読み取り処理を終了する。これにより、画像特徴候補に文字パターンが配されていた場合には、この文字パターンの文字コード(即ち識別子)を得ることができる。
なお、上述の通り、画像特徴候補が画像特徴でない場合は、探索領域をいくら移動させても、文字パターンは得られない。その場合には、この画像特徴候補は画像特徴ではないと判断し、その他の画像特徴候補について上記文字パターンの読み取り処理を行う。
図10は、以上説明した、画像特徴候補から文字パターンを読み取る処理のフローチャートである。各ステップにおける処理の内容については上述の通りであるので、ここでは簡単に説明する。
先ず、画像特徴候補における初期位置に探索領域を設定し、設定した探索領域内で上記テンプレートマッチング処理でもって文字パターンを探索する処理を行う(ステップS1001)。そして探索の結果、文字パターンを見つけた場合には処理をステップS1002に進め、文字パターンの文字コードを特定する(ステップS1002)。
そして、従前に見つけた文字パターンから所定距離以内で探索領域を移動させたことで、今回の文字パターンを見つけた場合には、従前に見つけた文字パターンの文字コードとセットで記録する必要があるので、今回見つけた文字パターンの文字コードを、従前に見つけた文字パターンの文字コードとセットで記録すべきかどうかを判断し(ステップS1003)、セットで記録すると判断した場合にはセットで記録し、セットで記録しない場合には、従前に見つけた文字パターンの文字コードとは別に記録する(ステップS1004)。
そして次の文字パターンを探索すべく、探索領域を移動させる(ステップS1005)。そして、移動させた先の位置が、最初に探索領域を設定した位置でもないし、探索領域が画像特徴候補外の位置にあるわけでもない場合には処理をステップS1006を介してステップS1001に戻し、上記処理を繰り返す。
一方、探索領域を移動させた先の位置が、最初に探索領域を設定した位置である場合、もしくは探索領域が画像特徴候補外の位置にある場合には処理をステップS1006を介してステップS1007に進め、1つ以上の文字パターンを検出したか、換言すれば、1つ以上の文字コードをステップS1004で記録したか否かを判断し、1つも記録していない場合、即ち、この画像特徴候補が画像特徴ではない場合には本処理を終了し、次の画像特徴候補について、同図のフローチャートに従った処理を行う。
一方、ステップS1007で1つ以上の文字パターンを検出した場合、換言すれば、1つ以上の文字コードをステップS1004で記録した場合には処理をステップS1008に進め、記録した文字コード列が即ち、見つけた文字パターンセット毎の文字コード列であるので、これらを識別子候補として特定し、識別子決定部104に出力する。
以上、画像パターンが図3〜5に示したそれぞれのものである場合に、画像特徴から画像パターンにコーディングされた情報を読み出して識別子決定部104に出力する処理について説明したが、何れの場合にも、コーディングされた情報を読み出すための処理については上記方法に限定するものではない。また、画像パターンは上記3種類に限定するものでない。
図1に戻って、識別子決定部104は先ず、画像パターン読取部103から受け取った識別子候補から、画像特徴を識別するために識別子を決定する処理を行う。より具体的には、識別子決定部104は、画像パターン読取部103から受け取った識別子候補が一つであれば、それを識別子であると決定して、視点位置姿勢算出部107へ送出する。また、画像パターン読取部103から受け取った識別子候補が複数であれば、複数の識別子候補を同じ識別子を示すグループに分割し、グループ要素が最も多いグループに含まれている識別子候補を識別子であるとして、この識別子を視点位置姿勢算出部107に送出する。これにより、画像特徴から読み取った情報に読取間違いがあっても、識別子の決定に悪影響を及ぼさない。
また、識別子決定部104は、上述の処理で求めた、視点位置姿勢算出部107に送出した識別子の画像特徴の現実空間の映像中の座標位置、を視点位置姿勢算出部107に送出する。
一方、画像特徴位置記憶部106には、現実空間内に配置されたそれぞれの画像特徴を識別するための識別子と、それぞれの画像特徴の現実空間における位置(現実空間中の1点を原点とし、この原点で互いに直交する3軸をそれぞれx軸、y軸、z軸とする座標系における位置)とが関連付けて保持されている。よって、画像特徴の識別子が分かれば、この画像特徴の現実空間における座標位置は、この識別子に関連付けて画像特徴位置記憶部106に記憶されている座標位置を読み出すことで得られる。
よって、視点位置姿勢算出部107は先ず、識別子決定部104から得られた識別子を参照し、これに関連付けられて画像特徴位置記憶部106に保持されている座標位置を読み出す。
そして、視点位置姿勢算出部107は、識別子決定部104から得られる、画像特徴の現実空間の映像中の座標位置と、画像特徴位置記憶部106から読み出した座標位置との関係を満たすような画像撮影部101(視点)の現実空間における位置および姿勢(現実空間中の1点を原点とし、この原点で互いに直交する3軸をそれぞれx軸、y軸、z軸とする座標系における位置及び姿勢)を、周知の技術(非線型方程式の解析や数値計算)を用いて算出する。なお、画像撮影部101の位置及び姿勢を求める方法はこれに限定するものではない。
なお、画像撮影部101の位置姿勢を求めるためには、3つ以上の画像特徴が必要となる。即ち、現実空間の映像中に、3つ以上の画像特徴が含まれていなくてはいけない。よって、画像特徴は常に3つ以上が画像撮影部101に撮影されるように配置する必要がある。
そして、画像撮影部101の視点の位置姿勢を求めるためには、少なくとも3つの画像特徴のそれぞれの現実空間における位置、現実空間の映像上における画像座標を上記処理により求め、これらを用いて画像撮影部101の視点の位置姿勢を求める。
また、本実施形態に係る画像処理装置121にはセンサ部105が備わっており、このセンサ部105からの情報を用いて、画像撮影部101の位置及び姿勢を求めるようにしても良い。この場合には、3つ以上の画像特徴が必ずしも得られていなくても良い。以下、このセンサ部105からの情報を用いて画像撮影部101の位置及び姿勢を求める方法について説明する。
センサ部105は、画像撮影部101の現実空間における位置及び姿勢を計測するためのセンサである。このセンサには磁気センサ、超音波センサなどが適用可能であるが、画像撮影部101の現実空間における位置及び姿勢を求める方法については既知のものであるので、これに関する説明は省略する。
よって、センサ部105から得た位置及び姿勢の初期値と画像特徴位置記憶部106から読み出した座標位置から決定される画像特徴の現実空間の映像中の座標位置と、識別子決定部104から得られる画像特徴の現実空間の映像中の座標位置との誤差が最小となるような画像撮影部101(視点)の現実空間における位置および姿勢を求める。その算出方法としては、画像ヤコビアンを用いたガウス・ニュートン法のような繰り返し計算によって、誤差を最小化するように画像撮影部101(視点)の現実空間における位置および姿勢を最適化する方法などが挙げられる。ここでいう誤差は画像特徴ごとに計算されるが、ただ一つの誤差からでも画像撮影部101(視点)の現実空間における位置および姿勢の最適化は可能であるので、3つ以上の画像特徴が得られていなくとも、1つ以上の画像特徴が得られていれば画像撮影部101(視点)の現実空間における位置および姿勢を求めることができる。
求めた結果はMR空間画像生成部109に送出される。MR空間画像生成部109は、画像撮影部101の位置及び姿勢から見える仮想空間の映像を生成するのであるが、仮想空間に係るデータ(例えば、仮想空間を構成するオブジェクトの配置位置、姿勢、形状、色、テクスチャなどのデータ)はデータ記憶部108に保存されているので、MR空間画像生成部109は、データ記憶部108からこれらのデータを取得し、視点位置姿勢算出部107から送出された、画像撮影部101の位置及び姿勢から見える仮想空間の映像を生成する。なお、所定の位置姿勢を有する視点から見える仮想空間の映像を生成する処理については周知の技術であるので、これに関する説明は省略する。
そして、生成した仮想空間の映像を、画像撮影部101によって撮像された現実空間の映像上に重畳させ、複合現実空間の映像を生成する。生成した複合現実空間の映像は後段のMR空間画像表示部110に送出され、MR空間画像表示部110は、送出された複合現実空間の映像を表示する。このMR空間画像表示部110は、例えば上記HMDの表示部分に相当するものであるので、このHMDを頭部に装着した観察者は眼前にこの複合現実空間の映像を見ることができる。
なお、HMDが光学シースルー型のものである場合には、画像撮影部101からMR空間画像生成部109への現実空間の映像の入力は行われないので、MR空間画像生成部109は黒の背景上に仮想空間の映像を生成し、MR空間画像表示部110に送出する。
図2は、以上説明した、画像特徴を用いて画像撮影部101の位置及び姿勢を算出し、算出した位置及び姿勢の視点から見える複合現実空間の映像を生成する為の一連の処理のフローチャートである。各ステップにおける処理については上述の通りであるので、ここでは簡単に説明する。なお、ここでもHMDがビデオシースルー型のものであるとするが、光学シースルー型の場合には以下説明する処理を上述のように適宜変更すればよい。
画像処理装置121の画像特徴抽出部102、MR空間画像生成部109は、画像撮影部101により撮像された現実空間の映像の入力を受け付ける(ステップS200)。
画像特徴抽出部102は、入力された現実空間の映像から、画像特徴の候補を抽出する(ステップS201)と共に、抽出した画像座標を求める(ステップS202)。
そして画像パターン読み取り部103は、ステップS201で抽出した画像特徴における画像パターンから、コーディングされた情報を読み取り、読み取った情報を識別子候補として識別子決定部104に出力する(ステップS203)。ステップS203では、画像特徴が図3に示したものである場合には、図7に示したフローチャートに従った処理を行い、画像特徴が図4に示したものである場合には、図9に示したフローチャートに従った処理を行い、画像特徴が図5に示したものである場合には、図10に示したフローチャートに従った処理を行う。
識別子決定部104は、画像パターン読み取り部103から受けた識別子候補から、識別子を決定し、決定した識別子とこの識別子で特定される画像特徴の現実空間の映像上における画像座標と共に視点位置姿勢算出部107に送出する(ステップS204)。
そして、以上ステップS201〜ステップS204までの各ステップにおける処理を、現実空間の映像に含まれる全ての画像特徴について行った場合には処理をステップS205を介してステップS206に進め、視点位置姿勢算出部107は、3つ以上の画像特徴それぞれの現実空間における位置と、それぞれの現実空間の映像上における座標位置とを用いて、画像撮影部101の位置及び姿勢を算出し、算出した位置及び姿勢のデータを後段のMR空間画像生成部109に送出する(ステップS206)。
MR空間画像生成部109は、視点位置姿勢算出部107から受けた位置姿勢の視点から見える仮想空間の映像を生成し、画像撮影部101から得られた現実空間の映像上に重畳し、MR空間画像表示部110に送出する(ステップS207)。
そして本処理の終了指示が入力されない限りは、上記処理を繰り返す(ステップS208)。
以上説明したように、本実施形態によれば、画像特徴を識別するための画像パターンが画像特徴の表面上に繰り返し配置されているので、現実空間の映像中の画像特徴を識別する際に画像特徴の一部が隠蔽されていても、1つ以上の画像パターンが映像中に含まれる可能性が高いことから、この画像特徴を識別することができる。
なお、本実施形態では、現実空間の映像に含まれる全ての画像特徴候補について、画像パターンの抽出処理を行ったが、映像上であまりに小さい画像特徴候補は、例え画像特徴であったとしても、画像撮影部101の解像度の問題で、画像パターンが見えないこともあり、このような画像特徴に対してコーディングされた情報を読み取っても、正確な読み取りは困難なものとなる。よって、現実空間の映像中の画像特徴候補のうち、所定画素数以上で構成されている画像特徴候補のみについて、画像パターンの抽出処理を行うようにすれば良い。
[第2の実施形態]
上記第1の実施形態では、図1に示した画像処理装置121を構成する各部はハードウェアでもって構成されているものとして説明しているが、記憶部106,108,表示部110を除く各部のうち一部もしくは全部をソフトウェアでもって構成し、記憶部106,108については例えばハードディスクドライブ装置などの外部記憶装置内に設け、表示部110についてはCRTや液晶画面などの表示装置としても良い。
上記第1の実施形態では、図1に示した画像処理装置121を構成する各部はハードウェアでもって構成されているものとして説明しているが、記憶部106,108,表示部110を除く各部のうち一部もしくは全部をソフトウェアでもって構成し、記憶部106,108については例えばハードディスクドライブ装置などの外部記憶装置内に設け、表示部110についてはCRTや液晶画面などの表示装置としても良い。
このような場合の、画像処理装置121の基本構成を図11に示す。
図11は、本実施形態に係る画像処理装置121の基本構成を示すブロック図である。本実施形態に係る画像処理装置121は、例えば一般のPC(パーソナルコンピュータ)やWS(ワークステーション)等のコンピュータである。
1801はCPUで、RAM1802やROM1803に格納されているプログラムやデータを用いて、本装置全体の制御を行うと共に、上記フローチャートに従った処理を実行する。
1802はRAMで、外部記憶装置1806からロードされたプログラムやデータを一時的に記憶するためのエリアを備えると共に、CPU1801が各種の処理を行う際に使用するワークエリアを備える。また、I/F1807,1808を介して受信したデータを一時的に記憶する為のエリアも備える。
1803はROMで、本装置の設定データ、ブートプログラムなどを格納する。
1804は操作部で、キーボードやマウス等により構成されており、各種の指示をCPU1801に対して入力することができる。
1805は表示部で、CRTや液晶画面等により構成されており、CPU1801による処理結果、例えば複合現実空間の映像を表示することができる。
1806は外部記憶装置で、ハードディスクドライブ装置などの大容量情報記憶装置であって、ここにOS(オペレーティングシステム)や、上記フローチャートに従った処理をCPU1801に実行させるためのプログラム(画像特徴抽出部102、画像パターン読み取り部103、識別子決定部104、視点位置姿勢算出部107、MR空間画像生成部109、MR空間画像表示部110のそれぞれの機能をCPU1801に実行させる為のプログラム)やデータ、記憶部106、108が記憶しているデータ群を保存しており、これらの一部もしくは全部はCPU1801の制御により、RAM1802にロードされ、CPU1801がこれを用いて処理を実行することで、本装置は上記フローチャートに従った処理を行うことができる。
1807は本装置とHMDとを繋ぐ為のI/Fであり、このI/F1807を介してHMDに備わっている画像撮影部101から現実空間の映像を受信すると共に、本装置が生成した複合現実空間の映像(HMDが光学シースルー型のものである場合には仮想空間の映像)をHMDに送信する。
1808は本装置をセンサ部105と繋ぐ為のI/Fであり、このI/F1808を介してセンサ部105が計測した画像撮影部101の位置及び姿勢を示すデータを本装置に入力する。
1809は上述の各部を繋ぐバスである。
なお、以上の実施形態により、以下の効果を奏する。
即ち、画像特徴の一部分が隠れた場合にも、観察できる部分に情報の読み取りが可能ないくつかの画像パターンが含まれることが期待できるので、隠蔽に対してロバストに画像特徴識別ができるという効果がある。
また、画像特徴に対して斜めの方向から観察した場合にも、読取処理が比較的容易となる撮影視点に対して手前側の画像領域に、情報全体の読取が可能な画像パターンが含まれることが期待できるので、傾きに対してロバストに画像特徴識別ができるという効果がある。特に、画像特徴が立体である場合には、その各面に画像パターンを用意しておけば、傾きに対してさらにロバストな画像特徴識別が実現される。
また、画像特徴内に、同じ情報を示す画像パターンを冗長に繰り返し配置することによって、その画像特徴に保持させることができる情報量は、良く知られた画像特徴に比べて減少するが、認識可能な情報量よりもロバストに識別できることが優先される応用には、効果を発揮する。
また、画像パターン群から一つの画像パターンを見つけることは比較的難しい処理であるが、画像パターン群から一つの画像パターンを抜き出すための目印には、その処理を比較的容易にするという効果がある。同様に、ある画像パターンのそばに存在する別の画像パターンの位置を示す目印にも、その処理を比較的容易にするという効果がある。さらに、画像パターンが閉曲線上に(曲線に対して)同じ向きに並んでいることにも、ある画像パターンの隣に別の画像パターンが存在するので、画像パターンの探索がしやすいという効果がある。
[他の実施形態]
本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラミングコードを記録した記憶媒体(または記録媒体)を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ(またはCPUまたはMPU)が記憶媒体に格納されたプログラムコードを読み出し実行することによっても、達成されることは言うまでもない。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているオペレーティングシステム(OS)などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラミングコードを記録した記憶媒体(または記録媒体)を、システムあるいは装置に供給し、そのシステムあるいは装置のコンピュータ(またはCPUまたはMPU)が記憶媒体に格納されたプログラムコードを読み出し実行することによっても、達成されることは言うまでもない。この場合、記憶媒体から読み出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。また、コンピュータが読み出したプログラムコードを実行することにより、前述した実施形態の機能が実現されるだけでなく、そのプログラムコードの指示に基づき、コンピュータ上で稼動しているオペレーティングシステム(OS)などが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
さらに、記憶媒体から読み出されたプログラムコードが、コンピュータに挿入された機能拡張カードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれた後、そのプログラムコードの指示に基づき、その機能拡張カードや機能拡張ユニットに備わるCPUなどが実際の処理の一部または全部を行い、その処理によって前述した実施形態の機能が実現される場合も含まれることは言うまでもない。
本発明の上記記憶媒体に適用する場合、その記憶媒体には先に説明した図2に示したフローチャートに対応するプログラムコードが格納されることになる。
Claims (9)
- 画像処理方法であって、
現実物体の表面上に当該現実物体を特定するための識別子を表す1セットのコードを複数セット配した特徴物体を現実空間中に配置した場合に、当該特徴物体の現実空間中の位置情報をメモリに保持する保持工程と、
前記特徴物体を含む現実空間の映像を撮像する撮像工程と、
前記現実空間の映像から、前記特徴物体を抽出する抽出工程と、
前記抽出工程で抽出された前記特徴物体の表面に配されるコードを読み取る読み取り工程と、
前記読み取り工程で読み取ったコードから、識別子を表す1セットのコードを抽出するコード抽出工程と、
前記コード抽出工程で抽出した1セットのコードが表す識別子によって特定される特徴物体の位置情報を前記メモリから読み出す読み出し工程と、
前記抽出工程で抽出した前記特徴物体の前記映像上の位置と、前記読み出し工程で読み出した位置情報が示す位置とに基づいて、前記撮像工程で現実空間を撮像した際の視点の位置姿勢を求める計算工程と
を備えることを特徴とする画像処理方法。 - 画像処理方法であって、
現実物体の表面上に当該現実物体を特定するための識別子を表す1セットのコードを複数セット配した特徴物体を撮像する撮像工程と、
前記撮像工程で撮像された映像から、前記特徴物体を抽出する抽出工程と、
前記抽出工程で抽出された前記特徴物体の表面に配されるコードを読み取る読み取り工程と、
前記読み取り工程で読み取ったコードから、識別子を表す1セットのコードを抽出するコード抽出工程と、
前記コード抽出工程で抽出した1セットのコードが表す識別子によって前記現実物体を特定する特定工程と、
を備えることを特徴とする画像処理方法。 - 前記特徴物体の表面上には、1次元バーコードが閉曲線上に複数セット配置されていると共に、それぞれの1次元バーコードの先頭位置近傍には、当該先頭位置、及び1次元バーコードの読み取り方向を示すためのマーカが配置されていることを特徴とする請求項1または2に記載の画像処理方法。
- 前記特徴物体の表面上には、2次元バーコードが閉曲線上に複数セット配置されていると共に、それぞれの2次元バーコードの位置近傍には、2次元バーコードの上下を示すためのマーカが配置されていることを特徴とする請求項1または2に記載の画像処理方法。
- 前記計算工程では、少なくとも3つの特徴物体のそれぞれの前記映像上の位置と、前記読み出し工程で読み出した前記3つの特徴物体のそれぞれの位置情報が示す位置とに基づいて、前記撮像工程で現実空間を撮像した際の視点の位置姿勢を求めることを特徴とする請求項1または2に記載の画像処理方法。
- 画像処理装置であって、
現実物体の表面上に当該現実物体を特定するための識別子を表す1セットのコードを複数セット配した特徴物体、を現実空間中に配置した場合に、当該特徴物体の現実空間中の位置情報を保持する保持手段と、
前記特徴物体を含む現実空間の映像を撮像する撮像手段と、
前記現実空間の映像から、前記特徴物体を抽出する抽出手段と、
前記抽出手段によって抽出された前記特徴物体の表面に配されるコードを読み取る読み取り手段と、
前記読み取り手段が読み取ったコードから、識別子を表す1セットのコードを抽出するコード抽出手段と、
前記コード抽出手段が抽出した1セットのコードが表す識別子によって特定される特徴物体の位置情報を前記保持手段から読み出す読み出し手段と、
前記抽出手段が抽出した前記特徴物体の前記映像上の位置と、前記読み出し手段が読み出した位置情報が示す位置とに基づいて、前記撮像手段が現実空間を撮像した際の視点の位置姿勢を求める計算手段と
を備えることを特徴とする画像処理装置。 - 画像処理装置であって、
現実物体の表面上に当該現実物体を特定するための識別子を表す1セットのコードを複数セット配した特徴物体を撮像する撮像手段と、
前記撮像手段が撮像された映像から、前記特徴物体を抽出する抽出手段と、
前記抽出手段が抽出した前記特徴物体の表面に配されるコードを読み取る読み取り手段と、
前記読み取り手段が読み取ったコードから、識別子を表す1セットのコードを抽出するコード抽出手段と、
前記コード抽出手段が抽出した1セットのコードが表す識別子によって前記現実物体を特定する特定手段と、
を備えることを特徴とする画像処理装置。 - コンピュータに請求項1乃至5の何れか1項に記載の画像処理方法を実行させることを特徴とするプログラム。
- 請求項8に記載のプログラムを格納することを特徴とする、コンピュータ読み取り可能な記憶媒体。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004249022A JP2006064585A (ja) | 2004-08-27 | 2004-08-27 | 画像処理方法、画像処理装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004249022A JP2006064585A (ja) | 2004-08-27 | 2004-08-27 | 画像処理方法、画像処理装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2006064585A true JP2006064585A (ja) | 2006-03-09 |
Family
ID=36111192
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004249022A Withdrawn JP2006064585A (ja) | 2004-08-27 | 2004-08-27 | 画像処理方法、画像処理装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2006064585A (ja) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1833232A2 (en) | 2006-03-09 | 2007-09-12 | Sony Corporation | System and method for outputting data |
JP2008225920A (ja) * | 2007-03-13 | 2008-09-25 | Nippon Telegr & Teleph Corp <Ntt> | 環状idマーク読み取り装置、環状idマーク読み取りシステム、環状idマーク読み取り方法および環状idマーク読み取りプログラム |
JP2018021885A (ja) * | 2016-08-05 | 2018-02-08 | 株式会社小松製作所 | 施工管理システム |
JP2020020672A (ja) * | 2018-08-01 | 2020-02-06 | 株式会社トプコン | 測量システム、計測モジュール、および測量方法 |
JP2022535959A (ja) * | 2019-07-03 | 2022-08-10 | ヒルティ アクチエンゲゼルシャフト | バーコードパターンセグメント付きねじナット |
-
2004
- 2004-08-27 JP JP2004249022A patent/JP2006064585A/ja not_active Withdrawn
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1833232A2 (en) | 2006-03-09 | 2007-09-12 | Sony Corporation | System and method for outputting data |
JP2008225920A (ja) * | 2007-03-13 | 2008-09-25 | Nippon Telegr & Teleph Corp <Ntt> | 環状idマーク読み取り装置、環状idマーク読み取りシステム、環状idマーク読み取り方法および環状idマーク読み取りプログラム |
JP2018021885A (ja) * | 2016-08-05 | 2018-02-08 | 株式会社小松製作所 | 施工管理システム |
US11966990B2 (en) | 2016-08-05 | 2024-04-23 | Komatsu Ltd. | Construction management system |
JP2020020672A (ja) * | 2018-08-01 | 2020-02-06 | 株式会社トプコン | 測量システム、計測モジュール、および測量方法 |
JP7139184B2 (ja) | 2018-08-01 | 2022-09-20 | 株式会社トプコン | 測量システム、計測モジュール、および測量方法 |
JP2022535959A (ja) * | 2019-07-03 | 2022-08-10 | ヒルティ アクチエンゲゼルシャフト | バーコードパターンセグメント付きねじナット |
US11976681B2 (en) | 2019-07-03 | 2024-05-07 | Hilti Aktiengesellschaft | Screw nut with barcode pattern segments |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Chen et al. | SLAM-based dense surface reconstruction in monocular minimally invasive surgery and its application to augmented reality | |
JP4434890B2 (ja) | 画像合成方法及び装置 | |
JP4708752B2 (ja) | 情報処理方法および装置 | |
JP2010134649A (ja) | 情報処理装置、その処理方法及びプログラム | |
CN111821025B (zh) | 空间定位方法、装置、设备、存储介质以及导航棒 | |
JP6744747B2 (ja) | 情報処理装置およびその制御方法 | |
JP2010519629A (ja) | 画像内の3次元物体のポーズを決定する方法及びデバイス並びに物体追跡のための少なくとも1つのキー画像を創出する方法及びデバイス | |
JP2008249407A (ja) | 画像処理装置、画像処理方法 | |
CN104274247A (zh) | 医学手术导航方法 | |
JP4367926B2 (ja) | 画像合成システムおよび画像合成方法、および画像合成装置 | |
JP2007233971A (ja) | 画像合成方法及び装置 | |
US10078906B2 (en) | Device and method for image registration, and non-transitory recording medium | |
JP2008146108A (ja) | 指標、画像処理装置、画像処理方法 | |
JP5693691B2 (ja) | 情報処理装置、その処理方法及びプログラム | |
JP2006267879A (ja) | 画像処理方法、画像処理装置、マーカ | |
JP2006064585A (ja) | 画像処理方法、画像処理装置 | |
US20170316619A1 (en) | Three-dimensional data processing system, method, and program, three-dimensional model, and three-dimensional model shaping device | |
JP4926598B2 (ja) | 情報処理方法、情報処理装置 | |
Karner et al. | Single-shot deep volumetric regression for mobile medical augmented reality | |
Araujo et al. | Life cycle of a slam system: Implementation, evaluation and port to the project tango device | |
JP4817631B2 (ja) | 情報処理装置、情報処理方法及びそのプログラム | |
JP2007048068A (ja) | 情報処理方法および装置 | |
KR101783156B1 (ko) | Ar 마커를 이용한 물리적 프로그래밍 정보를 인식하는 방법 및 장치 | |
JP2008140047A (ja) | 情報処理方法、情報処理装置 | |
JP4810403B2 (ja) | 情報処理装置、情報処理方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A300 | Withdrawal of application because of no request for examination |
Free format text: JAPANESE INTERMEDIATE CODE: A300 Effective date: 20071106 |