Download as ppt, pdf, or txt
Download as ppt, pdf, or txt
You are on page 1of 50

Some applications of wavelets

Anna Rapoport

FBI Fingerprint Compression

Between 1924 and today, the US Federal Bureau of Investigation has collected over 200 million cards of fingerprints Some come from employment and security checks, but 114.5 million cards belong to some 29 million criminals (bad guys tend to get fingerprinted more than once)

Some more facts


This

includes some 29 million records they examine each time they're asked to round up the usual suspects. And to make matters worse, fingerprint data continues to accumulate at a rate of 30,000-50,000 new cards PER DAY

:Lets make simple calculations


The FBI is digitizing the nation's fingerprint database at 500 dots per inch with 8 bits of grayscale resolution. At this rate, a single fingerprint card turns into about

10 MB of data!
Multiplied by 200 million cards about

2,000 terabytes!

? How to make checks faster


Some form of data compression is necessary!

The FBI decided to adopt a wavelet-based image coding algorithm as a national standard for digitized fingerprint records.

The FBI standard - WSQ


The

WSQ (Wavelet/Scalar Quantization) developed and maintained by the FBI, Los Alamos National Lab, and the National Institute for Standards and Technology involves:
2-dimensional discrete wavelet transform DWT Uniform scalar quantization Huffman entropy coding

!Wavelets come to the stage


Lately, wavelets have made quite a splash in the field of image processing:
FBI fingerprint image compression Next-generation image compression standard JPEG2000

Wavelets in Image Processing


Area of application: Problem: Wavelets work well for image How small can we compress compression our data without losing vital information? Wavelet analysis lends itself well to denoising images What are essential features of the data, and what features are noise?

What are the principles behind ?compression


Two

fundamental components of compression are redundancy and irrelevancy reduction.


Redundancy reduction aims at removing duplication from the signal source (image/video). Irrelevancy reduction omits parts of the signal that will not be noticed by the signal receiver, namely the Human Visual System (HVS).

Lossless vs. Lossy Compression


Lossless Reconstructed image numerically identical to the original image Lossy contains degradation relative to the original

Compression rate

2:1 (at most 3:1) high compression (visually lossless)

:Image compression steps


Original image (reconstructed) Source encoder (inverse T) linear transform to decorrelate the image data (lossless) Entropy Coding )decoding( of the resulting quantized values (lossless) Quantization )dequantization( of basis functions coefficients (lossy)

Compressed image

Basic ideas of linear transformation


We

change the coordinate system in which we represent a signal in order to make it much better suited for processing (compression). We should be able to represent all the useful signal features and important phenomena in as compact manner as possible. Important to compact the bulk of the signal energy into the fewest number of transform coefficients.

The Good Transform Should:


Decorrelate the image pixels Provide good energy compaction Desirable to be orthogonal

A possible choice for the linear transformation are: DFT or, avoiding complex coefficients, the DCT JPEG (decomposition into smaller subimages of size 8x8 or 16x16, followed by DCT as the compression algorithm)

Which options do we have for linear transformation?

?Why Wavelet-based Compression


No need to block the input image and its basis functions have variable length avoid blocking artifacts. More robust under transmission and decoding errors. Better matched to the HVS characteristics.

Good frequency resolution at lower frequencies, good time resolution at higher frequencies good for natural images.

Transformation - FWT
Original Image
Wavelet coefficients

Reconstructed

Example of DWT (Haar Basis)


Lets consider a 1D 4-pixel Image [ 9 7 3 5]
r gv eaeA ( i s ntom )gho

[ 9 7 3 5]
WT

De t (ed ail co ge e det fficie ect io n n t s )

(9 + 7)/2 [8

(3 + 5)/2 4]

(9 - 7)/2 [1

(3 - 5)/2 -1 ]

(8 + 4)/2 6

(8 4)/2 2

[ 6 2 1 -1 ]

Mathematical Look at FWT


Assume

that our 1D image is a piecewise constant function on the half-open interval [0,1)
One-pixel image is a const on the entire [0,1) 1D vector Denote V0 to be the vector space of all such functions (1D space) Two-pixel image is a function having two constant pieces in intervals [0,1/2] and [1/2,1), so its a 2D vector - their space V1 In this manner, the space Vj will include all piecewise-constant functions with constant pieces over each of 2j equal-sized subintervals

Example:

Our 4-pixel 1D image [9 7 3 5] is a vector in V2

Nested Spaces
Every

vector in Vj can be represented in Vj+1 so spaces Vj are nested V0 V1 V2 The idea of nested spaces is one of the basic ingredients of the theory of multiresolution.

Basis for Vector space Vj


functions for Vj are called scaling functions and are denoted by . A simple basis for Vj is given by the set of scaled and translated box functions: ij(x) : = (2j x - i) i = 0,, 2j 1 where (x) := Example basis for V2:
1, for 0 x <1 0, otherwise
Basis

Definition of Wavelets
Define

Wj as the orthogonal complement of Vj in Vj+1, i.e. Wj Vj=Vj+1 A collection of linearly independent functions ij(x) spanning Wj are called wavelets: The basis fun-s ij(x) and ij(x) form a basis in Vj+1
each j ij(x) orthogonal to ij(x) Wavelets are orthogonal to each other
For

Haar Wavelets
The

wavelets corresponding to the box basis are known as Haar Wavelets: ij(x) : = (2j x - i) i = 0,, 2j 1 where 1, for 0 x <1/2 (x):= -1, for 1/2 x <1
0, otherwise

Example:

Haar Wavelets for W1

Wavelets as a form of MA
Wavelets work for decomposing signals (such as images) into hierarchy of increasing resolutions: as we consider more layers, we get more and more detailed look at the image.

?What have we get till now


We

have matrix of coefficients (average signal and detail signals of each scale) No compression has been accomplished yet, even the obtained representation can be longer than the original (since the decomposition uses a floating point representation, while the original signal could use an integer representation). Compression is achieved by quantizing and encoding coefficients

Quantization
A

The lossy step

quantizer simply reduces the number of bits needed to store the transformed coefficients by reducing the precision of those values. Since this 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 known as Scalar Quantization (SQ).

:The first idea of quantization


Coefficients that corresponds to smooth parts of data become small. (Indeed, their difference, and therefore their associated wavelet coefficient, will be zero, or very close to it). So we can throw away these coefficients without significantly distorting the image. We can then encode the remaining coefficients and transmit them along with the overall average value.

Quantization and Dequantization

Uniform Quantizer

Uniform Scalar Quantizer with Deadzone

Example of Uniform Quantization

Dequantization Rule

Example of Dequantization

Entropy encoding and decoding


Once

the quantization process is completed, the last encoding step is to use entropy coding to achieve the entropy rate of quantizer. The Shannon entropy provides a lower bound in terms of the amount of compression entropy coding can best achieve. Examples: Huffman Arithmetic coding

Examples: FBI WSQ Results

Original image 541832 bites 768x768

Reconstructed image (compressed file size 32702, compressed ratio 18:1)

WSQ vs. JPEG

WSQ image, file size 30987 bytes, compression ratio 19.0.

JPEG image, file size 30081 bytes, compression ratio 19.6.

EPIC (Efficient Pyramid Image Coder)


(by Euro Simoncelli and Edward Adelson)
Based on biorthogonal wavelet decomposition and run-length/Huffman entropy coding

Original image (512x512) 262144 bytes

Compressed 20:1 13103 bytes

Original image (512x512) 262144 bytes

Compressed 40:1 6550 bytes

Original image (512x512) 262144 bytes

Compressed 80:1 3275 bytes

Wavelet Denoising

Wavelet denoising
DWT of the image is calculated Resultant coefficients are passed through threshold testing The coefficients < threshold are removed, others shrinked Resultant coefficients are used for image reconstruction with IWT.

The Idea
The

intuition behind this approach is that the neighboring pixels exhibit high correlation, which translates to only a few large wavelet coefficients. On the other hand, the noise is evenly distributed among the coefficients and is generally small.
yi = xi + ni

Threshold techniques
Hard threshold Soft threshold

is the scale of the noise in SD scale

= (2log(N))

N is a block size in the WT

Advantages of Wavelet Denoising


Its

possible to remove the noise with little loss of details. The idea of wavelet denoising based on the assumption that the amplitude, rather than the location, of the spectra of the signal to be as different as possible for that of noise.

Example 1

Example 2

References
Wavelet Image Compression Zixiang Xiong, Kannan Ramchandran http://lena.tamu.edu/~zx/ EPIC (Efficient Pyramid Image Coder) http://www.cis.upenn.edu/~eero/epic.html Filtering (Denoising) in the Wavelet transform Domain Yousef M. Hawwar, Ali M. Reza et al http://www.xilinx.com/products/logicore/dsp/denoise_ wavelet.pdf Wavelet Denoising with MatLab http://wwwlmc.imag.fr/SMS/software/GaussianWaveDen/

You might also like