(57)【要約】【課題】ラベル処理方法を改善して高速化を計り、かつメモリの使用容量を低減する。【解決手段】２次元画像データにおける同種の連続画素群に仮ラベルを付すステップと、異なる仮ラベルが付された連続画素群同士が隣接している場合に同一ラベルとして連結する連結処理ステップとを有し、前記仮ラベルを付すステップでは同種の連続画素群に画素配列方向に沿って仮ラベルを順次付してラベリングリンクメモリに画素毎に対応する仮ラベル又はラベル無しのデータを格納するが、所定画素に仮ラベルを付す際に、前記画像データの１画素前の仮ラベルデータ及び１ライン前の隣接画素の前記ラベリングリンクメモリの仮ラベルデータの少なくともいずれかを用いて当該画素の仮ラベルを決定する。また、前記ラベリングリンクメモリはキャッシュメモリ１１内に配置することでプロセッサ１０による処理を高速化している。【選択図】　　　　図１
2004038669.tif 000002
【特許請求の範囲】
【請求項１】
２次元状に配列された画像データのうち、同種の連続画素群に仮ラベルを付すステップと、異なる仮ラベルが付された連続画素群同士が隣接している場合に同一ラベルとして連結する連結処理ステップとを有する画像処理方法であって、
前記仮ラベルを付すステップでは前記画像データの同種の連続画素群に画素配列方向に沿って仮ラベルを順次付してラベリングリンクメモリに画素毎に対応する仮ラベル又はラベル無しのデータを格納するが、所定画素に仮ラベルを付す際に、前記画像データの１画素前の仮ラベルデータ及び１ライン前の隣接画素の前記ラベリングリンクメモリの仮ラベルデータの少なくともいずれかを用いて当該画素の仮ラベルを決定することを特徴とする画像処理方法。
【請求項２】
所定画素の仮ラベルの決定は、所定の検索順序で隣接画素の仮ラベルを検索し、最初に検出した仮ラベルを選択することにより行う請求項１記載の画像処理方法。
【請求項３】
前記仮ラベル毎の画素数及び１個の仮ラベルに対し１個の隣接ラベルの情報を登録する機能を有するラベリングテーブルを用い、隣接ラベルの検出においては仮ラベル付け時と異なる検索順序で最初に検出した隣接ラベルを前記ラベリングテーブルに登録し、仮ラベル付け及び隣接ラベル検出終了後に、前記ラベリングテーブルにより隣接する仮ラベル同士の画素数を加算することで連結処理ステップを行なう請求項２記載の画像処理方法。
【請求項４】
前記ラベリングテーブルに仮ラベル毎の画素数の他にライン／画素方向の累積座標値を登録し、前記連結処理ステップにて隣接する仮ラベル同士の累積座標値を加算することにより、連結後のラベルの面積及び重心を求める請求項３記載の画像処理方法。
【請求項５】
前記請求項４の画像処理方法で、基準となるマスタ画像の各閉図形の面積及び重心を求めるとともに位置決めする被測定物の画像の各閉図形の面積及び重心を求め、求められた前記マスタ画像と被測定物の画像との各閉図形の面積及び重心の比較より角度と位置ずれ量を算出することを特徴とする画像処理方法。
【請求項６】
前記角度と位置ずれ量をもとに狭められたサーチ領域でパターンマッチングを併用して前記被測定物を位置決めする請求項５記載の画像処理方法。
【請求項７】
前記ラベリングリンクメモリをキャッシュメモリ内に配置した請求項１，２，３，４，５又は６記載の画像処理方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、２次元状に配列された画像データの画像処理方法に関し、特に、同種画素が連続した画素群の連結処理に特徴がある画像データの処理方法に関する。本発明は、例えば、プリント基板等に電子部品を自動装着する場合に、電子部品を撮像し、画像処理によって電子部品の傾きや位置を修正し、正確に電子部品を位置決めする場合に使用される。
【０００２】
【従来の技術】
従来、対象物の背景も含めて撮像した領域の全体を２値画像データとして画像メモリに２次元状に一旦ストアする。この画像認識等の処理のためには、一般に画像全体の左上の画素から対角線上の対向する右下の画素までを順次走査してゆき、通常は「０」で表される背景画素データをとばし、「１」で表現されている対象物の画素データを探す。そしてその画素に仮のラベルが付与（ラベリング）される。また、「１」で表現されている画素データが連続している場合にはそれらの画素データには同一の仮ラベルを採用する。更に、既に割り当てられた仮ラベル同士が結合する場合は、全ての走査が終了した後で仮ラベルの整理、即ち、リラベリングが行われる。そして、リラベリング終了後再度走査し、ラベル毎に累積加算し面積、重心を求めていた。
【０００３】
また、例えば特開平９−９１４２６号公報には、リラベリングを行わず面積や先頭アドレス座標を得る方法について述べられているが、先頭アドレス座標の場合重心に比べて処理時間が速くできるが、位置精度的に誤差が大きくなり後に述べるパターンマッチングにおけるサーチ領域を拡大しなければならず、全体的な処理時間低下を招いてしまう。また、図形によっては合流対が多くなるとラベル間の連結処理が複雑になることが予想される。
【０００４】
精度の高い位置決めを行なうパターンマッチングにおいては、認識したい部分の形状をあらかじめ標準パターンとして記憶しておき、その標準パターンと認識画像との間で相関演算を行い、相関が最大となる位置をもって物体の位置検出を行なっている。サーチするパターンの移動量を考慮してある程度余裕を持って設定されたサーチ領域内を少しずつずらしながら相関を求める為に、サーチ領域が広がるほどサーチ回数が多くなり処理時間がかかる。
【０００５】
【発明が解決しようとする課題】
しかしながら、上記の画像処理方法によるラベル処理では、ラベル処理したデータを保存しておかなければならず、そのデータ量は用意するラベル数に相当するビット（ラベル数の上限を２５５とすると８ビット）が必要となる為、２値化データに比べ大きなメモリが必要となり、それを読み出すバイト数も増えることから処理時間も増加する。
【０００６】
また、パターンマッチングにおいては、サーチ領域内を少しずつずらしながら相関を求める為に処理時間がかかり、縮小画像等を用い処理を高速化させようとすると誤検出や精度低下が生じる。
【０００７】
本発明は、上記の点に鑑み、ラベル処理方法を改善して高速化を計るとともに、メモリの使用容量を低減せしめる画像データの処理方法を提供することと、パターンマッチングにおけるサーチ領域の範囲を狭める事によって高速でかつ誤検出のない画像処理方法を提供することを目的とする。
【０００８】
本発明のその他の目的や新規な特徴は後述の実施の形態において明らかにする。
【０００９】
【課題を解決するための手段】
上記目的を達成するために、本願請求項１の発明は、２次元状に配列された画像データのうち、同種の連続画素群に仮ラベルを付すステップと、異なる仮ラベルが付された連続画素群同士が隣接している場合に同一ラベルとして連結する連結処理ステップとを有する画像処理方法であって、
前記仮ラベルを付すステップでは前記画像データの同種の連続画素群に画素配列方向に沿って仮ラベルを順次付してラベリングリンクメモリに画素毎に対応する仮ラベル又はラベル無しのデータを格納するが、所定画素に仮ラベルを付す際に、前記画像データの１画素前の仮ラベルデータ及び１ライン前の隣接画素の前記ラベリングリンクメモリの仮ラベルデータの少なくともいずれかを用いて当該画素の仮ラベルを決定するようにしている。
【００１０】
本願請求項２の発明に係る画像処理方法は、請求項１において、所定画素の仮ラベルの決定は、所定の検索順序で隣接画素の仮ラベルを検索し、最初に検出した仮ラベルを選択することにより行うことを特徴としている。
【００１１】
本願請求項３の発明に係る画像処理方法は、請求項２において、前記仮ラベル毎の画素数及び１個の仮ラベルに対し１個の隣接ラベルの情報を登録する機能を有するラベリングテーブルを用い、隣接ラベルの検出においては仮ラベル付け時と異なる検索順序で最初に検出した隣接ラベルを前記ラベリングテーブルに登録し、仮ラベル付け及び隣接ラベル検出終了後に、前記ラベリングテーブルにより隣接する仮ラベル同士の画素数を加算することで連結処理ステップを行なうことを特徴としている。
【００１２】
本願請求項４の発明に係る画像処理方法は、請求項３において、前記ラベリングテーブルに仮ラベル毎の画素数の他にライン／画素方向の累積座標値を登録し、前記連結処理ステップにて隣接する仮ラベル同士の累積座標値を加算することにより、連結後のラベルの面積及び重心を求めることを特徴としている。
【００１３】
本願請求項５の発明に係る画像処理方法は、前記請求項４の画像処理方法で、基準となるマスタ画像の各閉図形の面積及び重心を求めるとともに位置決めする被測定物の画像の各閉図形の面積及び重心を求め、求められた前記マスタ画像と被測定物の画像との各閉図形の面積及び重心の比較より角度と位置ずれ量を算出することを特徴としている。
【００１４】
本願請求項６の発明に係る画像処理方法は、請求項５において、前記角度と位置ずれ量をもとに狭められたサーチ領域でパターンマッチングを併用して前記被測定物を位置決めすることを特徴としている。
【００１５】
本願請求項７の発明に係る画像処理方法は、請求項１，２，３，４，５又は６において、前記ラベリングリンクメモリをキャッシュメモリ内に配置したことを特徴としている。
【００１６】
【発明の実施の形態】
以下、本発明に係る画像処理方法の実施の形態を図面に従って説明する。
【００１７】
図１は本発明に係る画像処理方法に使用される装置の構成を示し、図２は２値画像が２次元状に配列（図示の例では水平Ｘ座標方向に１０画素、垂直Ｙ座標方向に１０画素配置）されていることを示す説明図である。
【００１８】
図１において、ＣＣＤカメラ等のＩＴＶカメラ１によって撮像されたアナログ画像信号２は、画像処理装置８内のＡ／Ｄコンバータ３でディジタル化処理され、多値化データ５として出力されＦＩＦＯ（ファースト・イン・ファースト・アウト）メモリ７にいったん蓄積される。また、多値化データ５は２値化回路４で２値化処理されグレーレベルの２次元画像の２値化データ６に変換され同様にＦＩＦＯメモリ７に蓄積される。プロセッサ１０は取込みと同時にＦＩＦＯメモリ７から画像データ信号９を読み出し、多値化データはワーキングメモリ１２に保存する一方、２値化データは読込んで後述のラベリング処理（同種の連続画素群にラベルを付す処理）を行なう。ラベリングの際、ラベリングデータが格納されるラベリングリンクメモリはキャッシュメモリ１１に作成（配置）され、ラベリングの結果はワーキングメモリ１２に保存される。なお、キャッシュメモリ１１はプロセッサ１０内に含まれている場合もあるし、プロセッサ外に配置されている場合もある。キャッシュメモリ１１はワーキングメモリ１２等からのキャッシュデータを一次蓄えておくものである。
【００１９】
プロセッサ１０は、ＦＩＦＯメモリ７の図２に例示するＸ，Ｙ方向に２次元状に配列された２値画像データを読み取り、Ｘ方向の画素配列ラインに沿って白で示した「１」の画素データの連続画素群に仮ラベルを付していく。
【００２０】
以下においては、こうした連結性を考慮した仮ラベル付けステップにつき説明する。図３は、画像データの処理方法の模式図であり、図４は図２の例を仮ラベリングした２次元形状配列を示す説明図である。仮ラベル付けは、先頭ラインの先頭画素から順次Ｘ座標方向（画素配列方向）へ移行し、そのラインが終了すれば次のラインヘ順次移行していく。
【００２１】
図３に図示の例では、５ライン目の４画素目に相当する画素のラベル付け処理を図示している。これと、図５の仮ラベリングの流れ図を用いて仮ラベルの付け方について説明する。
【００２２】
処理番地の水平座標：ｍ、垂直座標：ｎであるとすると、最初に２値化画像データの（ｍ，ｎ）座標｛例では（４，５）｝のデータを読む。今、図２の白い部分の面積及び重心を求めようとしているので、読込んだデータが「０」（グレー部分）であれば同一ラインの１画素前のラベルデータをラベリングリンクメモリの（ｍ−１）番地に書込んだ後、図３の処理中ラインデータの１画素前のラベルデータを０に書き換える（図３の▲５▼の処理を行う）。そして、（ｍ＋１，ｎ）のデータ処理時にそれが１画素前のラベルデータとして使用される。さらに、その後、ラベリングリンクメモリに書き込まれて（ｍ−１，ｎ＋１），（ｍ，ｎ＋１），（ｍ＋１，ｎ＋１）の処理時に１ライン前ラベルデータとして使用される。
【００２３】
「１」（白の部分）の場合は、
（１）１画素前のラベルデータ
（２）ラベリングリンクメモリ（１ライン前のラベルデータが格納されている）の（ｍ−１）番地のラベルデータ
（３）ラベリングリンクメモリのｍ番地のラベルデータ
（４）ラベリングリンクメモリの（ｍ＋１）番地のラベルデータ
の順に読み出してラベルが「０」以外であれば処理を中断して、読み出したラベル値を、処理している座標（ｍ，ｎ）のラベル値としてラベリングテーブルの処理を行なう。上記４つのデータが全て「０」の場合は、新規ラベル（ラベルは１から始めて新しい画素群を検出するたびに１づつインクリメントしていく）を、同様に処理している座標（ｍ，ｎ）のラベル値としてラベリングテーブルの処理を行なう。
【００２４】
以上が仮ラベル付けであるが、先頭ライン及びラインの先頭と最後尾においては、配列外を参照しなければいけないのでその部分は本実施の形態では全て「０」（面積及び重心を求める方でないデータ）として処理する必要がある。仮ラベリングが終了すると図４に示すような２次元形状配列ができる。実際には、ラベリングデータはラベリングリンクメモリを上書きしていくので、図４のようにメモリ展開されるわけではないが仮ラベルの結果を示すために挙げている。
【００２５】
なお、キャッシュメモリ内のデータはアクセスがしばらくないと別なデータに更新されて、再びアクセスしたときにはワーキングメモリ１２から再度アクセスデータを読み込む必要があるが、ラベリングリンクメモリ内のラベルデータのようにある頻度で繰り返し読み込むデータは更新が起きないようにラベリングリンクメモリをキャッシュメモリ内に常駐させる。また、図３における、ラベリングリンクメモリよりも下段に示された１ライン前のデータ、処理中ラインデータ、ラベル付け後のデータもキャッシュメモリあるいはプロセッサ１０内の一次記憶手段に格納される。
【００２６】
以下においては、図５中のラベリングテーブル処理の詳細流れ図を図６に示す。この図６を用いて、ラベルの書き換えとラベリングテーブルの処理方法について説明する。図５のラベリング処理（仮ラベル付け処理）において処理している座標の仮ラベル値が確定したら、図６にあるように、
（１）１画素前のラベルデータをラベリングリンクメモリの（ｍ−１）番地に書込む、
（２）１画素前のラベルデータを新しいラベル「ｒ」に書き換える、
という手順でメモリ操作を行なう。メモリ操作が終了したら、次にラベリングテーブルの操作を行なう。
【００２７】
ラベリングテーブルは図８に示すような配列形状をしており、行（上下方向の数値で、図示の場合、１，２，３，４，５）にはラベル数が取られており、列（横方向）には１隣接ラベル、２個数（画素数）、３累積水平座標値、４累積垂直座標値の４項目が用意されている。例えば、図６中の行列（ｒ，２）のｒはラベル数値、すなわち図８のｒ行目を示し、２は２列目で個数の項目を示す。図８のラベリングテーブルは、処理開始前にはすべてクリアされている。ここで、累積水平座標値はラベルが付された連続画素群の各画素の水平座標値の総和であり、累積垂直座標値は各画素の垂直座標値の総和である。
【００２８】
ラベリングテーブルの処理は、ラベル数に相当する行の個数（画素数）の項を１インクリメントし（図６に示すようにラベリングテーブルの行列（ｒ，２）に１を加算し）、累積水平座標と累積垂直座標の項には、処理している座標の水平座標値と垂直座標値を加算する（図６に示すようにラベリングテーブルの行列（ｒ，３）にｍを加算し、行列（ｒ，４）にｎを加算する）。隣接ラベルの項には、
（１）ラベリングリンクメモリの（ｍ−１）番地のデータ
（２）ラベリングリンクメモリのｍ番地のデータ
（３）ラベリングリンクメモリの（ｍ＋１）番地のデータ
の順に読み出してラベルが「０」や「ｒ」以外のラベルがあれば処理を中断して、読み出したラベル値を書込む。読み出したラベルが「０」や「ｒ」であれば隣接ラベルの項は書き換えずに終了する。ここで重要なのは、ラベリングリンクメモリの読み出す順番であり、本実施の形態においては、仮ラベル付け時には横方向の連結を主にし（Ｘ座標方向の連結を優先し）、隣接ラベル付け時には縦方向の連結を行なっている。すなわち、仮ラベル付け時と隣接ラベル付け時で異なる方向の連結を優先させることで、後の連結操作を容易にしているのである。
【００２９】
図２の２次元状画像データの仮ラベル付けを行なって得られたラベリングテーブルの結果を図８（Ａ）に示す。
【００３０】
以下においては、仮ラベル付けステップの結果によって得られたラベリングテーブルを用いて隣接する仮ラベル同士を連結する連結処理ステップについて図７の隣接ラベルの連結処理の流れ図と図８のラベリングテーブルの１例を用いて説明する。
【００３１】
図８（Ａ）は仮ラベル付けステップ終了後のラベリングテーブルの状態である。連結処理ステップは、図７の流れ図のように、ラベリングテーブルの１行目より処理を開始し、面積（画素の個数）の項目が「０」（ラベルがない状態）になったら終了する。処理内容は最初に、その行の隣接ラベルの項｛処理している行が「ｉ」であれば、ラベリングテーブルの行列（ｉ，１）｝より読み出してその数値が「０」であれば次の行の処理に移行する。読み出した数値が、「０」以外であればその数値ｐ（処理している行「ｉ」、その行の隣接ラベルｐ）行の面積、累積水平座標及び累積垂直座標の項目の数値を、処理行であるｉ行の数値とそれぞれ加算してその数値に書換える（図７のａ（ｐ，ｊ）＝ａ（ｉ，ｊ）＋ａ（ｐ，ｊ）の処理を行い、加算結果はｐ行に上書きする。但し、ａ（ｐ，ｊ）は図８のｐ行ｊ列の値を表す）。処理行のｉ行では面積、累積水平座標及び累積垂直座標の項目をそれぞれ「０」に書換える（図７のａ（ｉ，ｊ）＝０の処理を行う）。
【００３２】
上記連結処理を図８（Ａ）について行った結果が、図８（Ｂ）となる。得られた連結処理結果より個数が「０」の行を削除し、各行に関して個数を面積とし、
重心水平座標値＝累積水平座標値／面積
重心垂直座標値＝累積垂直座標値／面積
の式にしたがって、それぞれの閉図形の重心座標が求められる。図８（Ｂ）について重心計算を行なった結果が、図９である。
【００３３】
仮ラベル付けステップ及び連結処理ステップが終了すると図１０に示すような最終的なラベル付けがされた２次元形状配列ができる。実際には、連結処理はラベリングテーブル内で処理される為、図１０のようにメモリ展開されるわけではないが連結処理の結果を示すために挙げている。
【００３４】
次に、ラベルが付された閉図形の面積及び重心を用いたパターンマッチング手法に関して説明する。図２の２値化画像を基準となるマスター画像の標準パターンとして登録し、位置決めする被測定物の画像とパターンマッチングを行なう場合、標準パターン登録時に上記仮ラベル付けステップ及び連結処理ステップを用いて面積及び重心を求め、その数値も含めて同時に登録しておく。さらに、角度付のパターンマッチングの場合は、あらかじめ閉図形ごと、あるいは画像全体のアフィン変換（画像情報の座標変換による移動、回転処理）を使用し各角度における回転標準パターンを登録しておくことで処理時間を短縮することができる。
【００３５】
図１１のように図２を移動（回転も含む）させた２値画像データの２次元形状配列の例（位置決めする被測定物の画像の例）にパターンマッチングを実施する場合、前述の仮ラベル付けステップによって図１２のような結果がラベリングテーブル上に得られる。図１２の結果についてさらに連結処理と面積及び重心の計算を行なうと図１３のような結果が得られる。図１４は、図１１に対して仮ラベル付けを行なった２次元形状配列である。実際には、ラベリングデータはラベリングリンクメモリを上書きしていくので、図１４のようにメモリ展開されるわけではないが仮ラベルの結果を示すために挙げている。
【００３６】
標準パターンと被測定物の認識画像の面積及び重心データをそれぞれ面積でソートしたのが図１５である。閉図形１、２の重心間の長さと角度（正しくはアスペクト比を考慮する必要があるが、ここでは簡略化の為にアスペクト比を１：１としている。）を算出している。長さの算出は、閉図形の位置関係により面積だけで判別が不能のときに用いられる（本例では、閉図形が２個しかない為機能しないが、多数個の閉図形がある場合は、面積と重心間長さの情報より、標準パターンと認識画像それぞれの閉図形との対応を取ることが考えられる。）。
【００３７】
本実施の形態においては、閉図形１と２の相対角度を標準パターンと認識画像について求めて、その角度差が標準パターンから認識画像への回転角度になる。これを図１４に図示している。閉図形１においては、標準パターンの重心１３（３，５．４７）が認識画像の重心１５（８．５，５）に移動しており、閉図形２においては、同様に標準パターンの重心１４（７．５５，５．４５）から認識画像の重心１６（３．７５，５．６５）に移動している。回転角は、標準パターンでは閉図形１−２間の角度が３５９．７°であったのに対し、認識画像の場合は１８７．７°であり、標準パターンと認識画像の回転角は、その差分である１８８．０°となる。ここで、認識画像に対して標準パターンを回転させて重ね合わせる場合、反時計回りをプラスとし時計回りをマイナスの角度するとき、標準パターンの角度をθｘ、認識画像の角度をθｙとすると、標準パターンを回転させる角度θｚは、
（１）　θｘ＞θｙ　のとき
θｚ　＝３６０−（θｘ−θｙ）
（２）　θｘ＜θｙ　のとき
θｚ　＝θｙ−θｘ
となる。
【００３８】
標準パターンと認識画像の面積及び重心の比較から求めた位置ずれ量や回転角度でもある程度の精度が期待できるが、さらに多値化のパターンマッチングを併用することで、認識画像の照明のばらつきや欠けに強くなり、サブピクセル（１画素より小さい寸法）まで位置決め精度を向上させることができる。
【００３９】
また、標準パターンと認識画像の面積及び重心の比較から求めた位置ずれ量や回転角度を用いて、閉図形１の重心の位置ずれ量の±１〜２画素の領域に対して、求められた回転角度に最も近い角度で標準パターンをアフィン変換してあらかじめ作成された画像をマスタ画像として認識画像とのパターンマッチングを行い、それぞれの相関値を求め正規化相関により位置ずれ量を求め、次に閉図形２に対しても同様にして位置ずれ量を求め、求められた閉図形１と２の位置ずれ量から再度回転角度を計算することで、さらに精度の良い回転角度が得られる。
【００４０】
通常の回転パターンマッチングの場合、サーチ領域が±５画素の領域（サーチ領域は標準パターンの最大位置ずれ量によって決まる）であるとすると、標準パターンを１１×ｌｌ＝１２１回移動させて演算する必要がある。また、回転を考慮してｎパターンの回転画像（回数は求める角度範囲と角度ずれによる誤差によって決まる）を用意したとするとさらに１２１×ｎ回の演算が必要となる。これに対し、本実施の形態に係る処理方法を用いると、サーチ領域を±１〜２画素に制限できるため、移動回数を９〜２５回に抑えることができ、回転に関してもあらかじめ概略の回転角度が判明している為、１つの回転画像についてのみ行われるので移動回数が増加することはない。
【００４１】
従って、サーチ領域がさらに広い場合や回転精度を精度よく求めることが要求されるような場合においては、本実施の形態に係る処理方法はさらに有効性を増す。
【００４２】
この実施の形態によれば、次の通りの効果を得ることができる。
【００４３】
（１）　仮ラベル付けステップでは、図２のように２次元状に配列された画像データのうち、同種の連続画素群について画素配列方向に沿って順次仮ラベルを付してラベリングリンクメモリに画素毎に対応する仮ラベル又は仮ラベル無しのデータを格納するが、所定画素に仮ラベルを付す際に、図３のように前記画像データの１画素前及び１ライン前の隣接画素の前記ラベリングリンクメモリのラベルリングデータ（仮ラベルデータ）を用いて当該画素の仮ラベルを決定している。
【００４４】
従って、各画素についての仮ラベル情報を１ライン分のラベリングリンクメモリに上書きしながら処理することによりメモリ容量を低減し、ラベリングリンクメモリを図１のプロセッサ１０内のキャッシュメモリ１１に置くことによってメモリヘのアクセスを高速化し、なおかつラベリングリンクメモリに格納されたラベリングデータ（仮ラベルデータ）ヘのアクセス回数を低減可能でこの点でも高速化を図ることができる。
【００４５】
（２）　前記仮ラベル毎の画素数及び１個の仮ラベルに対し１個の隣接ラベルの情報（連結情報）を登録する機能を有するラベリングテーブルを用い、前記画像データの画素配列方向（Ｘ座標方向）に沿って同種の連続画素群に仮ラベルを順次付して行き（検索順序はＸ座標方向優先）、隣接ラベルの検出においては仮ラベル付け時と異なる検索順序（Ｙ座標方向）で最初に検出した隣接ラベルを前記ラベリングテーブルに登録し、仮ラベル付け及び隣接ラベル検出終了後に、前記ラベリングテーブルにより隣接する仮ラベル同士の画素数を加算することで連結処理ステップを行なう。この連結処理で隣接する仮ラベル同士の画素数を加算することにより、同種画素の連続帯である面積が求められる。
【００４６】
このように、ラベリングテーブル上に隣接ラベルの情報を登録出来るようにしたことにより、リラベリングを不要にし、速度向上とメモリ使用容量を低減させ得る。
【００４７】
（３）　前記ラベリングテーブルに仮ラベル毎の画素数の他にライン／画素方向の累積座標値を登録し、連結処理ステップにて隣接する仮ラベル同士の累積座標値を加算することにより、再度ラベリングデータを処理することなく連結後の各ラベルの面積、重心を求めることが可能ある。このように、連結と重心処理を並列処理することによってメモリアクセス回数を減らしてさらに高速化が図れる。
【００４８】
（４）　上記の仮ラベル付けステップ及び連結処理ステップで、基準となるマスタ画像の各閉図形の面積及び重心を求め、また位置決めする被測定物の画像の各閉図形の面積及び重心も同様に求めることにより、求められた前記マスタ画像と被測定物の画像との各閉図形の面積及び重心の比較より角度と位置ずれ量を高速算出可能である。このように、位置関係や回転角度を算出しておくことにより、パターンマッチングを行なう際のサーチ領域を狭めることが可能となる。
【００４９】
（５）　前記マスタ画像と被測定物の画像における各閉図形の角度と位置ずれ量をもとに狭められたサーチ領域でパターンマッチングを併用して前記被測定物を位置決めするため、サーチ回数を減らすことによって全体としての画像処理速度を高めることができる。また、サーチ領域が狭められている為に、縮小画像による検索を用いなくても高速な処理速度を保てるので、縮小画像による弊害や似通った画像が近傍に存在していても誤検出することがない。
【００５０】
以上本発明の実施の形態について説明してきたが、本発明はこれに限定されることなく請求項の記載の範囲内において各種の変形、変更が可能なことは当業者には自明であろう。
【００５１】
【発明の効果】
以上説明したように、本発明に係る画像処理方法によれば、２次元状に配列された画像データのうち、同種の連続画素群に仮ラベルを付す場合に、前記画像データの同種の連続画素群に画素配列方向に沿って仮ラベルを順次付してラベリングリンクメモリに画素毎に対応する仮ラベル又は仮ラベル無しのデータを格納するが、所定画素に仮ラベルを付す際に、前記画像データの１画素前の仮ラベルデータ及び１ライン前の隣接画素の前記ラベリングリンクメモリの仮ラベルデータの少なくともいずれかを用いて当該画素の仮ラベルを決定するようにしている。ラベリング後の仮ラベルデータを１ラインのラベリングリンクメモリに制限し、キャッシュメモリ内に配置することにより必要メモリ容量も少なく高速なラベリング処理が実現できる。
【００５２】
また、連結処理において、ラベリングテーブルに隣接ラベル、画素数、累積座標値の項目を付加し、隣接ラベル同士の連結処理と同時に面積及び重心を求める処理を行なう場合、再度ラベリングデータにアクセスすることなくラベリングテーブル内で処理したことにより高速な面積、重心処理が可能である。
【００５３】
さらに、上記の高速で面積及び重心を求める処理方法を用い、基準となるマスタ画像と被測定物の画像の位置ずれ量と回転角度を算出し、そのデータをもとにパターンマッチングのサーチ領域を狭め、回転角を固定化して処理することによって、高速でかつ精度の高い位置決めを行なうための画像データの処理方法を実現可能となる。
【図面の簡単な説明】
【図１】本発明に係る画像処理方法の実施の形態で用いる装置構成を示すブロック図である。
【図２】２値画像データの２次元形状配列の例を示す説明図である。
【図３】実施の形態における画像データの仮ラベル付け処理の模式図である。
【図４】図２の２値画像データの例を仮ラベル付けした２次元形状配列を示す説明図である。
【図５】実施の形態における仮ラベル付けステップ（仮ラベル付け処理）の流れ図である。
【図６】図５の流れ図中におけるラベリングテーブル処理の詳細流れ図である。
【図７】実施の形態における隣接ラベルの連結処理ステップの流れ図である。
【図８】実施の形態におけるラベリングテーブルの一例を示す説明図である。
【図９】図８のラベリングテーブルを用いた連結処理より求められた面積及び重心の算出結果を示す説明図である。
【図１０】図２の２値画像データの例を最終ラベリング処理した後（連結処理した後）の２次元形状配列を示す説明図である。
【図１１】図２の２値画像データを移動させた２値画像データの２次元形状配列の例を示す説明図である。
【図１２】図１１の２値画像データの場合のラベリングテーブルの一例を示す説明図である。
【図１３】図１２のラベリングテーブルより求められた面積及び重心の結果を示す説明図である。
【図１４】図１１の２値画像データの例を仮ラベル付けした２次元形状配列を示す説明図である。
【図１５】図２と図１１の２値画像データの比較における移動量及び回転角計算結果の一例を示す説明図である。
【符号の説明】
１　カメラ
２　画像信号
３　Ａ／Ｄコンバータ
４　２値化回路
５　多値化データ
６　２値化データ
７　ＦＩＦＯメモリ
８　画像処理装置
９　画像データ信号
１０　プロセッサ
１１　キャッシュメモリ
１２　ワーキングメモリ
１３　標準パターンの閉図形１の重心座標
１４　標準パターンの閉図形２の重心座標
１５　認識図形の閉図形１の重心座標
１６　認識図形の閉図形２の重心座標
【図１】
2004038669.tif 000003
【図２】
2004038669.tif 000004
【図３】
2004038669.tif 000005
【図４】
2004038669.tif 000006
【図５】
2004038669.tif 000007
【図６】
2004038669.tif 000008
【図７】
2004038669.tif 000009
【図８】
2004038669.tif 000010
【図９】
2004038669.tif 000011
【図１０】
2004038669.tif 000012
【図１１】
2004038669.tif 000013
【図１２】
2004038669.tif 000014
【図１３】
2004038669.tif 000015
【図１４】
2004038669.tif 000016
【図１５】
2004038669.tif 000017