JP3721681B2 - テンプレートマッチング方法及び装置 - Google Patents
テンプレートマッチング方法及び装置 Download PDFInfo
- Publication number
- JP3721681B2 JP3721681B2 JP34495596A JP34495596A JP3721681B2 JP 3721681 B2 JP3721681 B2 JP 3721681B2 JP 34495596 A JP34495596 A JP 34495596A JP 34495596 A JP34495596 A JP 34495596A JP 3721681 B2 JP3721681 B2 JP 3721681B2
- Authority
- JP
- Japan
- Prior art keywords
- image
- template
- sum
- pixel
- partial
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Image Analysis (AREA)
Description
【発明の属する技術分野】
本発明は、半導体製品の位置決め、FAラインでの部品探索,リモートセンシング等のパターン認識方法及び装置に関する。
【0002】
【従来の技術】
画像処理のさまざまな応用分野において、センサより得られた画像(これをサーチ画像と呼ぶ)から、特定の画像パターン(これをテンプレートと呼ぶ)と類似した部分領域を探索するテンプレートマッチングが利用されている。このような技術は、例えば高木幹雄、下田陽久:“画像解析ハンドブック”、東京大学出版会(1991)に記載されている。ここで、各画素をnビット(n>1)で表される多階調画像を対象とし、類似したかどうかを評価する尺度として正規化相関係数を用いることが多い。正規化相関係数r(i,j)は、テンプレートをt(m,n)(m=0,1,…,M−1,n=0,1,…,N−1)、類似度を評価する部分画像をs(i+m,j+n)(m=0,1,…,M−1,n=0,1,…,N−1;i,jは部分画像の起点)、テンプレートの画素数をPとしたとき、次式で与えられる。
【0003】
【数2】
【0004】
テンプレートマッチングを行うときは、複数の部分領域に対して上記正規化相関係数を求め、その値に応じて1つまたは複数の類似領域を決定する。正規化相関の特徴は、テンプレートとサーチ画像で照明変動などにより同じ物体が異なる画素値になる場合でも、影響なく適切なマッチングが行えるということである。
上記、正規化相関を用いたテンプレートマッチングでは、正規化相関係数を求めるための演算量が膨大であるため、効率良く求める手法が検討されている。
【0005】
従来、正規化相関を用いた高速なテンプレートマッチング方法については、対象の部分画像とテンプレートの正規化相関係数を求めるのと同時に、対象の部分画像とテンプレートの対応する画素の差の絶対値を累積加算し、その加算値があらかじめ定めたしきい値を超過したとき、上記対象の部分画像とテンプレートの正規化相関係数を求める処理を打ち切るという方法がある。
【0006】
【発明が解決しようとする課題】
上記従来方法は、対象の部分画像とテンプレートの対応する画素の差の絶対値を累積加算した値を打切りの評価尺度としているため、対象の部分画像とテンプレートに照明変動などによる画素値のずれがある場合、本来類似性の高い画像同士でも、画素値の差が累積し、打ち切られるという問題がある。この点について、図13及び図14を用いて具体的に説明する。
【0007】
図13はテンプレート、図14はテンプレートを探索するサーチ画像である。矩形は画素を表し、矩形の中に記された数字はその画素の画素値(輝度)を表す。画像の類似性は、対応する画素における画素値の絶対量の近さではなく、近傍画素間の画素値の変動量に基づいているため、図13のテンプレートに最も類似した図14の部分画像は、1403,1404,1405,1408,1409,1410,1413,1414,1415で表される右上の部分画像である。実際、この部分画像とテンプレートとの正規化相関係数は1になる。ところが、従来方法の打切り評価尺度を計算すると460になり、1411,1412,
1413,1416,1417,1418,1421,1422,1423から構成される左下の部分画像とテンプレートとの打切り評価尺度80と比べてはるかに大きな数値になる。従って、しきい値を80から460の間に設定すると、左下の部分画像は類似画像の対象になるが、右上の部分画像は類似画像の対象から除外される。なお、この左下の部分画像は横縞模様の画像である。
【0008】
また、上記以外の場合でも、しきい値を適切に定めることは容易とは言えない。
【0009】
本発明の目的は、正規化相関係数が高い部分画像における処理の打切りを抑止し、しきい値を容易に定めることができるテンプレートマッチング方法及び装置を提供することにある。
【0010】
【課題を解決するための手段】
上記目的は、テンプレート画像と、サーチ画像における該テンプレート画像と同一サイズの部分画像との類似度を正規化相関関数により評価する処理を、上記サーチ画像の複数の部分画像に対して行い、その評価値に応じて、上記複数の部分画像のうち、上記テンプレート画像と類似する部分画像を決定するテンプレートマッチング方法において、テンプレート画像とサーチ画像におけるテンプレート画像と同一サイズの部分画像から評価尺度となるしきい値を求め、上記テンプレート画像及び上記部分画像から順次1画素ずつ画素値の差の二乗を求め累積加算し、上記累積加算値が上記しきい値を越えた時に、上記テンプレート画像と上記部分画像との評価処理を終了することにより達成することができる。
【0011】
【発明の実施の形態】
以下、本発明の実施例を図面に従って説明する。図1は、本発明によるテンプレートマッチング方法を記したフローチャートである。ここでは、汎用計算機により図14のサーチ画像から図13のテンプレート画像のテンプレートマッチングを行う場合について説明する。テンプレート画像及びサーチ画像は、例えばイメージスキャナーなどの取り込み装置によって共に外部記憶に格納されている。まず、図13のテンプレート画像と図14のサーチ画像を外部記憶装置から読み出し、それぞれ、t(m,n)(m=0,1,2,n=0,1,2),s(i,j)(i=0,1,…,4,j=0,1,…,4)の配列として計算機内部のメモリに格納する(101,102)。
【0012】
次に、テンプレートの画素値の総和及び二乗和を計算する(103)。図13のテンプレート画像の画素値の総和A=230、二乗和B=6500となる。一方、サーチ画像についてはテンプレートと同じサイズの画像領域(以下、「部分画像」という。)のすべてに対して、画素値の総和及び二乗和を計算し、計算機内部のメモリに格納する(104)。
【0013】
ここで、サーチ画像におけるテンプレート画像と同じサイズの部分画像における画素値の総和及び二乗和を効率良く求める方法を、図2〜図6を用いて説明する。図2及び図3に効率化の基本的な考え方を示す。図2において、サーチ画像200の中の、テンプレートと同サイズの部分画像201における画素値の総和G′は、部分画像201から1画素分主走査方向と逆にずれた部分画像202における画素値の総和Gから、領域203に含まれる画素値の総和Uを引いて、領域204に含まれる画素値の総和Vを足したものになる。すなわち、G′=G−U+Vである。さらに、図3に示すように、領域204に含まれる画素値の総和Vは、領域204から1ライン上にずれた領域205に含まれる画素値の総和Wから、画素206の値yを引いて、画素207の値zを足したもの、すなわち、V=W−y+zになる。従って、部分画像202における画素値の総和G、及び、領域203に含まれる画素値の総和Uが事前に計算されていれば、部分画像201における画素値の総和G′は基本的に4回の加減算で求めることができる。
【0014】
図4は、サーチ画像におけるテンプレートと同じサイズのすべての部分画像における画素値の総和を求めるフローチャートであり、図2及び図3で示した計算方法を実現したものである。
【0015】
まず、(i,0)(i=0,1,…,I−M:但し、Iはサーチ画像の横の画素数、Mはテンプレート画像の横の画素数である。)を起点とする(I−M+1)個の部分画像について画素値の総和を求めるため、(i,0)(i=0,1…,I−1)を起点とし縦をテンプレートと同じN画素、横を1画素とした領域における画素値の総和をそれぞれ計算する(401)。次に、求めた縦N画素、横1画素の領域における画素値の総和をM個加算することにより、(0,0)を起点とする部分画像の画素値の総和を求める(402)。以降、差分となる縦N画素、横1画素の領域における画素値の総和を加減算することにより、それぞれ(1,0),(2,0),…,(I−M,0)を起点とする部分画像における画素値の総和を順に求める(403)。
【0016】
さらに、(i,1)(i=0,1,…,I−M)を起点とする(I−M+1)個の部分画像における画素値の総和を求めるため、(i,1)(i=0,1,…,I−1)を起点とし、縦がテンプレートと同じN画素、横を1画素とする領域の画素値の総和をそれぞれ計算する(405)。ここでは、既に求めた、(i,0)(i=0,1,…,I−1)を起点とし縦がテンプレートと同じ画素、横1画素のI個の領域における画素値の総和を利用し、差分となる画素値を加減算して求める。このようにして求めた縦N画素,横1画素の領域における画素値の総和をM個加算することにより、(0,1)を起点とする部分画像における画素値の総和を求める(406)。以降、差分となる縦N画素,横1画素の領域における画素値の総和を加減算することにより、(1,1),(2,1),…,(I−M,1)を起点とするそれぞれの部分画像についての画素値の総和を順に求める(407)。
【0017】
j=2,…,J−Nに対しても、j=1のときと同様、事前に求めた計算結果を用いて、各々の部分画像における画素値の総和を求める(405〜409)。(i,j)を起点とする部分画像における画素値の総和をC(i,j)で表すと、図14のサーチ画像のC(i,j)(i=0,1,2,j=0,1,2)は下記のようになる。
【0018】
(C(0,0),C(0,1),C(0,2),C(1,0),C(1,1),C(1,2),C(2,0),C(2,1),C(2,2))=
(390,580,690,270,380,470,270,310,380)
すべての部分画像における画素値の二乗和を求める処理は、テンプレート画像,サーチ画像の画素値の二乗値を求め、上述した画素値の総和と同様に求めることができる。(i,j)を起点とする部分画像の画素値の二乗和をD(i,j)で表すと、図14のサーチ画像のD(i,j)(i=0,1,2,j=0,1,2)は下記のようになる。
【0019】
(D(0,0),D(0,1),D(0、2),D(1,0),D(1,1),D(1,2),D(2,0),D(2,1),D(2,2))=
(20900,44800,58500,9500,20400,30100,8700,11900,19600)
図5及び図6は効率の良い計算方法の別の方法を示したものである。図2及び図3が、主走査方向と逆に1画素分ずれた部分画像202との差分で部分画像
201における画素値の総和G′を計算したのに対し、図5及び図6は1ライン上にずれた部分画像502との差分で計算する。
【0020】
図1のフローチャートの説明に戻る。演算を打ち切るためのしきい値Eを与える(105)。ここで、しきい値Eは正規化相関係数に対応する値としている。正規化相関係数は、−1〜1の値をとり、−1は対象とする画像がテンプレート画像と全く一致しない場合にとる値であり、1は対象とする画像が全てテンプレート画像と一致している場合にとる値である。従って、−1〜1の値の何れかを正規化相関係数のしきい値として与えればよいため未経験者でも直感的に与えることができる。尚、この値は図1の処理を開始する前に与えてもよい。本実施例では、E=0.7 と設定した場合について説明する。
【0021】
以上がテンプレートマッチングにおける前処理であり、テンプレート画像及びサーチ画像をそれぞれ1回ずつスキャンするだけで、テンプレート及びサーチ画像の部分画像の総和、二乗和を求めることができる。次に、各部分画像に対して、正規化相関係数を求める処理を行う。まず、(0,0)を起点とする部分画像を選択し(106)、数3に基づいてしきい値F(0,0)を求める(107)。
【0022】
【数3】
【0023】
但し、A :テンプレート画像の画素値の総和
B :テンプレート画像の画素値の二乗和
C(i,j):(i,j)を起点とする部分画像の画素値の総和
D(i,j):(i,j)を起点とする部分画像の画素値の二乗和
E :正規化相関係数のしきい値
F(i,j):(i,j)を起点とするしきい値
P :テンプレート画像の画素数
である。従って、テンプレート画像の画素値の総和(A)は230、テンプレート画像の画素値の二乗和(B)は6500、(0,0)を起点とする部分画像の画素値の総和(C(0,0))は390、(i,j)を起点とする部分画像の画素値の二乗和(D(0,0))は20900、相関係数のしきい値Eは0.7 、テンプレートの画素数Pは9より、(0,0)を起点とするしきい値F(0,0)は5258となる。ここで、F(0,0)は部分画像とテンプレート画像が0.7以上の正規化相関係数をもつためのテンプレート画像と部分画像の対応する各画素間の差の二乗和の上限値であり、テンプレート画像と部分画像の対応する各画素間の差の二乗和がF(0,0)より大きいときは、正規化相関係数は0.7 を下回る。尚、このことは、テンプレート画像と部分画像の対応する各画素間の差の二乗和>F(0,0)と、数3及び数2から証明することができる。
【0024】
次に、テンプレートと部分画像の対応する各画素間の差の二乗を1画素ずつ求めて累積加算し、その値がF(0,0)を超過していないか判定する(108〜111)。この累積加算値は単調増加するため、累積加算値が、一旦F(0,0)を超過したならば、以降の処理でF(0,0)を下回ることはありえないので、累積加算値がF(0,0)を超過した時点で処理を打切り、別の部分画像に対して同様の処理を行う。すべての画素間の差の二乗和を求めてもF(0,0)を超過しなければ、(0,0)を起点とする部分画像とテンプレートの正規化相関係数は0.7 以上であることになり、部分画像の起点となる座標(0,0)を登録する。図15は、サーチ画像の各起点の部分画像のしきい値F(i,j)、テンプレート画像とサーチ画像の部分画像との差の二乗の累積加算値を示したものである。サーチ画像の(0,0)を起点とする部分画像についてみるとテンプレートの第1画素値が30、(0,0)を起点とする部分画像の第1画素値が30、差の二乗和が0であり、F(0,0)=5258を超過しないので第2画素以降に対して差の二乗を求め、累積加算すると、第6画素で累積加算値が5700になり、F(0,0)=5258を超過するため第7画素以降の処理を行わず、次の部分画像の処理に移行する。
【0025】
これによると(0,1),(1,0),(1,1),(1,2),(2,0),(2,1),(2,2)をそれぞれ起点とする部分画像に対して、第9画素,第3画素,第6画素,第6画素,第7画素,第7画素,第7画素の累積加算でそれぞれしきい値Fを超過し、(0,2)を起点とする部分画像では最後まで超過しない。従って、部分画像の起点となる座標(0,2)を0.7 より大きい正規化相関係数をもつ部分画像の位置として登録する。
【0026】
このように、正規化相関係数に対応するしきい値Eを設定するだけで、このしきい値Eを下回らない部分画像を抽出することができる。さらに、部分画像の全ての画素についてテンプレート画像との差の二乗和を求める訳ではないので、高速に処理を実行することができる。
【0027】
そして、このようにして得られたテンプレートとマッチングがとれた部分画像は、起点とする座標が登録されているので、汎用計算機に接続されているCRT等の表示装置にサーチ画像を表示するとともに、マッチングがとれている部分を枠で囲んで表示してオペレータに教示する。尚、多数の部分画像が登録された場合において、テンプレート画像に最も近い部分画像を得るためには、更にそれぞれの部分画像について正規化相関係数を求めて最も大きい値をとるものを選ぶようにすればよい。
【0028】
図7は、本発明の他の実施例を示したものである。図7は、図1のフローチャートに示したテンプレートマッチング方法の変形例であり具体的には、求めた正規化相関係数がEより大きい場合に、Eをその求めた正規化相関係数に置き換えた処理を追加している。尚、正規化相関については次の数4により求める。
【0029】
【数4】
【0030】
但し、A :テンプレート画像の画素値の総和
B :テンプレート画像の画素値の二乗和
C(i,j):(i,j)を起点とする部分画像の画素値の総和
D(i,j):(i,j)を起点とする部分画像の画素値の二乗和
E :正規化相関係数のしきい値
G(i,j):(i,j)を起点とする部分画像の画素値とテンプレート画像の画素値の差の二乗和
P :テンプレート画像の画素数
r(i,j)は(i,j)を起点とする部分画像に対する正規化相関係数である。この方法によればサーチ画像の中で最も相関度の高い部分画像をサーチすることができる。また、この方法によれば正規化相関係数に対応する値Eについて最適な値が分からない場合であっても、最終的にサーチ画像の中で最も相関度の高い部分画像をサーチすることができる。
【0031】
図8に本発明の他の実施例を示す。図8は、図1のフローチャートに示したテンプレートマッチング方法の変形例であり部分画像とテンプレート画像との正規化相関係数を求める処理の直前に、全ての部分画像における画素値の総和及び二乗和を求めている。図8の処理手順にすることにより、部分画像における画素値の総和及び二乗和を記憶するためのメモリ要領を削減することができる。
【0032】
これまでは1つのテンプレート画像に対するマッチングを行う場合について説明したが、これは複数のテンプレート画像に対するテンプレートマッチングにも適用することができる。例えば、その適用対象の1つとしてカラー画像に対するテンプレートマッチングが挙げられる。
【0033】
図16は、カラー画像に対するテンプレートマッチング方法を示したものである。まず、外部記憶装置からテンプレート画像及びサーチ画像をR(赤色の成分),G(緑色の成分),B(青色の成分)ごとに取り込みを行う(1601)。取り込んだ画像に対して、R,G,Bの画像毎に先に述べたのと同様の方法でテンプレートマッチングを行い、テンプレート画像と相関度が高い部分画像をそれぞれR,G,B毎に抽出する(1602)。このように抽出されたR,G,Bそれぞれの部分画像から最終的な部分画像を決定する(1603)。これは、R,G,Bについて行ったテンプレートマッチングで抽出された部分画像の起点とする座標を比較して、最も多く抽出された座標を起点とする部分画像を最終的な部分画像として決定するものである。
【0034】
尚、しきい値EについてはR,G,B共通としてもよく、また色成分に応じてしきい値Eを変えてもよい。また、特定の色成分に関しては打切りを実施しないなど、適用対象に応じて使い分ける。
【0035】
図17はテンプレートマッチングを行う装置を示したものである。本装置は、テンプレートマッチング処理部に処理開始命令を行うCPU1701 、テンプレート画像とサーチ画像を取り込んで、テンプレートマッチングを行うテンプレートマッチング処理部1702,テンプレート画像を記憶する画像メモリ1703,サーチ画像を記憶する画像メモリ1704から構成されている。図9にテンプレートマッチング処理部の構成を示す。図9において、903,904はそれぞれ、画像メモリ1703,1704のリードアドレスを発生するアドレス生成器、905は、画像メモリ1703及び1704から読み出されたデータを選択して出力するセレクタ、906は乗算器、907はセレクタである。908は加算器、909はレジスタで、908と909で累積加算を実行する。910は、サーチ画像における部分画像の画素値の総和及び二乗和を効率良く計算する演算器である。
【0036】
915,916,917,918,919及び920は、それぞれ、テンプレートの画素数,正規化相関のしきい値,テンプレートにおける画素値の総和、テンプレートにおける画素値の二乗和,対象部分画像の画素値の総和を格納するレジスタ、及び、対象部分画像の画素値の二乗和を格納するレジスタである。レジスタ915,916,917,918,919及び920に格納されている値をそれぞれ、P,E,A,B,C及びDとしたとき、921は、P,E,A,B,C及びDに対して次の数5で記した計算を行う演算器、922は演算器921で計算された値を格納するレジスタである。また、911は減算器、912は乗算器、913は加算器、914は加算器913の中途計算結果を格納するレジスタである。
【0037】
【数5】
【0038】
923は、レジスタ922に格納されたしきい値とレジスタ914に格納された中途計算結果を比較し、レジスタ914の値がレジスタ922の値より大きくなったとき、現在対象としている部分画像の処理を打ち切り、次の部分画像に対する処理に移行するための制御信号を出力する比較器である。
【0039】
図9に示す構成の装置を用いたテンプレートマッチングは以下の要領で行う。まず、センサ等で入力したテンプレート画像及びサーチ画像を、それぞれ画像メモリ1703及び1704に格納する。また、CPU1701からテンプレートの画素数をレジスタ915、正規化相関係数のしきい値をレジスタ916に格納する。
次に、画像メモリ1703のデータを加算器908に入力させるように、 CPU1701 はセレクタ905及び907を設定し、アドレス生成器903でテンプレート画像を1画素ずつリードさせ、加算器908とレジスタ909で累積加算を求めることによりテンプレートの画素値の総和を計算する。計算結果はレジスタ917に格納する。同様に、画像メモリ1703のデータ二乗値を加算器908に入力させるように、CPU1701 はセレクタ905及び907を設定し、アドレス生成器903でテンプレート画像を1画素ずつリードさせ、加算器908とレジスタ909で累積加算を求めることによりテンプレートの画素値の二乗和を計算する。計算結果はレジスタ918に格納する。
【0040】
続いて、画像メモリ1704のデータを演算器910に入力させるように、 CPU1701 はセレクタ905及び907を設定し、アドレス生成器904でサーチ画像を1画素ずつリードさせ、サーチ画像における対象部分画像の画素値の総和を計算する。計算結果はレジスタ919に格納する。同様に、画像メモリ1704のデータの二乗値を演算器910に入力させるように、CPUはセレクタ905及び907を設定し、アドレス生成器904でサーチ画像を1画素ずつリードさせ、サーチ画像における対象部分画像の画素値の二乗和を計算する。計算結果はレジスタ920に格納する。演算器921は、上記レジスタ915,916,917,918,919,920に格納された値を用いて、数5に示した計算を行う。演算器921で計算された値は処理打切り用のしきい値としてレジスタ922に格納される。
【0041】
以上が、それぞれの部分画像とテンプレートの正規化相関係数を求める処理において、事前に行う処理である。正規化相関係数を求める処理では、画像メモリ1703からテンプレートを、画像メモリ1704からサーチ画像の対象部分画像を、それぞれ1画素ずつ読み出し、減算器911,乗算器912,加算器913によって各画素値の差の二乗を累積加算し、レジスタ914に格納する。比較器923では、上記922に格納されたしきい値とレジスタ914に格納された累積加算値を比較し、比較結果を出力する。ここで、レジスタ914に格納された累積加算値がレジスタ922に格納されたしきい値を超過したとき、レジスタ
919及び920には、現対象部分画像の次の対象部分画像における画素値の総和及び二乗和を格納し、レジスタ922には次の対象部分画像との正規化相関係数処理の打切りしきい値を格納すると共に、アドレス生成器903及び904のアドレスをテンプレート画像及び次対象部分画像の先頭画素アドレスに変更し、CPU1701 へ変更を知らせる。
【0042】
図10に演算器910の構成例を示す。図10において、1000は演算器
910に対応する演算器、1001は、少なくともテンプレートと同ライン数の、各ラインが少なくともサーチ画像と同画素数の記憶領域をもつラインメモリ、1002及び1005は減算器、1003及び1006は加算器、1004は、少なくともサーチ画像と同画素数の記憶領域をもつ1ラインのラインメモリ、
1007はレジスタ、1008は演算結果を記憶するメモリ、1009はメモリ1008をアクセスするアドレスを発生するアドレス生成器である。ラインメモリ1001,1004、及び、レジスタ1007は最初すべて0に初期化されているものとする。
【0043】
図2及び図3を併用して、サーチ画像における部分画像の画素値の総和を求めるときの図10の演算器の動作を説明する。演算器1000にはサーチ画像の画素がラスタスキャン順に入力するものとする。演算器1000に入力されたデータ(zとする)はラインメモリに格納されると共に、減算器1002に入力される。ここで、現在入力された画素データを、図3の画素207であるとする。また、ラインメモリ1001からデータzに対応する画素のサーチ画像上Nライン(=テンプレートのライン数)上方に対応するデータ(yとする)を読み出し、減算器1002に入力する。この画素データは図3の画素206に対応する。ここで、データyに対応する画素がサーチ画像上にないときは、yとして初期値0が読み出される。減算器1002でz−yが実行される。ラインメモリ1004は縦Nライン横1画素の画像を画素値の総和を1ライン分格納したメモリである。加算器1003では、減算器1002で計算されたz−yと、ラインメモリ
1004から読み出した図3の領域205に対応する画像の画素値の総和(Wとする)を加算し、図2の領域204に対応する画像の画素値の総和(Vとする)を出力する。加算器1003から出力されたデータはラインメモリ1004に格納されると共に、減算器1005に入力される。減算器1005では、上記Vから、ラインメモリ1004から読み出した図2の領域203に対応する画像の画素値の総和(Uとする)を引いた結果を出力する。加算器1006では、上記減算結果と、レジスタ1007に格納されている図2の部分画像202の画素値の総和(Gとする)を加算することにより、部分画像201の画素値の総和を計算する。計算された部分画像201の画素値の総和は、レジスタ1007に格納されると共に、メモリ1008にも格納される。
【0044】
以降、サーチ画像を1画素読み出す毎に、隣接した部分画像の画素値の総和を計算することを繰り返す。サーチ画像における部分画像の画素値の二乗和も同様に計算し、メモリ1008に格納する。特定の部分画像に対する正規化相関係数を求める演算では、対象部分画像の画素値の総和及び二乗和を、メモリ1008からアドレス生成器1009を用いて順に読み出すことにより、図9のレジスタ919及び920に格納する。
【0045】
図11に画像処理システムの構成を示す。システム構成としては、画像処理プロセッサ1101,ホストプロセッサ1102,センサ1103,モニタ1104からなる。画像処理プロセッサの構成を図12に示す。図12において、1201,1202が画像メモリ、1203はテンプレートマッチング部、1204はフィルタリングなどの画像前処理部、1205は端子1209から入力された映像信号をライトバス1214に出力する映像入力処理部、1206はリードバス1212のデータを映像信号として端子1210に出力する映像表示処理部、1207はホストプロセッサとの信号の入出力を司るホストインタフェース、1208は、画像メモリ1201及び1202と、上記の演算部あるいはインタフェース部とのデータパス制御,アドレス制御などを行うバス制御部である。
【0046】
テンプレートマッチング部1203の構成としては、図9から、アドレス生成器903及び904を除いたものと同じであり、アドレス発生器903,904の機能はバス制御部が担う。
【0047】
ここで、画像処理プロセッサ1101として、図12の1200が対応し、センサ1103が端子1209,モニタ1104が端子1210,ホストプロセッサ1102が端子1211にそれぞれ接続される。
【0048】
テンプレートマッチングを行う前に、テンプレート画像とサーチ画像を画像メモリ1101または1102に格納する。このとき、テンプレートはセンサ1103から入力した画像を端子1109,映像入力処理部1206,ライトバス1214,バス制御部1208を経由して画像メモリ1201または1202に格納するか、もしくは、ホストプロセッサが有する情報を端子1211,ホストインタフェース1207,バス1208を経由して画像メモリ1201または1202に格納する。サーチ画像はセンサ1103から入力した画像を端子1209,映像入力処理部1205,ライトバス1214,バス制御部1208を経由して画像メモリ1201または1202に格納する。
【0049】
テンプレート画像,サーチ画像にはノイズが含まれていることが一般的なので、ノイズを低減するため、フィルタリングなどの前処理を実施する。すなわち、テンプレート或いはサーチ画像を画像メモリ1201または1202からバス制御部1208,リードバス1212または1213を経由して読み出し、前処理部1204で適当な前処理演算を行う。処理した結果は、ライトバス1214,バス制御部1208を経由して、画像メモリ1201または1202に格納する。どういう前処理を行うかはホストプロセッサから端子1211,ホストインタフェース1207を経由して設定される。処理結果は、バス制御部1208,ライトバス1214,映像表示処理部1206を経由してモニタに表示し、確認することができる。
【0050】
テンプレートマッチングは画像メモリ1201または1202からバス制御部1208を経由して、テンプレート及びサーチ画像を読み出し、テンプレートマッチング部で正規化相関係数を計算することにより行う。ここで、図9における比較結果などに応じて相関度の高い位置を記憶しておき、全部分画像を処理した後、記憶している相関度の高い位置情報をホストインタフェース1207を経由し、ホストプロセッサに示す。
【0051】
この例では、すべての演算を画像処理プロセッサで行っているが、しきい値計算における複雑な演算をホストプロセッサで行うように構成してもよい。
【0052】
【発明の効果】
本発明により、正規化相関を用いたテンプレートマッチングを、類似性の高い画像を対象外にすることなく高速化を図ることができる。
【図面の簡単な説明】
【図1】本発明のテンプレートマッチングの手順を示すフローチャートである。
【図2】本発明の部分画像の画素値の総和及び二乗和を求めるための説明図である。
【図3】本発明の部分画像の画素値の総和及び二乗和を求めるための説明図である。
【図4】本発明の部分画像の画素値の総和及び二乗和を求めるフローチャートである。
【図5】本発明の部分画像の画素値の総和及び二乗和を他の方法により求めるための説明図である。
【図6】本発明の部分画像の画素値の総和及び二乗和を他の方法により求めるための説明図である。
【図7】本発明のテンプレートマッチングの他の手順を示すフローチャートである。
【図8】本発明のテンプレートマッチングの他の手順を示すフローチャートである。
【図9】本発明のテンプレートマッチング処理部の内部構成を示す図である。
【図10】本発明のテンプレートマッチング処理部における部分画像の画素値の総和及び二乗和を求める演算器の内部構成を示す図である。
【図11】本発明を適用した画像処理システムを示す図である。
【図12】本発明を適用した画像処理システムの画像処理プロセッサの構成図である。
【図13】テンプレート画像の一例を示した図である。
【図14】サーチ画像の一例を示した図である。
【図15】本発明によりテンプレートマッチングを行った場合の部分画像としきい値との関係を示した図である。
【図16】本発明のテンプレートマッチングをカラー画像に適用した場合の処理手順を示したフローチャートである。
【図17】本発明のテンプレートマッチング装置の構成を示した図である。
【符号の説明】
903,904…アドレス生成器、905,907…セレクタ、906,912…乗算器、908,913…加算器、911…減算器、910,921…演算器、909,914,915,916,917,918,919,920,922…レジスタ、923…比較器、1103…センサ、1104…モニタ。
Claims (10)
- テンプレート画像と、サーチ画像における該テンプレート画像と同一サイズの部分画像との類似度を正規化相関関数により評価する処理を、上記サーチ画像の複数の部分画像に対して行い、その評価値に応じて、上記複数の部分画像のうち、上記テンプレート画像と類似する部分画像を決定するテンプレートマッチング方法において、
テンプレート画像とサーチ画像におけるテンプレート画像と同一サイズの部分画像から評価尺度となるしきい値を求め、上記テンプレート画像及び上記部分画像から順次1画素ずつ画素値の差の二乗を求め累積加算し、上記累積加算値が上記しきい値を越えた時に、上記テンプレート画像と上記部分画像との評価処理を終了することを特徴とするテンプレートマッチング方法。 - テンプレート画像と、サーチ画像における該テンプレート画像と同一サイズの部分画像との類似度を正規化相関演算により評価する処理を、上記サーチ画像の複数の部分画像に対して行い、その評価値に応じて、上記複数の部分画像のうち、上記テンプレート画像と類似する部分画像を決定するテンプレートマッチング方法において、
予めもとめた上記テンプレート画像の画素値の総和(A),上記テンプレート画像の画素値の二乗和(B),上記部分画像の画素値の総和(C)、及び、上記部分画像の画素値の二乗和(D)と、予め定めた1以下の正数(E)及び上記テンプレート画像の画素数
(P)から、
- 請求項2において、
予め求めた、部分画像の画素値の総和及び二乗和を利用して、該部分画像の近傍の部分画像の画素値の総和及び二乗和を求めることを特徴とするテンプレートマッチング方法。 - 請求項2において、
上記累積加算値の最終結果が上記しきい値より小さい場合、上記テンプレート画像と上記部分画像との正規化相関係数を求め、この求めた正規化相関係数を上記正数(E)とすることを特徴とするテンプレートマッチング方法。 - 請求項1において、テンプレート画像とサーチ画像におけるテンプレート画像と同一サイズの部分画像から評価尺度となるしきい値を求め、上記テンプレート画像及び上記部分画像との画素値の差の二乗和を求め、上記二乗和がしきい値を超えたときに評価を打ち切り、上記二乗和が上記しきい値を越えない部分画像を評価結果として抽出することを特徴とするテンプレートマッチング方法。
- テンプレート画像と、サーチ画像における該テンプレート画像と同一サイズの部分画像との類似度を正規化相関関数により評価する処理を、上記サーチ画像の複数の部分画像に対して行い、その評価値に応じて、上記複数の部分画像のうち、上記テンプレート画像と類似する部分画像を決定するテンプレートマッチング装置において、
テンプレート画像及びサーチ画像を記憶する記憶装置と、
上記記憶装置からテンプレート画像及びサーチ画像を読み出し、読み出したテンプレート画像及びサーチ画像から、対象となる部分画像を評価するためのしきい値を求め、上記テンプレート画像及び上記サーチ画像から順次1画素ずつ画素値の差の二乗を求め累積加算し、上記累積加算値が上記しきい値を越えた時に、上記テンプレート画像と上記サーチ画像との評価処理を終了する処理装置とを備えたことを特徴とするテンプレートマッチング処理装置。 - テンプレート画像と、サーチ画像における該テンプレート画像と同一サイズの部分画像との類似度を正規化相関関数により評価する処理を、上記サーチ画像の複数の部分画像に対して行い、その評価値に応じて、上記複数の部分画像のうち、上記テンプレート画像と類似する部分画像を決定するテンプレートマッチング装置において、
テンプレート画像を記憶する第1の記憶手段と、
サーチ画像を記憶する第2の記憶手段と、
上記第1の記憶手段からテンプレート画像の画素値を読み出して該画素値の総和及び二乗和を計算し、上記第2の記憶手段からサーチ画像の画素値を読み出して、上記テンプレート画像と同サイズの部分画像における画素値の総和及び二乗和を求める第1の演算器と、
上記求めたテンプレート画像の総和及び二乗和、上記求めた部分画像の総和及び二乗和をそれぞれ保持するレジスタと、
外部から与えられる値と上記テンプレート画像の画素数及び上記レジスタに格納されたテンプレート画像の総和及び二乗和と部分画像の総和及び二乗和から評価の尺度となるしきい値を求める第2の演算器と、
上記テンプレート画像の画素値と上記部分画像の画素値の差の二乗の累積加算値を計算する第3の演算器と、
上記第3の演算器で求めた累積加算値が上記第2の演算器で求めたしきい値を越えた時に、上記テンプレート画像と上記部分画像との評価処理を終了することを特徴とするテンプレートマッチング装置。 - 請求項7において、
上記第1の演算器は、
サーチ画像について横方向に1画素、縦方向にテンプレートと同じ画素数で構成した領域の画素値の総和をそれぞれ求め、上記求めた複数の領域の画素値の総和を組み合わせて部分画像の画素値の総和を求め、
サーチ画像について横方向に1画素、縦方向にテンプレートと同じ画素数で構成した領域の画素値の二乗和をそれぞれ求め、上記求めた複数の領域の画素値の二乗和を組み合わせて部分画像の画素値の二乗和を求めることを特徴とするテンプレートマッチング装置。 - 請求項7において、
上記第1の演算器は、
サーチ画像について横方向に1画素、縦方向にテンプレート画像と同じ画素数で構成した領域の画素値の総和をサーチ画像の1ラインについてそれぞれ求め、
他のラインについては上記求めた領域の画素値の総和から新たに含まれる画素の画素値を加算し、含まれなくなった画素の画素値を減算して上記他のラインについて横方向に1画素、縦方向にテンプレート画像と同じ画素数で構成した領域の画素値の総和を求め、
上記求めた複数の領域の画素値の総和を組み合わせて部分画像の画素値の総和を求め、
サーチ画像について横方向に1画素、縦方向にテンプレートと同じ画素数で構成した領域の画素値の二乗和をそれぞれ求め、
他のラインについては上記求めた領域の画素値の二乗和から新たに含まれる画素の画素値を加算し、含まれなくなった画素の画素値を減算して上記他のラインについて横方向に1画素、縦方向にテンプレート画像と同じ画素数で構成した領域の画素値の二乗和を求め、
上記求めた複数の領域の画素値の二乗和を組み合わせて部分画像の画素値の二乗和を求めることを特徴とするテンプレートマッチング装置。 - テンプレート画像と、サーチ画像における該テンプレート画像と同一サイズの部分画像との類似度を正規化相関関数により評価する処理を、上記サーチ画像の複数の部分画像に対して行い、その評価値に応じて、上記複数の部分画像のうち、上記テンプレート画像と類似する部分画像を決定するテンプレートマッチングを行う画像処理システムにおいて、
サーチ画像及びテンプレート画像を取り込むための画像入力装置と、
テンプレート画像及びサーチ画像を記憶する記憶部と、
上記記憶装置からテンプレート画像及びサーチ画像を読み出し、読み出したテンプレート画像及びサーチ画像から、対象となる部分画像を評価するためのしきい値を求め、上記テンプレート画像及び上記サーチ画像から順次1画素ずつ画素値の差の二乗を求め累積加算し、上記累積加算値が上記しきい値を越えた時に、上記テンプレート画像と上記サーチ画像との評価処理を終了する処理部とを少なくとも有する画像処理プロセッサと、上記画像処理プロセッサの処理を管理するホスト計算機と、上記画像入力装置で入力された画像を表示するとともに、上記画像処理プロセッサで処理された相関度の高い部分画像を表示するための表示装置とを有することを特徴とする画像処理システム。
Priority Applications (8)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP34495596A JP3721681B2 (ja) | 1996-12-25 | 1996-12-25 | テンプレートマッチング方法及び装置 |
TW086117516A TW368640B (en) | 1996-12-25 | 1997-11-22 | Image processor, image processing device and image processing method |
US08/994,096 US6249608B1 (en) | 1996-12-25 | 1997-12-19 | Template matching image processor utilizing sub image pixel sums and sum of squares thresholding |
EP97122659A EP0851383B9 (en) | 1996-12-25 | 1997-12-22 | Image processor, image processing apparatus and image processing method |
DE69729368T DE69729368T2 (de) | 1996-12-25 | 1997-12-22 | Bildprozessor, Gerät und Verfahren zur Bildverarbeitung |
KR1019970073215A KR100505377B1 (ko) | 1996-12-25 | 1997-12-24 | 화상프로세서,화상처리장치및화상처리방법 |
US09/802,958 US6898318B2 (en) | 1996-12-25 | 2001-03-12 | Statistic calculating method using a template and corresponding sub-image to determine similarity based on sum of squares thresholding |
US11/060,400 US7082224B2 (en) | 1996-12-25 | 2005-02-18 | Statistic calculating method using a template and corresponding sub-image to determine similarity based on sum of squares thresholding |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP34495596A JP3721681B2 (ja) | 1996-12-25 | 1996-12-25 | テンプレートマッチング方法及び装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH10187967A JPH10187967A (ja) | 1998-07-21 |
JP3721681B2 true JP3721681B2 (ja) | 2005-11-30 |
Family
ID=18373291
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP34495596A Expired - Fee Related JP3721681B2 (ja) | 1996-12-25 | 1996-12-25 | テンプレートマッチング方法及び装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3721681B2 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5076567B2 (ja) * | 2007-03-09 | 2012-11-21 | 株式会社ニコン | テンプレートマッチング装置、テンプレートマッチング装置を備えたカメラ、テンプレートマッチングをコンピュータで行うためのプログラム |
JP2015179412A (ja) * | 2014-03-19 | 2015-10-08 | 日本電気株式会社 | 画像位置探索装置及び画像位置探索方法 |
-
1996
- 1996-12-25 JP JP34495596A patent/JP3721681B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JPH10187967A (ja) | 1998-07-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7082224B2 (en) | Statistic calculating method using a template and corresponding sub-image to determine similarity based on sum of squares thresholding | |
CN111091590B (zh) | 图像处理方法、装置、存储介质及电子设备 | |
JPH10503307A (ja) | 画像識別装置 | |
CN113822817A (zh) | 文档图像增强方法、装置及电子设备 | |
JP2010509651A (ja) | 画像認識装置及び方法 | |
JP3534551B2 (ja) | 動き検出装置 | |
JPH06348850A (ja) | 濃淡画像処理装置 | |
JP3721681B2 (ja) | テンプレートマッチング方法及び装置 | |
JP6576179B2 (ja) | 画像処理装置、画像処理方法、及びプログラム | |
JPH09101236A (ja) | 表示欠陥検査装置および表示欠陥検査方法 | |
CN116403200A (zh) | 基于硬件加速的车牌实时识别系统 | |
JP4321251B2 (ja) | 合成画像を生成・表示する装置及び方法 | |
US11212480B2 (en) | Brightness and contrast optimization of images in real time | |
JP7039215B2 (ja) | 画像処理装置、画像処理方法、およびプログラム | |
JP3016687B2 (ja) | 画像処理装置 | |
CN111091513A (zh) | 图像处理方法、装置、计算机可读存储介质及电子设备 | |
CN112927142B (zh) | 一种基于时域插值的高速高分辨率视频生成方法和装置 | |
JP2703454B2 (ja) | 画像のパターンマッチング方法 | |
EP0447541B1 (en) | Image data processor system and method | |
JPH11195122A (ja) | テンプレートマッチング方法及び装置 | |
JPH09245166A (ja) | パターンマッチング装置 | |
JP4306333B2 (ja) | 物体検出プログラムを記録したコンピュータ読み取り可能な情報記録媒体 | |
CN113327288A (zh) | 三维包围框定标识的生成方法和装置,及计算机存储介质 | |
JPH05135171A (ja) | カラー画像の処理装置および境界部検出方法 | |
JPH104555A (ja) | 動きベクトル検出装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20040220 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20040309 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20040423 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20050118 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050322 |
|
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: 20050823 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20050905 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080922 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090922 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090922 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100922 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100922 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110922 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120922 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120922 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130922 Year of fee payment: 8 |
|
LAPS | Cancellation because of no payment of annual fees |