Faster image template matching in the sum of the absolute value of differences measure

  • Authors:
  • M. J. Atallah

  • Affiliations:
  • Dept. of Comput. Sci., Purdue Univ., West Lafayette, IN

  • Venue:
  • IEEE Transactions on Image Processing
  • Year:
  • 2001

Quantified Score

Hi-index 0.02

Visualization

Abstract

Given an m×m image I and a smaller n×n image P, the computation of an (m-n+1)×(m-n+1) matrix C where C(i, j) is of the form C(i,j)=Σk=0n-1Σk'=0 n-1f(I(i+k,j+k'), P(k,k')), 0⩽i, j⩽m-n for some function f, is often used in template matching. Frequent choices for the function f are f(x,y)=(x-y)2 and f(x,y)=|m-y|. For the case when f(x,y)=(x-y)2, it is well known that C is computable in O(m2 log n) time. For the case f(x,y)=|-y|, on the other hand, the brute force O((m-n+1)2n2) time algorithm for computing C seems to be the best known. This paper gives an asymptotically faster algorithm for computing C when f(x,y)=|x-y|, one that runs in time O(min{s,n/√log n}m2 log n) time, where s is the size of the alphabet, i.e., the number of distinct symbols that appear in I and P. This is achieved by combining two algorithms, one of which runs in O(sm2 log n) time, the other in O(m2n√log n) time. We also give a simple Monte Carlo algorithm that runs in O(m2 log n) time and gives unbiased estimates of C