JPH02159682A - Template matching system - Google Patents
Template matching systemInfo
- Publication number
- JPH02159682A JPH02159682A JP31535688A JP31535688A JPH02159682A JP H02159682 A JPH02159682 A JP H02159682A JP 31535688 A JP31535688 A JP 31535688A JP 31535688 A JP31535688 A JP 31535688A JP H02159682 A JPH02159682 A JP H02159682A
- Authority
- JP
- Japan
- Prior art keywords
- level
- value
- template
- threshold
- correlation
- 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.)
- Pending
Links
- 238000004364 calculation method Methods 0.000 claims abstract description 29
- 238000000034 method Methods 0.000 claims description 21
- 230000015654 memory Effects 0.000 claims description 13
- 238000012567 pattern recognition method Methods 0.000 claims 1
- 238000007796 conventional method Methods 0.000 description 5
- 238000001514 detection method Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 5
- 230000000694 effects Effects 0.000 description 4
- 238000000605 extraction Methods 0.000 description 3
- 238000005286 illumination Methods 0.000 description 2
- 238000003860 storage Methods 0.000 description 2
- 238000005520 cutting process Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
Landscapes
- Image Analysis (AREA)
Abstract
Description
【発明の詳細な説明】
〔産業上の利用分野〕
本発明は画像によるテンプレートマツチング方式に係り
、特に高速認識を可能とするとともに二値画像処理より
も照明やノイズの影響に強いパターン位置検出方式に関
する。[Detailed Description of the Invention] [Industrial Application Field] The present invention relates to a template matching method using images, and in particular, a pattern position detection method that enables high-speed recognition and is more resistant to the effects of illumination and noise than binary image processing. Regarding the method.
従来、テンプレートを用いた位置検出方式におけるテン
プレートマツチングは、濃淡画像によるテンプレートを
検出対象画面に対して1画素ずつ平行移動させて、テン
プレートが被覆する範囲について相互相関値を計算し、
その最も値の大きい所をみつけてパターンの位置を求め
るものである。Conventionally, template matching in a position detection method using a template involves translating a template based on a gray scale image pixel by pixel with respect to the detection target screen, and calculating a cross-correlation value for the range covered by the template.
The position of the pattern is determined by finding the point with the largest value.
相互相関値は9次のように定義される。The cross-correlation value is defined as 9th order.
いま、入力画像lが、Fij(ただしi=1.N;J−
1,M)なる画素により構成されているとする。ここで
、i=l、Nは横方向についての画素識別添字であり、
j=1.Mは画面上方より下方に向けての画素識別添字
である。テンプレートは。Now, the input image l is Fij (where i=1.N; J-
1, M). Here, i=l, N is a pixel identification subscript in the horizontal direction,
j=1. M is a pixel identification subscript from the top to the bottom of the screen. The template is.
Tij(ただしi=1.n; j=1.m)なる画素に
より構成されているとする。そして5部分画像(テンプ
レートが人力画像上で被覆する範囲の画像)の左上の位
置をi、jとしたときの相互相関値rijは2次式で表
される。Suppose that it is composed of pixels Tij (where i=1.n; j=1.m). The cross-correlation value rij is expressed by a quadratic equation when the upper left positions of the five partial images (images covered by the template on the human image) are i and j.
(ΣF0))
・ ・ ・(1)
ただし、S二n−m
Σ=ΣΣ
に1 淑電1161
p−1+ (k−1)
q−j+ (j!−1)
テンプレート画像の値のみに関する計算値(ΣT、、Σ
T−など)は、あらかじめ計算されるため定数値として
処理できる。(ΣF0)) ・ ・ ・ (1) However, S2 nm Σ=ΣΣ 1 Shukuden 1161 p-1+ (k-1) q-j+ (j!-1) Calculated value regarding only the template image value (ΣT,,Σ
T-, etc.) can be treated as a constant value because it is calculated in advance.
この相互相関値rljは、−1≦riJ≦1の範囲の値
を取り、値1が完全にテンプレートと入力画像が同じで
あることを表す、rij≦Oの場合は。This cross-correlation value rlj takes a value in the range of -1≦riJ≦1, and when rij≦O, the value 1 indicates that the template and the input image are completely the same.
2つの画像の間には何の関係もないことを示す。Indicates that there is no relationship between the two images.
通常のテンプレートマツチングでは、テンプレートを入
力画像に対して1画素ずつ移動させて。In normal template matching, the template is moved pixel by pixel relative to the input image.
(1)式で与えられる相関値を算出して行き、その値が
ある値(相関値は、テンプレートとどれだけ相関がある
かを表すものであるため、パターンを認識させるため、
あるしきい値以上であることをもって判断をする。)以
上で、かつ、最大になる所をパターンの存在する位置と
して検出するものである。このときの計算量は、■画素
当りの計算量を1とすれば、1つの相互相関値を計算す
るのに(nXm)、それに移動できる所が(N−m+1
)X(M−m+1)だけあるので全体の計算量は。Calculate the correlation value given by formula (1), and calculate the value to a certain value (the correlation value indicates how much it correlates with the template, so in order to recognize the pattern,
Judgment is made based on whether the value is above a certain threshold. ), and the position where the maximum value is reached is detected as the position where the pattern exists. The amount of calculation in this case is: ■ If the amount of calculation per pixel is 1, the number of places that can be moved is (N-m+1) to calculate one cross-correlation value (nXm).
)X(M-m+1), so the total amount of calculation is:
((nXm)X (N−n+1)X (M−m+1)・
・・(2)
となる。((nXm)X (N-n+1)X (M-m+1)・
...(2) becomes.
この従来のテンプレートマツチング方式では。 In this traditional template matching method.
2値化の方式に比べて、照明やノイズの影響に強いこと
が特徴であるが、テンプレートの大きさや範囲によって
その演算量が多くなり、パターンの位置検出を高速に実
行できないという問題があっ本発明は、この問題を解決
した演算回数の少ない高速のテンプレートマツチング方
式を提供することを目的とする。Compared to the binarization method, it is more resistant to the effects of lighting and noise, but the problem is that the amount of calculation increases depending on the size and range of the template, making it impossible to detect the position of the pattern at high speed. SUMMARY OF THE INVENTION An object of the present invention is to provide a high-speed template matching method that solves this problem and requires fewer calculations.
本発明は、上記課題を解決するために、テンプレートの
大きさに応じて、相互相関値を計算する際のテンプレー
トとテンプレートが被覆する入力画像の計算対象画素の
間隔を数レベルに階層化し。In order to solve the above problem, the present invention hierarchizes the interval between the template and the calculation target pixels of the input image covered by the template when calculating the cross-correlation value into several levels depending on the size of the template.
そのレベル毎に下位のレベルにいける条件のためのしき
い値をあらかじめ設定しておき、まず、計算対象画素が
少ないレベル(一番上のレベル)から、粗い位置間隔で
相関値を計算していき、しきい値以上で周りより値の高
い位置を見出したら。For each level, set the threshold value in advance for the conditions that allow you to go to the lower level, and first calculate the correlation value at coarse position intervals starting from the level with the fewest pixels to be calculated (the highest level). If you find a position that is above the threshold and has a higher value than the surroundings.
その位置とその近傍をもっと下位のレベルで計算して、
つぎつぎとレベルを下げていき、ついには最下位レベル
(1画素単位)での相関値の最大値の位置を求めるもの
である。Compute its location and its neighborhood at a lower level,
The level is lowered one after another, and finally the position of the maximum correlation value at the lowest level (in units of one pixel) is determined.
本発明によれば、最初は粗い位置間隔でパターンが存在
しそうな所をしきい値を使って求め、その位置を次々と
下位レベルで検索するため、下位レベルでの演算回数が
少なくなり、全体としての演算回数も少なくなる。従来
の1画素ずつずらして相互相関値を計算するのに比べて
計算・回数を大幅に短縮でき、高速化がはかれる。(た
だし、テンプレートの大きさと認識する画像の大きさに
よってこの度合は変化する。)
〔実施例〕
本発明の実施例を図面を用いて説明する。According to the present invention, the locations where a pattern is likely to exist are first found at coarse position intervals using a threshold value, and the locations are searched one after another at lower levels, so the number of calculations at lower levels is reduced, and the overall The number of calculations is also reduced. Compared to the conventional method of calculating cross-correlation values by shifting one pixel at a time, the number of calculations can be significantly reduced and speed can be increased. (However, this degree changes depending on the size of the template and the size of the image to be recognized.) [Example] An example of the present invention will be described using the drawings.
第1図、第2図は、それぞれ本発明の詳細な説明図であ
る。1 and 2 are detailed explanatory views of the present invention, respectively.
本実施例の対象となる画像は、第2図に示すように、ラ
スクスキャン方式により走査される画像である。第1図
において、入力画像lから、テンプレート3と同一の大
きさの部分画像2を切り出しテンプレート3と各々の対
応画素について相互相関値を計算する。そして、その値
は切り出した部分画像2の左上の位置に対応するものと
する。The image to be used in this embodiment is an image scanned by the rask scan method, as shown in FIG. In FIG. 1, a partial image 2 having the same size as a template 3 is cut out from an input image l, and a cross-correlation value is calculated for the template 3 and each corresponding pixel. It is assumed that this value corresponds to the upper left position of the cut out partial image 2.
テンプレート3は、第1図に示すように、テンプレート
抽出用人力画像4から任意の所を切り出した部分画像で
ある。As shown in FIG. 1, the template 3 is a partial image obtained by cutting out an arbitrary part from the manual image 4 for template extraction.
まず、テンプレート抽出用入力画像4の部分画像を切り
出してテンプレート用メモリに格納し。First, a partial image of the input image 4 for template extraction is cut out and stored in a template memory.
テンプレートとする。この時、テンプレートの階層化レ
ベルの設定とレベル毎のしきい値の設定を行う、まず、
テンプレートの階層化レベルの設定であるが、テンプレ
ートの縦または横のどちらか長い方の画素数をtpとす
れば、 (第2図のようにテンプレートの大きさがnX
mで02mであるとすればtp=nとなる。)
t p / 2 L *−1≦A
・・・(3)である。Use as a template. At this time, first, set the template hierarchy level and set the threshold for each level.
Regarding the setting of the layering level of the template, if the number of pixels in either the vertical or horizontal direction of the template, whichever is longer, is tp, (as shown in Figure 2, the size of the template is nX
If m is 02m, then tp=n. ) t p / 2 L *-1≦A
...(3).
Aは、最大レベル番号Lmにおける計算対象画素のたて
方向の数とよこ方向の数のうち最大の画素数で、適宜な
値を設定する必要がある。ここで。A is the maximum number of pixels among the number of calculation target pixels in the vertical direction and the number in the horizontal direction at the maximum level number Lm, and it is necessary to set an appropriate value. here.
テンプレートの大きさを100X100画素。Template size is 100x100 pixels.
A=16とすれば、Lm=4となる。第3図〜第6図は
それぞれ各レベルにおける相互相関値を計算する位置と
計算対象画素を表す図である。If A=16, Lm=4. FIGS. 3 to 6 are diagrams showing positions and calculation target pixels for calculating cross-correlation values at each level, respectively.
各レベルにおけるしきい値の設定であるが、これレート
の計算対象画素を24−1画素(8画素)おきにし9テ
ンプレートを切り出した入力画像の位ように、レベル3
でも同様に、計算対象画素を4ベル3のしきい値の最高
値とする。レベル2.レベル1も同様にそれぞれ2画素
、1画素間隔の八つの近傍内で相互相関値を計算する。As for setting the threshold value at each level, level 3
Similarly, the pixel to be calculated is set to the highest value of the 4 bell 3 threshold values. Level 2. Similarly, for level 1, cross-correlation values are calculated within eight neighborhoods of 2 pixels each and 1 pixel interval.
(第5図。(Figure 5.
第6図にレベル2.1の場合を示す、)各レベルのしき
い値は、各レベルにおいてもっと下位レベルで探索をす
るかどうかの尺度となる。The threshold value of each level (Figure 6 shows the case of level 2.1) is a measure of whether or not to search at a lower level at each level.
実際に使用するしきい値は、これまでに求めたしきい値
に適当な係数を掛けて各レベルのしきい値として使用す
る。だいたい、使用する係数は0.8〜0.9ぐらいで
ある。このようにして、しきい値を適切に設定する。し
きい値は、非常に重要でこの値が低すぎれば計算回数が
非常に多くなり。The threshold value actually used is the threshold value obtained so far multiplied by an appropriate coefficient and used as the threshold value for each level. The coefficient used is approximately 0.8 to 0.9. In this way, the threshold value is set appropriately. The threshold value is very important; if this value is too low, the number of calculations will increase significantly.
また、高すぎればパターンの検出ができなくなる。Moreover, if it is too high, the pattern cannot be detected.
以下、各レベル4,3,2.1の最終的なしきい値をt
11a+ t 113.t 111+ t hl
とする。Below, the final threshold value of each level 4, 3, 2.1 is t
11a+t 113. t 111+ t hl
shall be.
第7図は1本発明のテンプレートマツチング方式を詳細
に説明する図である。まず、レベル4において、テンプ
レートマツチングを行う入力画像上を走査線に従い、2
’+1i1素間隔(177画素毎に相互相関値を計算し
ていく、レベル4での相関値の計算に使用される画素は
、レベル4での計算対象画素24−1画素間隔(8!素
間隔)で行われる。これは、他のレベルでも同様である
。そして、ある位IF(i、J)で相関値rijがしき
い値th、より大きくなったとすると、その位置の2’
−’i!j素間隔(8m!素間隔)の八つの近傍位置(
l−8,j−8) (1−8,J) (1−8,l
+8)(i、J−8)(1,l+8)(N+8゜J−8
)0十8.J)(l+8.J+s)にっいてレベル4で
の相関値を計算する。求める位置が、(N+3.j
3)であったとすれば、相関値はその位置からより近い
所の方が高い性質を持っているため(i、j)の位置が
レベル4で最も高くなる。もし、他の位置が高ければ、
その位置のへ近傍で計算されていない位置について相互
相関値を計算し、しきい値以上でまわりの八つの近傍よ
り値が高い位置を求めて行(。次に、この位置が見つか
れば、レベルを1つ下ケ、レベル3での探索となる。FIG. 7 is a diagram illustrating in detail the template matching method of the present invention. First, at level 4, two
'+1i 1 pixel interval (the cross-correlation value is calculated every 177 pixels. The pixels used to calculate the correlation value at level 4 are the calculation target pixels at level 4, 24-1 pixel interval (8! pixel interval) ). This is the same for other levels. Then, if the correlation value rij becomes larger than the threshold value th at a certain IF (i, J), then 2' at that position
-'i! Eight neighboring positions of j prime interval (8m! prime interval) (
l-8,j-8) (1-8,J) (1-8,l
+8) (i, J-8) (1, l+8) (N+8°J-8
)018. J) Calculate the correlation value at level 4 using (l+8.J+s). The desired position is (N+3.j
3), the position (i, j) has the highest value at level 4 because the correlation value is higher nearer to the position. If other positions are high,
The cross-correlation value is calculated for the positions that have not been calculated in the vicinity of that position, and the position whose value is higher than the threshold value and higher than the eight surrounding neighbors is found (.Next, if this position is found, the level One level lower, the search will be at level 3.
レベル3では、(i、J)と24−2画素間隔(4画素
間隔)の八つの近傍位置
(1−4,j−4) (i−4,j) (i−4,
l+4)(i、j 4)(i、l+4)(l+4゜j
−4)(l+4.N (l+4.l+4)の相関値を
計算する。ここで、(++4.j 4)がしきい(!
!thzより大きく九つの中で最大となる。At level 3, (i, J) and eight neighboring positions (1-4, j-4) (i-4, j) (i-4,
l+4)(i,j 4)(i,l+4)(l+4゜j
-4) (l+4.N (l+4.l+4). Here, (++4.j 4) is the threshold (!
! It is larger than thz and is the largest among the nine.
次には、(++4.j−4)の値が周りより大きいかど
うかを確かめるために、その八つの近傍の未計算位置
(i、 J−8) (i−1−4,J−8) N
+8. j−8) (1+8. J−4) (
1+8. j)の5個所について計算を行い、これら
の値と(l+4.3−4)での値の中で最も高い値の位
置を探す、レベル3で(l+4.J 4)が見つけら
れたため1次は、レベル2での探索となる。もし。Next, to check whether the value of (++4.j-4) is larger than its surroundings, we calculate the uncalculated positions of its eight neighbors (i, J-8) (i-1-4, J-8) N
+8. j-8) (1+8. J-4) (
1+8. Calculate the 5 locations of j) and find the position with the highest value between these values and the value at (l+4.3-4).Since (l+4.J 4) was found at level 3, it is is a level 2 search. if.
このレベル3で、すべての値がしきい値th、より小さ
ければ、レベル4に戻って次の位1(++11.3)の
計算を行う。At this level 3, if all the values are smaller than the threshold value th, the process returns to level 4 and the next digit 1 (++11.3) is calculated.
なお、Bは計算位置が(i、j)のときのテンプレート
と部分画像が重なる部分である。Note that B is a portion where the template and the partial image overlap when the calculated position is (i, j).
レベル2では、レベル3と同様に(1+4.j−4)と
八つの近傍位置
(l+2. J−6) (1+2. J−4)
(l+2゜J−2)(l+4.J−6)(1−)−4
,J〜2)(1+6.j−6)(N+6.j−4)(1
+6゜j−2)
の相関値を計算する。そうすると1次の四つの位置
(1+2. j−4) (1+2. j−2)
(1+4゜j−4) N+4. j−2)
のどれかがしきい値th、以上で最大値をとることにな
る。これは、レベル3で行ったのと同様の方法で求めら
れる。もし、このレベルでしきい値以上の位置が求めら
れなければ、レベル3と同様にレベル4に戻る。At level 2, as in level 3, (1+4.j-4) and eight neighboring positions (l+2.J-6) (1+2.J-4)
(l+2゜J-2) (l+4.J-6) (1-)-4
, J~2)(1+6.j-6)(N+6.j-4)(1
+6°j-2). Then, the four positions of the first order (1+2. j-4) (1+2. j-2)
(1+4゜j-4) N+4. j-2) will take the maximum value above the threshold th. This is determined in the same way as done for level 3. If a position equal to or higher than the threshold value is not found at this level, the process returns to level 4 in the same way as level 3.
レベル2で、仮に、 (l+2.j−2)の位置が求
められたとすると1次には、レベル1での探索となる。If the position of (l+2.j-2) is found at level 2, the first order will be a search at level 1.
レベル1では、今までと同様に、(l+2.j−2)と
その八つの近傍位置
(N+1. j−3) (i+l、 j−2) (N+
1゜j−1)(l+2.j−3)(l+2、j−1)(
++3.j−3)(N+3.j−2)(N+3゜j−1
)
の相関値を計算する。そうすると、(N+3.j−3)
がしきい値Lh、以上で最大値の位置となる。そして、
この位置が周りの八つの近傍より大きいことを確かめ、
このパターンの位置が求まる。At level 1, as before, (l+2.j-2) and its eight neighboring positions (N+1.j-3) (i+l, j-2) (N+
1゜j-1)(l+2.j-3)(l+2,j-1)(
++3. j-3) (N+3.j-2)(N+3゜j-1
) Calculate the correlation value of . Then, (N+3.j-3)
is the maximum value when it is equal to or greater than the threshold value Lh. and,
Make sure that this position is greater than the eight surrounding neighbors,
Find the position of this pattern.
もし、レベル1でしきい値th+以上の所がなければレ
ベル3と同様にレベル4に戻る。If there is no place where the value is equal to or higher than the threshold value th+ at level 1, the process returns to level 4 in the same way as level 3.
このようにして、パターンの位置検出を行うわけである
が、パターンを検出すべき人力画像の中にしきい値以上
の相関値を持つパターンがただ1つしかないことが、あ
らかじめ分かっているとすれば、レベル1での探索が終
わったところでテンプレートマツチングは終わることに
なる。ところが、入力画像の中に同じようなパターンが
あるとすれば、レベル1での探索の終了後も引き続き上
位レベルに戻って、未探索個所についてより高い相関値
をもつパターン位置を検索して行く必要がある。In this way, the position of the pattern is detected, but it is assumed that it is known in advance that there is only one pattern in the human image in which the pattern is to be detected that has a correlation value greater than the threshold value. For example, template matching ends when the search at level 1 ends. However, if there is a similar pattern in the input image, even after completing the search at level 1, the system continues to return to the upper level and searches for pattern positions with higher correlation values for unsearched locations. There is a need.
第8図は本発明を実施するための具体的回路例を示す図
である。A/D変換された画像信号は。FIG. 8 is a diagram showing a specific example of a circuit for implementing the present invention. The A/D converted image signal.
マルチプレクサ103を通って入力画像メモリ92に格
納される。この時、入力画像メモリ92のアドレスは画
像格納用アドレス発生回路96から供給される。テンプ
レートは、この入力画像メモリ92のある矩形領域部分
をテンプレートメモ1J93に転送して得られる。CP
U91は、テンプレートメモリ93を読みだして定数値
(ΣT。It passes through multiplexer 103 and is stored in input image memory 92 . At this time, the address of the input image memory 92 is supplied from the image storage address generation circuit 96. A template is obtained by transferring a certain rectangular area portion of this input image memory 92 to the template memo 1J93. C.P.
U91 reads the template memory 93 and obtains a constant value (ΣT.
ΣT”)を計算しておく。それから、CPU91は。ΣT") is calculated. Then, the CPU 91 calculates.
アドレス発生回路94.95にアドレスのスタートと間
隔とエンドを与え人力画像メモリ92.テンプレートメ
モリ93のそれぞれのアドレスを発生させ2両メモリの
データを読みだし、積和演算器97で入力画像データの
総和、ΣF、積和演算器98で入力画像データの2乗の
総和、ΣF2積和演算器99で入力画像データとテンプ
レートデータとの積の総和ΣT−Fを並列処理して求め
る。CPU91は、積和演算器のデータを読み込み、テ
ンプレートとテンプレートを切り出した入力画像との相
関値を計算し、しきい値を求める。The start, interval, and end of the address are given to the address generation circuits 94 and 95, and the human image memory 92. Each address of the template memory 93 is generated and the data of the two memories are read out, and the product-sum calculator 97 calculates the sum of the input image data, ΣF, and the product-sum calculator 98 calculates the sum of the squares of the input image data, ΣF2 product. A sum calculator 99 calculates the sum ΣT-F of the products of the input image data and the template data by performing parallel processing. The CPU 91 reads data from the product-sum calculator, calculates a correlation value between the template and the input image from which the template has been cut out, and determines a threshold value.
次に、探索画像を人力画像に取り込み、前述のようにし
て相関値を計算するためのデータを積和演算器97.9
8.99で生成し、CPU91で相関値を計算する。Next, the search image is imported into a human image, and the data for calculating the correlation value as described above is input to the sum-of-products calculator 97.9.
8.99, and the CPU 91 calculates the correlation value.
第9図は5本発明のテンプレートマツチング方式を表す
フローチャートである。FIG. 9 is a flowchart showing the template matching method of the present invention.
以上説明したように、この方式では、上位レベルでの探
索段階でしきい値をもとにパターンが存在しそうな所を
見つけ、その位置で下位レベルの探索を行うため、下位
レベルでの計算回数が少なくなり、全体的な計算回数は
かなり減少する。As explained above, in this method, a place where a pattern is likely to exist is found based on the threshold value in the search stage at the upper level, and the lower level search is performed at that position, so the number of calculations at the lower level is , and the overall number of calculations is considerably reduced.
いま、テンプレートの大きさを100X100画素、入
力画像の大きさを512X480画素。Now, the size of the template is 100 x 100 pixels, and the size of the input image is 512 x 480 pixels.
A=16とすれば、1画素毎に移動して行〈従来の方式
では、(2)式で計算され、総計算回数= (100x
100)x (512−100+t)X (480−1
00+1)
=157353xlO’回
となる。If A = 16, the line is moved pixel by pixel. In the conventional method, it is calculated using equation (2), and the total number of calculations = (100x
100)x (512-100+t)X (480-1
00+1) = 157353xlO' times.
一方1本発明の方式では、レベル毎に次のような計算回
数となる。(整数の除算は切り捨ての整数になる。)
レベル4での計算回数
= (100/8xlOO/8)
X [(512−100+1)/17X (480−1
00+1)/17+N41
=76032+144・N4
レベル3での計算回数
=(100/4X100/4)XN3
−625・N3
レベル2での計算回数
= (100/2x 100/2) xN2=2500
・N2
レベル1での計算回数
= (100X100)XNI
=10000・N1
したがって、総計算回数
+144・N4+625・N3+2500・N2+10
000・Nl
となる、ここで、N4.N3.N2.Nl≧Oでまった
く相関のない画像を探索すると、N4=N3=N2=N
1=Oとなる。On the other hand, in the method of the present invention, the number of calculations for each level is as follows. (Division of an integer results in a rounded down integer.) Number of calculations at level 4 = (100/8xlOO/8) X [(512-100+1)/17X (480-1
00+1)/17+N41 =76032+144・N4 Number of calculations at level 3 = (100/4X100/4)XN3 -625・N3 Number of calculations at level 2 = (100/2x 100/2) xN2=2500
・N2 Number of calculations at level 1 = (100X100)XNI =10000・N1 Therefore, total number of calculations +144・N4+625・N3+2500・N2+10
000·Nl, where N4. N3. N2. If Nl≧O and searching for completely uncorrelated images, N4=N3=N2=N
1=O.
もし、最適な探索を行った場合(下位しにルでの探索が
1度しか起こらなかった場合)を考えると
N4−8+5=13
N5=9+5=14
N2=9+5=1 4
Nl−9+5=14 となり。If we consider the case where the optimal search is performed (the search in the lower order occurs only once), N4-8+5=13 N5=9+5=14 N2=9+5=1 4 Nl-9+5=14 Next door.
総計算回数
=261.654回で従来の方式の約6000分の1の
回数となる。The total number of calculations = 261.654 times, which is about 1/6000 of the conventional method.
しかし、実際には、テンプレート画像、入力画像。But actually, the template image, the input image.
そして、しきい値の設定などで変わり、上位レベルでの
回数が多くなり2従来の方式の1000分の1の回数ぐ
らいになる。Then, depending on the setting of the threshold value, etc., the number of times at the upper level increases, and becomes about 1/1000th of the number of times of the conventional method.
濃淡画像のテンプレートマツチングを用いた位置の検出
は、二値画像のパターンの位置検出に比べ照明の変化や
ノイズ影響に強いが、計算回数が膨大になって速度が遅
すぎる点が問題であったがこのように1本発明の方式で
は、従来の方式に比べ大部分の場合において大幅に計算
回数を軽減することができ、テンプレートマツチングを
高速に行えるようになる。Position detection using template matching for grayscale images is more resistant to changes in illumination and noise than position detection for patterns in binary images, but the problem is that it requires a huge number of calculations and is too slow. However, in the method of the present invention, the number of calculations can be significantly reduced in most cases compared to the conventional method, and template matching can be performed at high speed.
第1図、第2図は、それぞれ本発明の実施例ののテンプ
レートマツチング方式を詳細に説明する図、第8図は本
発明を実施するための具体的回路例を示す図、第9図は
本発明のテンプレートマツチング方式を表すフローチャ
ートである。
l・・・・・・入力画像
2・・・・・・部分画像
3・・・・・・テンプレート
4・・・・・・テンプレート抽出用入力画像91・・・
・・・CPL)
92・・・・・・入力画像メモリ
93・・・・・・テンプレートメモリ
94.95・・・・・・アドレス発生回路96・・・・
・・画像格納用アドレス発生回路97.98.99・・
・・・・積和演算器lOO〜102.107〜110
・・・・・・バッファゲート
103.104・・・・・・マルチプレクサ105・・
・・・・D/A変換器
第 1 回
特許出願人 株式会社安川電機製作所
第
図
(しベル4)
第5図
第
図
cレベル3)
第
図
図面の浄書(内容に変更なし)゛
第
圓
しベル1での探索
レベル2での採崇
手
続
補
正
書
(方式)
事件の表示
昭和63年特許願第315356号
発明の名称
テンプレートマツチング方式
補正をする者
事件との関係 特許出願人
願書に最初に添付した図面の浄書
別紙の通り(内容に変更なし)1 and 2 are diagrams respectively explaining in detail the template matching method of the embodiment of the present invention, FIG. 8 is a diagram showing a specific example of a circuit for implementing the present invention, and FIG. is a flowchart representing the template matching method of the present invention. l... Input image 2... Partial image 3... Template 4... Input image for template extraction 91...
... CPL) 92 ... Input image memory 93 ... Template memory 94.95 ... Address generation circuit 96 ...
・・Image storage address generation circuit 97.98.99・・
. . . Product-sum calculation unit lOO~102.107-110 . . . Buffer gate 103.104 . . . Multiplexer 105.
...D/A converter 1st patent applicant Yaskawa Electric Manufacturing Co., Ltd. Figure 4 (Figure 5 Figure c Level 3) Engraving of the Figure drawing (no changes to the content)゛No. 1986 Patent Application No. 315356 Name of the invention Template Matching method Person making the amendment Relationship with the case Patent applicant First application form As shown in the engraving attached to the attached drawing (no changes in content)
Claims (1)
画像メモリに格納し、その画像メモリに格納された入力
画像のデータを処理してパターン認識するパターン認識
方式において、縦方向n画素、横方向m画素(n、mは
自然数)の濃淡画像のテンプレートを規定し、前記画像
メモリに格納された入力画像に対して、テンプレートが
被覆する範囲について、入力画像と該テンプレートとの
相互相関値を求め、その値があらかじめ定められたしき
い値以上で一番高い値を示す位置を求めることにより認
識対象の存在位置を探索することを特徴とするテンプレ
ートマッチング方式。 2、テンプレートの大きさに応じて、相互相関値を計算
する際の演算対象画素の間隔を数レベルに階層化し、そ
のレベル毎に相関値のしきい値をあらかじめ設定してお
き、最も画素間隔の大きいレベルから1階層ずつ下のレ
ベルに向かう下記[1]から[5]の手順からなること
を特徴とするテンプレートマッチング方式。 [1]レベル番号Lmの最も画素間隔の大きいレベルで
は、前記入力画像に対して2^L^m+1画素ずつ必要
な画面につき該テンプレートを平行移動させて走査し、
該テンプレートが被覆する範囲について、2^L^m−
1の画素間隔で、前記相互相関を計算し、その値が設定
されたしきい値以上であるかを判断する。しきい値未満
であれば、つぎの位置の計算に行く、しきい値以上であ
れば、[2]へ行く。 [2]その位置を中心とした2^L^m−1画素間隔の
八つの近傍の位置での相互相関値の計算をし、中心の値
より大きい所があれば今度はその位置を中心としまわり
の八つの近傍の位置の値を計算し、中心値が八つの近傍
より大きい位置を求めて、[3]へ行く。 [3]現在のレベル番号Lが1であれば現在の位置が認
識対象の存在位置となる、レベルが1でなければ[4]
へ行く。 [4]その位置で、レベル番号を1つ下げてその位置と
その位置を中心とした2^L^m−1画素間隔の八つの
近傍位置での相互相関値を計算する。すべての値がその
レベルのしきい値未満であれば、レベルを最大レベル番
号にして[1]に戻る。 そうでなければ、[5]へ行く。 [5]最も大きい値を現在の位置とし、その位置を中心
とし、まわりの八つの近傍の位置の値を計算し、現在の
位置の値より大きな値の位置を求める、現在位置の八つ
の近傍に高い値がなくなれば[3]へ行く。 3、各レベルにおいてテンプレートの位置をそのレベル
の画素間隔の八つの近傍まで1画素ずつずらして、その
レベルの画素間隔での相互相関値を計算し、その八つの
値の最も小さい値をそのレベルのしきい値の最高値とし
、この値に適当な係数を掛けてそれぞれのレベルのしき
い値とすることを特徴とする請求項1または2記載のテ
ンプレートマッチング方式。[Claims] 1. In a pattern recognition method that captures an image from a camera, A/D converts it, stores it in an image memory, processes the data of the input image stored in the image memory, and recognizes a pattern. , a grayscale image template of n pixels in the vertical direction and m pixels in the horizontal direction (n and m are natural numbers) is defined, and the input image and the corresponding range are defined for the input image stored in the image memory with respect to the range covered by the template. A template matching method characterized by searching for the location of a recognition target by finding a cross-correlation value with a template and finding the location where the value is the highest above a predetermined threshold. 2. Depending on the size of the template, the interval between pixels to be calculated when calculating the cross-correlation value is hierarchically divided into several levels, and the threshold value of the correlation value is set in advance for each level. A template matching method is characterized in that it consists of the following steps [1] to [5] from the highest level to the next lower level. [1] At the level with the largest pixel interval of level number Lm, scan the input image by moving the template parallel to the required screen by 2^L^m+1 pixels,
Regarding the range covered by the template, 2^L^m-
The cross-correlation is calculated at a pixel interval of 1, and it is determined whether the value is greater than or equal to a set threshold value. If it is less than the threshold, go to calculation of the next position; if it is more than the threshold, go to [2]. [2] Calculate the cross-correlation values at eight neighboring positions with an interval of 2^L^m-1 pixels around that position, and if there is a place where the value is greater than the center value, then use that position as the center. Calculate the values of the positions of the eight surrounding neighbors, find the position where the center value is larger than the eight neighbors, and go to [3]. [3] If the current level number L is 1, the current position is the location of the recognition target, and if the level is not 1 [4]
go to [4] At that position, lower the level number by one and calculate the cross-correlation values at that position and at eight neighboring positions at 2^L^m-1 pixel intervals around that position. If all values are less than the threshold for that level, set the level to the maximum level number and return to [1]. Otherwise, go to [5]. [5] Set the largest value as the current position, calculate the values of the eight neighboring positions around that position, and find the position with a value larger than the value of the current position. Eight neighbors of the current position. If there are no high values, go to [3]. 3. At each level, shift the position of the template by one pixel to the eight neighboring pixel intervals of that level, calculate the cross-correlation value at the pixel interval of that level, and set the smallest value of those eight values to that level. 3. The template matching method according to claim 1, wherein the threshold value of each level is determined by multiplying this value by an appropriate coefficient.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP31535688A JPH02159682A (en) | 1988-12-13 | 1988-12-13 | Template matching system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP31535688A JPH02159682A (en) | 1988-12-13 | 1988-12-13 | Template matching system |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH02159682A true JPH02159682A (en) | 1990-06-19 |
Family
ID=18064430
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP31535688A Pending JPH02159682A (en) | 1988-12-13 | 1988-12-13 | Template matching system |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH02159682A (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0689333A (en) * | 1992-09-07 | 1994-03-29 | Chuo Denshi Kk | Automatic collating method for seal impression |
JP2001351109A (en) * | 2000-06-09 | 2001-12-21 | Matsushita Electric Ind Co Ltd | Method for detecting image |
US7835543B2 (en) | 2006-10-20 | 2010-11-16 | Hitachi, Ltd. | Object detection method |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS56108181A (en) * | 1980-01-29 | 1981-08-27 | Hitachi Ltd | Feature point searching device |
JPS57137978A (en) * | 1981-02-20 | 1982-08-25 | Toshiba Corp | Pattern detecting device |
JPS63211474A (en) * | 1987-02-27 | 1988-09-02 | Yaskawa Electric Mfg Co Ltd | Hierarchization structural template matching method |
-
1988
- 1988-12-13 JP JP31535688A patent/JPH02159682A/en active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS56108181A (en) * | 1980-01-29 | 1981-08-27 | Hitachi Ltd | Feature point searching device |
JPS57137978A (en) * | 1981-02-20 | 1982-08-25 | Toshiba Corp | Pattern detecting device |
JPS63211474A (en) * | 1987-02-27 | 1988-09-02 | Yaskawa Electric Mfg Co Ltd | Hierarchization structural template matching method |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0689333A (en) * | 1992-09-07 | 1994-03-29 | Chuo Denshi Kk | Automatic collating method for seal impression |
JP2001351109A (en) * | 2000-06-09 | 2001-12-21 | Matsushita Electric Ind Co Ltd | Method for detecting image |
US7835543B2 (en) | 2006-10-20 | 2010-11-16 | Hitachi, Ltd. | Object detection method |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Perfetti et al. | Cellular neural networks with virtual template expansion for retinal vessel segmentation | |
CN110738207A (en) | character detection method for fusing character area edge information in character image | |
CN108830832A (en) | A kind of plastic barrel surface defects detection algorithm based on machine vision | |
CN108596944A (en) | A kind of method, apparatus and terminal device of extraction moving target | |
CN113095106A (en) | Human body posture estimation method and device | |
JP2011186633A (en) | Object detector | |
CN109919247A (en) | Characteristic point matching method, system and equipment in harmful influence stacking binocular ranging | |
US4701961A (en) | Character identifying apparatus | |
US20140307957A1 (en) | Classifier update device, information processing device, and classifier update method | |
JP2009211490A (en) | Image recognition method and image recognition device | |
JP5264457B2 (en) | Object detection device | |
CN111291611A (en) | Pedestrian re-identification method and device based on Bayesian query expansion | |
JPH02159682A (en) | Template matching system | |
CN102760293A (en) | Image quality evaluation method based on distance matrix | |
Nedzved et al. | Gray-scale thinning by using a pseudo-distance map | |
CN113033247A (en) | Image identification method and device and computer readable storage medium | |
CN110766003A (en) | Detection method of fragment and link scene characters based on convolutional neural network | |
CN116229098A (en) | Image recognition method based on mask contour tracking and related products | |
CN115830342A (en) | Method and device for determining detection frame, storage medium and electronic device | |
CN115050066A (en) | Face counterfeiting detection method, device, terminal and storage medium | |
JP3230509B2 (en) | Moving image processing device | |
KR20190048597A (en) | Apparatus of sensor information fusion using deep learning and method thereof | |
JP3417635B2 (en) | Intruding object recognition method | |
CN110147755B (en) | Context cascade CNN-based human head detection method | |
RU2582853C2 (en) | Device for determining distance and speed of objects based on stereo approach |