Professional Documents
Culture Documents
The computer is becoming more and more powerful day by day. As a result, the uses of digital images are increasing rapidly. Along with this, increasing use of digital images come as the serious issue of storing and transferring the huge volume of data representing the images because the uncompressed multimedia (graphics, audio and video) data requires considerable storage capacity and transmission bandwidth. Though there is a rapid progress in mass storage density, speed of the processor and the performance of the digital communication systems, the demand for data storage capacity and data transmission bandwidth continues to exceed the capabilities of on hand technologies. Besides, the latest growth of data intensive multimedia based web applications has put much pressure on the researchers to find the way of using the images in the web applications more effectively. Internet teleconferencing, High Definition Television (HDTV), satellite communications and digital storage of movies are not feasible without a high degree of compression. As it is, such applications are far from realizing their full potential largely due to the limitations of common image compression techniques. The image is actually a kind of redundant data i.e. it contains the same information from certain perspective of view. By using data compression techniques, it is possible to remove some of the redundant information contained in images. Image compression minimizes the size in bytes of a graphics file without degrading the quality of the image to an unacceptable level. The reduction in file size allows more images to be stored in a certain amount of disk or memory space. It also reduces the time necessary for images to be sent over the Internet or downloaded from web pages. Wavelets are functions which allow data analysis of signals or images, according to scales or resolutions. The processing of signals by wavelet algorithms in fact works much the same way the human eye does; or the way a digital camera processes visual scales of resolutions, and intermediate details. But the same principle also captures cell phone signals, and even digitized colour images.
1
Wavelets are of real use in these areas, for example in approximating data with sharp discontinuities such as choppy signals, or pictures with lots of edges. While wavelets is perhaps a chapter in function theory, we show that the algorithms that result are key to the processing of numbers, or more precisely of digitized information, signals, time series, still-images, movies, colour images, etc. Though there is a rapid progress in mass storage density, speed of the processor and the performance of the digital communication systems, the demand for data storage capacity and data transmission bandwidth continues to exceed the capabilities of on hand technologies. Besides, the latest growth of data intensive multimedia based web applications has put much pressure on the researchers to find the way of using the images in the web applications more effectively. As it is, such applications are far from realizing their full potential largely due to the limitations of common image compression techniques. Since the Haar Transform is memory efficient, exactly reversible without the edge effects, it is fast and simple. As such the Haar Transform technique is widely used these days in wavelet analysis. Fast Haar Transform is one of the algorithms which can reduce the tedious work of calculations. One of the earliest versions of FHT is included in HT. FHT involves addition, subtraction and division by 2. Its application in atmospheric turbulence analysis, image analysis, signal and image compression. The Modified Fast Haar Wavelet Transform (MFHWT), in which the MFHWT is used for one-dimensional approach and FHT is used to find the N/2 detail coefficients at each level for a signal of length N. In this project, it has used the same concept of finding averages and differences as in but here that approach is extended for 2D images with the addition of considering the detail coefficients 0 for N/2 elements at each level. The Haar Transform and Fast Haar Transform have been explained. Modified Fast Haar Wavelet Transform is presented with the proposed algorithm for 2D images.
Fig: 2.1 Representation of digital image in x and y pixel format. An image may be defined as a two-dimensional function, f(x, y), where x and y are spatial coordinates, and the amplitude of f at any pair of coordinates (x, y) is called the intensity or gray level of the image at that point. When x, y, and the amplitude values of f are all finite, discrete quantities, we call the image a digital image. The field of digital image processing refers to processing digital images by means of a digital computer. Note that a digital image is composed of a finite number of elements, each of which has a particular location and value. These elements are referred to as picture elements, image elements and pixels. Pixel is the term most widely used to denote the elements of a digital image. Vision is the most advanced of our senses, so it is not surprising that images play the single most important role in human perception. However, unlike humans, who are limited to the visual band of the electromagnetic (EM) spectrum, imaging machines cover almost the entire EM spectrum, ranging from gamma to radio waves. They can operate also on images generated by sources that humans are not accustomed to associating with images. These include ultrasound, electron microscopy, and computer-generated images. Thus, digital image processing
3
encompasses a wide and varied field of applications. Image processing stops and other related areas, such as image analysis and computer vision, start. Sometimes a distinction is made by defining image processing as a discipline in which both the input and output of a process are images. We believe this to be a limiting and somewhat artificial boundary. For example, under this definition, even the trivial task of computing the average intensity of an image would not be considered an image processing operation. On the other hand, there are fields such as computer vision whose ultimate goal is to use computers to emulate human vision, including learning and being able to make inferences and take actions based on visual inputs. This area itself is a branch of artificial intelligence (AI), whose objective is to emulate human intelligence. The field of AI is in its earliest stages of infancy in terms of development, with progress having been much slower than originally anticipated. The area of image analysis (also called image understanding) is in between image processing and computer vision. There are no clear-cut boundaries in the continuum from image processing at one end to computer vision at the other. However, one useful paradigm is to consider three types of computerized processes in this continuum: low-, mid-,and high-level processes. Low-level processes involve primitive operations such as image pre-processing to reduce noise, contrast enhancement, and image sharpening. A low-level process is characterized by the fact that both its inputs and outputs are images. Mid-level processes on images involve tasks such as segmentation (partitioning an image into regions or objects), description of those objects to reduce them to a form suitable for computer processing, and classification (recognition) of individual objects. A mid-level process is characterized by the fact that its inputs generally are images, but its outputs are at- tributes extracted from those images (e.g., edges, contours, and the identity of individual objects). Finally, higher-level processing involves making sense of an ensemble of recognized objects, as in image analysis, and, at the far end of the continuum, performing the cognitive functions normally associated with human vision. Based on the preceding comments, we see that a logical place of overlap between image processing and image analysis is the area of recognition of individual regions or objects in an image. Thus, what we call in this book digital image processing encompasses processes whose inputs and outputs are images and, in addition, encompasses processes that extract attributes from images, up to and including the recognition of individual objects. As a simple illustration to
4
clarify these concepts, consider the area of automated analysis of text. The processes of acquiring an image of the area containing the text, pre-processing that image, extracting (segmenting) the individual characters, describing the characters in a form suitable for computer processing, and recognizing those individual characters, are in the scope of what we call digital image processing in this book. Making sense of the content of the page may be viewed as being in the domain of image analysis and even computer vision, depending on the level of complexity implied by the statement making sense. Digital image processing, as we have defined it, is used successfully in a broad range of areas of exceptional social and economic value.
magnetic resonance imaging (MRI). However, most variables are adjustable physical quantities associated with the imaging process, such as kilo voltage in radiography, gain in sonography, and echo time (TE) in MRI. The values selected will determine the quality of the image and the visibility of specific body features.
imaging system that raises and lowers the curtain. Increasing sensitivity raises the curtain and allows us to see more objects in the body. A system with low contrast sensitivity allows us to visualize only objects with relatively high inherent physical contrast.
2.2.5 Noise:
Another characteristic of all medical images is image noise. Image noise, sometimes referred to as image mottle, gives an image a textured or grainy appearance. The source and amount of image noise depend on the imaging method and are discussed in more detail in a later chapter. We now briefly consider the effect of image noise on visibility. In the image below we find our familiar array of body objects arranged according to physical contrast and size. We now add a third factor, noise, which will affect the boundary between visible and invisible objects. The general effect of increasing image noise is to lower the curtain and reduce object visibility. In most medical imaging situations the effect of noise is most significant on the low-contrast objects that are already close to the visibility threshold.
An image is defined as a two-dimensional function ie. a matrix, f(x, y), where x and y are spatial coordinates, and the amplitude of f at any pair of coordinates (x, y) is called the intensity or gray level of the image at the point. Color images are formed by combining the individual two-dimensional images. For example, in the RGB color system, a color images consists of three namely, red, green and blue individual component images. Thus many of the techniques developed for monochrome images can be extended to color images by processing the three component images individually. When x, y and the amplitude values of f are all finite, discrete quantities, the image is called a digital image. The field of digital image processing refers to processing digital images by means of a digital computer. A digital image is composed of a finite number of elements, each of which has a particular location and value. These elements are referred to as picture elements, image elements, pels and pixels. Since pixel is the most widely used term, the elements will be denoted as pixels from now on. An image may be continuous with respect to the x- and y-coordinates, and also in amplitude. Digitizing the coordinates as well as the amplitude will take into effect the conversion of such an image to digital form. Here, the digitization of the coordinate values are called sampling; digitizing the amplitude values is called quantization. A digital image is composed of a finite number of elements, each of which has a particular location and value. The field of digital image processing refers to processing digital images by means of a digital computer.
10
system is at (r, c) = (1, 1); hence r ranges from 1 to M, and c from 1 to N for r and c integers. The coordinates are referred to as pixel coordinates.
f(x,y) = [
(2.1)
The right side of the equation is a representation of digital image. Each element of this array (matrix) is called the pixel. Now, in MATLAB, the digital image is represented as the following matrix:
f=[
(2.2)
Where M = the number of rows and N = the number of columns Matrices in MATLAB are stored in variables with names such as A, a, RGB, real array and so on.
respectively. The number of bits used to represent the pixel values of the component images determines the bit depth of an RGB color image. The RGB color space is shown graphically as an RGB color cube. The vertices of the cude are the primary (red, green, and blue) and secondary (cyan, magenta, and yellow) colors of light.
c=[
]=[
(2.3)
This above equation indicates that the components of c are simply the RGB components of a color image at a point. Since the color components are a function of coordinates (x, y) by using the notation.
c(x,y) = [
]=[
(2.4)
For an image of size M N, there are MN such vectors, c(x, y), for x = 0,1,. M 1 and y = 0,1,.N 1. In order for independent color component and vector-based processing to be equivalent, two conditions have to be satisfied: (i) the process has to be applicable to both vectors and scalars. (ii) the operation on each component of a vector must be independent of the other components. The averaging would be accomplished by summing the gray levels of all the pixels in the neighborhood. Or the averaging could be done by summing all the vectors in the neighborhood and dividing each component of the average vector is the sum of the pixels in the image corresponding to that component, which is the same as the result that would be obtained if the averaging were done on the neighborhood of each component image individually, and then the color vector were formed.
namely sequential, progressive, and hierarchical for lossy encoding, and one mode of lossless encoding. The performance of the coders for JPEG usually degrades at low bit-rates mainly because of the underlying block-based Discrete Cosine Transform (DCT) . The baseline JPEG coder [5] is the sequential encoding in its simplest form. Fig. 1 and 2 show the key processing steps in such an encoder and decoder respectively for grayscale images. Color image compression can be approximately regarded as compression of multiple grayscale images, which are either compressed entirely one at a time, or are compressed by alternately interleaving 8x8 sample blocks from each in turn. The DCT-based encoder can be thought of as essentially compression of a stream of 8x8 blocks of image samples. Each 8x8 block makes its way through each processing step, and yields output in compressed form into the data stream. Because adjacent image pixels are highly correlated, the Forward DCT (FDCT) processing step lays the basis for gaining data compression by concentrating most of the signal in the lower spatial frequencies. For a typical 8x8 sample block from a typical source image, most of the spatial frequencies have zero or near-zero amplitude and need not to be encoded.
Original FDCT Image
Quantizer Entropy Encoder
Quantization Table(QT)
Huffman Table
Image Data
Decoder
Inverse DCT
Huffman Table
Reconstructed Image
Quantization Table(QT)
After output from the Forward DCT (FDCT), each of the 64 DCT coefficients is uniformly quantized in conjunction with a carefully designed 64-element Quantization Table (QT). At the decoder, the quantized values are multiplied by the corresponding QT elements to pick up the original unquantized values. After quantization, all the quantized coefficients are ordered into zig-zag sequence. This ordering helps to facilitate entropy encoding by placing low frequency non-zero coefficients before high-frequency coefficients. The DC coefficient, which contains a significant fraction of the total image energy, is differentially encoded. Entropy Coding (EC) achieves additional compression losslessly through encoding the quantized DCT coefficients more compactly based on their statistical characteristics. The JPEG proposal specifies both Huffman coding and arithmetic coding. More recently, the wavelet transform has emerged as a cutting edge technology, within the field of image analysis. Wavelets are a mathematical tool for hierarchically decomposing functions. Though rooted in approximation theory, signal processing, and physics, wavelets have also recently been applied to many problems in Computer Graphics including image editing and compression, automatic level-of detail control for editing and rendering curves and surfaces, surface reconstruction from contours and fast methods for solving simulation problems in 3D modelling, global illumination, and animation . Wavelet-based coding provides substantial improvements in picture quality at higher compression ratios. Over the past few years, a variety of powerful and sophisticated waveletbased schemes for image compression have been developed and implemented. Because of the many advantages of wavelet based image compression as listed below, the top contenders in the JPEG-2000 standard are all wavelet-based compression algorithms.
2.6 Conclusion:
The digital image characteristics, digital image representation in different analysis, the basic colour image processing, the standard method of image compression are been discussed in this chapter. Image compression using different teqniques are discussed in the next chapter.
15
Input
Source
Quantizer
Image
Encoder
Entropy Encoder
Compressed Image
Source Encoder:
A variety of linear transforms have been developed which include Discrete Fourier Transform (DFT), Discrete Cosine Transform (DCT), Discrete Wavelet Transform (DWT) and many more, each with its own advantages and disadvantages.
Quantizer:
A quantizer is used to reduce the number of bits needed to store the transformed coefficients by reducing the precision of those values. As it is a many-to-one mapping, it is a lossy process and is the main source of compression in an encoder. Quantization can be performed on each individual coefficient, which is called Scalar Quantization (SQ). Quantization can also be applied on a group of coefficients together known as Vector Quantization (VQ). Both uniform and non-uniform quantizers can be used depending on the problems.
Entropy Encoder:
An entropy encoder supplementary compresses the quantized values losslessly to provide a better overall compression. It uses a model to perfectly determine the probabilities for each quantized value and produces an appropriate code based on these probabilities so that the resultant output code stream is smaller than the input stream. The most commonly used entropy encoders are the Huffman encoder and the arithmetic encoder, although for applications requiring fast execution, simple Run Length Encoding (RLE) is very effective.
bandwidth continues to outstrip the capabilities of available technologies. In a distributed environment large image files remain a major bottleneck within systems. Image Compression is an important component of the solutions available for creating image file sizes of manageable and transmittable dimensions. Platform portability and performance are important in the selection of the compression/decompression technique to be employed.
18
(D) Finally, based on its estimated probability, each compressed file token is represented as bits in the compressed file. Ideally, a 12.5%-probable token should be encoded with three bits, but details become complicated.
Coding Redundancy:
If the gray levels of an image are coded in a way that uses more code symbols than absolutely necessary to represent each gray level, the resulting image is said to contain coding redundancy. It is almost always present when an images gray levels are represented with a straight or natural binary code. Let us assume that a random variable r
K
1] represents the gray levels of an image and that each r K occurs with probability Pr (r K). Pr (r K) = N k / n where k = 0, 1, 2 L-1. L = No. of gray levels. N k =No. of times that gray appears in that image. N = Total no. of pixels in the image. If no. of bits used to represent each value of r represent each pixel is L avg = l (r K) Pr (r K) (3.2) That is average length of code words assigned to the various gray levels is found by summing the product of the no. of bits used to represent each gray level and the probability that the gray level occurs. Thus the total no. of bits required to code an MN image is MN L avg.
K
(3.1)
20
Image Modeling:
It is aimed at the exploitation of statistical characteristics of the image (i.e. high correlation, redundancy). It defines such things as the transformation to be applied to the Image.
Parameter Quantization:
The aim of Quantization is to reduce the amount of data used to represent the information within the new domain.
Encoding:
Here a code is generated by associating appropriate code words to the raw produced by the Quantizer. Encoding is usually error free. It optimizes the representation of the information and may introduce some error detection codes.
23
* Proposed method applies a texture-modeling scheme to the high-frequency texture of some regions of the image. * This allows more bandwidth allocation to important areas of the image.
(3.4)
Where x(n) is a finite duration sequence, X(j ) is periodic with period 2.It is convenient sample X(j ) with a sampling frequency equal an integer multiple of its period =m that is taking N uniformly spaced samples between 0 and 2.
Let (3.5)
Therefore
(3.6)
Since X(j ) is sampled for one period and there are N samples X(j ) can be expressed as
(3.7)
3.10 Quantization:
Quantization involved in image processing. Quantization techniques generally compress by compressing a range of values to a single quantum value. By reducing the number of discrete symbols in a given stream, the stream becomes more compressible. For example seeking to reduce the number of colors required to represent an image. Another widely used example DCT data quantization in JPEG and DWT data quantization in JPEG 2000.
25
3.12 Conclusion:
Here, some topics of image compression which include the principles of image compression, the classification of compression methods and the framework of a general image coder and wavelets for image compression, different types of transforms and quantization are discussed. The introduction to wavelet transforms is given in the next chapter.
26
27
Other applied fields that are making use of wavelets include astronomy, acoustics, nuclear engineering, sub-band coding, signal and image processing, neurophysiology, music, magnetic resonance imaging, speech discrimination, optics, fractals, turbulence, earthquakeprediction, radar, human vision, and pure mathematics applications such as solving partial differential equations.
29
operations, the problem gets quickly worse as the number of sample points increases. However, if the samples are uniformly spaced, then the Fourier matrix can be factored into a product of just a few sparse matrices, and the resulting factors can be applied to a vector in a total of order arithmetic operations. This is the so-called fast Fourier transform or FFT.
The mathematical properties of the matrices involved in the transforms are similar as well. The inverse transform matrix for both the FFT and the DWT is the transpose of the original. As a result, both transforms can be viewed as a rotation in function space to a different domain. For the FFT, this new domain contains basis functions that are sines and cosines. For the wavelet transform, this new domain contains more complicated basis functions called wavelets, mother wavelets, or analyzing wavelets. Both transforms have another similarity. The basis functions are localized in frequency, making mathematical tools such as power spectra (how much power is contained in a frequency interval) and scale grams (to be defined later) useful at picking out frequencies and calculating power distributions.
30
4.6. Wavelets:
Compactly supported wavelets are functions defined over a finite interval and having an average alue of zero. The basic idea of the wavelet transform is to represent any arbitrary function f(x) as a uperposition of a set of such wavelets or basis functions. These basis functions are obtained from a single prototype wavelet called the mother wavelet (x), by dilations or scaling and translations. Wavelet bases are very good at efficiently representing functions that are smooth except for a small set of discontinuities. For each n, k Z, define (x) = ( (x) by x - k) on R, such that { (4.1) (x)}n,kZ is an or- thonormal (x) }n,kZ is a
wavelet orthonormal basis on R; this framework for constructing wavelets involves the concept of a multi resolution analysis or MRA. Multi resolution analysis is a device for computation of basis coefficients in f= , . It is defined as follows, g( x), g(x) }, (4.2) (4.3) (R) :
= {f(x)|f(x) =
Where
f(x) =
(f, ( n))(x n)
Then a multi resolution analysis on R is a sequence of subspaces { }nZ of functions on R, satisfying the following properties: (a) For all n, k Z, (b) If f(x) is . such that ||f g|| < . x) on R, then f(x) span{ }nZ. That is, given > 0, there is an n Z
if and only if
f(
collection (x n) is an orthonormal system of translates and Let { } be an MRA with scaling function (x) which satisfies scaling filter h(k), where h(k) = ( ( ) ( x-k)). Then the wavelet filter g(k) is defined by (h(1 k))
31
g(k) = (
and the wavelet by
(4.4)
(4.5)
represent any detail on a scale smaller than that. We say that the functions in resolution or scale . Here, f is called an approximation to f at resolution
given function f, an MRA provides a sequence of approximations The difference between the approximations at resolution detail at resolution f(x) = Or f= (f, ) . which is as follows: f(x) f(x). and
(4.7)
is also an orthogonal projection and its range holds: = {f| = {f| = There are choices of the numbers h and g such that { f = f} f = f}
basis on R. We must show otho-normality and completeness. As for completeness, we have =0 and = Then we have { if = R = . Hence { (x)} (4.13) is complete if and only |k Z} = (4.12)
(R) holds, and this is true. x k), ) = (k l). (x) V1, Then we have , x l) (4.14)
To prove ortho-normality between scales, let n, n Z with n < n, and let k, k Z be arbitrary. Since (x) V1, that f(x)= (f, . Since ( , )= 0 for all k, l Z, it follows that ( ) )= 0, for all n, k, l Z. Given f(x)
32
we know
, f) = ( = (f,
(f, ) (
) ,
(x)}
and since
i) Symmetry: Symmetric filters are preferred for they are most valuable for minimizing the edge effects in the wavelet representation of discrete wavelet transform (DWT) of a function; large coefficients resulting from false edges due to periodization can be avoided. Since orthogonal filters in exception to Haar-filter cannot be symmetric, biorthogonal filters are almost always selected for image compression application. ii) Vanishing Moments: Vanishing Moments are defined as follows: From the definition of multi resolution analysis(MRA), any wavelet (x) that comes from MRA must satisfy =0 (4.16)
The integral is referred to as the zeroth moment of (x), so that if the above equation holds, we say that (x) has its zeroth moment vanishing. The integral to as the vanishing. We may encounter a situation where having different number of vanishing moments on the analysis filters than on the reconstruction filters. As a matter of fact, it is possible to have different number of vanishing moments on the analysis filters than on the reconstruction filters. Vanishing moments on the analysis filters are desired for small coefficients in the transform as a result, whereas vanishing moments on the reconstruction filter results in fewer blocking artifacts in the compressed image thus is desired. Thus having sufficient vanishing moments which maybe different in numbers on each filters are advantageous. iii) Size of the filters: Long analysis filters results in greater computation time for the wavelet or wavelet packet transform. Long reconstruction filters can create unpleasant artifacts in the compressed image for the following reason. The reconstructed image is made up of the superposition of only a few scaled and shifted reconstruction filters. So features of the reconstruction filters such as oscillations or lack of smoothness, can be obvious noted in the moment of (x) and if (x) dx = 0, we say that (x) dx is referred moment
33
reconstructed image. Smoothness can be guaranteed by requiring a large number of vanishing moments in the reconstruction filter.
34
4.9. Conclusion:
The basis function, Fourier analysis, similarities, dissimilarities between Fourier and wavelet transform, introduction to wavelets, types of wavelet transforms and applications of wavelet transform are discussed in this chapter. The image compression using modified fast haar wavelet transform will be discussed.
35
Chapter 5
Image data through the wavelet decomposition, the coefficient of the distribution turn into a tree. According to this feature, defining a data structure: spatial orientation tree. 4-level wavelet decomposition of the spatial orientation trees structure are shown in Figure1.We can see that each coefficient has four children except the red marked coeffcients in the LL subband and the coeffcients in the highest subbands (HL1;LH1; HH1). The following sets of coordinates of coeffcients are used to represent set partitioning method in SPIHT algorithm. The location of coeffcient is notated by (i,j),where i and j indicate row and column indices, respectively. H: Roots of the all spatial orientation trees O (i, j):Set of offspring of the coeffcient (i, j), O(i, j) = {(2i, 2j), (2i, 2j + 1),(2i + 1, 2j), (2i + 1, 2j + 1)}, except (i, j) is in LL; When (i,j) is in LL subband, O(i; j) is defined as: O(i, j) = {(i, j + ), (i + , j), (i + , j + )}, where and is the width and
height of the LL subband, respectively. D (i, j): Set of all descendants of the coeffcient (i, j), L (i, j): D (i, j) - O (i, j).
Figure5.1: Parent-child relationship in SPIHT A significance function () which decides the Significance of the set of coordinates, , with respect to the threshold 2n is defined by:
36
Where ci,j is the wavelet coefficient. In this algorithm, three ordered lists are used to store the significance information during set partitioning. List of insignificant sets (LIS), list of insignificant pixels (LIP), and list of significant pixels (LSP) are those three lists. Note that the term pixel is actually indicating wavelet coeffcient if the set partitioning algorithm is applied to a wavelet transformed image.
Algorithm: SPIHT 1) Initialization: 1. Output n= [log2 max {| ( , )|}] 2. Set LSP = ; 3. Set LIP = (i,j) H; 4. Set LIS = (i,j) H, where D(i; j) 2) Sorting Pass: 1. For each (i, j) (a) Output (, ) (b) If (, ) = 1 then move (i, j) to LSP and output Sign ( , ) 2. For each (i, j) LIS do: (a) If (i, j) is type A then I. output ((, )) ii. If then ( , ) = 1 then A. for each (k, l) O(i, j) . Output ( , ) . If ( , ) = 1 then append (k, l) to LSP, output Sign( sign( ,),and , = , 2 ,) else append (k; l) to LIP B. move (i, j) to the end of LIS as type B LIP do: and set each entry in LIS as type A
(b) If (i, j) is type B then I. output ( , ) ii. If ( , ) = 1 then . Append each (k, l) O(i, j) to the end of LIS as type A . Remove (i,j) from LSP
3) Refinement Pass: 1. For each (i,j) in LSP, except those included in the last sorting pass
37
4) Quantization Pass: 1. Decrement n by 1 2. Goto step 2). B. Analyses of SPIHT Algorithm Here a concrete example to analyze the output binary stream of SPIHT encoding. The following is 3-level wavelet decomposition coefficients of SPIHT encoding
n = [log2 max {|c(i,j)|}] = 5, so, The initial threshold value: = 25, for , the output binary stream: 11100011100010000001010110000, 29 bits in all. By the SPIHT encoding results, we can see that the output bit stream with a large number of seriate "0" situation, and along with the gradual deepening of quantification, the situation will become much more severity, so there will have a great of redundancy when we direct output.
38
The term difference reduction refers to the way in which WDR encodes the locations of significant wavelet transform values. In WDR, the output from the significance pass consists of the signs of significant values along with sequences of bits which concisely describe the precise locations of significant values.
The WDR algorithm is a very simple procedure. A wavelet transform is first applied to the image, and then the bit-plane based WDR encoding algorithm for the wavelet coefficients is carried out. WDR mainly consists of five steps as follows: 1. Initialization: During this step an assignment of a scan order should first be made. For an image with P pixels, a scanorder is a one-to-one and onto mapping = Xk, for k =1,2,..., P between the wavelet coefficient () and a linear ordering (Xk). The scan order is a zigzag through subbands from higher to lower levels. For coefficients in subbands, row-based scanning is used in the horizontal subbands, column based scanning is used in the vertical subbands, and zigzag scanning is used for the diagonal and low-pass subbands. As the scanning order is made, an initial threshold T0 is chosen so that all the transform values satisfy |Xm|< T0 and at least one transform value satisfies |Xm|>= T0 / 2.
39
3.Significance pass: In this part, transform values are deemed significant if they are greater than or equal to the threshold value. Then their index values are encoded using the difference reduction method of Tian and Wells. The difference reduction method essentially consists of a binary encoding of the number of steps to go from the index of the last significant value to the index of the current significant value. The output from the significance pass includes the signs of significant values along with sequences of bits, generated by difference reduction, which describes the precise locations of significant values.
4. Refinement pass: The refinement pass is to generate the refined bits via the standard bit-plane quantization procedure like the refinement process in SPHIT method. Each refined value is a better approximation of an exact transform value.
5.Repeat steps (2) through (4) until the bit budget is reached.
40
The main features of EZW include compact multiresolution representation of images by discrete wavelet transformation, zero-tree coding of the significant wavelet coefficients providing compact binary maps, successive approximation quantization of the wavelet coefficients, adaptive multilevel arithmetic coding, and capability of meeting an exact target Compress rate. The basic process flow of EZW algorithm can be described as follows: Operate the image through wavelet transform and quantizing the coefficients. Given a series of threshold values which are sorted from high to low, for every threshold (current threshold value equals to 1/2 of the former threshold), sort all the coefficients and remain the important coefficients and discard unimportant coefficients according to this threshold. It will generate four symbols, respectively named positive important coefficient (POS), negative important coefficient (NEG), isolated zero (IZ) and zero-tree root (ZTR). Gradually decrease the threshold and find the important coefficients due to a peculiar scan order. It will form a sequence of important coefficients through this method named Successive Quantization. We can see that, EZW generates an embedded bit-stream thus allowing the progressive transmission and precise control of target bit rate or target distortion[3-4].
Although EZW has a high compress rate and it do well for reverting the image, there still some defects, such as it must cost the same memory as the whole image when operating the image, not suit for browsing image in sub blocks, and so on, needed to be improved.
41
Chapter 6
Results
Results for SPIHT wname=haar, level=3, Nb. Encoding Loops=9
Compression ratio: 22.68% BPP: 1. 8141 P.S.N.R= 36.77, L2- Norm Ratio: 99.48%, M.S.E:13.67
42
Compression ratio: 51.06% BPP: 4.0851 P.S.N.R= 44.5, L2- Norm Ratio: 99.99%, M.S.E:2.305
43
Compression ratio: 60.42% BPP: 4.8335 P.S.N.R= 42.2, L2- Norm Ratio: 99.91%, M.S.E: 3.726
44
Conclusion
A picture can say more than a thousand words. However, storing an image can cost more than a million words. This is not always a problem because now computers are capable enough to handle large amounts of data. However, it is often desirable to use the limited resources more efficiently. For instance, digital cameras often have a totally unsatisfactory amount of memory and the internet can be very slow. In these cases, the importance of the compression of image is greatly felt. The rapid increase in the range and use of electronic imaging justifies attention for systematic design of an image compression system and for providing the image quality needed in different applications. Wavelet can be effectively used for this purpose. A modified fast haar wavelet transforms (MFHWT) as the basis functions along with the quality measurement of the compressed images have been presented here. As for the further work, the tradeoffs between the value of the threshold and the image quality can be studied and also fixing the correct threshold value is also of great interest.
45
46
References
[1]. Chang P. and P. Piau, Modified Fast and Exact Algorithm for Fast Haar Transform, Proceedings of World Academy of Science, Engineering and Technology,2007. [2]. V. N. Kopenkov and V. V. Myasnikov, Fast Algorithms of a Local Discrete Transform with Haar Basis, in Proceedings of Scientic and Technical Concern with International Participation, 2006. [3]. P. N. Podkur, On Constructing Some Types of Wavelets with the Scaling Coefficient N Electronic Scientific J.Sdelano v Rossii, 2006, Electronic Scientific J. Made in Russia, 2006. [4]. Castleman, Digital Image Processing, Pearson Education India, 2007. [5]. Kian Kee Teoh, Ibrahim H, Bejo S.K, Investigation on several basic interpolation methods for the use in remote sensing application, IEEE paper on Innovative Technologies in Intelligent Systems and Industrial Applications, 2008. [6]. Lemieux A and Knoll E, Digital Image Resolution, IEEE International Proceedings on Communication, 1999. [7]. Gribbon K.T, Bailey, D.G. A Real- Time Bilinear Interpolation, IEEE International Workshop on Electronic Design Test and Applications, 2004. [8]. Gonzalez, Richard E. Woods, Digital Image Processing, Second Edition. [9]. Ralf Steinmetz and Klara Mahrstedt, Multimedia Computing, Communication and Applications, 2001.
47
[10]. Galli A.W, G.T Heydt and P.F Ribeiro, Exploring the Power of Wavelet Analysis, IEEE Computer Application in Power, 1996.
48