A list,

In 1974, J.Morlet, a French engineer, first proposed the concept of wavelet transform. In 1986, y.Meyer, a famous mathematician, accidentally constructed a real wavelet basis and cooperated with S.Mallat to establish the multi-scale analysis of constructing wavelet basis, wavelet analysis began to flourish. The application of wavelet analysis is very extensive. In mathematics, it has been used in numerical analysis, construction of rapid numerical methods, curve and surface construction, differential equation solution, cybernetics and so on. In signal analysis of filtering, noise, compression, transmission, etc. In the aspect of image processing, image compression, classification, recognition and diagnosis, noise removal, etc. This chapter will focus on the application of wavelet in image analysis.

1 principle of wavelet transform

Wavelet analysis is a difficult branch, users can use wavelet transform, image compression, vibration signal decomposition and reconstruction, so it is widely used in practical engineering. Wavelet analysis Compared with Fourier transform, wavelet transform is the local transformation of space domain and frequency domain, so it can effectively extract information from signals. Wavelet transform achieves multi-scale decomposition and reconstruction of signals through basic operations such as stretching and shifting, thus solving many problems caused by Fourier transform to a large extent.

Wavelet analysis is a new branch of mathematics, which is the perfect crystallization of functional analysis, Fourier analysis and numerical analysis. Wavelet analysis is also a new technique of “time-scale” analysis and multi-resolution analysis. It is widely used in signal analysis, speech synthesis, image compression and recognition, atmospheric and ocean wave analysis and so on.

(1) Wavelet analysis is used for signal and image compression. Wavelet compression is characterized by high compression ratio and fast compression speed. It can keep the characteristics of signal and image unchanged after compression, and can resist interference in transmission. There are many compression methods based on wavelet analysis, including wavelet compression, wavelet packet compression, wavelet transform vector compression and so on.

(2) Wavelet can also be used for signal filtering and denoising, signal time-frequency analysis, signal noise separation and weak signal extraction, fractal index, signal recognition and diagnosis and multi-scale edge detection, etc.

(3) The application of wavelet analysis in engineering technology, including computer vision, curve design, turbulence, remote universe research and biomedicine.

Multiscale analysis



3 image decomposition and quantization



4 image compression coding



5. Image coding evaluation

Ii. Source code

clc
clear all
close all
x1=imread('lena.bmp'); % reads the image as unsigned unit8(), which must be converted to the one supported by the matrix operation before performing the matrix operationdouble() double precision. figure(1);
subplot(2.3.1)
imshow(x1);
title('original'); % add gaussian noise x2=imnoise(x1,'gaussian'.0.01);
x1=double(x1);
subplot(2.3.2);
imshow(x2);
title('After noise');
x3=double(x2); % SNR=10*log(sum(x1.^2)/(sum((x3-x1).^2))) [h0,h1]=wave1(x3); % first order decomposition [H00, H01]= Wave1 (H0)');
[h10,h11]=wave1(h1'); %% % median filtering % x0= rGB2gray (x1); % grayscale processing, the image after grayscale processing is a two-dimensional matrix n=3; % template size [height, width]=size(x1); % Gets the size of the image (n less than the width and height of the image) x11=double(x2); % data type conversion x22=x11; The % converted data is assigned to X2for i=1:height-n+1  
    for j=1:width-n+1  
        c=x11(i:i+(n- 1),j:j+(n- 1)); % take the template size block from scratch in x1 and assign it to c e=c(1, :); %e is the first row of the C matrixfor u=2E =[e,c(u,:)]; e=[e,c(u,:)]; end med=median(e); % take the median of a row x22(I +(n)- 1) /2,j+(n- 1) /2)=med; End d=uint8(x22); % Unassigned elements subplot(2.3.3);; imshow(d); title('Median filtering')% display gray image after filtering % % hard threshold denoising [t]=Throld(h11); % [Sh00]=Soft(h00,t); [hh01]=Soft(h01,t); [hh10]=Soft(h10,t); [hh11]=Soft(h11,t); [H1]= Revers1 (H00,hh01); [H2]=revers1(hh10,hh11); [H3]=revers1(H1',H2'); % SNRH= after soft threshold denoising10*log(sum(x1.^2)/(sum((H3-x1).^2)))
SS1=uint8(H3);
subplot(2.3.4)
imshow(SS1);
title('Hard threshold denoising'); % % Soft threshold denoising % [Sh00]=Soft(h00,t); [Sh01]=Soft(h01,t); [Sh10]=Soft(h10,t); [Sh11]=Soft(h11,t); Function [T]=HardSoft(x, T) [m,n]=size(x);for i=1:m
    for j=1:n
        if(abs(x(i,j))<t)
            x(i,j)=0;
        else
            x(i,j)=(sign(x(i,j)))*(abs(x(i,j))0.7*t);
        end
    end
end
T=x;
function [T]=Soft(x,t)

[m,n]=size(x);
for i=1:m
    for j=1:n
        if(abs(x(i,j))<t)
            x(i,j)=0;
        else
            x(i,j)=(sign(x(i,j)))*(abs(x(i,j))-t);
        end
    end
end
T=x;
Copy the code

3. Operation results

Fourth, note

Version: 2014 a