Computer vision Seeks to generate intelligent and useful description of visual scenes and sequences • Examples: • Automatic face recognition • Visual guidance • Medical Image Analysis • Smart offices • Object based compression of video streams • etc.
Challenge of vision • Signal to symbol converter • Physical signals Symbolic representations Manipulation of symbols allows machine or organism to interact intelligently with the world Simple for humans and animals, but very difficult to automate
Quantised image information • Grey-scale (or colour) resolution and • Spatial resolution Nyquist’s theorem: highest spatial frequency component of information is equal to one-half the sampling density of the pixel array Consider amount of data in a video sequence: 768 x 576 pixels/frame x 25 frames/second = 11 million pixels per second. 3 colour planes each resolved to 8 bits finally gives 24x11 = 264 million bits per second.
Manipulation/analysis of image Signal Modifed signal Transformation ”Sensible” representation ”Sensible” representation Inverse transformation Manipulation
Fourier analysis Decompose image/signal into sinusoids Convolution is the basis for filtering Convolution in image domain is filtering in Fourier domain. With powerful and fast 2D-FFT algorithms this is very efficient
Fourier transform and non-stationary signals • The Fourier transform does not provide information concerning the time interval(s) where a given frequency component exist. • Not a problem with stationary signals • (The frequency components of the signal then exist at “all times “) • Not suited for non-stationary signals • Neither suited for signals with discontinuities and sharp peaks • (like EKG or EEG signals)
Stationary signal Non - stationary signal
From • THE WAVELET TUTORIAL PART I • by ROBI POLIKAR
Windowed Fourier transform • Sliding time window is used Heisenberg uncertainty relations are playing! One cannot know the exact time-frequency representation of a signal.
Alternative basis functions Anyone heard about wavelets?
Wavelets An Introduction
Wavelets • Cut up data into different frequency components • Study each component with a resolution matched to its scale • Suitable for dealing with discontinuities and sharp peaks
Fourier versus wavelets • Fourier basis functions are non-local • frequency resolution but no time resolution • Wavelet basis functions contained in finite domains • large scale is the big picture • small scale corresponds to the details
The Continuous Wavelet Transform (CWT) • CWT decomposes f(t) into a set of basis wavelet functions: • Wavelets are generated from a mother wavelet
Wavelet properties If satisfied then the wavelets can be used to analyze and then reconstruct a signal without loss of information • Admissibility condition: • Implication: Oscillatory ! Must be a wave
Regularityconditions and vanishing moments Expand the wavelet transform into the Taylor series at t = 0 (we consider for simplicity) If moments up to order n is zero, then the coefficients will decay as fast as for decreasing scale s
Problems with the CWT • Redundancy - The scaled wavelets will not be an orthogonal basis • An infinite number of wavelets in the transform • For most functions no analytical expressions exist for the wavelet transform • Fast algorithms are needed to exploit the power of the transform
Discrete wavelets The wavelet itself is not discrete but it is scaled and translated in discrete steps • Usual choices: (dyadic sampling)
Is reconstruction from a wavelet decomposition possible? • Necessary and sufficient condition for stable reconstruction: • If A=B the family (frame) of basis functions is tight and behave like an orthonormal basis
Orthogonal basis • Wavelets that are orthogonal to their own dilations and translations demands special choices of the mother wavelets
How many scales are needed? • Compression in time stretches the spectrum and shifts it upwards: • Using dilated wavelets we can cover the signal spectrum • The ratio between the center frequency of a wavelet spectrum and the width of the spectrum (the Q factor) is constant for all the wavelets
The scaling function • An infinite number of wavelets is needed to cover the spectrum down to zero • Solution: Use a scaling function as cork plug Smaller scale
Iterated filter bank • Iteratively split the signal in two • a low-pass and a high-pass signal • The wavelet transform is equivalent with a subband coding scheme
Closer look at the filter scheme Twice as many data as we started! lowpass highpass Reconstruction:
Downsampling Can the signal still be reconstructed ?
Reconstruction Upsampling: lowpass highpass
Quadrature mirror filters Analysing filters: Synthesis filters:
The discrete wavelet transform • Often the signal will be discrete due to sampling • Will a digital filter bank do the job? • Two-scale relation: • Scaling function at one scale can be expressed from translated scaling functions at the next smaller scale!
Two-scale relation between scaling function and wavelets As our signal f(t) can be expressed in terms of dilated and translated wavelets up to a scale j-1, we see from this two-scale relation:
Continued…. • If we step in scale from j to j-1 (less detail) we have to add wavelets to keep the same level of detail • One can show: We can regard our sampled signal as the output of a low-pass filter at a previous (imaginary) scale.
The coefficients are the key to everything!! A particular wavelet is specified by a particular set of numbers, called wavelet filter coefficients By choosing a given number of filter coefficients, and demanding orthogonality as well as a given number of vanishing moments determines the shape of the wavelet. The two set of coefficient correspond to a high (g) and low pass filter (h) being applied recursively to the signal. Quadrature mirror filters !
To be noted • Wavelets cut up data into different frequency components, and studies each component with a resolution matched to its scale ! • We do not have a unique set of wavelet functions There are an infinity of possible sets The sets can be tailored for different applications
Haar wavelet Mother Father (or scaling function)
Daubechies 4 wavelet Mother Father (or scaling function)
Coiflet 4 wavelet Mother Father (or scaling function)
Denoising • Discard wavelet coefficients of low significance • Two simple methods: • Hard thresholding • Soft thresholding • Determination of threshold values • Absolute threshold (given in advance) • Relative threshold (threshold is given as a fraction of the maximum coefficient) • Absolute quantitative threshold (A given number of coefficients (the largest) are kept) • Relative quantitative threshold ( z% of the total number of coefficients (the largest) are kept)
Denoising Raw OCT image (false color coded) Denoising using wavelet transform and soft thresholding
Soft Skin on the Palm low high Depth Averaging over ten scans per position One scan per position Speckle noise is not removed here! Denoising using wavelet decomposition “Hidden” structured regions are extracted !