Professional Documents
Culture Documents
Figure 4.1 The resolution of an image is the pixels per square inch. (So 500dpi means that a pixel is 1/500th of an inch). To digitise a one-inch square image at 500 dpi requires 8 x 500 x500 = 2 million storage bits. Using this representation it is clear that image data compression is a great advantage if many images are to be stored, transmitted or processed. According to "Image compression algorithms aim to remove redundancy in data in a way which makes image reconstruction possible." This basically means that image compression algorithms try to exploit redundancies in the data; they calculate which data needs to be kept in order to reconstruct the original image and therefore which data can be thrown
26
away. By removing the redundant data, the image can be represented in a smaller number of bits, and hence can be compressed. But what is redundant information? Redundancy reduction is aimed at removing duplication in the image. According to Saha there are two different types of redundancy relevant to images: (i) Spatial Redundancy : correlation between neighbouring pixels. (ii) Spectral Redundancy : correlation between different colour planes and spectral bands. Where there is high correlation, there is also high redundancy, so it may not be necessary to record the data for every pixel. There are two parts to the compression: 1. Find image data properties; grey-level histogram, image entropy, correlation functions etc.. 2. Find an appropriate compression technique for an image of those properties.
27
Information redundancy, r, is
Where, b is the smallest number of bits for which the image quantization levels can be represented. Information redundancy can only be evaluated if a good estimate of image entropy is available, but this is not usually the case because some statistical information is not known. An estimate of He can be obtained from a grey-level histogram. If h(k) is the frequency of grey-level k in an image f, and image size is MxN then an estimate of P(k) can be made:
Therefore,
28
However wavelets transform is applied to entire images, rather than sub-images, so it produces no blocking arte-facts. This is a major advantage of wavelet compression over other transform compression methods.
And the forward DWT coefficients for sequence f (n) W (j, k) = f (n) j, k (n) for j j0
The j0, k (n) and j, k (n) in these equations are samples versions of basis functions j0, k(x) and j, k(x)
29
30
Figure 4.2 The DWT is obtained by collecting together the coefficients of the final approximation sub-signal and all the detail sub-signals. Overall the filters have the effect of separating out finer and finer detail, if all the details are added together then the original signal should be reproduced. Using a further analogy from Hubbard this decomposition is like decomposing the ratio 87/7 into parts of increasing detail, such that: 87 / 7 = 10 + 2 + 0.4 + 0.02 + 0.008 + 0.0005 The detailed parts can then be re-constructed to form 12.4285 which is an approximation of the original number 87/7.
31
32
small and in particular zero, to compress data. It works by giving large numbers more bits and small numbers fewer bits. Long strings of zeros can be encoded very efficiently using this scheme. Therefore an actual percentage compression value can only be stated in conjunction with an entropy coding technique. To compare different wavelets, the number of zeros is used. More zeros will allow a higher compression rate, if there are many consecutive zeros, this will give an excellent compression rate.
compresses this. However this was unsatisfactory, trying to compress images this way into less than 10% caused "tiling artifacts" to occur, leaving marked boundaries in the image. As the fingerprint matching algorithm relies on accurate data to match images, using JPEG would weaken the success of the process. However wavelets dont create these "tiles" or "blocks", they work on the image as a whole, collecting detail at certain levels across the entire image. Therefore wavelets offered brilliant compression ratios and little image degradation; overall they outperformed the techniques based on Fourier transforms. The basic steps used in the fingerprint compression were: 1. Digitise the source image into a signal s 2. Decompose the signal s into wavelet coefficients 3. Modify the coefficients from w, using thresholding to a sequence w. 4. Use quantisation to convert w to q. 5. Apply entropy encoding to compress q to e.
34
Figure 4.3 At every level, four sub-images are obtained; the approximation, the vertical detail, the horizontal detail and the diagonal detail. Below the Saturn image has been decomposed to one level. The wavelet analysis has found how the image changes vertically, horizontally and diagonally.
35
To get the next level of decomposition the approximation sub-image is decomposed, this idea can be seen in figure 4.5
Figure 4.5 A screen print from the Matlab Wavelet Toolbox GUI showing the saturn image decomposed to level 3. Only the 9 detail sub-images and the final sub-image is required to reconstruct the image perfectly.
36
Fig 4.6: Different wavelet families The different families make trade-offs between how compactly the basis functions are localized in space and how smooth they are. Within each family of wavelets (such as the Daubechies family) are wavelet subclasses distinguished by the number of filter coefficients and the level of iteration. Wavelets are most often classified within a family by the number of vanishing moments. This is an extra set of mathematical relationships for the coefficients that must be satisfied. The extent of compactness of signals depends on the number of vanishing moments of the wavelet function used.
37
bear a greater resemblance to real neurons than do linear or threshold units, but all three must be considered rough approximations.
Fig-4.8: Transfer Functions To make a neural network that performs some specific task, we must choose how the units are connected to one another, and we must set the weights on the connections appropriately. The connections determine whether it is possible for one unit to influence another. The weights specify the strength of the influence. A three-layer network can be taught to perform a particular task by using the following procedure: 1. The network is presented with training examples, which consist of a pattern of activities for the input units together with the desired pattern of activities for the output units. 2. It is determined how closely the actual output of the network matches the desired output. 3. The weight of each connection can be changed so that the network produces a better approximation of the desired output.
SUPERVISED LEARNING which incorporates an external teacher, so that each output unit is told what its desired response to input signals ought to be. During the learning process global information may be required. Paradigms of supervised learning include errorcorrection learning, reinforcement learning and stochastic learning. An important issue concerning supervised learning is the problem of error convergence, i.e. the minimization of error between the desired and computed unit values. The aim is to determine a set of weights which minimizes the error. One wellknown method, which is common to many learning paradigms, is the least mean square (LMS) convergence. UNSUPERVISED LEARNING uses no external teacher and is based upon only local information. It is also referred to as self-organization, in the sense that it selforganizes data presented to the network and detects their emergent collective properties. Paradigms of unsupervised learning are Hebbian learning and competitive learning.
40
Fig-4.9:Back Propagation Network There are literally hundreds of variations of back propagation in the neural network literature, and all claim to be superior to basic back propagation in one way or the other. Indeed, since back propagation is based on a relatively simple form of optimization known as gradient descent, mathematically astute observers soon proposed modifications using more powerful techniques such as conjugate gradient and Newtons methods. However, basic back propagation is still the most widely used variant. Its two primary virtues are that it is simple and easy to understand, and it works for a wide range of problems. The basic back propagation algorithm consists of three steps. 1. The input pattern is presented to the input layer of the network. These inputs are propagated through the network until they reach the output units. This forward pass produces the actual or predicted output pattern. 2. Because back propagation is a supervised learning algorithm, the desired outputs are given as part of the training vector. The actual network outputs are subtracted from the desired outputs and an error signal is produced. 3. This error signal is then the basis for the back propagation step, whereby the errors are passed
41
back through the neural network by computing the contribution of each hidden processing unit and deriving the corresponding adjustment needed to produce the correct output. The connection weights are then adjusted and the neural network has just learned from an experience. Two major learning parameters are used to control the training process of a back propagation network. The learn rate is used to specify whether the neural network is going to make major adjustments after each learning trial or if it is only going to make minor adjustments. Momentum is used to control possible oscillations in the weights, which could be caused by alternately signed error signals. While most commercial back propagation tools provide anywhere from 1 to 10 or more parameters for you to set, these two will usually produce the most impact on the neural network training time and performance.
42
The approach is application-motivated, theoretically based, and implementation oriented. The main applications are for signal processing and pattern recognition. The algorithmic treatment represents a combination of mathematical theory and heuristic justification for neural models. The ultimate objective is the implementation of digital neurocomputers, embracing technologies of VLSI, adaptive, digital and parallel processing.
43
44