画像特徴点抽出方法
【課題】各種オペレータを用いて得ることができる特徴点から、不要に抽出された点を排除し、マッチング処理の対応付け等に用いる特徴点を、対象物の変動に追随して同じように変動していく、マッチング用モデルとの形状誤差が少なく、対応付けの容易な不変性の高い点に絞込んで、マッチング処理を精度よく、且つ高速に行う。
【解決手段】画像データから特徴点を抽出するための画像特徴点抽出方法において、画像を変動させて複数枚の画像データを取得し、各画像データごとに特徴点を抽出し、抽出した特徴点の変動前の画像データにおける位置を求め、画像変動に追随して抽出される特徴点のみを選択し、他の点を排除する。
【解決手段】画像データから特徴点を抽出するための画像特徴点抽出方法において、画像を変動させて複数枚の画像データを取得し、各画像データごとに特徴点を抽出し、抽出した特徴点の変動前の画像データにおける位置を求め、画像変動に追随して抽出される特徴点のみを選択し、他の点を排除する。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像特徴点抽出方法に係り、特に、回転、スケール、平行移動などアフィン変換で示すことができる変動が対象物に対して発生する場合のマッチング処理を精度良く、かつ高速に行なう際に用いるのに好適な、各種オペレータを用いて得ることのできる特徴点から、不要に抽出された点を排除し、マッチング処理の対応付け等に用いる特徴点を、対象物の変動に追随して同じように変動していく、マッチング用モデルとの形状誤差が少なく、対応付けの容易な不変性の高い点に絞込むことが可能な画像特徴点抽出方法に関するものである。
【背景技術】
【0002】
従来の画像処理システムでは、Harrisオペレータ(非特許文献1、特許文献1)やSUSANオペレータ(非特許文献2、特許文献2)によって特徴点を抽出する手法が採られている。
【0003】
例えば、特許文献1は、複数の画像の位置合わせを行う方法に関するものであるが、複数の画像の対応付けの基準点として、これらのオペレータで得られる特徴点を用いて、特徴点ペアを選択し、画像の位置合わせ処理を行っている。
【0004】
また、これらのオペレータで得られる特徴点を調整する手法として特許文献2が、これらのオペレータの問題点を改良した特徴点検出方法として特許文献3がある。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開2008−197917号公報
【特許文献2】特開2006−190201号公報
【特許文献3】特許第3764364号公報
【非特許文献】
【0006】
【非特許文献1】C. G. Harris and M. Stephens,“A combined corner and edge detector,”In Proc. 4th Alvey Vision Conf., Manchester, pages 147-151, 1988.
【非特許文献2】S.M.Smith and J.M.Brady,“SUSAN-a new approach to low lavel image processing”,Int. J. Compt. Vis.,vol.23,no.1,pp.45-78,May 1997.
【発明の概要】
【発明が解決しようとする課題】
【0007】
Harrisオペレータ、SUSANオペレータ等は、局所的なフィルタ処理によるコーナー検出オペレータである。コーナーは、2方向に濃度変化があるので、安定した位置の検出ができ、対応が取りやすいという特性があるので、マッチング処理の対応付けの特徴点としてしばしば用いられる。これらオペレータは確かにコーナーを捉えることができているが、回転、スケール、平行移動などアフィン変換で示すことができるすべての変動を加えた画像に対して、常に同一の出力結果が得られるわけではない。例えば、これらオペレータは、局所的な処理のため、大局的なコーナーだけでなく、図1に例示するような直線分のジャギー(ビットマップ画像上に発生する、階段状のギザギザ)部分に反応し、人間の目で見るとコーナーではない点を抽出することがしばしばある。
【0008】
このような不要な点が抽出されることで、マッチング処理において、処理時間の増加や誤検出などの問題が発生する。
【0009】
また、これらオペレータは円形ウインドウを用い、回転に対する不変性を考慮はしているものの、反応点は必ずしも同一点が出力されるわけではない。
【0010】
さらに、対象物の傾きによっては、コーナーに対する特徴抽出器の反応が鈍り、図2(A)に例示するように、必要な点が抽出されない場合がある。これは稀なケースであり、図2(B)に例示するように、例えば1度傾きが変われば、必要点が抽出されるようになることがほとんどである。しかし、必要点が抽出されないと、マッチング処理において、検出エラーが発生してしまうため、問題である。
【0011】
又、例えば、特許文献1の実施例では、Harrisオペレータによって特徴点を抽出するとあるが、先に記載したように、撮像した画像によっては、特許文献1で特徴点として定義している「画像のエッジ部であり、かつ、直線のエッジではない点」を安定して抽出できるとは限らず、図1に例示したように、ジャギーに反応してしまうことがある。
【0012】
複数の画像の位置合わせを行うための基準点に使う、これら特徴点は、より不変性の高い点に絞込むことでより高い効果が得られるはずである。
【0013】
また、特許文献2では、1枚の学習用モデル画像と、複数枚の学習用入力画像を撮像し、それぞれから特徴点、及び特徴量を抽出し、学習用モデル画像とすべての学習用入力画像とでマッチング処理を行い、位置決めに使われた頻度が高い特徴点のみを登録する、という手法が用いられているが、精度を保つために、抽出特徴点の数が増えるほど、特徴量算出にかかる時間が増え、処理時間がかかる。さらに、学習用モデル画像を撮像する際、理想的な撮像環境が用意されることが望ましいとあるが、これでは、特許文献2の課題の一つである、「操作者のわずらわしさの解消」は実現されていない。また、集計処理を行う際、学習用モデル画像と学習用入力画像とでマッチング処理を行うが、先に述べた、各種オペレータの問題点により、誤認識する恐れがあり、必ずしも、必要な特徴点が正しく抽出されるとは限らない。
【0014】
本発明は、前記従来の問題点を解決するべくなされたもので、各種オペレータを用いて得ることができる特徴点から、不要に抽出された点を排除し、マッチング処理の対応付け等に用いる特徴点を、対象物の変動に追随して同じように変動していく、マッチング用モデルとの形状誤差が少なく、対応付けの容易な不変性の高い点に絞込むことが可能な画像特徴点抽出方法を提供することを課題とする。
【課題を解決するための手段】
【0015】
図3に、本発明の概要を示す。図3(A)に例示するように対象物が傾いている場合、ジャギー部分にコーナー抽出器が反応し、不要な特徴点が多数抽出される。これを図3(B)に例示するように回転させると、ジャギー部分は平坦になり、コーナー抽出器が反応しない。多くの画像から抽出される特徴点、つまり、画像変動に追随して抽出される点のみを必要点とし、他の点を排除することで、コーナー点のみを特徴点として抽出することができる。
【0016】
本発明は、このような知見に着目してなされたもので、画像データから特徴点を抽出するための画像特徴点抽出方法において、画像を変動させて複数枚の画像データを取得し、各画像データごとに特徴点を抽出し、抽出した特徴点の変動前の画像データにおける位置を求め、画像変動に追随して抽出される特徴点のみを選択し、他の点を排除することにより、前記課題を解決したものである。
【0017】
ここで、予想される特徴点の周辺に、所定領域に区分された投票空間を設定し、画像を変動させる毎に、変動前の画像の投票空間に、真値を中心に距離が遠くなるほどスコアが小さくなるような重み付けした投票値を加算し、必要な変動についての投票が終了したら、投票空間において、得票数が所定値以上の点について、ラベリング処理を行い、各ラベル塊の面積、最大得票数、総得票数、ラベル重心を算出し、ラベル塊の最大得票数、平均得票数について、閾値処理を行って、特徴点か否かを判定し、特徴点であると判定されたものについては、ラベル塊の重心を特徴点の座標とすることができる。
【0018】
また、前記特徴点の抽出を、予め設定した特徴抽出領域についてのみ行うことができる。
【発明の効果】
【0019】
本発明によれば、従来の手法に比べ、操作者の手を煩わせることなく、かつ、高速に、回転、スケール、平行移動などアフィン変換で示すことができる様々な変動に対して、追随性が高い点を特徴点として抽出できるので、位置決め処理の対応点として用いる場合、マッチング用モデルとの形状誤差が少なく、対応付けが容易であり、位置決め精度の向上が期待できる。
【0020】
又、不安定な点の抽出を防ぐことで、特徴点の全体数を削減できることから、位置決め処理量を削減でき、高速化することができる。
【0021】
更に、不安定な点の抽出を防ぐことで、位置決め処理時の誤検出発生を抑制でき、誤検出検査の処理を簡略化できることで、安定した位置決めを高速に行うことができる。
【図面の簡単な説明】
【0022】
【図1】従来の特徴点誤抽出の原因の一つであるジャギーの例を示す図
【図2】従来の問題点の一つである必要点抜け事例を示す図
【図3】本発明の原理を示す図
【図4】本発明を実施するためのシステム構成の例を示す図
【図5】本発明の第1実施形態の処理手順を示すフローチャート
【図6】(A)前記実施形態における基準画像データのコーナー抽出結果及び(B)投票空間の例を示す図
【図7】同じく対象物姿勢の変動画像の例を示す図
【図8】同じく投票処理の様子を示す図
【図9】同じくラベル塊の例を示す図
【図10】同じく近隣の特徴点の除外例を示す図
【図11】本発明の第2実施形態の概要を示す図
【図12】同じく処理手順を示すフローチャート
【図13】第3実施形態の処理手順を示すフローチャート
【図14】同じく原画像の例を示す図
【図15】同じく特徴点が近接する時の処理の例を示す図
【図16】同じくエッジセグメントと起点の設定例を示す図
【図17】同じく境界追跡による変曲点取得例を示す図
【発明を実施するための形態】
【0023】
以下図面を参照して、本発明の実施形態を詳細に説明する。
【0024】
図4は、本発明を実施するのに用いられるシステムの構成例を示す図である。このシステムは、特徴点を抽出する対象物2を吸着し、撮像位置へセットするための吸着ノズル1と、該吸着ノズル1や照明装置3などの動作を制御するマシン制御装置10と、対象物2を撮像するための標準カメラ4及び高解像度カメラ5と、撮像された画像を処理する画像処理装置20とによって構成される。
【0025】
マシン制御装置10は、通常、対象物2のサイズによって、撮像するカメラ4又は5を選択し、対象物2を吸着ノズル1で吸着し、選択したカメラ4又は5の撮像位置にセットする。さらに、選択したカメラで撮像できるよう照明装置3を移動、点灯させ、画像処理装置20にインタフェース26を介して、選択したカメラチャネル情報とともに処理実行を指示する。画像処理装置20は、指定されたカメラ4又は5を制御し、対象物2の画像を撮像、A/Dコンバータ21でデジタル化し、画像メモリ22に多値画像データとして記憶する。画像処理装置20の演算部24は、画像メモリ22のデータに対して、各種処理を行い、対象物2から特徴点を抽出する。途中、生成させる処理データは、作業用メモリ23に記憶される。図において、25は制御部である。
【0026】
次に、図5のフローチャートに沿って、画像処理装置20での処理手順について、詳細に説明する。
【0027】
(1)撮像(ステップs1)
画像処理装置20は、指定されたカメラ4又は5を制御し、基準姿勢の対象物2の画像を撮像、A/Dコンバータ21でデジタル化し、画像メモリ22に基準画像データとして記憶させる。
【0028】
(2)特徴抽出(ここではコーナー抽出)処理(ステップs2)
撮像した基準画像についてコーナー抽出処理を行う。コーナー抽出は、例えばHarrisやSUSANなど、コーナー抽出器を用いて行えばよい。図6(A)に例示するようなコーナー抽出結果は、作業用メモリ23に格納される。
【0029】
(3)投票空間作成(ステップs3)
作業用メモリ23に、図6(B)に例示するような投票空間を設ける。投票空間の桝目サイズは、撮像時刻変化、形状誤差等の許容誤差(マージン)を考慮して設定する。投票空間のサイズは、基準画像から抽出したコーナー座標のX、Y方向のエンベロプ(有効サイズ)を求め、マージンを加えて設定する。ここで、有効な投票空間の桝をすべて0クリアしておく。
【0030】
(4)対象物姿勢を変動(ステップs4)
吸着ノズル1をマシン制御装置10で制御することで、対象物2に、図7に例示する如く、回転、スケール、平行移動などアフィン変換で示すことができる変動を与える。
【0031】
具体的には、吸着ノズル1を回転、平行移動させることで、対象物2に回転、平行移動変動を与えることができる。回転角度は、例えば1度ずつなど、細かく回転させることが望ましいが、10度ずつなど大きく回転させても良い。また、カメラ4及び/又は5にズームレンズを取り付け、倍率を変えることで、対象物2に拡大/縮小等のスケール変動を与えることができる。このような方法で対象物2に変動を与える場合、どのような変動を与えたかが明確で、その通り、正確に対象物2を移動させることが必要となる。
【0032】
このための機構がない場合は、画像データをアフィン変換させることによって、人工的に同等の画像データを生成し、使用してもかまわない。このとき、画像補間手法によって補間誤差が発生し、また、画質が劣化するので、ステップs3で考慮すべき許容誤差に加えておくことが望ましい。
【0033】
(5)撮像(ステップs5)
ステップs4で対象物2及び/又はズームレンズの倍率を変動させた場合、再度撮像し、画像メモリ22に多値画像データとして記憶させる。なお、画像処理にてアフィン変換させて画像を作成した場合、撮像処理は不要である。
【0034】
(6)コーナー抽出処理(ステップs6)
ステップs5で撮像した画像データ、もしくは、ステップs4で生成した画像データに対して、コーナー抽出処理を行う。ステップs2と同等の処理となる。
【0035】
(7)コーナー点座標逆変換(ステップs7)
ステップs6で抽出したコーナー点の座標について、ステップs4で対象物に与えた変動の逆変換を行い、投票空間上の座標を算出する。
【0036】
(8)投票(ステップs8)
図8に例示する如く、ステップs7で求めた投票座標を元に、ステップs3で設定したコーナー座標に対応する投票空間の桝目に投票する。
【0037】
ここでの投票処理は、ステップs2で抽出したコーナー座標に対応する桝目を中心に、その周囲の桝目に対して、真値を中心に距離が遠くなるほどスコアが小さくなるような重み付けした投票値を加算していく処理とすることができる。コーナー抽出器誤差や対象物の形状誤差を、投票空間の桝目サイズだけでなく、投票値の重み付けを加えることで、より誤差への対応力が上がり、精度の高い特徴点位置の抽出が可能となる。
【0038】
(9)集計(ステップs9)
必要な変動についての投票が終了したら、投票空間において、得票数が所定値、例えば1以上の点について、ラベリング処理を行い、図9に例示するような各ラベル塊の面積、最大得票数、総得票数、ラベル重心を算出する。図9において、桝目の濃度は得票数を示す。白部分は得票数が0、濃度が濃くなっている程、得票数が大きい。最大得票数が大きいものは、投票空間の桝目以内の誤差で変動に追随していることを示し、特徴点として適した点であることを示している。図9において、ラベル塊の輪郭線を太線で示している。ラベル塊の面積は、変動時の検出誤差の大きさを示す。ラベル塊の面積が許容値以内のものについては、総得票数/面積(平均得票数)でも評価する。ラベル塊の面積が許容値以上のものは、特徴点としては不適な点とみなして予め除外する。
【0039】
その後、ラベル塊の最大得票数、平均得票数について、しきい値処理を行い、特徴点か否かを判定する。特徴点の座標は、ラベル塊の重心とする。
【0040】
また、他の特徴点が近くに存在することは、誤検出の可能性を高めるので、指定距離以上、離れていることも抽出条件とする。図10に例示するように、得票数の順に特徴点の指定距離以内の近隣の特徴点を除外する。
【0041】
特徴点の得票数は、0〜1の値に正規化して、特徴点の付加情報として一緒に出力する。このデータはマッチング処理時の特徴点の重み係数として使用することができる。
【0042】
また、重み係数の高い注目特徴点から優先的に対応付けを行なうようにすれば、誤検出の可能性を下げ、効率良く位置決めができる。
【0043】
次に、本発明の第2実施形態として、第1実施形態よりも短時間で必要点を抽出する手法を示す。
【0044】
図11に第2実施形態の概要を示す。この第2実施形態では、図11(A)に例示するような基準画像から抽出した、図11(B)に例示するような特徴点座標を基準に、図11(C)に例示するような変動画像で特徴点が抽出し得る領域Aを、図11(D)に例示するように設定する。設定した領域Aに、図11(E)に例示するような特徴抽出処理を行い、図11(F)に例示する如く、特徴点Cが得られれば、基準画像上の点を必要点Cとし、特徴点が得られなければ、基準画像上の点を不要点C´として除去する。
【0045】
第1実施形態では、変動画像の全領域を特徴抽出対象としたのに対して、第2実施形態では、特徴抽出対象を領域Aに限定することで、特徴抽出にかかる時間を短縮し、高速に処理を行うことが可能となる。
【0046】
但し、第2実施形態では、基準画像から全ての必要点が抽出されていることが前提となる。図2(A)に示したように、必要点が基準画像から抽出されない場合には、変動画像に特徴抽出領域が設定されず、検出もれの原因となる。従って、基準画像から全ての特徴点が抽出されていることが保証されない場合は、第1実施形態の方が良い。
【0047】
次に、図12のフローチャートに沿って、第2実施形態の処理手順を詳細に説明する。
【0048】
(1)撮像(ステップs101)
図4に示した画像処理装置20は、指定されたカメラ4又は5を制御し、基準姿勢の対象物2の画像を撮像、A/Dコンバータ21でデジタル化し、画像メモリ22に基準画像データとして記憶させる(図11(A))。
【0049】
(2)特徴抽出(ここではコーナー抽出)処理(ステップs102)
撮像した基準画像についてコーナーCの抽出処理を行う(図11(B))。コーナー抽出は、例えばHarrisやSUSANなど、コーナー抽出器を用いて行えばよい。コーナー抽出結果は作業用メモリ23に格納される。
【0050】
(3)対象物姿勢を変動(ステップs103)
吸着ノズル1をマシン制御装置10で制御することで、対象物2に回転、スケール、平行移動などアフィン変換で示すことができる変動を与える(図11(C))。
【0051】
具体的には、吸着ノズル1を回転、平行移動させることで、対象物2に回転、平行移動変動を与えることができる。回転角度は、例えば1度ずつなど、細かく回転させることが望ましいが、10度ずつなど大きく回転させても良い。また、カメラ4及び/又は5にズームレンズを取り付け、倍率を変えることで、対象物2に拡大/縮小等のスケール変動を与えることができる。このような方法で対象物2に変動を与える場合、どのような変動を与えたかが明確で、その通り、正確に対象物2を移動させることが必要となる。
【0052】
このための機構がない場合は、画像データをアフィン変換させることによって、人工的に同等の画像データを生成し、使用してもかまわない。
【0053】
(4)撮像(ステップs104)
ステップs103で対象物2及び/又はズームレンズの倍率を変動させた場合、再度撮像し、画像メモリ22に多値画像データとして記憶させる。なお、画像処理にてアフィン変換した画像を作成した場合、ステップs104の撮像処理は不要である。
【0054】
(5)コーナー点座標変換(ステップs105)
ステップs102で抽出したコーナー点座標と対応する座標を、ステップs104で撮像した画像、もしくはステップs103で作成したアフィン変換画像上から求める。このとき、ステップs103で与えた変動量を用いて変換して対応付けする。
【0055】
ここで、ステップs103〜s105における基準画像の特徴点(コーナー)抽出に際して、第1実施形態のステップs4〜s8と同様の変動→投票によるコーナー抽出処理を行う。
【0056】
(6)抽出領域設定(ステップs106)
ステップs105で求めた座標を中心に、一定の範囲を設けて特徴抽出領域Aを設定する(図11(D))。第1実施形態と異なり、コーナーを抽出する領域を絞り込むことで、処理時間を短縮することが可能となる。
【0057】
(7)コーナー抽出処理(ステップs107)
ステップs106で設定した領域Aのみに対して、第1実施形態のステップs4〜s8と同様の変動→投票によるコーナー抽出処理を行う(図11(E))。コーナー点Cが得られた場合、基準画像上から抽出された点は必要点であると判断する。逆に、コーナー点が得られなかった場合、基準画像上から抽出された点を不要な点C’であると判断し、排除する(図11(F))。
【0058】
なお、前記説明においては、特徴点としてコーナー点が用いられていたが、特徴点の種類は、これに限定されない。
【0059】
次に、前記のようにして抽出した特徴点が不足する場合に、エッジセグメントの形状特性に合わせて、境界追跡の起点、終点に不変性の高い点を設定して、境界追跡による特徴点の追加で、より安定した結果が得られるように工夫した第3実施形態の処理手順を、図13のフローチャートに沿って、詳細に説明する。
【0060】
(1)撮像(ステップs201)
図4に示した画像処理装置20は、指定されたカメラ4又は5を制御し、図14に例示するような基準姿勢の対象物2´の画像を撮像、A/Dコンバータ21でデジタル化し、画像メモリ22に基準画像データとして記憶させる。
【0061】
(2)エッジ検出処理(ステップs202)
撮像した基準画像についてエッジ検出処理を行う。エッジは、例えばソーベルフィルタやガウシアンフィルタなどの、エッジ検出フィルタをかけ、しきい値処理することで検出する。各画素毎にエッジか否かを示すマークを付したエッジ検出結果は、作業用メモリ23に格納される。
【0062】
(3)コーナー度計算(ステップs203)
ステップs202で検出したエッジ点について、例えばHarrisやSUSANなど、コーナー抽出器を用いて、コーナーの角度に応じて、例えば180°の折返し(反転)コーナーは最高点、コーナーが無い直線は0点、90°のコーナーは中間点とされたコーナー度を計算する。計算結果は、各エッジ点の属性データとして、作業用メモリ23に格納される。
【0063】
(4)ラベリングによるセグメント化(ステップs204)
ステップs202で検出したエッジ点についてラベリングを行い、隣接するエッジ点をつなぎ合わせ、幾つかのエッジセグメントを生成する。ここで、図15に例示する如く、近傍距離内で同一セグメント上に複数の特徴点が抽出された場合は、ステップs203で求めたコーナー度によって、例えば、i)コーナー度が小さい方を無視する、ii)加重平均を採用する等の方法で一つの特徴点にまとめ、不安定な点の抽出を防ぐ。
【0064】
(5)エッジセグメントの形状特性判定処理(ステップs205)
ステップs204で求めたエッジセグメントを、図16に例示するように、開セグメント、折れ線を含みコーナー点がある閉セグメント、曲線のみで構成され、方向性のある閉曲線セグメント、円セグメントの4つのタイプに分類する。
【0065】
具体的には、エッジセグメントは、まず、境界追跡を行った場合に起点に戻ってくることのできる閉セグメントと、起点と終点が端点となっている開セグメントの2種類に分類できる。
【0066】
更に、閉セグメントは、コーナーがあり、折れ線を含む構成のものと、コーナーが一つもなく、曲線のみで構成されるものに2つに分類できる。後者の曲線のみで構成される場合は、更に、形状に方向性があるか、すなわち、円か否かで2つに分類できる。
【0067】
円であると判定した場合は、回転に対して不変性のある境界追跡の起点を設定することができず、これらの特徴点を利用するとノイズ成分としてマッチングの際に一致度を落とす点として働いてしまう。円については、エッジセグメント上にあえて特徴点を発生させない方が好結果を得ることができるので、重心(=中心)を特徴点とする。
【0068】
(6)開セグメント時の起点設定(ステップs206)
ステップs204で開セグメントと判定された場合、不変性の高い特徴点として、最低2つの端点を持っていることになる。端点は、ステップs203で計算したコーナー度についても高い値を示すので、これを元に判定してもよいし、この点を仮の起点として境界追跡を行い、次の進むべき方向が180°反転する点かどうかをチェックすることで、確実に端点を起点とすることができる。
【0069】
(7)コーナー点を含む閉セグメントの起点設定(ステップs207)
エッジセグメントにコーナー点がある場合は、最もコーナー度が高い点を起点とすることで起点の不変性を高めることができ、それにより境界追跡により抽出される特徴点の不変性も高めることができる。確実に不変性の高いコーナー点であると判定できる点が複数ある場合は、それらの点で複数の開セグメントに分割し、処理しても構わない。
【0070】
(8)方向性のある閉曲線セグメントの起点設定(ステップs208)
コーナー点のない閉曲線セグメントであっても方向性がある、すなわち円でないものは慣性主軸を求めることができる。この主軸線と閉曲線セグメントの交点は、回転に対して不変性の高い点である。よって、この閉曲線セグメントを、この点で複数の開セグメントに分割し、処理することができる。
【0071】
(9)境界追跡による変曲点取得(ステップs209)
ステップs205によりエッジセグメントを4つにタイプ分けし、タイプ別にステップs206〜ステップs208の処理を行うことで、起点から終点までの連続的な画素列のかたまりに帰着させることができる。
【0072】
ステップs209では、これらの一筆書きの曲線データを追跡し、曲率の高い点(起点〜終点間で最も離れている点)を抽出する。
【0073】
曲率の高い点の抽出方法は、いろいろ考えられるが、例えば図17に示すような方法で得ることができる。まず、起点と終点を結ぶ直線に対して、画素列の中で一番遠い点を選ぶ。その点で画素列を2分して、それぞれの画素列に同様の処理を再帰的に繰り返す。このとき、線分と点との距離の最小値を決めておき、その値より小さくなれば再帰処理を終了するものとする。
【0074】
この値を大きくすれば、大まかな折れ線近似曲線が得られ、より曲率の高い点に絞り込まれる。また、小さくすれば、より曲率の小さな点をも含む正確な折れ線近似曲線となるが、出力点は多くなる。この値は、対象物の形状に合わせて調整しなければならない。
【0075】
また、境界追跡区間の起点と終点が不変性の高い点であるので、等間隔で特徴点を発生させるような単純な方式を適用しても構わない。
【0076】
(10)ステップs205〜ステップs209の処理をエッジセグメント数だけ繰り返したら終了となる。
【0077】
この第3実施形態は、画像データからエッジ点を抽出し、隣接するエッジ点をつなぎ合わせてセグメント化し、エッジセグメントの形状を判定して、エッジセグメントの形状に合わせて境界追跡の起点と終点を設定することで、回転、スケール、平行移動などアフィン変換で示すことができる変動に対して安定し、かつ対応付けの取りやすい特徴点を選別することができる。
【0078】
ここで、前記起点と終点で与えられた区間を境界追跡し、曲率変化の高い点を検出して特徴点とすることができる。
【0079】
又、前記起点と終点で与えられた区間の点の重心を求め、特徴点とすることができる。
【0080】
又、前記エッジ点にコーナー度を測るオペレータをかけ、その出力値を特徴点の評価値として記憶しておき、明確なコーナーを持つ折れ線セグメントか否かを判定することができる。
【0081】
又、エッジセグメントの境界を追跡し、閉セグメントか開セグメントかを判定することができる。
【0082】
又、折れ線セグメントでない閉セグメントの場合、円か否かを判定し、円でなければ、慣性主軸にて2つの開セグメントに分割して処理をすることができる。
【0083】
又、円セグメントの場合、特徴点はセグメントの重心のみとし、エッジセグメント上の特徴点は削除することができる。
【0084】
又、ある近傍距離内で同一セグメント上に特徴点が複数抽出された場合は、特徴点の評価値(例えばコーナー度)で重み付けして一つの特徴点にまとめることができる。
【0085】
この第3実施形態によれば、次のような効果を奏する。
【0086】
(1)不変点を境界追跡の起点とすることで、回転、スケール、平行移動などアフィン変換で示すことができる変動に対して、追随性が高い点を特徴点として抽出できるので、位置決め処理の対応点として用いる場合、位置決め精度の向上が期待できる。
【0087】
(2)円の場合、セグメント上に不変点が存在しないので、特徴点はセグメントの重心のみとし、不安定なセグメント上の特徴点を削除して、特徴点の全体数を削減し、高速化することができる。
【0088】
(3)不変点を境界追跡の起点とすることで、回転、スケール、平行移動などアフィン変換で示すことができる変動に対して、追随性が高い点を特徴点として抽出できるので、位置決め処理時の誤検出発生を抑制でき、誤検出検査の処理を簡略化できることで、安定した位置決めを高速に行うことができる。
【0089】
なお、前記実施形態においては、いずれも、本発明が、吸着ノズルによって吸着された対象物の画像の特徴点抽出に適用されていたが、本発明の適用対象は、これに限定されない。
【符号の説明】
【0090】
1…吸着ノズル
2、2´…対象物
4…標準カメラ
5…高解像度カメラ
10…マシン制御装置
20…画像処理装置
22…画像メモリ
23…作業用メモリ
24…演算部
25…制御部
26…インタフェース
【技術分野】
【0001】
本発明は、画像特徴点抽出方法に係り、特に、回転、スケール、平行移動などアフィン変換で示すことができる変動が対象物に対して発生する場合のマッチング処理を精度良く、かつ高速に行なう際に用いるのに好適な、各種オペレータを用いて得ることのできる特徴点から、不要に抽出された点を排除し、マッチング処理の対応付け等に用いる特徴点を、対象物の変動に追随して同じように変動していく、マッチング用モデルとの形状誤差が少なく、対応付けの容易な不変性の高い点に絞込むことが可能な画像特徴点抽出方法に関するものである。
【背景技術】
【0002】
従来の画像処理システムでは、Harrisオペレータ(非特許文献1、特許文献1)やSUSANオペレータ(非特許文献2、特許文献2)によって特徴点を抽出する手法が採られている。
【0003】
例えば、特許文献1は、複数の画像の位置合わせを行う方法に関するものであるが、複数の画像の対応付けの基準点として、これらのオペレータで得られる特徴点を用いて、特徴点ペアを選択し、画像の位置合わせ処理を行っている。
【0004】
また、これらのオペレータで得られる特徴点を調整する手法として特許文献2が、これらのオペレータの問題点を改良した特徴点検出方法として特許文献3がある。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開2008−197917号公報
【特許文献2】特開2006−190201号公報
【特許文献3】特許第3764364号公報
【非特許文献】
【0006】
【非特許文献1】C. G. Harris and M. Stephens,“A combined corner and edge detector,”In Proc. 4th Alvey Vision Conf., Manchester, pages 147-151, 1988.
【非特許文献2】S.M.Smith and J.M.Brady,“SUSAN-a new approach to low lavel image processing”,Int. J. Compt. Vis.,vol.23,no.1,pp.45-78,May 1997.
【発明の概要】
【発明が解決しようとする課題】
【0007】
Harrisオペレータ、SUSANオペレータ等は、局所的なフィルタ処理によるコーナー検出オペレータである。コーナーは、2方向に濃度変化があるので、安定した位置の検出ができ、対応が取りやすいという特性があるので、マッチング処理の対応付けの特徴点としてしばしば用いられる。これらオペレータは確かにコーナーを捉えることができているが、回転、スケール、平行移動などアフィン変換で示すことができるすべての変動を加えた画像に対して、常に同一の出力結果が得られるわけではない。例えば、これらオペレータは、局所的な処理のため、大局的なコーナーだけでなく、図1に例示するような直線分のジャギー(ビットマップ画像上に発生する、階段状のギザギザ)部分に反応し、人間の目で見るとコーナーではない点を抽出することがしばしばある。
【0008】
このような不要な点が抽出されることで、マッチング処理において、処理時間の増加や誤検出などの問題が発生する。
【0009】
また、これらオペレータは円形ウインドウを用い、回転に対する不変性を考慮はしているものの、反応点は必ずしも同一点が出力されるわけではない。
【0010】
さらに、対象物の傾きによっては、コーナーに対する特徴抽出器の反応が鈍り、図2(A)に例示するように、必要な点が抽出されない場合がある。これは稀なケースであり、図2(B)に例示するように、例えば1度傾きが変われば、必要点が抽出されるようになることがほとんどである。しかし、必要点が抽出されないと、マッチング処理において、検出エラーが発生してしまうため、問題である。
【0011】
又、例えば、特許文献1の実施例では、Harrisオペレータによって特徴点を抽出するとあるが、先に記載したように、撮像した画像によっては、特許文献1で特徴点として定義している「画像のエッジ部であり、かつ、直線のエッジではない点」を安定して抽出できるとは限らず、図1に例示したように、ジャギーに反応してしまうことがある。
【0012】
複数の画像の位置合わせを行うための基準点に使う、これら特徴点は、より不変性の高い点に絞込むことでより高い効果が得られるはずである。
【0013】
また、特許文献2では、1枚の学習用モデル画像と、複数枚の学習用入力画像を撮像し、それぞれから特徴点、及び特徴量を抽出し、学習用モデル画像とすべての学習用入力画像とでマッチング処理を行い、位置決めに使われた頻度が高い特徴点のみを登録する、という手法が用いられているが、精度を保つために、抽出特徴点の数が増えるほど、特徴量算出にかかる時間が増え、処理時間がかかる。さらに、学習用モデル画像を撮像する際、理想的な撮像環境が用意されることが望ましいとあるが、これでは、特許文献2の課題の一つである、「操作者のわずらわしさの解消」は実現されていない。また、集計処理を行う際、学習用モデル画像と学習用入力画像とでマッチング処理を行うが、先に述べた、各種オペレータの問題点により、誤認識する恐れがあり、必ずしも、必要な特徴点が正しく抽出されるとは限らない。
【0014】
本発明は、前記従来の問題点を解決するべくなされたもので、各種オペレータを用いて得ることができる特徴点から、不要に抽出された点を排除し、マッチング処理の対応付け等に用いる特徴点を、対象物の変動に追随して同じように変動していく、マッチング用モデルとの形状誤差が少なく、対応付けの容易な不変性の高い点に絞込むことが可能な画像特徴点抽出方法を提供することを課題とする。
【課題を解決するための手段】
【0015】
図3に、本発明の概要を示す。図3(A)に例示するように対象物が傾いている場合、ジャギー部分にコーナー抽出器が反応し、不要な特徴点が多数抽出される。これを図3(B)に例示するように回転させると、ジャギー部分は平坦になり、コーナー抽出器が反応しない。多くの画像から抽出される特徴点、つまり、画像変動に追随して抽出される点のみを必要点とし、他の点を排除することで、コーナー点のみを特徴点として抽出することができる。
【0016】
本発明は、このような知見に着目してなされたもので、画像データから特徴点を抽出するための画像特徴点抽出方法において、画像を変動させて複数枚の画像データを取得し、各画像データごとに特徴点を抽出し、抽出した特徴点の変動前の画像データにおける位置を求め、画像変動に追随して抽出される特徴点のみを選択し、他の点を排除することにより、前記課題を解決したものである。
【0017】
ここで、予想される特徴点の周辺に、所定領域に区分された投票空間を設定し、画像を変動させる毎に、変動前の画像の投票空間に、真値を中心に距離が遠くなるほどスコアが小さくなるような重み付けした投票値を加算し、必要な変動についての投票が終了したら、投票空間において、得票数が所定値以上の点について、ラベリング処理を行い、各ラベル塊の面積、最大得票数、総得票数、ラベル重心を算出し、ラベル塊の最大得票数、平均得票数について、閾値処理を行って、特徴点か否かを判定し、特徴点であると判定されたものについては、ラベル塊の重心を特徴点の座標とすることができる。
【0018】
また、前記特徴点の抽出を、予め設定した特徴抽出領域についてのみ行うことができる。
【発明の効果】
【0019】
本発明によれば、従来の手法に比べ、操作者の手を煩わせることなく、かつ、高速に、回転、スケール、平行移動などアフィン変換で示すことができる様々な変動に対して、追随性が高い点を特徴点として抽出できるので、位置決め処理の対応点として用いる場合、マッチング用モデルとの形状誤差が少なく、対応付けが容易であり、位置決め精度の向上が期待できる。
【0020】
又、不安定な点の抽出を防ぐことで、特徴点の全体数を削減できることから、位置決め処理量を削減でき、高速化することができる。
【0021】
更に、不安定な点の抽出を防ぐことで、位置決め処理時の誤検出発生を抑制でき、誤検出検査の処理を簡略化できることで、安定した位置決めを高速に行うことができる。
【図面の簡単な説明】
【0022】
【図1】従来の特徴点誤抽出の原因の一つであるジャギーの例を示す図
【図2】従来の問題点の一つである必要点抜け事例を示す図
【図3】本発明の原理を示す図
【図4】本発明を実施するためのシステム構成の例を示す図
【図5】本発明の第1実施形態の処理手順を示すフローチャート
【図6】(A)前記実施形態における基準画像データのコーナー抽出結果及び(B)投票空間の例を示す図
【図7】同じく対象物姿勢の変動画像の例を示す図
【図8】同じく投票処理の様子を示す図
【図9】同じくラベル塊の例を示す図
【図10】同じく近隣の特徴点の除外例を示す図
【図11】本発明の第2実施形態の概要を示す図
【図12】同じく処理手順を示すフローチャート
【図13】第3実施形態の処理手順を示すフローチャート
【図14】同じく原画像の例を示す図
【図15】同じく特徴点が近接する時の処理の例を示す図
【図16】同じくエッジセグメントと起点の設定例を示す図
【図17】同じく境界追跡による変曲点取得例を示す図
【発明を実施するための形態】
【0023】
以下図面を参照して、本発明の実施形態を詳細に説明する。
【0024】
図4は、本発明を実施するのに用いられるシステムの構成例を示す図である。このシステムは、特徴点を抽出する対象物2を吸着し、撮像位置へセットするための吸着ノズル1と、該吸着ノズル1や照明装置3などの動作を制御するマシン制御装置10と、対象物2を撮像するための標準カメラ4及び高解像度カメラ5と、撮像された画像を処理する画像処理装置20とによって構成される。
【0025】
マシン制御装置10は、通常、対象物2のサイズによって、撮像するカメラ4又は5を選択し、対象物2を吸着ノズル1で吸着し、選択したカメラ4又は5の撮像位置にセットする。さらに、選択したカメラで撮像できるよう照明装置3を移動、点灯させ、画像処理装置20にインタフェース26を介して、選択したカメラチャネル情報とともに処理実行を指示する。画像処理装置20は、指定されたカメラ4又は5を制御し、対象物2の画像を撮像、A/Dコンバータ21でデジタル化し、画像メモリ22に多値画像データとして記憶する。画像処理装置20の演算部24は、画像メモリ22のデータに対して、各種処理を行い、対象物2から特徴点を抽出する。途中、生成させる処理データは、作業用メモリ23に記憶される。図において、25は制御部である。
【0026】
次に、図5のフローチャートに沿って、画像処理装置20での処理手順について、詳細に説明する。
【0027】
(1)撮像(ステップs1)
画像処理装置20は、指定されたカメラ4又は5を制御し、基準姿勢の対象物2の画像を撮像、A/Dコンバータ21でデジタル化し、画像メモリ22に基準画像データとして記憶させる。
【0028】
(2)特徴抽出(ここではコーナー抽出)処理(ステップs2)
撮像した基準画像についてコーナー抽出処理を行う。コーナー抽出は、例えばHarrisやSUSANなど、コーナー抽出器を用いて行えばよい。図6(A)に例示するようなコーナー抽出結果は、作業用メモリ23に格納される。
【0029】
(3)投票空間作成(ステップs3)
作業用メモリ23に、図6(B)に例示するような投票空間を設ける。投票空間の桝目サイズは、撮像時刻変化、形状誤差等の許容誤差(マージン)を考慮して設定する。投票空間のサイズは、基準画像から抽出したコーナー座標のX、Y方向のエンベロプ(有効サイズ)を求め、マージンを加えて設定する。ここで、有効な投票空間の桝をすべて0クリアしておく。
【0030】
(4)対象物姿勢を変動(ステップs4)
吸着ノズル1をマシン制御装置10で制御することで、対象物2に、図7に例示する如く、回転、スケール、平行移動などアフィン変換で示すことができる変動を与える。
【0031】
具体的には、吸着ノズル1を回転、平行移動させることで、対象物2に回転、平行移動変動を与えることができる。回転角度は、例えば1度ずつなど、細かく回転させることが望ましいが、10度ずつなど大きく回転させても良い。また、カメラ4及び/又は5にズームレンズを取り付け、倍率を変えることで、対象物2に拡大/縮小等のスケール変動を与えることができる。このような方法で対象物2に変動を与える場合、どのような変動を与えたかが明確で、その通り、正確に対象物2を移動させることが必要となる。
【0032】
このための機構がない場合は、画像データをアフィン変換させることによって、人工的に同等の画像データを生成し、使用してもかまわない。このとき、画像補間手法によって補間誤差が発生し、また、画質が劣化するので、ステップs3で考慮すべき許容誤差に加えておくことが望ましい。
【0033】
(5)撮像(ステップs5)
ステップs4で対象物2及び/又はズームレンズの倍率を変動させた場合、再度撮像し、画像メモリ22に多値画像データとして記憶させる。なお、画像処理にてアフィン変換させて画像を作成した場合、撮像処理は不要である。
【0034】
(6)コーナー抽出処理(ステップs6)
ステップs5で撮像した画像データ、もしくは、ステップs4で生成した画像データに対して、コーナー抽出処理を行う。ステップs2と同等の処理となる。
【0035】
(7)コーナー点座標逆変換(ステップs7)
ステップs6で抽出したコーナー点の座標について、ステップs4で対象物に与えた変動の逆変換を行い、投票空間上の座標を算出する。
【0036】
(8)投票(ステップs8)
図8に例示する如く、ステップs7で求めた投票座標を元に、ステップs3で設定したコーナー座標に対応する投票空間の桝目に投票する。
【0037】
ここでの投票処理は、ステップs2で抽出したコーナー座標に対応する桝目を中心に、その周囲の桝目に対して、真値を中心に距離が遠くなるほどスコアが小さくなるような重み付けした投票値を加算していく処理とすることができる。コーナー抽出器誤差や対象物の形状誤差を、投票空間の桝目サイズだけでなく、投票値の重み付けを加えることで、より誤差への対応力が上がり、精度の高い特徴点位置の抽出が可能となる。
【0038】
(9)集計(ステップs9)
必要な変動についての投票が終了したら、投票空間において、得票数が所定値、例えば1以上の点について、ラベリング処理を行い、図9に例示するような各ラベル塊の面積、最大得票数、総得票数、ラベル重心を算出する。図9において、桝目の濃度は得票数を示す。白部分は得票数が0、濃度が濃くなっている程、得票数が大きい。最大得票数が大きいものは、投票空間の桝目以内の誤差で変動に追随していることを示し、特徴点として適した点であることを示している。図9において、ラベル塊の輪郭線を太線で示している。ラベル塊の面積は、変動時の検出誤差の大きさを示す。ラベル塊の面積が許容値以内のものについては、総得票数/面積(平均得票数)でも評価する。ラベル塊の面積が許容値以上のものは、特徴点としては不適な点とみなして予め除外する。
【0039】
その後、ラベル塊の最大得票数、平均得票数について、しきい値処理を行い、特徴点か否かを判定する。特徴点の座標は、ラベル塊の重心とする。
【0040】
また、他の特徴点が近くに存在することは、誤検出の可能性を高めるので、指定距離以上、離れていることも抽出条件とする。図10に例示するように、得票数の順に特徴点の指定距離以内の近隣の特徴点を除外する。
【0041】
特徴点の得票数は、0〜1の値に正規化して、特徴点の付加情報として一緒に出力する。このデータはマッチング処理時の特徴点の重み係数として使用することができる。
【0042】
また、重み係数の高い注目特徴点から優先的に対応付けを行なうようにすれば、誤検出の可能性を下げ、効率良く位置決めができる。
【0043】
次に、本発明の第2実施形態として、第1実施形態よりも短時間で必要点を抽出する手法を示す。
【0044】
図11に第2実施形態の概要を示す。この第2実施形態では、図11(A)に例示するような基準画像から抽出した、図11(B)に例示するような特徴点座標を基準に、図11(C)に例示するような変動画像で特徴点が抽出し得る領域Aを、図11(D)に例示するように設定する。設定した領域Aに、図11(E)に例示するような特徴抽出処理を行い、図11(F)に例示する如く、特徴点Cが得られれば、基準画像上の点を必要点Cとし、特徴点が得られなければ、基準画像上の点を不要点C´として除去する。
【0045】
第1実施形態では、変動画像の全領域を特徴抽出対象としたのに対して、第2実施形態では、特徴抽出対象を領域Aに限定することで、特徴抽出にかかる時間を短縮し、高速に処理を行うことが可能となる。
【0046】
但し、第2実施形態では、基準画像から全ての必要点が抽出されていることが前提となる。図2(A)に示したように、必要点が基準画像から抽出されない場合には、変動画像に特徴抽出領域が設定されず、検出もれの原因となる。従って、基準画像から全ての特徴点が抽出されていることが保証されない場合は、第1実施形態の方が良い。
【0047】
次に、図12のフローチャートに沿って、第2実施形態の処理手順を詳細に説明する。
【0048】
(1)撮像(ステップs101)
図4に示した画像処理装置20は、指定されたカメラ4又は5を制御し、基準姿勢の対象物2の画像を撮像、A/Dコンバータ21でデジタル化し、画像メモリ22に基準画像データとして記憶させる(図11(A))。
【0049】
(2)特徴抽出(ここではコーナー抽出)処理(ステップs102)
撮像した基準画像についてコーナーCの抽出処理を行う(図11(B))。コーナー抽出は、例えばHarrisやSUSANなど、コーナー抽出器を用いて行えばよい。コーナー抽出結果は作業用メモリ23に格納される。
【0050】
(3)対象物姿勢を変動(ステップs103)
吸着ノズル1をマシン制御装置10で制御することで、対象物2に回転、スケール、平行移動などアフィン変換で示すことができる変動を与える(図11(C))。
【0051】
具体的には、吸着ノズル1を回転、平行移動させることで、対象物2に回転、平行移動変動を与えることができる。回転角度は、例えば1度ずつなど、細かく回転させることが望ましいが、10度ずつなど大きく回転させても良い。また、カメラ4及び/又は5にズームレンズを取り付け、倍率を変えることで、対象物2に拡大/縮小等のスケール変動を与えることができる。このような方法で対象物2に変動を与える場合、どのような変動を与えたかが明確で、その通り、正確に対象物2を移動させることが必要となる。
【0052】
このための機構がない場合は、画像データをアフィン変換させることによって、人工的に同等の画像データを生成し、使用してもかまわない。
【0053】
(4)撮像(ステップs104)
ステップs103で対象物2及び/又はズームレンズの倍率を変動させた場合、再度撮像し、画像メモリ22に多値画像データとして記憶させる。なお、画像処理にてアフィン変換した画像を作成した場合、ステップs104の撮像処理は不要である。
【0054】
(5)コーナー点座標変換(ステップs105)
ステップs102で抽出したコーナー点座標と対応する座標を、ステップs104で撮像した画像、もしくはステップs103で作成したアフィン変換画像上から求める。このとき、ステップs103で与えた変動量を用いて変換して対応付けする。
【0055】
ここで、ステップs103〜s105における基準画像の特徴点(コーナー)抽出に際して、第1実施形態のステップs4〜s8と同様の変動→投票によるコーナー抽出処理を行う。
【0056】
(6)抽出領域設定(ステップs106)
ステップs105で求めた座標を中心に、一定の範囲を設けて特徴抽出領域Aを設定する(図11(D))。第1実施形態と異なり、コーナーを抽出する領域を絞り込むことで、処理時間を短縮することが可能となる。
【0057】
(7)コーナー抽出処理(ステップs107)
ステップs106で設定した領域Aのみに対して、第1実施形態のステップs4〜s8と同様の変動→投票によるコーナー抽出処理を行う(図11(E))。コーナー点Cが得られた場合、基準画像上から抽出された点は必要点であると判断する。逆に、コーナー点が得られなかった場合、基準画像上から抽出された点を不要な点C’であると判断し、排除する(図11(F))。
【0058】
なお、前記説明においては、特徴点としてコーナー点が用いられていたが、特徴点の種類は、これに限定されない。
【0059】
次に、前記のようにして抽出した特徴点が不足する場合に、エッジセグメントの形状特性に合わせて、境界追跡の起点、終点に不変性の高い点を設定して、境界追跡による特徴点の追加で、より安定した結果が得られるように工夫した第3実施形態の処理手順を、図13のフローチャートに沿って、詳細に説明する。
【0060】
(1)撮像(ステップs201)
図4に示した画像処理装置20は、指定されたカメラ4又は5を制御し、図14に例示するような基準姿勢の対象物2´の画像を撮像、A/Dコンバータ21でデジタル化し、画像メモリ22に基準画像データとして記憶させる。
【0061】
(2)エッジ検出処理(ステップs202)
撮像した基準画像についてエッジ検出処理を行う。エッジは、例えばソーベルフィルタやガウシアンフィルタなどの、エッジ検出フィルタをかけ、しきい値処理することで検出する。各画素毎にエッジか否かを示すマークを付したエッジ検出結果は、作業用メモリ23に格納される。
【0062】
(3)コーナー度計算(ステップs203)
ステップs202で検出したエッジ点について、例えばHarrisやSUSANなど、コーナー抽出器を用いて、コーナーの角度に応じて、例えば180°の折返し(反転)コーナーは最高点、コーナーが無い直線は0点、90°のコーナーは中間点とされたコーナー度を計算する。計算結果は、各エッジ点の属性データとして、作業用メモリ23に格納される。
【0063】
(4)ラベリングによるセグメント化(ステップs204)
ステップs202で検出したエッジ点についてラベリングを行い、隣接するエッジ点をつなぎ合わせ、幾つかのエッジセグメントを生成する。ここで、図15に例示する如く、近傍距離内で同一セグメント上に複数の特徴点が抽出された場合は、ステップs203で求めたコーナー度によって、例えば、i)コーナー度が小さい方を無視する、ii)加重平均を採用する等の方法で一つの特徴点にまとめ、不安定な点の抽出を防ぐ。
【0064】
(5)エッジセグメントの形状特性判定処理(ステップs205)
ステップs204で求めたエッジセグメントを、図16に例示するように、開セグメント、折れ線を含みコーナー点がある閉セグメント、曲線のみで構成され、方向性のある閉曲線セグメント、円セグメントの4つのタイプに分類する。
【0065】
具体的には、エッジセグメントは、まず、境界追跡を行った場合に起点に戻ってくることのできる閉セグメントと、起点と終点が端点となっている開セグメントの2種類に分類できる。
【0066】
更に、閉セグメントは、コーナーがあり、折れ線を含む構成のものと、コーナーが一つもなく、曲線のみで構成されるものに2つに分類できる。後者の曲線のみで構成される場合は、更に、形状に方向性があるか、すなわち、円か否かで2つに分類できる。
【0067】
円であると判定した場合は、回転に対して不変性のある境界追跡の起点を設定することができず、これらの特徴点を利用するとノイズ成分としてマッチングの際に一致度を落とす点として働いてしまう。円については、エッジセグメント上にあえて特徴点を発生させない方が好結果を得ることができるので、重心(=中心)を特徴点とする。
【0068】
(6)開セグメント時の起点設定(ステップs206)
ステップs204で開セグメントと判定された場合、不変性の高い特徴点として、最低2つの端点を持っていることになる。端点は、ステップs203で計算したコーナー度についても高い値を示すので、これを元に判定してもよいし、この点を仮の起点として境界追跡を行い、次の進むべき方向が180°反転する点かどうかをチェックすることで、確実に端点を起点とすることができる。
【0069】
(7)コーナー点を含む閉セグメントの起点設定(ステップs207)
エッジセグメントにコーナー点がある場合は、最もコーナー度が高い点を起点とすることで起点の不変性を高めることができ、それにより境界追跡により抽出される特徴点の不変性も高めることができる。確実に不変性の高いコーナー点であると判定できる点が複数ある場合は、それらの点で複数の開セグメントに分割し、処理しても構わない。
【0070】
(8)方向性のある閉曲線セグメントの起点設定(ステップs208)
コーナー点のない閉曲線セグメントであっても方向性がある、すなわち円でないものは慣性主軸を求めることができる。この主軸線と閉曲線セグメントの交点は、回転に対して不変性の高い点である。よって、この閉曲線セグメントを、この点で複数の開セグメントに分割し、処理することができる。
【0071】
(9)境界追跡による変曲点取得(ステップs209)
ステップs205によりエッジセグメントを4つにタイプ分けし、タイプ別にステップs206〜ステップs208の処理を行うことで、起点から終点までの連続的な画素列のかたまりに帰着させることができる。
【0072】
ステップs209では、これらの一筆書きの曲線データを追跡し、曲率の高い点(起点〜終点間で最も離れている点)を抽出する。
【0073】
曲率の高い点の抽出方法は、いろいろ考えられるが、例えば図17に示すような方法で得ることができる。まず、起点と終点を結ぶ直線に対して、画素列の中で一番遠い点を選ぶ。その点で画素列を2分して、それぞれの画素列に同様の処理を再帰的に繰り返す。このとき、線分と点との距離の最小値を決めておき、その値より小さくなれば再帰処理を終了するものとする。
【0074】
この値を大きくすれば、大まかな折れ線近似曲線が得られ、より曲率の高い点に絞り込まれる。また、小さくすれば、より曲率の小さな点をも含む正確な折れ線近似曲線となるが、出力点は多くなる。この値は、対象物の形状に合わせて調整しなければならない。
【0075】
また、境界追跡区間の起点と終点が不変性の高い点であるので、等間隔で特徴点を発生させるような単純な方式を適用しても構わない。
【0076】
(10)ステップs205〜ステップs209の処理をエッジセグメント数だけ繰り返したら終了となる。
【0077】
この第3実施形態は、画像データからエッジ点を抽出し、隣接するエッジ点をつなぎ合わせてセグメント化し、エッジセグメントの形状を判定して、エッジセグメントの形状に合わせて境界追跡の起点と終点を設定することで、回転、スケール、平行移動などアフィン変換で示すことができる変動に対して安定し、かつ対応付けの取りやすい特徴点を選別することができる。
【0078】
ここで、前記起点と終点で与えられた区間を境界追跡し、曲率変化の高い点を検出して特徴点とすることができる。
【0079】
又、前記起点と終点で与えられた区間の点の重心を求め、特徴点とすることができる。
【0080】
又、前記エッジ点にコーナー度を測るオペレータをかけ、その出力値を特徴点の評価値として記憶しておき、明確なコーナーを持つ折れ線セグメントか否かを判定することができる。
【0081】
又、エッジセグメントの境界を追跡し、閉セグメントか開セグメントかを判定することができる。
【0082】
又、折れ線セグメントでない閉セグメントの場合、円か否かを判定し、円でなければ、慣性主軸にて2つの開セグメントに分割して処理をすることができる。
【0083】
又、円セグメントの場合、特徴点はセグメントの重心のみとし、エッジセグメント上の特徴点は削除することができる。
【0084】
又、ある近傍距離内で同一セグメント上に特徴点が複数抽出された場合は、特徴点の評価値(例えばコーナー度)で重み付けして一つの特徴点にまとめることができる。
【0085】
この第3実施形態によれば、次のような効果を奏する。
【0086】
(1)不変点を境界追跡の起点とすることで、回転、スケール、平行移動などアフィン変換で示すことができる変動に対して、追随性が高い点を特徴点として抽出できるので、位置決め処理の対応点として用いる場合、位置決め精度の向上が期待できる。
【0087】
(2)円の場合、セグメント上に不変点が存在しないので、特徴点はセグメントの重心のみとし、不安定なセグメント上の特徴点を削除して、特徴点の全体数を削減し、高速化することができる。
【0088】
(3)不変点を境界追跡の起点とすることで、回転、スケール、平行移動などアフィン変換で示すことができる変動に対して、追随性が高い点を特徴点として抽出できるので、位置決め処理時の誤検出発生を抑制でき、誤検出検査の処理を簡略化できることで、安定した位置決めを高速に行うことができる。
【0089】
なお、前記実施形態においては、いずれも、本発明が、吸着ノズルによって吸着された対象物の画像の特徴点抽出に適用されていたが、本発明の適用対象は、これに限定されない。
【符号の説明】
【0090】
1…吸着ノズル
2、2´…対象物
4…標準カメラ
5…高解像度カメラ
10…マシン制御装置
20…画像処理装置
22…画像メモリ
23…作業用メモリ
24…演算部
25…制御部
26…インタフェース
【特許請求の範囲】
【請求項1】
画像データから特徴点を抽出するための画像特徴点抽出方法において、
画像を変動させて複数枚の画像データを取得し、
各画像データごとに特徴点を抽出し、
抽出した特徴点の変動前の画像データにおける位置を求め、
画像変動に追随して抽出される特徴点のみを選択し、他の点を排除することを特徴とする画像特徴点抽出方法。
【請求項2】
予想される特徴点の周辺に、所定領域に区分された投票空間を設定し、
画像を変動させる毎に、変動前の画像の投票空間に、真値を中心に距離が遠くなるほどスコアが小さくなるような重み付けした投票値を加算し、必要な変動についての投票が終了したら、投票空間において、得票数が所定値以上の点について、ラベリング処理を行い、
各ラベル塊の面積、最大得票数、総得票数、ラベル重心を算出し、
ラベル塊の最大得票数、平均得票数について、閾値処理を行って、特徴点か否かを判定し、
特徴点であると判定されたものについては、ラベル塊の重心を特徴点の座標とすることを特徴とする請求項1に記載の画像特徴点抽出方法。
【請求項3】
前記特徴点の抽出を、予め設定した特徴抽出領域についてのみ行うこと特徴とする請求項1又は2に記載の画像特徴点抽出方法。
【請求項4】
画像データからエッジ点を抽出し、隣接するエッジ点をつなぎ合わせてセグメント化し、エッジセグメントの形状を判定し、エッジセグメントの形状に合わせて境界追跡の起点と終点を設定して、特徴点を加えることを特徴とする請求項1乃至3のいずれかに記載の特徴点抽出方法。
【請求項5】
前記起点と終点で与えられた区間を境界追跡し、曲率変化の高い点を検出して特徴点とすることを特徴とする請求項4に記載の特徴点抽出方法。
【請求項6】
前記起点と終点で与えられた区間の点の重心を求め、特徴点とすることを特徴とする請求項4に記載の特徴点抽出方法。
【請求項7】
前記エッジ点にコーナー度を測るオペレータをかけ、その出力値を特徴点の評価値として記憶しておき、明確なコーナーを持つ折れ線セグメントか否かを判定することを特徴とする請求項4に記載の特徴点抽出方法。
【請求項1】
画像データから特徴点を抽出するための画像特徴点抽出方法において、
画像を変動させて複数枚の画像データを取得し、
各画像データごとに特徴点を抽出し、
抽出した特徴点の変動前の画像データにおける位置を求め、
画像変動に追随して抽出される特徴点のみを選択し、他の点を排除することを特徴とする画像特徴点抽出方法。
【請求項2】
予想される特徴点の周辺に、所定領域に区分された投票空間を設定し、
画像を変動させる毎に、変動前の画像の投票空間に、真値を中心に距離が遠くなるほどスコアが小さくなるような重み付けした投票値を加算し、必要な変動についての投票が終了したら、投票空間において、得票数が所定値以上の点について、ラベリング処理を行い、
各ラベル塊の面積、最大得票数、総得票数、ラベル重心を算出し、
ラベル塊の最大得票数、平均得票数について、閾値処理を行って、特徴点か否かを判定し、
特徴点であると判定されたものについては、ラベル塊の重心を特徴点の座標とすることを特徴とする請求項1に記載の画像特徴点抽出方法。
【請求項3】
前記特徴点の抽出を、予め設定した特徴抽出領域についてのみ行うこと特徴とする請求項1又は2に記載の画像特徴点抽出方法。
【請求項4】
画像データからエッジ点を抽出し、隣接するエッジ点をつなぎ合わせてセグメント化し、エッジセグメントの形状を判定し、エッジセグメントの形状に合わせて境界追跡の起点と終点を設定して、特徴点を加えることを特徴とする請求項1乃至3のいずれかに記載の特徴点抽出方法。
【請求項5】
前記起点と終点で与えられた区間を境界追跡し、曲率変化の高い点を検出して特徴点とすることを特徴とする請求項4に記載の特徴点抽出方法。
【請求項6】
前記起点と終点で与えられた区間の点の重心を求め、特徴点とすることを特徴とする請求項4に記載の特徴点抽出方法。
【請求項7】
前記エッジ点にコーナー度を測るオペレータをかけ、その出力値を特徴点の評価値として記憶しておき、明確なコーナーを持つ折れ線セグメントか否かを判定することを特徴とする請求項4に記載の特徴点抽出方法。
【図4】
【図5】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図1】
【図2】
【図3】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図5】
【図12】
【図13】
【図14】
【図15】
【図16】
【図17】
【図1】
【図2】
【図3】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【公開番号】特開2011−43969(P2011−43969A)
【公開日】平成23年3月3日(2011.3.3)
【国際特許分類】
【出願番号】特願2009−191240(P2009−191240)
【出願日】平成21年8月20日(2009.8.20)
【出願人】(000003399)JUKI株式会社 (1,557)
【Fターム(参考)】
【公開日】平成23年3月3日(2011.3.3)
【国際特許分類】
【出願日】平成21年8月20日(2009.8.20)
【出願人】(000003399)JUKI株式会社 (1,557)
【Fターム(参考)】
[ Back to top ]