Fig-13
++++++++++++++++
1- In this example i will show you another 4 signals with another 4 responses with changing the frequencies and the phase angel.
So we will see 2 superposition signals and 1 fft and 1 cosine signal.
I defined it as shown in the figure using matlab file.
And in this example I used the function plot to show you the output.
Fig-14
Fig-15
These applications can be used in time analysis of continuous systems or for describing a superposition in physics and electronics, or seeing the output of signal responses over the entire time domain interval.
+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Matlab Part2 in electricity and electronics:
Matlab Part2 in Image Sensors, Image Recognition, and Image
detection:
5- Image Sensors Architecture :
Deblurring Images Using a Regularized Filter
This example shows how to use regularized deconvolution to deblur images.
Regularized deconvolution can be used effectively when constraints are applied on the recovered image
(e.g., smoothness, distortion, concentrated error detection,...) and limited information is known about the additive noise/or concentrated compound of noisy energy;....
The blurred and noisy image is restored by a constrained least square restoration algorithm that uses a regularized filter; you can defined also another algorithmic filters for the distortion parts; or compounds;....
Step 1: Read Image
onion = imread('onion.png');
peppers = imread('peppers.png');
imshow(onion)
figure, imshow(peppers)
Fig-16
Fig-17
Step 2: Choose Subregions of Each Image
It is important to choose regions that are similar.
The image sub_onion will be the template, and must be smaller than the image sub_peppers. You can get these sub regions using either
: the non-interactive script below or the interactive script.
You can use here the methods non-interactive or the other method interactive.
Firstly
% non-interactively
rect_onion = [111 33 65 58];
rect_peppers = [163 47 143 151];
sub_onion = imcrop(onion,rect_onion);
sub_peppers = imcrop(peppers,rect_peppers);
% OR
% Secondly
% interactively
%[sub_onion,rect_onion] = imcrop(onion); % choose the pepper below the onion
%[sub_peppers,rect_peppers] = imcrop(peppers); % choose the whole onion
% display sub images/without the choosed part.
figure, imshow(sub_onion)
Fig-18
figure, imshow(sub_peppers)
fig-19
Step 1: Read Image is related to the title in the previous part:
you will find it in Fig-6
The example reads in an RGB image and cropsit to be 256-by-256-by-3.
The deconvreg function can handle arrays of any dimension.
I = imread('tissue.png');
I = I(125+(1:256),1:256,:);
f1 = figure;
imshow(I);
figure(f1);
title('Original Image');
text(size(I,2),size(I,1)+15, ...
'Image courtesy of Alan Partin, Johns Hopkins University', ...
'FontSize',7,'HorizontalAlignment','right');
Step 2: Simulate (by appling noisy) a Blur and Noise
step 2 here related to step 2 and 3 in the przvious part with there images fig- 7 and Fig 8;
Simulate a real-life image that could be blurred (e.g., due to camera motion or lack of focus) and noisy (e.g., due to random disturbances).
The example simulates the blur by convolving a Gaussian filter with the true image (usingimfilter).
The Gaussian filter represents a point-spread function, PSF.
PSF = fspecial('gaussian',11,5);
Blurred = imfilter(I,PSF,'conv');
f2 = figure;
imshow(Blurred);
figure(f2);
title('Blurred');
We simulate the noise by adding a Gaussian noise of variance V to the blurred image (using imnoise).
V = .02;
BlurredNoisy = imnoise(Blurred,'gaussian',0,V);
f3 = figure;
imshow(BlurredNoisy);
figure(f3);
title('Blurred& Noisy');
Step 3: Restore the Blurred and Noisy Image
Restore the blurred and noisy image supplying noise power, NP, as the third input parameter.
To illustrate how sensitive the algorithm is to the value of noise power, NP, the example performs three restorations.
The first restoration, reg1, uses the true NP. Note that the example outputs two parameter shere.
The first return value, reg1, is the restored image.
The second return value, LAGRA, is a scalar, Lagrange multiplier, on which the deconvreg has converged.
This value is used later in the example.
NP = V*numel(I); % noise power
[reg1, LAGRA] = deconvreg(BlurredNoisy,PSF,NP);
f4 = figure;
imshow(reg1);
figure(f4);
title('Restoredwith NP');
The second restoration, reg2, uses a slightly over-estimated noise power, which leads to a poor resolution.
reg2 = deconvreg(BlurredNoisy,PSF,NP*1.3);
f5 = figure;
imshow(reg2);
figure(f5);
title('Restoredwithlarger NP');
The third restoration, reg3, is given an under-estimated NP value.
This leads to an overwhelming noise amplification and "ringing" from the image borders.
reg3 = deconvreg(BlurredNoisy,PSF,NP/1.3);
f6 = figure;
imshow(reg3);
figure(f6);
title('Restoredwithsmaller NP');
Fig-20
Fig-21
Step 4: Reduce Noise Amplification and Ringing
Reduce the noise amplification and "ringing" along the boundary of the image by calling the edge taper function prior to deconvolution.
Note how the image restorationbecomesless sensitive to the noise power parameter.
Use the noise power value NP from the previous example.
Edged = edgetaper(BlurredNoisy,PSF);
reg4 = deconvreg(Edged,PSF,NP/1.3);
f7 = figure;
imshow(reg4);
figure(f7);
title('Edgetapereffect');
Step 5: Use the Lagrange Multiplier
Restore the blurred and noisy image, assuming that the optimal solution is already found and the corresponding Lagrange multiplier, LAGRA, is given.
In this case, any value passed for noise power, NP, is ignored.
To illustrate how sensitive the algorithm is to the LAGRA value, the example performs three restorations.
The first restoration (reg5) uses the LAGRA output from the earlier solution (LAGRA output from first solution in Step 3).
reg5 = deconvreg(Edged,PSF,[],LAGRA);
f8 = figure;
imshow(reg5);
figure(f8);
title('Restoredwith LAGRA');
The second restoration (reg6) uses 100*LAGRA which increases the significance of the constraint.
By default, this leads to over-smoothing of the image.
reg6 = deconvreg(Edged,PSF,[],LAGRA*100);
f9 = figure;
imshow(reg6);
figure(f9);
title('Restoredwith large LAGRA');
The third restoration uses LAGRA/100 which weakens the constraint (the smooth ness requirement set for the image).
It amplifies the noise and eventually leads to a pure inverse filtering for LAGRA = 0.
reg7 = deconvreg(Edged,PSF,[],LAGRA/100);
f10 = figure;
imshow(reg7);
figure(f10);
title('Restoredwithsmall LAGRA');
Step 6: Use a Different Constraint
Restore the blurred and noisy image using a different constraint (REGOP) in the search for the optimal solution.
Instead of constraining the image smoothness (REGOP is Laplacian by default), constrain the image smoothness only in one dimension (1-D Laplacian).
REGOP = [1 -2 1];
reg8 = deconvreg(BlurredNoisy,PSF,[],LAGRA,REGOP);
f11 = figure;
imshow(reg8);
figure(f11);
title('Constrained by 1D Laplacian');
Another complete Image recognition and treatement;
Fig-22 Origin image, blurred image, noisy part, and treatment.
Conclusion:
Aucun commentaire:
Enregistrer un commentaire