DIGITAL CROSS- CORRELATION.

How many letters in the top half of figure 10 can you tell? Well, a computer program could tell about 84% of them, and it is hardly sophisticated at 99 bytes of source code in a high level language (the machine language executable code is 20 bytes longer.) I hope this dispels the impression that "digital signal processing cannot possibly bring out anything in the picture I am not already seeing."

Fig.10: Noisy alphabet.

Cross- correlation tells you how similar two signals are. It is formally defined as the time integral to infinity of the product of two signals, v1(t).v2(t-t1), where one of the signals has been delayed by an amount of time t1. While t1 is a constant as far as the integration is concerned, you are really interested in the variation of the correlation for different values of t1. For digital signal processing, you are more likely to calculate a finite and discrete version. If you use the formal definition, correlation is hardly different from convolution as far as numerical computations are concerned, note though that, for convolution, the impulse response must be folded before being shifted and multiplied. Will the results make sense? Absolutely, as long as the two signals have at least one common frequency component. Autocorrelation tells you how similar a function is to a displaced copy of itself;Its value is zero for a random noise signal. If the signal contains a single frequency, the autocorrelation reaches a maximum positive value when the phase difference between the two waveforms is a multiple of 360o, while it registers a negative peak when the phase difference is 180 o, or its odd multiples. Other ways of reducing noise include the Fourier Transform and its inverse, and band- stop filtering, possibly by using a digital filter.

Going back to fig.10, 8x8 character matrices have been used (the image has been resized) and the background pixels outnumber the foreground colour pixels by about 2:1, while the leftmost column is blank, in order to separate adjacent letters, and the bottom row is reserved for descenders only. About 20% of pixels has changed state because of the immersion into noise, though even half this amount is quite sufficient to almost entirely confuse the viewer, provided the errors occur in bursts rather than being uniformly distributed. It is only fair to add that the program's hit rate does vary with the positions of the pixels which have flipped.

Of course, there are more important applications for digital correlation, such as detecting the part of an image which has moved between consecutive frames, and the amount of drift, in a moving picture compression scheme. You could also create a consulting tool for diagnostics, whenever a large database of past faults and corresponding symptoms has been organised.