(57)【要約】【課題】ＰＳＡ法及びハフ変換などに用いられる投票処理において、投票空間内の目的の座標を、高精度かつ軽い演算負荷で導出できること。【解決手段】投票空間が離散化された複数の投票領域各々について、複数の面又は線各々と交差する交差領域に投票値を順次積算する投票処理の途中段階において、画像処理プロセッサ１３は、除外領域特定モジュール１３４を実行することにより、投票値の積算値に基づいて、投票処理の対象から除外される除外領域を特定し、さらに、投票領域制限モジュール１３５を実行することにより、全ての投票領域から除外領域を除いた残りの投票領域のみを対象に投票処理が実行されるよう制御する。【選択図】図１
2011221788.tif 000002
【特許請求の範囲】
【請求項１】
第１画像及び第２画像各々に相当する空間周波数領域での位相画像である第１位相画像及び第２位相画像に基づいて、前記第１画像内で指定される注目点に対応する前記第２画像内の対応点の座標を導出する対応点探索処理を実行する画像処理装置であって、
前記第１位相画像と前記第２位相画像との間における周波数成分に応じた位相差を算出する位相差算出部と、
前記周波数成分及び該周波数成分に対応する前記位相差を予め定められた式に適用することにより、前記第１画像における前記注目点の座標に対する前記第２画像における前記対応点の座標の偏差の座標である対応点偏差座標のとり得る範囲を示す有限の投票空間における直線を導出する直線導出部と、
前記投票空間が離散化された部分領域である複数の投票領域各々について、一本の前記直線と交差する前記投票領域を特定するとともに、特定された前記投票領域に対応付けて投票値を加算する処理を、複数の前記周波数成分各々に対応する前記直線各々について順次実行することにより前記投票値を積算する投票処理を行う投票処理部と、
複数の前記直線のうちの一部についての前記投票処理が終了した途中段階において、前記投票値の積算値に基づいて、前記投票処理の対象から除外される前記投票領域である除外領域を特定する除外領域特定部と、
前記除外領域が特定された後において、全ての前記投票領域から前記除外領域を除いた残りの前記投票領域のみを対象に前記投票処理が実行されるよう制御する投票制限部と、
前記投票値の積算値と前記投票値が積算された前記投票領域の座標とに基づいて前記対応点偏差座標を導出する目的座標導出部と、を備えることを特徴とする画像処理装置。
【請求項２】
全ての前記投票領域の中から、前記投票空間内で一部のかつ一連の範囲を占める前記投票領域の集合からなる判定用部分領域を順次選択する判定用部分領域選択部と、
選択された前記判定用部分領域ごとに、当該判定用部分領域内の前記投票領域に対応する前記投票値の積算値の代表値が、予め設定されるしきい値を基準にして相対的に大きい高レベルであるか又は相対的に小さい低レベルであるかを判定するレベル判定部と、をさらに備え、
前記除外領域特定部は、前記レベル判定部の判定結果に基づいて前記除外領域を特定する請求項１に記載の画像処理装置。
【請求項３】
前記レベル判定部は、１つの前記しきい値を基準にして前記高レベル及び前記低レベルの判定を行い、
前記除外領域特定部は、前記高レベルの判定結果が得られた前記判定用部分領域が存在する場合に、全ての前記投票領域のうち、前記高レベルの判定結果が得られた前記判定用部分領域を含む範囲内にある前記投票領域を除いた残りの前記投票領域を前記除外領域として特定する請求項２に記載の画像処理装置。
【請求項４】
前記レベル判定部は、２つの前記しきい値を基準にして、前記代表値が前記高レベル、前記低レベル及びそれらの間における中レベルのいずれであるかの判定を行い、
前記除外領域特定部は、前記高レベルの判定結果が得られた前記判定用部分領域が存在し、かつ、前記中レベルの判定結果が得られた前記判定用部分領域が存在しない場合に、全ての前記投票領域のうち、前記高レベルの判定結果が得られた前記判定用部分領域を含む範囲内にある前記投票領域を除いた残りの前記投票領域を前記除外領域として特定する請求項２に記載の画像処理装置。
【請求項５】
前記レベル判定部は、１つの前記しきい値を基準にして前記高レベル及び前記低レベルの判定を行い、
前記除外領域特定部は、前記高レベルの判定結果が得られた前記判定用部分領域が存在する場合に、前記低レベルの判定結果が得られた前記判定用部分領域を前記除外領域として特定する請求項２に記載の画像処理装置。
【請求項６】
前記レベル判定部は、２つの前記しきい値を基準にして、前記代表値が前記高レベル、前記低レベル及びそれらの間の中レベルのいずれであるかの判定を行い、
前記除外領域特定部は、前記高レベルの判定結果が得られた前記判定用部分領域が存在する場合に、前記低レベルの判定結果が得られた前記判定用部分領域を前記除外領域として特定する請求項２に記載の画像処理装置。
【請求項７】
前記途中段階において前記投票処理が終了している前記直線の数に応じて前記しきい値を設定するしきい値設定部をさらに備える請求項２から請求項６のいずれかに記載の画像処理装置。
【請求項８】
前記しきい値が予め定められた固定値である請求項２から請求項６のいずれかに記載の画像処理装置。
【請求項９】
前記判定用部分領域は個々の前記投票領域であり、前記代表値は個々の前記投票領域における前記投票値の積算値である請求項２から請求項８のいずれかに記載の画像処理装置。
【請求項１０】
前記第１画像に相当する第１周波数画像と前記第２画像に相当する第２周波数画像との間における前記周波数成分ごとの相関度の指標を算出する相関度算出部と、
前記相関度の指標に基づいて、前記投票処理に適用する前記直線の順序を前記相関度の高い前記周波数成分に対応するものから順に設定する順序設定部と、を備える請求項１から請求項９のいずれかに記載の画像処理装置。
【請求項１１】
前記相関度の指標は、前記第１周波数画像と前記第２周波数画像との間のクロススペクトルにおける前記周波数成分ごとのパワーである請求項１０に記載の画像処理装置。
【請求項１２】
前記除外領域特定部は、予め定められた複数の前記途中段階において前記除外領域を特定する処理を実行する請求項１から請求項１１のいずれかに記載の画像処理装置。
【請求項１３】
第１画像及び第２画像各々に相当する空間周波数領域での位相画像である第１位相画像及び第２位相画像に基づいて、前記第１画像内で指定される注目点に対応する前記第２画像内の対応点の座標を導出する対応点探索処理を、コンピュータに実行させるための画像処理プログラムであって、
前記第１位相画像と前記第２位相画像との間における周波数成分に応じた位相差を算出する位相差算処理と、
前記周波数成分及び該周波数成分に対応する前記位相差を予め定められた式に適用することにより、前記第１画像における前記注目点の座標に対する前記第２画像における前記対応点の座標の偏差の座標である対応点偏差座標のとり得る範囲を示す有限の投票空間における直線を導出する直線導出処理と、
前記投票空間が離散化された部分領域である複数の投票領域各々について、一本の前記直線と交差する前記投票領域を特定するとともに、特定された前記投票領域に対応付けて投票値を加算する処理を、複数の前記周波数成分各々に対応する前記直線各々について順次実行することにより前記投票値を積算する投票処理と、
複数の前記直線のうちの一部についての前記投票処理が終了した途中段階において、前記投票値の積算値に基づいて、前記投票処理の対象から除外される前記投票領域である除外領域を特定する除外領域特定処理と、
前記除外領域が特定された後において、全ての前記投票領域から前記除外領域を除いた残りの前記投票領域のみを対象に前記投票処理が実行されるよう制御する投票制限処理と、
前記投票値の積算値と前記投票値が積算された前記投票領域の座標とに基づいて前記対応点偏差座標を導出する目的座標導出処理と、をコンピュータに実行させるための画像処理プログラム。
【請求項１４】
複数のパラメータの値を座標値とする有限の投票空間における複数の面又は線を特定する情報が与えられる場合に、前記投票空間が離散化された部分領域である複数の投票領域各々について１つの前記面又は前記線と交差する前記投票領域を特定するとともに、特定された前記投票領域に対応付けて投票値を加算する処理を、複数の前記面又は前記線各々について順次実行することにより前記投票値を積算する投票処理を行う投票処理部と、
複数の前記面又は前記線のうちの一部についての前記投票処理が終了した途中段階において、前記投票値の積算値に基づいて、前記投票処理の対象から除外される前記投票領域である除外領域を特定する除外領域特定部と、
前記除外領域が特定された後において、全ての前記投票領域から前記除外領域を除いた残りの前記投票領域のみを対象に前記投票処理が実行されるよう制御する投票制限部と、
前記投票値の積算値と前記投票値が積算された前記投票領域の座標とに基づいて前記投票空間内の目的の座標を導出する目的座標導出部と、を備えることを特徴とする情報処理装置。
【請求項１５】
複数のパラメータの値を座標値とする有限の投票空間における複数の面又は線を特定する情報が与えられる場合に、前記投票空間が離散化された部分領域である複数の投票領域各々について１つの前記面又は前記線と交差する前記投票領域を特定するとともに、特定された前記投票領域に対応付けて投票値を加算する処理を、複数の前記面又は前記線各々について順次実行することにより前記投票値を積算する投票処理と、
複数の前記面又は前記線のうちの一部についての前記投票処理が終了した途中段階において、前記投票値の積算値に基づいて、前記投票処理の対象から除外される前記投票領域である除外領域を特定する除外領域特定処理と、
前記除外領域が特定された後において、全ての前記投票領域から前記除外領域を除いた残りの前記投票領域のみを対象に前記投票処理が実行されるよう制御する投票制限処理と、
前記投票値の積算値と前記投票値が積算された前記投票領域の座標とに基づいて前記投票空間内の目的の座標を導出する目的座標導出処理と、をコンピュータに実行させるための情報処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、投票空間内の複数の投票領域各々について、複数の線各々と交差する領域に投票値を積算し、その積算値に基づいて目的の座標を導出する処理を行う画像処理装置、画像処理プログラム、情報処理装置及び情報処理プログラムに関する発明である。
【背景技術】
【０００２】
複数の画像を用いた対応点探索処理は、動画の追跡、三次元画像計測及びコンピュータビジョンなどの様々な分野において重要な画像処理技術である。対応点探索処理は、時系列の２つの画像、又はステレオ画像を構成する２つの画像に基づいて、第１画像内で指定される注目点に対応する第２画像内の対応点の座標を導出する処理である。また、対応点は、第１画像における注目点の画像に対して相関の高い画像が存在する第２画像内の点である。また、昨今、対応点探索処理において、対応点の座標を高精度で導出することが求められている。
【０００３】
従来、精度の高い対応点探索処理の手法として、位相差解析（Phase-difference Spectrum Analysis）の手法が存在する。以下、その手法のことをＰＳＡ法と称する。ＰＳＡ法は、例えば、非特許文献１、非特許文献２、特許文献１及び特許文献２などに示されている。
【０００４】
以下、図１０〜図１２を参照しつつ、ＰＳＡ法について説明する。ＰＳＡ法は、以下に示される手順により、第１画像における注目点の座標(x01, y01)に対する第２画像における対応点の座標(x02, y02)の偏差の座標(dx0, dy0)を導出する手法である。以下、その偏差の座標を、対応点偏差座標と称する。なお、(dx0, dy0) = (x02-x01, y02-y01)である。
【０００５】
ＰＳＡ法では、第１画像及び第２画像各々に相当する空間周波数領域での位相画像である第１位相画像及び第２位相画像が算出される。これらの位相画像は、第１画像及び第２画像各々に対して２次元離散的フーリエ変換を施すことによって得られる。
【０００６】
次に、両位相画像の周波数成分各々について、第１位相画像と第２位相画像との間の周波数成分(u, v)に応じた位相差Δθ(u, v)が算出される。なお、u及びvは、周波数空間における座標値であり、周波数成分を特定するパラメータである。
【０００７】
また、ＰＳＡ法では、対応点偏差座標(dx0, dy0)のとり得る範囲を示す投票空間１００が設定される。投票空間１００は、予め定められた空間周期で複数の単位領域に区分されることによって離散化されている。その空間周期に応じて対応点偏差座標(dx0, dy0)の導出の分解能（精度）が定まる。
【０００８】
図１０は、投票空間１００の一例を示す模式図である。図１７に示される例では、投票空間１００は、ΔＸ軸方向及びΔＹ軸方向の各々において１０個の区間に離散化されている。投票空間１００における予め定められた空間周期で区分（離散化）された複数の単位領域は、投票領域２０と称される。投票空間１００の設定は、画像処理装置が、投票領域２０の配列に相当するデータ領域をメモリ内に確保することを意味する。即ち、投票領域２０各々は、メモリ内に確保されるデータ領域における要素データ各々に対応する。投票空間１００の大きさ及び投票領域２０の空間周期は、適用対象に応じて予め決定される。
【０００９】
そして、ＰＳＡ法では、周波数成分(u,v)、その周波数成分に基づく位相差Δθ(u, v)及び投票空間における座標(dx,dy)を変数とする所定の式に、周波数成分(u,v)及びその周波数成分に基づき算出される位相差Δθ(u, v)を適用することにより、投票空間１００内の直線（一次式）が導出される。そのようにして導出される一次式は、一般に、投票関数と称される。周波数成分(u,v)及びその周波数成分(u,v)に対応する位相差Δθ(u, v)を、周波数成分(u,v)、位相差Δθ(u, v)及び座標(dx,dy)を変数（パラメータ）とする所定の式に適用することにより得られる投票空間１００内の直線は、周波数成分(u,v)に応じて定まる対応点偏差座標(dx0, dy0)の候補となる位置を表す。以下、この直線のことを、投票直線と称する。
【００１０】
図１１は、ある１つの周波数成分(u, v)に対応する一本の投票直線３２を含む投票空間１００の一例を示す模式図である。周波数成分(u,v)及び位相差Δθ(u, v)を投票関数に適用することにより、投票空間１００の座標系における直線である投票直線３２を表す一次式が得られる。ＰＳＡ法においては、画像処理装置が、投票空間１００にプロットされた投票直線３２と交差する投票領域２０を特定する。以下、このようにして特定される投票領域２０を交差領域２０ａと称する。図１１において、交差領域２０ａは砂模様の網掛けが付されている。
【００１１】
さらに、ＰＳＡ法では、周波数成分(u, v)各々について、投票直線３２の導出と、その投票直線３２と交差する交差領域２０ａの特定とが順次繰り返される。さらに、交差領域２０ａが特定されるごとに、その交差領域２０ａに対して所定の投票値を順次積算する処理が実行される。投票値は通常"1"であるが、所定の基準に従って重み付けされることによって変化する値が、投票値として採用される場合もある。
【００１２】
図１２は、複数の周波数成分(u, v)各々に対応する複数の投票直線３２を含む投票空間１００の状態の一例を示す模式図である。 図１２において、１つの投票直線３２のみと交差する交差領域２０ａは、砂模様の網掛けが付され、複数の投票直線３２と交差する交差領域２０ａは、斜線の網掛け又は黒塗りが付されている。複数の周波数成分(u, v)各々について投票直線３２の導出と交差領域２０ａの特定とが繰り返されれることにより、図１２に示される状態が得られる。
【００１３】
そして、ＰＳＡ法では、全ての周波数成分(u, v)について、交差領域２０ａの特定及び投票値の積算が終了したときに、投票値の積算値のピーク位置の座標が、対応点偏差座標(dx0, dy0)として特定される。また、第２画像における対応点の座標(x02, y02)は、第１画像における注目点の座標(x01, y01)と対応点偏差座標(dx0, dy0)とに基づいて算出される。
【００１４】
投票値の積算値のピーク位置の座標は、例えば、投票値の積算値が最大である交差領域２０ａ（投票領域２０）の座標、又は投票値の積算値を重み係数とする交差領域２０ａの集合の重心位置の座標などである。図１２は、投票値の積算値が最大である交差領域２０ａが、投票値の積算値のピーク位置２３０（黒塗り部分）として特定された様子を示す。
【００１５】
また、投票空間内の離散化された部分領域である複数の投票領域と複数の直線とが交差する領域に投票値を積算する投票処理は、周知のハフ変換においても行われる。ハフ変換は、画像から直線、円、楕円等の図形を抽出する手法であり、例えば、特許文献３などに詳述されている。
【００１６】
例えば、ハフ変換によって画像から円を抽出する場合、元の画像に対するエッジ検出処理によってエッジ画像が生成される。さらに、そのエッジ画像における画素各々に対応する投票空間が設定される。この投票空間は、円を特定するための中心位置の座標(a,b)及円の半径rの３つのパラメータの値を座標値とする３次元の有限の空間である。
【００１７】
さらに、その投票空間（パラメータ空間）が離散化された部分領域である複数の投票領域各々のうち、エッジ画像内の１つの画素を中心とする円に相当する投票空間内での円錐面と交差するものを特定し、その円錐面と交差する投票領域に対応付けて投票値を加算する投票処理が実行される。その投票処理は、エッジ画像の各画素に対応する複数の円錐面各々について順次実行され、これにより、複数の円錐面各々と交差する投票領域において投票値が積算される。そして、投票空間における投票値の積算値のピーク位置の座標が導出される。このピーク位置の座標は、エッジ画像に存在する円の位置及び半径を特定する情報である。
【００１８】
以上に示したように、ＰＳＡ法及びハフ変換のいずれにおいても、投票処理が実行される。その投票処理においては、複数のパラメータの値を座標値とする有限の投票空間が設定され、その投票空間における複数の面又は線を特定する情報が与えられる。即ち、ＰＳＡ法では、周波数成分(u,v)各々に対応する複数の直線が与えられ、円を抽出するハフ変換では、エッジ画像の各画素に対応する複数の円錐面が与えられる。
【００１９】
さらに、投票処理においては、投票空間が離散化された部分領域である複数の投票領域各々について、１つの面又は線と交差する投票領域が特定され、特定された投票領域に対応付けて投票値を加算する処理が、与えられた複数の面又は線各々について順次実行される。これにより、与えられた面又は直線と交差する投票領域において、投票値が積算される。そして、投票値の積算値のピーク座標が、投票空間における目的の座標として導出される。ＰＳＡ法においては、目的の座標は対応点偏差座標であり、円を抽出するハフ変換においては、エッジ画像に存在する円に対応する座標である。
【先行技術文献】
【特許文献】
【００２０】
【特許文献１】特開２００１−１７５８６４号公報
【特許文献２】特開２００３−０９９７８７号公報
【非特許文献】
【００２１】
【非特許文献１】Isamu KOUZAKI, Tomonori KANEKO, Minoru ITO, "Precise and reliable image shift detection by a new phase-difference spectrum analysis", IEICE TRANSACTIONS on Information and Systems Academic Journal 2004, E87D/1 58-65
【非特許文献２】幸月  勇  他４名、「位相差からの高精度な画像シフト量検出法」、画像の認識・理解シンポジウム(MIRU 2002)、発行  2002年7月、II-379 - II-384
【発明の概要】
【発明が解決しようとする課題】
【００２２】
しかしながら、従来の投票処理は、投票空間における全ての投票領域と全ての面又は線各々について、投票値の積算を行うべきか否かの判別が必要となるため、投票処理の演算負荷が高い。また、投票空間における投票領域の区分の数を少なくするすることにより、投票処理の演算負荷は軽減されるが、投票空間における目的の座標の算出精度が悪化する。そのため、従来の投票処理は、目的の座標の導出の高精度化と高速化とを両立することが難しいという問題点があった。
【００２３】
本発明の目的は、ＰＳＡ法及びハフ変換などに用いられる投票処理において、投票空間内の目的の座標を、高精度かつ軽い演算負荷で導出できることである。
【課題を解決するための手段】
【００２４】
本発明に係る画像処理装置は、２つの画像（第１画像及び第２画像）各々に相当する空間周波数領域での位相画像である第１位相画像及び第２位相画像に基づいて、前記第１画像内で指定される注目点に対応する前記第２画像内の対応点の座標を導出する対応点探索処理を実行する装置であり、以下の各構成要素を備える。
（１）第１の構成要素は、前記第１位相画像と前記第２位相画像との間における周波数成分に応じた位相差を算出する位相差算出部である。
（２）第２の構成要素は、前記周波数成分及び該周波数成分に対応する前記位相差を予め定められた式に適用することにより、前記第１画像における前記注目点の座標に対する前記第２画像における前記対応点の座標の偏差の座標である対応点偏差座標のとり得る範囲を示す有限の投票空間における直線を導出する直線導出部である。
（３）第３の構成要素は、前記投票空間が離散化された部分領域である複数の投票領域各々について、一本の前記直線と交差する前記投票領域を特定するとともに、特定された前記投票領域に対応付けて投票値を加算する処理を、複数の前記周波数成分各々に対応する前記直線各々について順次実行することにより前記投票値を積算する投票処理を行う投票処理部である。
（４）第４の構成要素は、複数の前記直線のうちの一部についての前記投票処理が終了した途中段階において、前記投票値の積算値に基づいて、前記投票処理の対象から除外される前記投票領域である除外領域を特定する除外領域特定部である。
（５）第５の構成要素は、前記除外領域が特定された後において、全ての前記投票領域から前記除外領域を除いた残りの前記投票領域のみを対象に前記投票処理が実行されるよう制御する投票制限部である。
（６）第６の構成要素は、前記投票値の積算値と前記投票値が積算された前記投票領域の座標とに基づいて前記対応点偏差座標を導出する目的座標導出部である。
【００２５】
また、本発明に係る画像処理装置が、さらに、以下に示される各構成要素をさらに備え、前記除外領域特定部が、以下に示されるレベル判定部の判定結果に基づいて前記除外領域を特定することが考えられる。
（７）第７の構成要素は、全ての前記投票領域の中から、前記投票空間内で一部のかつ一連の範囲を占める前記投票領域の集合からなる判定用部分領域を順次選択する判定用部分領域選択部である。
（８）第８の構成要素は、選択された前記判定用部分領域ごとに、当該判定用部分領域内の前記投票領域に対応する前記投票値の積算値の代表値が、予め設定されるしきい値を基準にして相対的な大小関係を示す複数のレベルのいずれに該当するかを判定するレベル判定部である。
【００２６】
また、前記レベル判定部が、前記しきい値を基準にして前記代表値のレベルを少なくとも相対的に大きな高レベル及び相対的に小さな低レベルのいずれかに判定することが考えられる。この場合、前記除外領域特定部は、前記高レベルの判定結果が得られた前記判定用部分領域が存在する場合に、全ての前記投票領域のうち、前記高レベルの判定結果が得られた前記判定用部分領域を含む予め定められた広さの範囲内にある前記投票領域を除いた残りの前記投票領域を前記除外領域として特定する。
【００２７】
また、前記レベル判定部が、前記しきい値を基準にして、前記代表値のレベルを少なくとも相対的に大きな高レベル、相対的に小さな低レベル及びそれらの間の中レベルのいずれかに判定することも考えられる。この場合、前記除外領域特定部は、前記高レベルの判定結果が得られた前記判定用部分領域が存在し、かつ、前記中レベルの判定結果が得られた前記判定用部分領域が存在しない場合に、全ての前記投票領域のうち、前記高レベルの判定結果が得られた前記判定用部分領域を含む範囲内にある前記投票領域を除いた残りの前記投票領域を前記除外領域として特定する。
【００２８】
また、前記レベル判定部が、代表値のレベルを少なくとも高レベル及び低レベルのいずれかに判定する場合において、前記除外領域特定部が、前記高レベルの判定結果が得られた前記判定用部分領域が存在する場合に、前記低レベルの判定結果が得られた前記判定用部分領域を前記除外領域として特定することも考えられる。
【００２９】
また、前記レベル判定部が、代表値のレベルを少なくとも高レベル、低レベル及びそれらの間の中レベルのいずれかに判定する場合において、前記除外領域特定部が、前記高レベルの判定結果が得られた前記判定用部分領域が存在する場合に、前記低レベルの判定結果が得られた前記判定用部分領域を前記除外領域として特定することも考えられる。
【００３０】
また、本発明に係る画像処理装置が、前記途中段階において前記投票処理が終了している前記直線の数に応じて前記しきい値を設定するしきい値設定部をさらに備えることも考えられる。一方、前記しきい値が予め定められた固定値であることも考えられる。
【００３１】
また、前記判定用部分領域は個々の前記投票領域であり、前記代表値は個々の前記投票領域における前記投票値の積算値であることが考えられる。
【００３２】
また、本発明に係る画像処理装置が、以下に示される各構成要素をさらに備えることも考えられる。
（９）第９の構成要素は、前記第１画像に相当する第１周波数画像と前記第２画像に相当する第２周波数画像との間における前記周波数成分ごとの相関度の指標を算出する相関度算出部である。前記相関度の指標は、例えば、前記第１周波数画像と前記第２周波数画像との間のクロススペクトルにおける前記周波数成分ごとのパワーである。
（１０）第１０の構成要素は、前記相関度の指標に基づいて、前記投票処理に適用する前記直線の順序を前記相関度の高い前記周波数成分に対応するものから順に設定する順序設定部である。
【００３３】
また、本発明に係る画像処理装置において、前記除外領域特定部は、予め定められた複数の前記途中段階において前記除外領域を特定する処理を実行することが考えられる。
【００３４】
また、本発明は、画像処理に限らず、投票処理を行う情報処理装置として構成されることも考えられる。即ち、本発明に係る情報処理装置は、以下に示される各構成要素を備える。
（１）第１の構成要素は、複数のパラメータの値を座標値とする有限の投票空間における複数の面又は線を特定する情報が与えられる場合に、前記投票空間が離散化された部分領域である複数の投票領域各々について１つの前記面又は前記線と交差する前記投票領域を特定するとともに、特定された前記投票領域に対応付けて投票値を加算する処理を、複数の前記面又は前記線各々について順次実行することにより前記投票値を積算する投票処理を行う投票処理部である。
（２）第２の構成要素は、複数の前記面又は前記線のうちの一部についての前記投票処理が終了した途中段階において、前記投票値の積算値に基づいて、前記投票処理の対象から除外される前記投票領域である除外領域を特定する除外領域特定部である。
（３）第３の構成要素は、前記除外領域が特定された後において、全ての前記投票領域から前記除外領域を除いた残りの前記投票領域のみを対象に前記投票処理が実行されるよう制御する投票制限部である。
（４）第４の構成要素は、前記投票値の積算値と前記投票値が積算された前記投票領域の座標とに基づいて前記投票空間内の目的の座標を導出する目的座標導出部である。
【００３５】
また、本発明は、以上に示した本発明に係る画像処理装置又は情報処理装置が備える各構成要素が実行する処理をコンピュータ（プロセッサ）に実行させるための画像処理プログラム又は情報処理プログラムとして構成されることも考えられる。
【発明の効果】
【００３６】
本発明においても、従来の投票処理と同様に、複数の投票領域のうち、周波数成分などに応じて定まる面又は直線と交差する特定の投票領域に対して投票値が積算され、その投票値の積算値の分布に応じて目的の座標が導出される。ここで、目的の座標は、例えば、注目点の座標と対応点の座標との偏差の座標である。本発明においては、投票処理の対象となる投票領域が、投票処理の途中段階以降において一部の領域に限定される。例えば、投票処理の途中段階において、投票値の積算値の状態が高レベルである領域とその近隣の領域とが除かれた残りの投票領域、又は、投票値の積算値の状態が低レベルである領域が、投票処理の対象から除外される。従って、投票空間が高い空間分解能で離散化され、多数の投票領域が設定された場合でも、重要でない投票領域に対する投票処理が途中段階以降は省略され、演算負荷は低く抑えられる。そのため、本発明によれば、投票処理によって投票空間における目的の座標を導出する場合に、高精度かつ比較的軽い演算負荷で目的の座標を導出することが可能となる。
【００３７】
ところで、投票空間が多数の小さな投票領域に区分されている場合、投票処理の途中段階において、面又は直線が交差する交差部が、１つの投票領域に対して集中する状況は生じにくい。そのため、個々の投票領域ごとに投票値の積算値の状況が判定された場合、交差部の分布を正しく判断して適正な除外領域を特定することができなくなる。そこで、本発明において、投票空間内で一部のかつ一連の範囲を占める投票領域の集合からなる判定用部分領域ごとに、投票値の積算値の代表値のレベル判定に基づく除外領域の特定が行われることが好適である。これにより、投票領域の大きさに関わらず、投票空間における交差部の分布を反映した適切な除外領域の特定が可能となる。
【００３８】
また、本発明に係る画像処理装置において、投票処理に適用する直線の順序を、２つの周波数画像の間の相関度が高い周波数成分に対応するものから順に設定することが考えられる。これにより、比較的早い途中段階において、交差部が集中する領域と交差部がほとんど存在しない領域との区分が明確となり、比較的早い段階で、除外領域の特定を適切に行うことが可能となる。
【図面の簡単な説明】
【００３９】
【図１】本発明の実施形態に係る画像処理装置の概略ブロック図である。
【図２】本発明の実施形態に係る画像処理装置による対応点探索処理の手順を表すフローチャートである。
【図３】本発明の実施形態に係る画像処理装置による投票領域制限処理の手順を表すフローチャートである。
【図４】投票領域制限処理において投票空間から判定用部分領域を選択する処理の第１例を示す模式図である。
【図５】投票領域制限処理において投票空間から判定用部分領域を選択する処理の第２例を示す模式図である。
【図６】投票値の積算値に基づく第１のレベル判定処理によって高レベル及び低レベルの２つの領域に区分された投票空間の一例を示す模式図である。
【図７】投票値の積算値に基づく第２のレベル判定処理によって高レベル及び低レベルの２つの領域に区分された投票空間の一例を示す模式図である。
【図８】投票値の積算値に基づく第３のレベル判定処理によって高レベル、中レベル及び低レベルの３つの領域に区分された投票空間の一例を示す模式図である。
【図９】第２のレベル判定処理の結果に基づいて除外領域が設定された投票空間の一例を示す模式図である。
【図１０】投票空間の一例を示す模式図である。
【図１１】一本の投票直線を含む投票空間の一例を示す模式図である。
【図１２】複数の投票直線を含む投票空間の一例を示す模式図である。
【発明を実施するための形態】
【００４０】
以下添付図面を参照しながら、本発明の実施の形態について説明する。なお、以下の実施の形態は、本発明を具体化した一例であって、本発明の技術的範囲を限定するものではない。なお、以下の説明においては、特段の解説がない限り、「画像」という用語は、画像データと同じ意味で用いられている。
【００４１】
まず、図１に示されるブロック図を参照しつつ、本発明の実施形態に係る画像処理装置１０の構成について説明する。図１に示されるように、画像処理装置１０は、画像入力インターフェース１１、フレームメモリ１２、画像処理プロセッサ１３、ＲＯＭ(Read Only Memory)（１４）及びデータ出力インターフェース１５を備える。
【００４２】
画像入力インターフェース１１は、ステレオ画像を撮像する１台又は２台のカメラから、撮像によって得られる画像を入力し、その画像をフレームメモリ１２に記録する回路基板である。１台のカメラが用いられる場合、例えば、撮像対象とカメラとの相対的な位置関係が変化し、時系列で得られる２つの画像が、フレームメモリ１２に記録される。一方、２台のカメラが用いられる場合、それら２台のカメラは、同一の撮像対象を異なる方向から撮像するように配置され、ステレオ画像を構成する２つの画像が、フレームメモリ１２に記録される。以下、フレームメモリ１２に記録される２つの画像の一方を第１画像、他方を第２画像と称する。
【００４３】
フレームメモリ１２は、画像が記録される高速メモリである。画像入力インターフェース１１によってフレームメモリ１２に記録された画像は、画像処理プロセッサ１３によって読み出されたり、加工されたりする。
【００４４】
画像処理プロセッサ１３は、ＤＳＰ(Digital Signal Processor)又はＭＰＵ(Micro Processor Unit)などのプロセッサにより構成されている。画像処理プロセッサ１３は、ＲＯＭ（１１）に予め記憶された画像処理プログラムを実行することにより、ステレオ画像に基づく対応点探索処理を実行する。
【００４５】
画像処理プログラムは、周波数データ処理モジュール１３１、直線導出モジュール１３２、投票処理モジュール１３３、除外領域特定１３４、投票領域制限モジュール１３５及び対応点座標算計算モジュール１３６などのプログラムモジュールを含む。画像処理プロセッサ１３は、それらのプログラムモジュール１３１〜１３６を主メモリに展開して実行することにより、各プログラムモジュール１３１〜１３６によって規定される処理を実行する複数のハードウェアの集合体として機能する。
【００４６】
ＲＯＭ（１４）は、画像処理プロセッサ１３によって実行される画像処理プログラム及び画像処理プロセッサ１３が参照する各種のデータを記憶するメモリである。
【００４７】
データ出力インターフェース１５は、画像処理プロセッサ１３から引き渡される画像処理の結果のデータを、当該画像処理装置１０の外部の装置へ出力する回路基板である。
【００４８】
次に、図２に示されるフローチャートを参照しつつ、本発明の実施形態に係る画像処理装置１０が実行する対応点探索処理について説明する。フローチャートにおいて、Ｓ１〜Ｓ１２は、処理の手順の識別符号を表す。
【００４９】
図２に示される対応点探索処理が開始される前に、画像入力インターフェース１１が、第１画像及び第２画像の各データを予めフレームメモリ１２に記録する。また、対応点探索処理は、予め指定される第１画像内の１つ又は複数の注目点（注目点の座標）ごとに実行される。注目点（注目点の座標）の情報は、例えば、ＲＯＭ（１４）に予め記憶されること、又は、不図示のデータ入力インターフェースを通じて外部装置から入力されることが考えられる。
【００５０】
＜ステップＳ１＞
画像処理装置１０による対応点探索処理において、画像処理プロセッサ１３は、図１０に示されるような投票空間１００、即ち、複数の投票領域１１の配列を設定する（Ｓ１）。より具体的には、画像処理プロセッサ１３は、フレームメモリ１２内に、投票空間１００の投票領域２０各々に相当するデータが配列されるメモリ領域を確保する。このステップＳ１の処理は、例えば、画像処理プロセッサ１３が投票処理モジュール１３３を実行することにより実現される。
【００５１】
前述したように、投票空間１００は、対応点偏差座標(dx0,dy0)のとり得る範囲を示す領域である。また、対応点偏差座標(dx0,dy0)は、第１画像における注目点の座標(x10,y10)に対する第２画像における対応点の座標(x20,y20)の偏差の座標である。従って、投票空間１００の座標軸の一方は、第１画像における注目点のＸ軸方向の座標値x0に対する第２画像におけるＸ軸方向の各座標値の偏差dxの座用軸であり、他方は、第１画像における注目点のＹ軸方向の座標値y0に対する第２画像におけるＹ軸方向の各座標値の偏差dyの座用軸である。図１０において、座標値dxの座標軸はΔＸと記され、座標値dyの座標軸はΔＹと記されている。
【００５２】
投票空間１００を特定するための投票空間１００の範囲（上限及び下限の境界値）及び２つの座標軸各々の方向における投票領域２０の数（区分数）の情報は、画像処理装置１０が適用される対象に応じて予め与えられる。その情報は、例えば、ＲＯＭ（１４）に予め記憶されること、又は不図示のデータ入力インターフェースを通じて外部装置から入力されることが考えられる。
【００５３】
＜ステップＳ２＞
また、画像処理プロセッサ１３は、第１画像及び第２画像の各データに対して周知の離散フーリエ変換処理を実行することにより、周波数領域での第１画像及び周波数領域での第２画像の各データを算出する（Ｓ２）。即ち、画像処理プロセッサ１３は、離散フーリエ変換処理により、第１画像に相当する第１周波数画像及び第２画像に相当する第２周波数画像を算出する。以下、第１周波数画像をＦ1(u,v)、第２周波数画像をＦ2(u,v)と記載する。ここで、(u,v)は、画像の周波数成分、即ち、周波領域の２次元座標系における座標である。このステップＳ２の処理は、画像処理プロセッサ１３が周波数データ処理モジュール１３１を実行することにより実現される。
【００５４】
＜ステップＳ３＞
また、画像処理プロセッサ１３は、周波数成分(u,v)の選択順序を設定する（Ｓ３）。周波数成分(u,v)の選択順序は、周波数成分(u,v)ごとに以降のステップＳ４からステップＳ１１までの処理が実行される際に、その処理に適用される周波数成分(u,v)の順序である。
【００５５】
周波数成分(u,v)の選択順序は、例えば、予め定められた順序であること、又は第１周波数画像Ｆ1(u,v)及び第２周波数画像Ｆ2(u,v)のクロススペクトルの大きい順序であること、などが考えられる。クロススペクトルは、周波数成分(u,v)各々における、第１周波数画像Ｆ1(u,v)と第２周波数画像Ｆ2(u,v)との間の相関の高さを表す。そのため、クロススペクトルの大きさに基づいて周波数成分(u,v)の選択順序を設定することは、第１周波数画像Ｆ1(u,v)と第２周波数画像Ｆ2(u,v)との間の相関が高くなる周波数成分(u,v)から順に選択されることにつながる。クロススペクトルの算出方法は周知であるので、ここでは、その説明を省略する。
【００５６】
例えば、画像処理プロセッサ１３は、周波数データ処理モジュール１３１を実行することにより、第１周波数画像Ｆ1(u,v)と第２周波数画像Ｆ2(u,v)との間のクロススペクトルを算出する。クロススペクトルは、周波数成分(u,v)ごとのパワーの集合として算出される。さらに、画像処理プロセッサ１３は、投票処理モジュール１３２を実行することにより、クロススペクトルにおける周波数成分(u,v)ごとのパワーを比較し、パワーの高い周波数成分(u,v)から順に、周波数成分(u,v)の選択順序を設定する。これにより、その選択順序に従って選択される周波数成分(u,v)に対応する投票直線が、投票処理に適用される投票直線として順次選択されることになる。
【００５７】
なお、クロススペクトルを算出するために周波数データ処理モジュール１３１を実行する画像処理プロセッサ１３は、相関度算出部の一例である。また、周波数成分(u,v)の選択順序を設定するために投票処理モジュール１３２を実行する画像処理プロセッサ１３は、順序設定部の一例である。
【００５８】
＜ステップＳ４＞
そして、画像処理プロセッサ１３は、ステップＳ３で設定された順序に従って、周波数成分(u,v)を順次選択する（Ｓ４）。画像処理プロセッサ１３は、選択した周波数成分(u,v)について以下のステップＳ５からステップＳ１１までの処理を実行することにより、予め定められた終了条件が成立するまでステップＳ５からステップＳ１０までの処理を繰り返す。ステップＳ４の処理は、画像処理プロセッサ１３が投票処理モジュール１３３を実行することにより実現される。
【００５９】
＜ステップＳ５＞
周波数成分(u,v)の選択ごとに、画像処理プロセッサ１３は、選択した周波数成分(u,v)における第１周波数画像と第２周波数画像との間の位相差Δθ(u,v)を算出する（Ｓ５）。ステップＳ５の処理は、画像処理プロセッサ１３が周波数データ処理モジュール１３１を実行することにより実現される。
【００６０】
なお、第１周波数画像Ｆ1(u,v)及び第２周波数画像Ｆ2(u,v)の振幅成分Ｃr(u,v)は、周波数成分(u,v)を（１）式に適用することによって算出される。（１）式は、クロススペクトルを算出する式である。また、第１周波数画像Ｆ1(u,v)及び第２周波数画像Ｆ2(u,v)の位相差Δθ(u,v)は、周波数成分(u,v)を（２）式に適用することによって算出される。
【００６１】
【数１】
2011221788.tif 000003
【００６２】
【数２】
2011221788.tif 000004
【００６３】
＜ステップＳ６＞
次に、画像処理プロセッサ１３は、周波数成分(u,v)、位相差Δθ(u, v)及び投票空間における座標(dx,dy)を変数とする（３）式に、選択されている周波数成分(u,v)及びその周波数成分に基づき算出された位相差Δθ(u, v)を適用することにより、投票空間１００内の直線である投票直線３１の式（一次式）の係数を算出する（Ｓ６）。なお、（３）式において、M及びNは、２つの画像のＸ軸方向及びＹ軸方向各々のサイズ（画素数）であり、既知の定数である。
【００６４】
【数３】
2011221788.tif 000005
【００６５】
この（３）式は、非特許文献１などに示されるように、周波数成分(u,v)、位相差Δθ(u, v)及び投票空間１００における座標 (dx,dy)の各パラメータの間で成立する関係式であり、予め定められる式である。ステップＳ６の処理は、画像処理プロセッサ１３が直線導出モジュール１３２を実行することによって実現される。
【００６６】
＜ステップＳ７＞
さらに、画像処理プロセッサ１３は、投票空間１００内の複数の投票領域２０各々について、選択されている周波数成分(u,v)に対応する一本の投票直線３１と交差する投票領域２０を特定する（Ｓ７）。ステップＳ７の処理は、画像処理プロセッサ１３が投票処理モジュール１３３を実行することによって実現される。
【００６７】
前述したように、投票直線３１と交差する投票領域２０を交差領域２０ａと称する。ステップＳ７の処理は、画像処理プロセッサ１３が投票処理モジュール１３３を実行することによって実現される。一本の投票直線３１及びそれと交差する交差領域２０ａは、図１１に例示されている。
【００６８】
＜ステップＳ８＞
さらに、画像処理プロセッサ１３は、一本の投票直線３２と交差する交差領域２０ａが特定されるごとに、その交差領域２０ａ（投票領域２０）に対応付けられたデータに、予め定められた投票値を加算する（Ｓ８）。即ち、画像処理プロセッサ１３は、交差領域２０ａとされた投票領域２０各々に対応するフレームメモリ１２内の各データ領域において、その領域に格納されているデータに対して所定の投票値を加算する。なお、投票空間１００に対応するフレームメモリ１２内の各データ領域の初期値は"0"である。
【００６９】
投票値は、交差領域２０ａとして特定される全ての投票領域２０各々に対して同一の値とすることが考えられる。その他、クロススペクトルのパワー（相関度）に応じて重み付けされた異なる投票値を採用することが考えられる。この場合、クロススペクトルのパワーが大きな周波数成分(u,v)に対応する投票直線３１と交差する交差領域２０ａにおいては、相対的に大きな投票値が加算される。また、クロススペクトルのパワーが小さな周波数成分(u,v)に対応する投票直線３１と交差する交差領域２０ａにおいては、相対的に小さな投票値が加算される。
【００７０】
＜ステップＳ９、Ｓ１０＞
画像処理プロセッサ１３は、ステップＳ４からステップＳ８の処理を実行するごとに、予め定められた処理移行条件が成立しているか否かを判別する（Ｓ９）。そして、画像処理プロセッサ１３は、その処理移行条件が成立していると判別した場合には、後述する投票領域制限処理（Ｓ１０）を実行する。一方、画像処理プロセッサ１３は、処理移行条件が成立していないと判別した場合には、投票領域制限処理（Ｓ１０）をスキップする。
【００７１】
例えば、第１の処理移行条件は、投票処理の状況が、予め定められた第１の数Ｊ１の投票直線３１についての投票処理（Ｓ６〜Ｓ８）が終了した時点であるという条件である。また、第２の処理移行条件は、投票処理の状況が、第１の処理移行条件の成立の後において、予め定められた第２の数Ｊ２の投票直線３１についての投票処理（Ｓ６〜Ｓ８）が終了するごとの定期的なタイミングであるという条件である。投票領域制限処理（Ｓ１０）は、これら第１の処理移行条件及び第２の処理移行条件のいずれかが成立するごとに実行される。これにより、投票領域制限処理（Ｓ１０）は、複数の投票直線３１のうちの一部についての投票処理が終了した複数の途中段階において実行される。
【００７２】
＜ステップＳ１１＞
また、画像処理プロセッサ１３は、ステップＳ４からステップＳ９の処理を実行するごとに、予め定められた終了条件が成立しているか否かを判別する（Ｓ１１）。そして、画像処理プロセッサ１３は、その終了条件が成立するまで、周波数成分(u,v)の選択（Ｓ４）と、選択した周波数成分(u,v)各々についての位相差Δθ(u,v)の算出（Ｓ５）と、その位相差Δθ(u,v)に対応する投票直線３１と交差する交差領域２０ａの特定（Ｓ６、Ｓ７）と、交差領域２２に対する投票値の加算（Ｓ８）とを順次実行する。
【００７３】
即ち、画像処理プロセッサ１３は、投票処理モジュール１３３を実行することにより、複数の投票領域２０各々について、一本の投票直線と交差する交差領域２０ａを特定する（Ｓ７）。さらに、画像処理プロセッサ１３は、投票処理モジュール１３３を実行することにより、交差領域２０ａに対応付けて投票値を加算する処理（Ｓ８）を、複数の周波数成分(u,v)各々に対応する投票直線３１各々について順次実行する（Ｓ４〜Ｓ８）。これにより、交差領域２０ａに対して投票値が積算される。複数の投票直線３１及びそれらと交差する交差領域２０ａは、図１２に例示されている。
【００７４】
終了条件は、例えば、投票領域２０各々における投票値の積算値が、予め定められた条件を満たすことである。その条件は、例えば、投票値の積算値P1，P2が、次の（４）式を満たすことである。（４）式において、Hは、全ての周波数成分(u,v)の数であり、hは、投票処理（投票値の積算）が終了した周波数成分(u,v)の数であり、Umaxは、投票処理１回当たりの投票値の最大値であり、P1及びP2は、h個の周波数成分(u,v)についての投票処理が行われた時点での投票値の積算値の最大値及び２番目に大きい値である。なお、投票領域２０の位置に応じた投票値の重み付けが行われない場合、Umaxは、１回の投票において投票領域２０ごとに加算される投票値であり、通常は"1"である。
【００７５】
【数４】
2011221788.tif 000006
【００７６】
（４）式を満足することは、現時点で投票値の積算値がP1である投票領域２０が、投票値の積算値が最終的に最大となることが確定したことを意味する。従って、最終的に投票値の積算値が最大となる投票領域２０の位置に基づいて対応点偏差座標(dx0,dy0)を導出する場合、（４）式を終了条件とすることが有効である。
【００７７】
また、投票領域２０各々における投票値の積算値に基づく終了条件は、他の条件も考えられる。例えば、投票値の積算値の最大値P1が、予め定められたしきい値以上であること、投票値の積算値の最大値P1と、投票値の積算値の２番目に大きい値P2との差(P1-P2)が、予め定められたしきい値以上であること、又はそれら両方の条件を満たすこと、などが考えられる。また、終了条件が、予め定められた個数の周波数成分(u,v)について、ステップＳ４〜Ｓ８の処理が行われたことである場合も考えられる。
【００７８】
ここで、図３に示されるフローチャートを参照しつつ、投票領域制限処理（Ｓ１０）の詳細について説明する。フローチャートにおいて、Ｓ２１〜Ｓ２５は、処理の手順の識別符号を表す。
【００７９】
＜ステップＳ２１＞
投票領域制限処理において、まず、画像処理プロセッサ１３は、全ての投票領域２０の中から、投票空間１００内で一部のかつ一連の範囲を占める投票領域２０の集合からなる判定用部分領域２０ｂを順次選択する（Ｓ２１：判定用部分領域選択処理）。ここで、投票領域２０の集合は、１つ以上の投票領域２０を含むことを意味する。判定用部分領域２０ｂは、後述するレベル判定処理（Ｓ２２）の対象となる単位である。のこのステップＳ２１の処理は、画像処理プロセッサ１３が除外領域特定モジュール１３４を実行することによって実現される。
【００８０】
図４及び図５は、投票領域制限処理において、投票空間１００から判定用部分領域２０ｂを選択する処理の第１例及び第２例を示す模式図である。
【００８１】
図４に示される第１例は、判定用部分領域選択処理（Ｓ２１）において、個々の投票領域２０が判定用投票領域２１として順次選択される例、即ち、投票領域２０と判定用部分領域２０ｂとが１対１に対応する例である。また、図５に示される第２例は、判定用部分領域選択処理（Ｓ２１）において、ΔＸ軸方向における３列の範囲、及びΔＹ軸方向における３行の範囲を占める９個の投票領域２０が、判定用投票領域２１として順次選択される例である。ここで、投票空間１００における行及び列は、投票領域２０の行及び列を意味する。
【００８２】
図５の例では、例えば、３列×３行の範囲を占める判定用投票領域２１が、ΔＸ軸方向又はΔＹ軸方向に一つの投票領域２０分ずつずれた位置から順次選択される。なお、図５に示される第２例では、判定用投票領域２１は、３列×３行分の領域であるが、２列×２行分の領域、２列×３行分の領域又は５列×５行分の領域など、判定用投票領域２１として選択される領域は、画像処理装置１０の適用対象に応じて任意に定められる。
【００８３】
＜ステップＳ２２＞
次に、画像処理プロセッサ１３は、選択した判定用部分領域２０ｂごとに、その判定用部分領域２０ｂ内の投票領域２０に対応する投票値の積算値の代表値が、予め設定されるしきい値を基準にしてどの程度のレベルであるかを判定する（Ｓ２２：レベル判定処理）。その判定結果は、判定用部分領域２０ｂに含まれる各投票領域２０の識別番号に対応付けられて画像処理プロセッサ１３の主メモリに記録される。このレベル判定処理は、画像処理プロセッサ１３が除外領域特定モジュール１３４を実行することによって実現される。
【００８４】
図５に示したように、判定用部分領域２０ｂが複数の投票領域２０を含む場合、代表値は、例えば、判定用部分領域２０ｂ内の投票領域２０に対応する複数の積算値の最大値又は平均値などである。また、図４に示したように、判定用部分領域２０ｂが個々の投票領域２０である場合、代表値は、投票値の積算値そのものである。
【００８５】
ステップＳ２２のレベル判定処理において、例えば、画像処理プロセッサ１３は、代表値と１つ又は複数のしきい値との比較により、代表値が、相対的に大きい「高レベル」と相対的に小さい「低レベル」といずれのレベル（ランク）に該当するかを判定することが考えられる。例えば、代表値をＳＶ、１つのしきい値をＳＬ１とした場合に、画像処理プロセッサ１３は、ＳＶ≧ＳＬ１であるときに、その代表値ＳＶは「高レベル」に該当すると判定し、ＳＶ＜ＳＬ１であるときに、その代表値ＳＶは「低レベル」に該当すると判定する。また、２つのしきい値をＳＬ１，ＳＬ２（ＳＬ１＞ＳＬ２）とした場合に、画像処理プロセッサ１３は、ＳＶ≧ＳＬ１であるときに、その代表値ＳＶは「高レベル」に該当すると判定し、ＳＶ＜ＳＬ２であるときに、その代表値ＳＶは「低レベル」に該当すると判定する。
【００８６】
また、画像処理プロセッサ１３は、代表値と複数のしきい値各々との比較により、代表値が、相対的に大きな「高レベル」と、相対的に小さな「低レベル」と、それらの間の「中レベル」との３つのレベル（ランク）いずれに該当するか判定することも考えられる。例えば、２つのしきい値をＳＬ１，ＳＬ２（ＳＬ１＞ＳＬ２）とした場合に、画像処理プロセッサ１３は、ＳＶ≧ＳＬ１であるときに、その代表値ＳＶは「高レベル」に該当すると判定し、ＳＶ＜ＳＬ２であるときに、その代表値ＳＶは「低レベル」に該当すると判定し、その他のときに、その代表値ＳＶは「中レベル」に該当すると判定する。また、３つ以上のしきい値を用いて「高レベル」、「低レベル」及び「中レベル」の判定を行うことも考えられる。
【００８７】
＜ステップＳ２３＞
画像処理プロセッサ１３は、全ての判定用部分領域２０ｂについてステップＳ２２の処理が終了したか否かを判別しつつ（Ｓ２３）、全ての判定用部分領域２０ｂについて判定用部分領域２０ｂの選択（Ｓ２１）及びその判定用部分領域２０ｂに対するレベル判定処理（Ｓ２２）を順次実行する。このステップＳ２３の判別処理は、画像処理プロセッサ１３が除外領域特定モジュール１３４を実行することによって実現される。
【００８８】
ところで、複数の判定用部分領域２０ｂに属する投票領域２０において、対応する判定用部分領域２０ｂごとに異なるレベル判定が行われることが考えられる。そのような投票領域２０に関し、「高レベル」側の判定結果を優先するか、又は「低レベル」側の判定結果を優先するかを予め定めておくことが考えられる。
【００８９】
以下の説明において、「高レベル」、「低レベル」及び「中レベル」の各判定結果が得られた判定用部分領域２０ｂ（投票領域２０の集合）のことを、それぞれ高レベル領域２１、低レベル領域２２及び中レベル領域２３と称する。
【００９０】
図６は、投票値の積算値に基づく第１のレベル判定処理によって高レベル領域２１及び低レベル領域２２の２つの領域に区分された投票空間１００の一例を示す模式図である。図６において、高レベル領域２１は空白で示され、低レベル領域２２は砂模様の網掛けが付されている。
【００９１】
図６に示される例は、判定用部分領域２０ｂが、投票領域２０各々に対して１対１に設定され、１つ以上の投票直線３１と交差する判定用部分領域２０ｂ（投票領域）が高レベル領域２１、投票直線３１と交差しない判定用部分領域２０ｂが低レベル領域２２と判定された例である。
【００９２】
即ち、図６に示される例は、全ての投票領域２０において１回に加算される投票値が"1"である場合、投票値の積算値が"1"以上である判定用部分領域２０ｂ（投票領域）が高レベル領域２１、投票値の積算値が"1"未満である判定用部分領域２０ｂ（投票領域）が低レベル領域２２として判定された例である。
【００９３】
図７は、投票値の積算値に基づく第２のレベル判定処理によって高レベル領域２１及び低レベル領域２２の２つの領域に区分された投票空間１００の一例を示す模式図である。図７においても、高レベル領域２１は空白で示され、低レベル領域２２は砂模様の網掛けが付されている。
【００９４】
図７に示される例は、判定用部分領域２０ｂが、投票領域２０各々に対して１対１に設定され、２つ以上の投票直線３１と交差する判定用部分領域２０ｂ（投票領域）が高レベル領域２１、投票直線３１と交差しない判定用部分領域２０ｂが低レベル領域２２と判定された例である。
【００９５】
即ち、図７に示される例は、全ての投票領域２０において１回に加算される投票値が"1"である場合、投票値の積算値が"2"以上である判定用部分領域２０ｂ（投票領域）が高レベル領域２１、投票値の積算値が"2"未満である判定用部分領域２０ｂ（投票領域）が低レベル領域２２として判定された例である。説明の便宜上、図６及び図７の例におけるしきい値ＳＬ１は"1"又は"2"とされるが、実際のしきい値ＳＬ１は、通常、より大きな値が設定されることが想定される。
【００９６】
図８は、投票値の積算値に基づく第３のレベル判定処理によって高レベル領域２１、低レベル領域２２及びそれらの間のレベルである中レベル領域２３の３つの領域に区分された投票空間１００の一例を示す模式図である。図８において、高レベル領域２１は空白で示され、低レベル領域２２は砂模様の網掛けが付され、中レベル領域２３は斜線の網掛けが付されている。
【００９７】
図８に示される例は、判定用部分領域２０ｂが、投票領域２０各々に対して１対１に設定され、２つ以上の投票直線３１と交差する判定用部分領域２０ｂ（投票領域）が高レベル領域２１と判定され、投票直線３１と交差しない判定用部分領域２０ｂが低レベル領域２２と判定され、１つの投票直線３１と交差する判定用部分領域２０ｂが中レベル領域２３と判定された例である。
【００９８】
即ち、図８に示される例は、全ての投票領域２０において１回に加算される投票値が"1"である場合、投票値の積算値が"2"以上である判定用部分領域２０ｂ（投票領域）が高レベル領域２１として判定され、投票値の積算値が"1"未満である判定用部分領域２０ｂが低レベル領域２２として判定され、その他の判定用部分領域２０ｂが中レベル領域２３として判定された例である。説明の便宜上、図８の例におけるしきい値ＳＬ１は"2"とされるが、実際のしきい値ＳＬ１は、通常、より大きな値が設定されることが想定される。
【００９９】
＜ステップＳ２４＞
そして、全ての判定用部分領域２０ｂについてのレベル判定処理（Ｓ２２）が終了すると、画像処理プロセッサ１３は、レベルの判定結果に基づいて、以降の投票処理（Ｓ７及びＳ８）の対象から除外される投票領域２０である除外領域２４を特定する除外領域特定処理を実行する（Ｓ２４）。このステップＳ２３の判別処理は、画像処理プロセッサ１３が除外領域特定モジュール１３４を実行することによって実現される。以下、除外領域特定処理の具体例について説明する。
【０１００】
＜除外領域特定処理の第１の例＞
除外領域特定処理（Ｓ２４）の第１の例は、１つ以上のしきい値を基準にして少なくとも高レベル領域２１及び低レベル領域２２の判定が行われた場合の例である。この例では、画像処理プロセッサ１３は、高レベル領域２１が存在することを要件として、全ての投票領域２０のうち、高レベル領域２１を含む範囲内にある投票領域２０を除いた残りの投票領域２０を除外領域２４として特定する。
【０１０１】
また、第１の例において、除外領域２４を特定する方法は、次の２通りの方法が考えられる。第１の方法は、高レベル領域２１内の投票領域２０を除いた残りの全ての投票領域２０を除外領域２４として特定する方法である。図６又は図７に示されるレベル判定結果が得られた場合、この第１の例における第１の方法では、砂地模様の網掛けが付されている低レベル領域２２の全てが除外領域２４として特定される。
【０１０２】
また、図８に示されるレベル判定結果が得られた場合、この第１の例における第１の方法では、砂地模様の網掛けが付されている低レベル領域２２及び斜線の網掛けが付されている中レベル領域２３の全てが除外領域２４として特定される。
【０１０３】
一方、第１の例における第２の方法は、高レベル領域２１を予め定められた大きさだけ拡大した範囲に含まれる投票領域２０を除いた残りの投票領域２０を除外領域２４として特定する方法である。この第１の例における第２の方法では、高レベル領域２１以外の投票領域２０のうち、高レベル領域２１に近い一部の投票領域２０を除く残りの投票領域２０のみが除外領域２４として特定される。
【０１０４】
図９は、図７に示されるレベル判定結果（第２のレベル判定処理の結果）が得られた場合において、第１の例における第２の方法によって除外領域２４が設定された投票空間１００の一例を示す模式図である。より具体的には、図９に示される例は、図７に示されるレベル判定結果が得られた場合に、高レベル領域２１を１列分及び１行分だけ拡大した範囲内に含まれる投票領域２０を除いた残りの投票領域２０が、除外領域２４として特定された例である。なお、拡大の幅は、１列分及び１行分の幅に限らず、複数列分の幅及び複数行分の幅でることも考えられる。
【０１０５】
＜除外領域特定処理の第２の例＞
除外領域特定処理（Ｓ２４）の第２の例は、２つ以上のしきい値を基準にして少なくとも高レベル領域２１、低レベル領域２２及び中レベル領域２３の判定が行われた場合の例である。この例では、画像処理プロセッサ１３は、高レベル領域２１が存在し、かつ、中レベル領域２３が存在しないことを要件として、全ての投票領域２０のうち、高レベル領域２１を含む範囲内にある投票領域２０を除いた残りの投票領域２０を除外領域２４として特定する。
【０１０６】
この第２の例においても、除外領域２４を特定する方法は、第１の例と同様の第１の方法及び第２の方法を含む。即ち、第１の方法は、高レベル領域２１内の投票領域２０を除いた残りの全ての投票領域２０を除外領域２４として特定する方法である。
【０１０７】
一方、第２の方法は、高レベル領域２１を予め定められた大きさだけ拡大した範囲に含まれる投票領域２０を除いた残りの投票領域２０を除外領域２４として特定する方法である。この場合、低レベル領域２２のうち、高レベル領域２１に近い一部の投票領域２０を除く残りの領域が、除外領域２４として特定される。
【０１０８】
この第２の例は、投票処理による投票値の積算（Ｓ８）が、ごく一部の高レベル領域２１において集中的に行われた結果、ごく一部の高レベル領域２１とその他の投票領域２０との間で投票値の積算値の差が大きい状況となったときに、高レベル領域２１を除く領域、又は高レベル領域２１を拡大した範囲を除く領域が、除外領域２４として特定される例である。
【０１０９】
＜除外領域特定処理の第３の例＞
除外領域特定処理（Ｓ２４）の第３の例は、第１の例と同様に、１つのしきい値ＳＬ１を基準にして高レベル領域２１及び低レベル領域２２の判定が行われた場合の例である。この例では、画像処理プロセッサ１３は、高レベル領域２１が存在することを要件として、全ての投票領域２０のうち、低レベル領域２２に含まれる投票領域２０を除外領域２４として特定する。従って、低レベル領域２２に含まれる投票領域２０の全てが除外領域２４として特定される。
【０１１０】
図６又は図７に示されるレベル判定結果が得られた場合、この第３の例では、砂地模様の網掛けが付されている低レベル領域２２が除外領域２４として特定される。また、図８に示されるレベル判定結果が得られた場合、この第３の例では、砂地模様の網掛けが付されている低レベル領域２２が除外領域２４として特定される。
【０１１１】
＜除外領域特定処理の第４の例＞
除外領域特定処理（Ｓ２４）の第４の例は、２つ以上のしきい値を基準にして少なくとも高レベル領域２１、低レベル領域２２及び中レベル領域２３の判定が行われた場合の例である。この例では、画像処理プロセッサ１３は、高レベル領域２１が存在し、かつ、中レベル領域２３が存在しないことを要件として、全ての投票領域２０のうち、低レベル領域２２を除外領域２４として特定する。
【０１１２】
この第４の例は、投票処理による投票値の積算（Ｓ８）が、ごく一部の高レベル領域２１において集中的に行われた結果、ごく一部の高レベル領域２１とその他の投票領域２０との間で投票値の積算値の差が大きい状況となったときに、低レベル領域２２が除外領域２４として特定される例である。
【０１１３】
＜ステップＳ２５＞
そして、除外領域２４の特定（Ｓ２５）が終了すると、画像処理プロセッサ１３は、その後において、投票処理（Ｓ７及びＳ８）の対象から除外領域２４を排除する処理を実行する（Ｓ２５）。即ち、このステップＳ２５の処理は、全ての投票領域２０から除外領域２４を除いた残りの投票領域２０のみを対象に投票処理（Ｓ７及びＳ８）が実行されるよう投票処理モジュール１３３を制御する処理である。このステップＳ２５の処理は、画像処理プロセッサ１３が投票領域制限モジュール１３５を実行することによって実現される。なお、画像処理プロセッサ１３は、投票処理の対象から一度除外した投票領域２０を、再び投票処理の対象として復活させることは行わない。
【０１１４】
例えば、ステップＳ７及びＳ８において、画像処理プロセッサ１３は、予め設定された投票領域２０の識別番号のリストを参照し、そのリストに含まれる識別番号各々に対応する投票領域２０を対象に投票処理を実行することが考えられる。この場合、画像処理プロセッサ１３は、ステップＳ２５において、リストの中から除外領域２４に対応する識別番号を削除すればよい。
【０１１５】
また、ステップＳ７及びＳ８において、画像処理プロセッサ１３は、投票領域２０各々に対応して予め設定されたフラグ情報を参照し、そのフラグ情報が"ＯＮ"である投票領域２０のみを対象に投票処理を実行することが考えられる。この場合、画像処理プロセッサ１３は、ステップＳ２５において、除外領域２４に対応するフラグ情報を"ＯＦＦ"にすればよい。
【０１１６】
以上に示される投票領域制限処理（Ｓ２１〜Ｓ２５）が実行されることにより、除外領域２４であると特定された投票領域２０は、それ以降の投票処理（Ｓ７及びＳ８）において、投票値を積算する対象から除外される。以下、再び図２を参照する。
【０１１７】
＜ステップＳ１２＞
以上に示したステップＳ４〜Ｓ１０の処理が行われたときに、終了条件が成立すると、画像処理プロセッサ１３は、投票領域２０各々の投票値の積算値に基づいて、投票値が積算された投票領域２０の座標に応じた対応点偏差座標(dx0,dy0)を算出する（Ｓ１２）。より具体的には、画像処理プロセッサ１３は、投票空間１００における投票値の積算値のピーク位置の座標を、対応点偏差座標(dx0,dy0)として算出する。ステップＳ１２の処理は、画像処理プロセッサ１３が対応点座標算計算モジュール１３６を実行することにより実現される。なお、対応点偏差座標(dx0,dy0)は、目的の座標の一例である。
【０１１８】
例えば、画像処理プロセッサ１３は、終了条件が成立したときの投票値の積算値が最大である投票領域２０の中心の座標を、対応点偏差座標(dx0,dy0)として算出する。或いは、画像処理プロセッサ１３は、終了条件が成立したときの投票値の積算値を重み係数として、投票値が積算された投票領域２０の重心位置の座標を対応点偏差座標(dx0,dy0)として算出する。
【０１１９】
なお、画像処理装置１０においては、投票空間１００内の一部である除外領域２４は、投票処理の途中段階以降において、投票処理の対象から排除される。そのため、除外領域２４における投票値の積算値は、他の投票領域２０における投票値の積算値と同列に比較することはできない。従って、除外領域２４は、対応点偏差座標(dx0,dy0)の算出に用いる対象から除外することが望ましい。
【０１２０】
また、ステップＳ１２の処理において、画像処理プロセッサ１３は、以上のようにして算出した対応点偏差座標(dx0,dy0)の情報を、データ出力インターフェース１５を通じて外部装置へ出力する。或いは、画像処理プロセッサ１３は、第１画像における注目点の座標(x01, y01)と対応点偏差座標(dx0, dy0)とに基づいて、第２画像における対応点の座標(x02, y02)を算出し、その座標(x02,y02)の情報を、データ出力インターフェース１５を通じて外部装置へ出力する。以上に示した処理が、画像処理装置１０における対応点探索処理である。
【０１２１】
画像処理装置１０の対応点探索処理によれば、従来の投票処理と同様に、複数の投票領域２０のうち、周波数成分(u,v)に応じて定まる投票直線３１と交差する交差領域２０ａに対して投票値が積算され、その投票値の積算値の分布に応じて目的の座標が導出される。ここで、目的の座標は、対応点偏差座標(dx,dy)である。
【０１２２】
そして、画像処理装置１０の対応点探索処理によれば、投票処理の対象となる投票領域２０が、投票処理の途中段階以降（Ｓ１０）において一部の領域に限定される。例えば、投票処理の途中段階において、高レベル領域２１とその近隣の領域とが除かれた残りの投票領域２０、又は低レベル領域２２が、投票処理の対象から除外される。
【０１２３】
従って、投票空間１００が高い空間分解能で離散化され、多数の投票領域２０が設定された場合でも、重要でない投票領域２０に対する投票処理が途中段階以降は省略され、画像処理プロセッサ１３の演算負荷は低く抑えられる。そのため、画像処理装置１０によれば、投票処理によって投票空間１００における目的の座標を導出する場合に、高精度かつ比較的軽い演算負荷で目的の座標を導出することが可能となる。
【０１２４】
また、投票空間１００が多数の小さな投票領域２０に区分されている場合、投票処理の途中段階において、投票直線３１が交差する交差部が、１つの投票領域２０に対して特に集中する状況は生じにくい。そのため、個々の投票領域２０ごとに投票値の積算値の状況が判定された場合、交差部の分布を正しく判断して適正な除外領域２４を特定することができなくなる。
【０１２５】
画像処理装置１０においては、投票空間１００内で一部のかつ一連の範囲を占める投票領域２０の集合からなる判定用部分領域２０ｂごとに、投票値の積算値の代表値のレベル判定に基づく除外領域２４の特定が行われる（Ｓ２１〜Ｓ２４）。これにより、投票領域２０の大きさに関わらず、投票空間１００における交差部の分布を反映した適切な除外領域２４の特定が可能となる。
【０１２６】
また、画像処理装置１０において、投票処理に適用する投票直線３１の順序、即ち、周波数成分(u,v)の選択順序は、２つの周波数画像Ｆ1(u,v)、Ｆ2(u,v)の間の相関度を表すクロススペクトルのパワーに応じた順序に設定される（Ｓ３）。これにより、比較的早い途中段階において、交差部が集中する領域と交差部がほとんど存在しない領域との区分が明確となり、比較的早い段階で、除外領域２４の特定を適切に行うことが可能となる。
【０１２７】
以上に示した実施形態は、本発明をＰＳＡ法に基づく対応点探索処理に適用した例であるが、本発明は、投票空間内の投票領域各々について、複数の面又は線が交差する交差領域２０ａを特定し、その交差領域２０ａに対応付けて投票値を加算（積算）する投票処理全般に適用可能である。
【０１２８】
例えば、ハフ変換によって画像から円を抽出する場合、エッジ画像における画素各々に対応する投票空間が設定される。この投票空間は、円を特定するための中心位置の座標(a,b)及円の半径rの３つのパラメータの値を座標値とする３次元の有限の空間である。
【０１２９】
さらに、ハフ変換を行う画像処理装置は、その投票空間（パラメータ空間）が離散化された部分領域である複数の投票領域各々のうち、エッジ画像内の１つの画素を中心とする円に相当する投票空間内での円錐面と交差する交差領域を特定する。
【０１３０】
さらに、ハフ変換を行う画像処理装置は、円錐面と交差する投票領域に対応付けて投票値を加算する投票処理が実行する。その投票処理は、エッジ画像の各画素に対応する複数の円錐面各々について順次実行され、これにより、複数の円錐面各々と交差する投票領域において投票値が積算される。そして、投票空間における投票値の積算値のピーク位置の座標が導出される。
【０１３１】
本発明がハフ変換に適用された場合、ハフ変換を行う画像処理装置は、投票処理の途中段階において、ステップＳ２１〜Ｓ２５に示した処理と同様にして、投票空間内の一部の投票領域を除外領域として特定し、特定した除外領域を、それ以降の投票処理の対象から排除する。そうすることにより、ハフ変換においても、前述した実施形態と同様の作用及び効果が得られる。
【符号の説明】
【０１３２】
１０  画像処理装置
１１  画像入力インターフェース
１２  フレームメモリ
１３  画像処理プロセッサ
１４  ＲＯＭ
１５  データ出力インターフェース
２０  投票領域
２０ａ  交差領域
２０ｂ  判定用部分領域
２１  高レベル領域
２２  低レベル領域
２３  中レベル領域
３１  投票直線
１３１  周波数データ処理モジュール
１３２  直線導出モジュール
１３３  投票処理モジュール
１３４  除外領域特定モジュール
１３５  投票領域制限モジュール
１３６  対応点座標算計算モジュール
Ｓ１〜Ｓ２５  処理手順の識別符号
【図１】
2011221788.tif 000007
【図２】
2011221788.tif 000008
【図３】
2011221788.tif 000009
【図４】
2011221788.tif 000010
【図５】
2011221788.tif 000011
【図６】
2011221788.tif 000012
【図７】
2011221788.tif 000013
【図８】
2011221788.tif 000014
【図９】
2011221788.tif 000015
【図１０】
2011221788.tif 000016
【図１１】
2011221788.tif 000017
【図１２】
2011221788.tif 000018