Mathematics, Fourier Transform, Image Processing, Numpy.
slow to do comparison pixel by pixel though. A maths technique called Discrete Fourier Transform helps speed up the process. In fact, discrete Fourier transform is such a popular pattern matching technique that you probably see or use several times every day. Another common application would be