Hazy image equation implementation.
    4 次查看(过去 30 天)
  
       显示 更早的评论
    
I have an hazy image equation. When I am try to implement that equattion I only get a black image only.
.png)
This is my equation. How can I implement this equation in matlab correctly.Please help me.
回答(2 个)
  Thiago Henrique Gomes Lobato
      
 2019-10-20
        
      编辑:Thiago Henrique Gomes Lobato
      
 2019-10-20
  
      Can it be possible that you are just making a wrong conversion of your image data? With the code below I show an example of what would be a right and wrong conversion, besides this the code seems to work :
rng default
% Image and parameters
I = imread('cameraman.tif');
A = 0.5;
t = randn(size(I)); % t must have same dimensions as I
t = abs(t)/max(abs(t(:)))*0.7+0.3; % Normalize so no division by zero value possible
Hazy = @(I,A,t) (I-A*(1-t))./t; % Define your function, make sure it is element-wise
% Wrong Image conversion 
J1 = Hazy(double(I),A,t);
% Right image conversion
J2 = Hazy(im2double(I),A,t);
figure,
subplot(1,3,1)
imshow(J1)
subplot(1,3,2)
imshow(I)
subplot(1,3,3)
imshow(J2)

If you have a RGB image, make sure to apply it individually to every third dimension of your image matrix. 
4 个评论
  Thiago Henrique Gomes Lobato
      
 2019-10-25
				The problem was that you was defining your filter as a function of the image values before converting to normalize doubles, so your t had some crazy negative values and produced the black image. The following code works:
clc
clear
rng default
% Image and parameters
M= imread('5.3.02.tiff');
I=im2double(M);
tot = sum(double(I(:)));
[K L] = size(I);
A=((1./(K*L))*tot);
SD=std2(I);
t1= (I./A);
t2= SD * t1;
t= 1-t2;
Hazy = @(I,A,t) (I-A*(1-t))./t; % Define your function, make sure it is element-wise
J1 = Hazy(I,A,t);
figure,
subplot(1,2,1)
imshow(J1,[])
subplot(1,2,2)
imshow(I,[])

  Image Analyst
      
      
 2019-10-20
        Chances are that your image is floating point and you forgot to put [] in imshow.
imshow(yourImage, []);
0 个评论
另请参阅
类别
				在 Help Center 和 File Exchange 中查找有关 Convert Image Type 的更多信息
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!





