JP5005482B2 - パターン検索方法及び装置 - Google Patents

パターン検索方法及び装置 Download PDF

Info

Publication number
JP5005482B2
JP5005482B2 JP2007250202A JP2007250202A JP5005482B2 JP 5005482 B2 JP5005482 B2 JP 5005482B2 JP 2007250202 A JP2007250202 A JP 2007250202A JP 2007250202 A JP2007250202 A JP 2007250202A JP 5005482 B2 JP5005482 B2 JP 5005482B2
Authority
JP
Japan
Prior art keywords
image data
search
correlation value
target range
pattern
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2007250202A
Other languages
English (en)
Other versions
JP2009080701A (ja
Inventor
一宏 田辺
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Kokusai Electric Inc
Original Assignee
Hitachi Kokusai Electric Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Kokusai Electric Inc filed Critical Hitachi Kokusai Electric Inc
Priority to JP2007250202A priority Critical patent/JP5005482B2/ja
Priority to US12/216,239 priority patent/US20090080781A1/en
Publication of JP2009080701A publication Critical patent/JP2009080701A/ja
Application granted granted Critical
Publication of JP5005482B2 publication Critical patent/JP5005482B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/94Hardware or software architectures specially adapted for image or video understanding
    • G06V10/955Hardware or software architectures specially adapted for image or video understanding using specific electronic processors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • G06V10/22Image preprocessing by selection of a specific region containing or referencing a pattern; Locating or processing of specific regions to guide the detection or recognition
    • G06V10/225Image preprocessing by selection of a specific region containing or referencing a pattern; Locating or processing of specific regions to guide the detection or recognition based on a marking or identifier characterising the area
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/74Image or video pattern matching; Proximity measures in feature spaces
    • G06V10/75Organisation of the matching processes, e.g. simultaneous or sequential comparisons of image or video features; Coarse-fine approaches, e.g. multi-scale approaches; using context analysis; Selection of dictionaries

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Software Systems (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Artificial Intelligence (AREA)
  • Health & Medical Sciences (AREA)
  • Computing Systems (AREA)
  • Databases & Information Systems (AREA)
  • Evolutionary Computation (AREA)
  • General Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Image Analysis (AREA)
  • Image Processing (AREA)
  • Investigating Materials By The Use Of Optical Means Adapted For Particular Applications (AREA)

Description

この発明は、例えば製造ラインにおいて製造対象物の位置を認識するために使用するパターン検索方法及び装置に関する。
例えば、半導体ウエハや液晶パネル等の製造工程において、製造対象物に表示されたアライメントマーク等と呼ばれる基準パターンを認識する場合に、パターンマッチング法が使用されている。パターンマッチング法は、検索対象範囲をカメラで撮像してその画像データを予め設定してある基準パターンの画像データと画素ごとに比較し、その一致の度合いから上記画像データ中における基準パターンを検出するものである(例えば、特許文献1を参照。)。
パターンマッチング法において、検索対象範囲の画像データと基準パターンの画像データとの比較処理には相関演算が用いられる。相関演算には、代表的なものとして差分相関と正規化相関がある。
いま仮に、基準パターンの画像(テンプレート画像)のサイズを水平×垂直=256×256画素とし、検索対象範囲を撮像した画像データのサイズを水平×垂直=1628×1236画素(UXGA)としたとすると、差分相関値Dは
D=Σ|Fij−Gij|
i,j:基準画像の任意の座標 (256×256座標分の総和を取る)
Gij:基準画像ブロックの各画素の輝度値
Fij:検索対象画面の比較ブロックの各画素の輝度値
で求まる。
一方、正規化相関値Cは、
C=Σ(Fij−Fav)×(Gij−Gav)/[√Σ(Fij―Fav)2 ×√Σ(Gij―Gav)2
Gij:基準画像ブロックの各画素の輝度値
Fij:検索対象画面の比較ブロックの各画素の輝度値
Fav、Gav:ブロックの平均輝度
で求まる。
ところで、相関の度合いとして差分相関値を用いる場合も、また正規化相関値を用いる場合も、以下のスキャンが必要となる。図8はその動作を説明するための図である。
すなわち、先ず基準パターン画像(テンプレート画像)の中心位置(x,y)を検索対象画像中の画素位置(0,0)に位置決めし、この状態でテンプレート画像と検索対象画像ブロックとの相関値C0,0を算出する。この相関値C0,0を算出するには、256×256クロック分の相関演算処理が必要となる。次にテンプレート画像を検索対象画像中の画素位置(1,0)にシフトして、相関値C1,0を算出する。この相関値C1,0を算出する場合にも、上記と同様に256×256クロック分の相関演算処理が必要となる。以上のテンプレート画像のシフトをその中心位置(x,y)が検索対象画像中の画素位置(1372,980)=(1628-256,1236-256)になるまで順に行い、各シフト位置においてそれぞれ相関値を算出する。そして、算出されたすべての相関値C0,0〜C1372,980の中で最も相関の高い相関値を求め、この最も相関が高い相関値が得られたときのシフト位置を検索対象画像中における基準画像の位置とする。
上記スキャン操作においては、
(1628−256)×(1236−256)×(256×256)
=88,117,084,160クロック
に相当する回数分の相関演算が必要となる。このとき、1クロックの処理速度を162MHzとした場合でも、パターン検索には
88,117,084,160×6.17ns=544秒
を要することになる。このように、テンプレート画像と検索対象画像とのマッチング処理を用いたパターン検索では、テンプレート画像と検索対象画像との相関演算処理が検索対象範囲の全画素を対象に行われるため、パターン検索に膨大な時間が必要となる。
そこで、上記パターン検索の処理時間を短縮する手法の一つとして、ピラミッド法を用いたものが使用されている。ピラミッド法を用いた検索方法は、先ず検索対象範囲の画像データに対し大きい間引き率で間引き処理を施し、この画像が間引かれた画像データに対しテンプレート画像を用いて第一次のパターン検索を行う。そして、この第1のパターン検索によりテンプレート画像との相関の高い検索対象画像のポジションを複数選択して、これを検索対象ポジションの候補とする。次に、この複数の検索対象ポジションに対し、小さい間引き率で間引き処理を施して、その画像データに対しテンプレート画像を用いて第二次のパターン検索を行う。そして、この第二次のパターン検索の結果をもとにさらに候補を絞りこみ、続いて間引き率をさらに下げて第三次のパターン検索を行い、これにより最も相関の高いポジションを検出する。
このピラミッド法を用いたパターン検索を行えば、画像の間引き率に応じて相関演算の回数を減らすことができ、前述の全画素を対象としてパターン検索する場合に比べて、大幅な時間短縮が図れる。
特開平11−143991号公報
ところが、ピラミッド法では検索対象画像に対し間引き処理を行うため、あたかもローパスフィルタに通した場合のように高周波成分が失われて検索対象画像データに含まれるエッジ情報が損失することがある。間引き処理する前の原画像データに含まれるエッジ情報は、相関を求める上で重要な役割を担う。また、画像全体の形状を表す上でもエッジ情報は重要な情報となる。このため、上記エッジ情報の損失は誤判定の原因となり検出精度の低下を招く。
この発明は上記事情に着目してなされたもので、その目的とするところは、検索精度の低下を招くことなく検索時間の短縮を図ったパターン検索装置を提供することにある。
上記目的を達成するためにこの発明の一観点は、基準パターンが表示された検索対象範囲の画像データと、上記基準パターンを表す基準画像データとの相関を求め、その結果をもとに上記検索対象範囲から基準パターンを検索するパターン検索方法にあって、上記基準画像データの水平走査方向又は垂直走査方向のいずれか一方に対しその走査ライン数より少数の複数の特徴ラインを、そのうちの幾つかが前記基準パターンのエッジと交叉するように指定された位置に設定する。そして、撮像手段から上記検索対象範囲の画像データを取り込んで、この取り込んだ検索対象範囲の画像データと、上記基準画像データの上記設定された複数の特徴ライン上の画素列との差分相関値をそれぞれ算出し、この特徴ラインごとに算出された各差分相関値を同一画素位置どうしで加算して累積相関値を算出する。そして、この算出された累積相関値に基づいて当該累積相関値が最大となる上記検索対象範囲中の基準パターンの位置を検出するようにしたものである。
上記相関値を算出する際には、上記複数の特徴ライン上の画素列に対し上記基準パターンのエッジを表現するに必要な間引き率以下で間引き処理し、この間引き処理後の画素列と検索対象範囲の画像データとの相関演算を行うようにしてもよい。
したがってこの発明の一観点によれば、基準画像データの特徴ライン上の画素列と検索対象範囲の画像データとの相関演算のみが行われる。このため、基準画像データの全画素と検索対象範囲の画像データの全画素との相関演算を行う場合に比べて、相関演算量を大幅に減らしてその分パターン検索に要する時間を短縮することができる。一方、特徴ライン上の画素列に対しては基本的に間引き処理を行わないか、または行ったとしても基準パターンのエッジを表現するに必要な間引き率以下で行われ、また検索対象範囲の画像データに対しては間引き処理を行わないので、検索対象範囲の画像データに対し水平走査方向及び垂直走査方向に均一の間引き処理を施した後に基準画像データとの相関を求める場合に比べ、パターン検索の精度を高く保持することが可能となる。
すなわち、検索精度の低下を招くことなく検索時間の短縮を図ったパターン検索装置を提供することができる。
以下、図面を参照してこの発明の実施形態を説明する。
(第1の実施形態)
図1は、この発明の第1の実施形態に係わるパターン検索装置の概略構成図である。この装置は、機構部1と、制御ユニット2と、パーソナル・コンピュータ(PC)3とを備えている。
機構部1は、ステージ11と、支持部材12と、この支持部材12の先端部に取着されたカメラ13及び顕微鏡14とを備える。ステージ11上には、半導体ウエハやLCDパネル等の電子部品4が載置され、この電子部品4にはアライメントマーク5が印刷等により表示されている。アライメントマーク5は、上記電子部品4の位置を認識するために用いるもので、図示するごとく例えば十字パターンからなる。カメラ13は例えば工業用テレビジョンカメラからなり、後述する制御ユニット2の制御の下で、上記ステージ11に載置された電子部品4の上記アライメントマーク5を含む検索対象範囲を上記顕微鏡14により拡大して撮像し、その画像信号を制御ユニット2へ出力する。
パーソナル・コンピュータ3は、オペレータの入力操作に応じて制御ユニット2に対してパターン検索に必要な種々の制御パラメータを設定する処理や、制御ユニット2により得られたアライメントマーク5または電子部品4の位置の検出結果を表示する処理のために使用される。
ところで、制御ユニット2は上記電子部品4に表示されたアライメントマーク5のパターン検索処理を行うもので、次のように構成される。図2はその構成を示すブロック図である。
すなわち、制御ユニット2は、空間フィルタ21と、セレクタ(SEL)22と、クロック変換器23を備える。空間フィルタ21は、カメラ13から出力されさらに図示しないアナログ/ディジタル変換器によりディジタル信号に変換された画像データに対し、輪郭(エッジ)成分を抽出するための画像処理を行う。セレクタ22は、上記空間フィルタ21により抽出された輪郭成分の画像データと、上記空間フィルタ21に入力する前の画像データとを択一的に出力する。クロック変換器23は、上記セレクタ22から出力された画像データのクロック速度を、カメラ13のCCDクロックの速度からさらに高速度のクロック速度に変換する。
また制御ユニット2は、テンプレート画像記録用メモリ24と、サーチ画像記録用メモリ25と、相関値記録用メモリ26と、これらのメモリ24,25,26に対するデータの読み出し及び書き込みを制御するメモリ制御回路27,28,29を備えている。テンプレート画像記録用メモリ24は、上記カメラ13により撮像されたアライメントマーク5の基準画像(テンプレート画像)データを記憶するために用いられる。サーチ画像記録用メモリ25は、上記カメラ13により撮像された検索対象範囲の画像(サーチ画像)データを記憶するために用いられる。相関値記録用メモリ26は、後述する差分相関演算回路31により算出された相関値の累積加算値を記憶するために用いられる。
さらに制御ユニット2は、差分相関演算回路31と、位置検出回路32と、CPU33と、PCインタフェース34とを備えている。差分相関演算回路31は、上記テンプレート画像記録用メモリ24に記憶されたテンプレート画像に対しその水平走査ライン数(256本)より少数の複数の特徴ライン(例えば8本)を設定する機能を有する。また差分相関演算回路31は、テンプレート画像とサーチ画像との相関値を算出する回路を有する。この算出回路は、上記テンプレート画像の特徴ラインごとにそのラインデータと1画面分のサーチ画像データとの相関値を算出し、この特徴ラインごとに得られた相関値を順次累積加算する。
図3は、この相関値を算出する回路の構成の一例を示すものである。この算出回路は、特徴ラインの1ラインデータが256画素からなる場合の構成を例示したもので、特徴ラインデータを保持するための256画素分のバッファ41と、サーチ画像データをシフトする256画素分のシフトレジスタ42と、256画素分の差分回路43と、加算回路44とから構成される。
特徴ラインデータ保持用のバッファ41は、テンプレート画像記録用メモリ24から読み出された1ライン(256画素)分の特徴ラインデータをクロックCKG に同期して保持し、この保持された1ライン分の特徴ラインデータGs0〜Gs255を差分回路43へ出力する。シフトレジスタ42には、サーチ画像記録用メモリ25から読み出される1画面分のサーチ画像データがクロックCKF に同期して直列に順次シフト入力される。そして、1画素がシフト入力されるごとに、シフトレジスタ42は256画素分の画像データF0〜F255を並列にシフト出力する。
差分回路43は、上記シフトレジスタ42にサーチ画像データが1画素シフト入力されるごとに、当該シフトレジスタ42から並列出力される256画素分のサーチ画像データF0〜F255と、上記テンプレート画像記録用メモリ24から出力される1ライン(256画素)分の特徴ラインデータGs0〜Gs255との差分相関値|F0−Gs0|〜|F255−Gs255|を画素ごとに算出する。そして、この算出された256画素分の差分相関値|F0−Gs0|〜|F255−Gs255|を加算回路44へ出力する。
加算回路44は、テンプレート画像データの最初の特徴ラインデータとサーチ画像データの1画面分のデータとの差分相関値については、これをそのまま相関値記録用メモリ26に記憶させる。そして、テンプレート画像データの2番目以降の特徴ラインデータとサーチ画像データとの差分相関値が上記差分回路43から出力されると、上記相関値記録用メモリ26から同一画素位置の差分相関値を読み出してこれに上記差分相関値を加算し、この加算後の差分相関値Σ|F−Gs|を相関値記録用メモリ26に記憶させる。
位置検出回路32は、テンプレート画像データのすべての特徴ラインとサーチ画像データとの差分相関値Dの算出処理が終了すると、上記相関値記録用メモリ26から累積相関値Σ|F−Gs|を読み出し、その値から累積相関値Dが最大となるサーチ画像データ上の位置座標を検出する。そして、この検出した位置座標情報をCPU33に渡す。CPU33は、上記位置座標情報をもとにパターン検索結果を表す表示データを作成し、この表示データをPCインタフェース34を介してパーソナル・コンピュータ3へ転送し表示させる。
次に、以上のように構成されたパターン検索装置の動作を説明する。
(1)テンプレート画像データの登録と特徴ラインの設定
オペレータは、先ずアライメントマーク5が印刷または刻印等により表示されたサンプル電子部品をステージ11上にセットし、この状態でパーソナル・コンピュータ3においてテンプレート画像を登録させるための操作を行う。
そうするとパーソナル・コンピュータ3から制御ユニット2に対しテンプレート画像の登録指示コマンドが送られ、このコマンドに応じ顕微鏡14及びカメラ13が動作して上記アライメントマーク5が表示されたサンプル電子部品が撮像される。このカメラ13により撮像された上記アライメントマーク5を含むサンプル電子部品の画像データは、空間フィルタ21で輪郭成分が抽出され、さらにクロック変換回路23により速度変換されたのち、メモリ制御回路27の制御の下でテンプレート画像記録用メモリ24にテンプレート画像データVG として記憶される。
なお、上記テンプレート画像データVGの登録過程において、カメラ21により撮像されたアライメントマーク5を含むサンプル電子部品の画像データ、及び空間フィルタ21により輪郭成分が抽出された画像データは、セレクタ22により択一的に切り替えられてPCインタフェース34からパーソナル・コンピュータ3に転送され、表示される。このためオペレータは、上記表示画像を見ながらサンプル電子部品の位置調整や輝度調整等を行うことができる。
次に、オペレータはパーソナル・コンピュータ3において特徴ラインの数と位置を指定入力する。そうすると、この入力された特徴ラインの数及び位置を表す情報がパーソナル・コンピュータ3から制御ユニット2に送られ、CPU33内のメモリに保存される。例えば、図5に示すようにテンプレート画像データVG に対し8本の特徴ラインL1〜L8を設定し、かつこれらの特徴ラインL1〜L8の幾つかがアライメントマーク画像VM のエッジと交差するように位置を設定する。
なお、上記特徴ラインL1〜L8の数及び位置はテンプレート画像ごとに設定せずに、想定される複数のテンプレート画像VGに対し共通に使用できるように予め設定した初期値をCPU33内のメモリに保存しておくようにしてもよい。
(2)パターン検索処理
オペレータがパーソナル・コンピュータ3においてパターン検索開始指示を入力すると、パターン検索開始コマンドがパーソナル・コンピュータ3から制御ユニット2に送られ、これにより制御ユニット2によりパターン検索処理が開始される。
すなわち、ステージ11上にセットされた電子部品4にはアライメントマーク5が表示されており、このアライメントマーク5を含む検索対象範囲が顕微鏡14を介してカメラ13により撮像される。このカメラ13により撮像された上記検索対象範囲の画像データは、空間フィルタ21により輪郭成分が抽出され、さらにクロック変換回路23により速度変換されたのち、メモリ制御回路28の制御の下でサーチ画像記録用メモリ25にサーチ画像データVF として記憶される。
サーチ画像データVFが記憶されると、CPU33の制御の下で、差分相関演算回路31において次のように上記テンプレート画像データVGとサーチ画像データVFとの差分相関演算処理が行われる。図4は、この差分相関演算回路31の動作タイミングを示す図である。
すなわち、メモリ制御回路27の制御の下で、テンプレート画像記録用メモリ24から先ずテンプレート画像VGの特徴ラインL1上の画像データ(256画素)Gs0〜Gs255が読み出され、この読み出された特徴ラインL1上の画像データ(256画素)Gs0〜Gs255がクロックCKG に同期してバッファ41に保持される。
またそれと並行して、メモリ制御回路28の制御の下でサーチ画像記録用メモリ25から1画面分のサーチ画像データVF が直列に順次読み出され、この読み出されたサーチ画像データVFがクロックCKF に同期してシフトレジスタ42に直列にシフト入力される。そして、シフトレジスタ42に256画素分のサーチ画像データF0〜F255がシフト入力されると、この256画素分のサーチ画像データF0〜F255と上記バッファ41に保持された特徴ラインL1の画像データ(256画素)Gs0〜Gs255との差分相関値|F0−Gs0|〜|F255−Gs255|が差分回路43において算出され、この算出された差分相関値|F0−Gs0|〜|F255−Gs255|が加算回路44を通過して相関値記録用メモリ26に記憶される。
続いてシフトレジスタ42にサーチ画像データVFの257番目の画素F256がシフト入力されると、サーチ画像データF1〜F256と上記バッファ41に保持された特徴ラインL1の画像データ(256画素)Gs0〜Gs255との差分相関値|F1−Gs0|〜|F256−Gs255|が差分回路43において算出され、この算出された差分相関値|F1−Gs0|〜|F256−Gs255|が加算回路44を通過して相関値記録用メモリ26に記憶される。
以後同様に、シフトレジスタ42にサーチ画像データVFの258番目以降の画素F257,F258,…がシフト入力されるごとに、このシフトレジスタ42に入力された256画素のサーチ画像データと上記バッファ41に保持された特徴ラインL1の画像データ(256画素)との差分相関値が差分回路43で算出され、この算出された差分相関値が相関値記録用メモリ26に記憶される。そして、図4に示すように(1628×1236)番目の画素がシフトレジスタ42に入力され、このときのシフトレジスタ42の256画素のサーチ画像データとバッファ41に保持された特徴ラインL1の画像データ(256画素)との差分相関値が相関値記録用メモリ26に記憶されると、特徴ラインL1と1画面分のサーチ画像データVFとの相関演算処理は終了する。
次に、テンプレート画像記録用メモリ24からテンプレート画像の特徴ラインL2上の画像データ(256画素)Gs0〜Gs255が読み出され、この読み出された特徴ラインL2上の画像データ(256画素)Gs0〜Gs255がクロックCKG に同期してバッファ41に保持される。
またそれと並行して、上記特徴ラインL1の場合と同様にサーチ画像記録用メモリ25から1画面分のサーチ画像データVFが直列に順次読み出され、この読み出されたサーチ画像データVFがクロックCKF に同期してシフトレジスタ42に直列にシフト入力される。そして、シフトレジスタ42に256画素分のサーチ画像データF0〜F255がシフト入力されると、この256画素分のサーチ画像データF0〜F255と上記バッファ41に保持された特徴ラインL2の画像データ(256画素)Gs0〜Gs255との差分相関値|F0−Gs0|〜|F255−Gs255|が差分回路43において算出される。
またこのとき、メモリ制御回路29の制御の下で、特徴ラインL1のときに算出された同一位置の差分相関値が相関値記録用メモリ26から読み出される。そして、加算回路45において、上記差分回路43により算出された特徴ラインL2のときの差分相関値|F0−Gs0|〜|F255−Gs255|が、上記読み出された特徴ラインL1のときの差分相関値|F0−Gs0|〜|F255−Gs255|に画素単位で加算され、この加算後の差分相関値が相関値記録用メモリ26に記憶される。
以後同様に、シフトレジスタ42にサーチ画像データの258番目以降の画素F257,F258,…がシフト入力されるごとに、このシフトレジスタ42に入力された256画素のサーチ画像データと上記バッファ41に保持された特徴ラインL2の画像データ(256画素)との差分相関値が差分回路43で算出される。そして、この算出された差分相関値が相関値記録用メモリ26から読み出された特徴ラインL1のときの同一位置における差分相関値に加算回路44で加算され、この加算後の差分相関値が相関値記録用メモリ26に記憶される。
以下同様に、特徴ラインL3,L4,…,L8ごとに、その256画素のラインデータと1画面分のサーチ画像データVFとの差分相関値が算出される。そして、この算出された差分相関値が、一つ前の特徴ラインまでに得られた差分相関の累積加算値に順次加算され、この加算後の差分相関の累積加算値が相関値記録用メモリ26に記憶される。かくして、最終的に相関値記録用メモリ26には、特徴ラインL1〜L8と1画面分のサーチ画像データVFとの差分相関の累積加算値D=Σ|F−Gs|が記憶される。
なお、上記説明では簡単のため、特徴ラインL1〜L8と1画面分のサーチ画像データVFとの相関値を算出するものとしたが、実際には特徴ラインL1〜L8とサーチ画像データとの相関演算は、図5に示すようにテンプレート画像VG を1ブロックとしてブロック単位で行われるため、1画面中の左側及び右側の各128画素分の領域と、画面上部及び下部の各128ライン分の領域は検索対象外となる。
以上のようにすべての特徴ラインL1〜L8と1画面分のサーチ画像データVFとの間の最終的な差分相関の累積加算値D=Σ|F−Gs|が得られると、メモリ制御回路29の制御の下で相関値記録用メモリ26から上記最終的な差分相関の累積加算値D=Σ|F−Gs|が読み出される。そして、位置検出回路32において、上記最終的な差分相関の累積加算値D=Σ|F−Gs|から差分相関値が最大値をとる位置座標が検出される。そして、CPU33において上記検出された位置座標をもとにパターン検索結果を表す表示データが作成され、この表示データがPCインタフェース34を介してパーソナル・コンピュータ3に送られて表示される。また、上記位置座標の検出データは、電子部品4の加工、組み立てまたは検査工程において、位置決めの指標として用いられる。
以上説明したようにこの発明の第1の実施形態では、テンプレート画像記録用メモリ24に記憶されたテンプレート画像データVG に対しその水平走査ライン数(256本)より少数の8本の特徴ラインL1〜L8を設定する。そして、このテンプレート画像データに対し設定した特徴ラインL1〜L8ごとに、そのラインデータと1画面分のサーチ画像データVF との差分相関値を算出し、この特徴ラインL1〜L8ごとに得られた差分相関値|F−Gs|を画像の位置座標を合わせて順次累積加算するようにしている。
したがって、テンプレート画像データVG に対し設定した8本の特徴ラインL1〜L8上の画素列と、検索対象範囲のサーチ画像データVF との相関演算処理のみが行われる。このため、テンプレート画像データVGの全画素と検索対象範囲のサーチ画像データVF の全画素との相関演算を行う場合に比べて、相関演算量を大幅に減らしてその分パターン検索に要する時間を短縮することができる。
例えば、図5に示したように検索対象範囲の画像データ(サーチ画像データ)のサイズを1628×1236画素とし、テンプレート画像データのサイズを256×256画素とし、特徴ライン数を8本とすると、相関演算に必要なクロック数は
(1628−256)×(1236−256)×8
=10,756,480
となり、このクロック数分の演算処理が必要となる。ここで、1クロックの処理速度を162MHzとした場合、パターン検索に要する時間は
10,756,480×6.17nsec
=66m秒
となり、従来方法に比べ大幅な時間短縮が可能となる。
また第1の実施形態では、特徴ラインL1〜L8上の256画素の画素列に対しては間引き処理を行わず、また検索対象範囲のサーチ画像データVF に対しても間引き処理を行わないで、相関演算処理を行っている。このため、検索対象範囲のサーチ画像データVF に対し水平走査方向及び垂直走査方向に均一の間引き率で間引き処理を施した後にテンプレート画像データVG との相関を求める場合に比べ、パターン検索の精度を高く保持することが可能となる。
例えば、アライメントマーク5のエッジの幅は、1/8を超える間引き率で間引き処理をすると認識できなくなることがある。しかし、第1の実施形態では特徴ラインL1〜L8の水平走査方向の画素に対しては間引き処理を行っていないので、図6に示すようにアライメントマーク5のエッジ情報をもれなく検出することができる。
また第1の実施形態では、差分相関演算回路31を、テンプレート画像データVGの特徴ラインL1〜L8の1ラインデータを保持する256画素分のバッファ41と、1画面分のサーチ画像データが直列に順次シフト入力されるシフトレジスタ42と、このシフトレジスタ42にサーチ画像データが1画素シフト入力されるごとに、当該シフトレジスタ42から並列出力される256画素分のサーチ画像データと、上記テンプレート画像記録用メモリ24から出力される1ライン(256画素)分の特徴ラインデータとの差分相関値を算出する差分回路43と、特徴ラインL3,L4,…,L8ごとに上記差分回路43で得られた差分相関値を順次累積加算する加算回路44とから構成している。
したがって、バッファ41に一旦保持させると特徴ラインL1〜L8の1ラインデータをシフトさせる必要がなく、サーチ画像データVF のみをシフトレジスタ42にシフト入力するだけで相関演算処理が行われる。このため、相関演算処理を少ない処理手順及び小規模のハードウエアにより高速に行うことができる。ちなみに、従来の相関演算方法では、テンプレート画像のデータブロックを1画素シフトするごとにサーチ画像データの対応するブロック位置の画像データを走査して相関演算を行う必要があり、処理手順が多くなると共に回路構成の大型化が避けられない。
(他の実施形態)
第1の実施形態では、特徴ラインL1〜L8の1ラインデータに対しては間引き処理を行わずにサーチ画像データVF と相関演算する場合を例にとって説明した。しかし、それに限るものではなく、アライメントマーク5のエッジを表現するに必要な間引き率以下であれば、特徴ラインL1〜L8の1ラインデータに対し間引き処理を行ってもよい。例えば、特徴ラインL1〜L8の1ラインデータを間引き率1/8で間引き処理する。このようにすると、間引き処理を行わない場合(図6の場合)に比べ分解能は低下するが、図7に例示したようにエッジ情報を検出することが可能である。
このように特徴ラインL1〜L8の1ラインデータに対し間引き処理を行うことで、エッジの検出性能を必要最低限維持した上で、相関演算の回数をさらに減らしてパターン検索処理のさらなる高速化を実現できる。
また、特徴ラインの設定手法としては、他に次のような各種手法が考えられる。
第1の手法は、特徴ライン数を8本とした場合に、テンプレート画像データを均等に8分割し、この分割されたそれぞれの領域において水平ラインごとのエッジ成分を積分する。そして、その積分値が最大値をとる水平ラインをそれぞれの領域ごとに選択し、この選択した水平ラインを特徴ラインとして設定するものである。
第2の手法は、テンプレート画像データを均等に8分割し、この分割されたそれぞれの領域において、垂直方向のエッジ成分において最も大きいエッジ成分を求める。そして、そのエッジの変化点(変曲点)に位置する水平ラインを選択し、この選択した水平ラインをその領域における特徴ラインとして設定するものである。
第3の手法は、テンプレート画像データを均等に8分割し、この分割されたそれぞれの領域において、隣り合う領域との境界に位置する水平ラインをそのまま特徴ラインとして選択し、設定するものである。
さらに、第1の実施形態では水平走査ラインの中から選択した少数の水平ラインを特徴ラインとして設定したが、それ以外に垂直走査方向の256個の画素列の中からそれより少数の画素列(例えば8本)を選択し、この選択した画素列を特徴ラインとして設定するようにしてもよい。
さらに、特徴ラインはテンプレート画像データに対し均等に設定せずに、アライメントマーク画像が存在する領域を探して、この領域にのみアライメントマークのエッジと交差するように設定するようにしてもよい。また、第1の実施形態では差分相関を用いたが、正規化相関を用いてもよい。
その他、制御ユニットの構成、差分相関演算回路の回路構成、テンプレート画像データ及びサーチ画像データのサイズ、特徴ラインの設定数、アライメントマークの形状、パターン検索結果の用途等についても、この発明の要旨を逸脱しない範囲で種々変形して実施できる。
要するにこの発明は、上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合せにより種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態に亘る構成要素を適宜組み合せてもよい。
この発明の第1の実施形態に係わるパターン検索装置の全体構成を示す図である。 図1に示したパターン検索装置の制御ユニットの構成を示すブロック図である。 図2に示した制御ユニットの差分相関演算回路の回路構成を示す図である。 図3に示した差分相関演算回路の動作説明に用いるタイミング図である。 図2に示した制御ユニットによるパターン検索動作を説明するための図である。 図2に示した制御ユニットによるパターン検索動作の効果を説明するための図である。 この発明の他の実施形態に係わるパターン検索装置の動作を説明するための図である。 ピラミッド法を用いたパターン検索動作を説明するための図である。
符号の説明
1…機構部、2…制御ユニット、3…パーソナル・コンピュータ(PC)、4…電子部品、5…アライメントマーク、11…ステージ、12…支持部材、13…カメラ、14…顕微鏡、21…空間フィルタ、22…セレクタ(SEL)、23…クロック変換回路、24…テンプレート画像記録用メモリ、25…サーチ画像記録用メモリ、26…相関値記録用メモリ、27,28,29…メモリ制御回路、31…差分相関演算回路、32…位置検出回路、33…CPU、34…PCインタフェース、41…特徴ラインデータ保持用のバッファ、42…シフトレジスタ、43…差分回路、44…加算回路、VG …テンプレート画像データ、VF 検索対象範囲のサーチ画像データ、VM …アライメントマーク画像データ、Gs …特徴ラインの画素。

Claims (3)

  1. 基準パターンが表示された検索対象範囲の画像データと、前記基準パターンを表す基準画像データとの相関を求め、その結果をもとに前記検索対象範囲から基準パターンを検索するパターン検索方法であって、
    前記基準画像データの水平走査方向又は垂直走査方向のいずれか一方に対し、その走査ライン数より少数の複数の特徴ラインを、そのうちの幾つかが前記基準パターンのエッジと交叉するように指定された位置に設定する過程と、
    前記検索対象範囲の画像データを取り込む過程と、
    前記取り込まれた検索対象範囲の画像データと、前記基準画像データの前記設定された複数の特徴ライン上の画素列との差分相関値をそれぞれ算出し、この特徴ラインごとに算出された各差分相関値を同一画素位置どうしで加算して累積相関値を算出する過程と、
    前記算出された累積相関値に基づいて、当該累積相関値が最大となる前記検索対象範囲中の基準パターンの位置を検出する過程と
    を具備することを特徴とするパターン検索方法。
  2. 前記相関値を算出する過程は、前記複数の特徴ライン上の画素列を、前記基準パターンのエッジを表現するに必要な間引き率以下で間引き処理する過程をさらに備え、前記撮像手段から取り込んだ検索対象範囲の画像データと、前記間引き処理後の前記特徴ライン上の画素列との相関値を算出することを特徴とする請求項1記載のパターン検索方法。
  3. 基準パターンが表示された検索対象範囲の画像データと、前記基準パターンを表す基準画像データとの相関を求め、その結果をもとに前記検索対象範囲から基準パターンを検索するパターン検索装置であって、
    前記基準画像データの水平走査方向又は垂直走査方向のいずれか一方に対し、その走査ライン数より少数の複数の特徴ラインを、そのうちの幾つかが前記基準パターンのエッジと交叉するように指定された位置に設定する手段と、
    撮像手段から前記検索対象範囲の画像データを取り込む手段と、
    記憶手段から前記基準画像データの前記設定された複数の特徴ライン上の画素列を読み出し、前記撮像手段から取り込んだ検索対象範囲の画像データと、前記読み出した複数の特徴ライン上の画素列との差分相関値をそれぞれ算出し、この特徴ラインごとに算出された各差分相関値を同一画素位置どうしで加算して累積相関値を算出し、相関値記録用メモリに記憶する手段と、
    前記相関値記録用メモリから累積相関値を読み出し、この読み出された累積相関値が最大となる前記検索対象範囲中の基準パターンの位置を検出する手段と
    を具備することを特徴とするパターン検索装置。
JP2007250202A 2007-09-26 2007-09-26 パターン検索方法及び装置 Active JP5005482B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2007250202A JP5005482B2 (ja) 2007-09-26 2007-09-26 パターン検索方法及び装置
US12/216,239 US20090080781A1 (en) 2007-09-26 2008-07-01 Pattern retrieval method and apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007250202A JP5005482B2 (ja) 2007-09-26 2007-09-26 パターン検索方法及び装置

Publications (2)

Publication Number Publication Date
JP2009080701A JP2009080701A (ja) 2009-04-16
JP5005482B2 true JP5005482B2 (ja) 2012-08-22

Family

ID=40471695

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007250202A Active JP5005482B2 (ja) 2007-09-26 2007-09-26 パターン検索方法及び装置

Country Status (2)

Country Link
US (1) US20090080781A1 (ja)
JP (1) JP5005482B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120050522A1 (en) * 2010-08-24 2012-03-01 Research In Motion Limited Method of and apparatus for verifying assembly components of a mobile device
CN111627050B (zh) * 2020-07-27 2020-12-01 杭州雄迈集成电路技术股份有限公司 一种目标跟踪模型的训练方法和装置

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3223384B2 (ja) * 1992-06-19 2001-10-29 オムロン株式会社 濃淡画像のパターンマッチング装置
JP3175914B2 (ja) * 1995-12-25 2001-06-11 日本電信電話株式会社 画像符号化方法および画像符号化装置
JP2000260699A (ja) * 1999-03-09 2000-09-22 Canon Inc 位置検出装置及び該位置検出装置を用いた半導体露光装置
US6993156B1 (en) * 2000-02-18 2006-01-31 Microsoft Corporation System and method for statistically comparing and matching plural sets of digital data
JP4651876B2 (ja) * 2001-07-19 2011-03-16 富士通株式会社 パターン識別装置、パターン識別方法及びパターン識別用プログラム
EP1722572B1 (en) * 2004-02-23 2013-02-20 NEC Corporation 2-dimensional signal encoding/decoding method and device
JP2007129333A (ja) * 2005-11-01 2007-05-24 Mitsubishi Electric Corp 動きベクトル検出装置及び動きベクトル検出方法
US7869657B2 (en) * 2006-06-12 2011-01-11 D & S Consultants, Inc. System and method for comparing images using an edit distance

Also Published As

Publication number Publication date
US20090080781A1 (en) 2009-03-26
JP2009080701A (ja) 2009-04-16

Similar Documents

Publication Publication Date Title
EP2309421B1 (en) Image processing method for locating and recognizing barcodes in image frame, computer readable storage medium, and image processing apparatus
JP2008165198A (ja) パターン検査装置、及び、パターン検査方法
JP2012073997A (ja) 物体追尾装置、物体追尾方法およびそのプログラム
JP5005482B2 (ja) パターン検索方法及び装置
JP5141470B2 (ja) 画像合成方法および画像処理システム
JP2008020369A (ja) 画像解析方法、画像解析装置、検査装置、画像解析プログラムおよびコンピュータ読み取り可能な記録媒体
JP2017224974A (ja) 撮像装置および撮像システム並びに外観検査装置および製造方法
JP4547321B2 (ja) 動きベクトル検出装置及び撮像装置
JP2019100887A (ja) 検査順序設定装置、検査順序設定方法および検査順序設定プログラム
JPH08125844A (ja) 画像処理方法およびその方法を用いた画像処理システム
JP4428112B2 (ja) 外観検査方法及び外観検査装置
CN109427039B (zh) 图像处理装置、设定辅助方法以及电脑可读取记录媒体
JP2004212218A (ja) 試料検査方法及び検査装置
JP2008225636A (ja) テンプレートマッチング装置、テンプレートマッチング装置を備えたカメラ、テンプレートマッチングをコンピュータで行うためのプログラム
JP4390732B2 (ja) 半導体ウエハの外観検査装置
JP4454075B2 (ja) パターンマッチング方法
JP7496288B2 (ja) 導電性部材抽出装置および導電性部材抽出方法
JP7151873B2 (ja) 検査装置
JP2002199281A (ja) 画像処理装置
JPH08167029A (ja) 画像処理装置
JP2948331B2 (ja) パターン認識装置
JP2022072964A (ja) 導電性部材抽出装置および導電性部材抽出方法
JP6150558B2 (ja) 追尾処理装置およびその制御方法
JP2008234362A (ja) 画像位置合わせ方法、画像位置合わせ装置、画像処理システム、制御プログラム、及び該プログラムを記録したコンピュータ読み取り可能な記録媒体
JP2000329536A (ja) 外観検査装置および外観検査方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20100922

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110929

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20111025

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20111219

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20120508

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120523

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

Free format text: PAYMENT UNTIL: 20150601

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 5005482

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250