Adding haze to image

7 views (last 30 days)
hussein ali
hussein ali on 25 Oct 2016
Edited: Walter Roberson on 19 Sep 2022
Hi for all , How I can add haze to image Thank you

Answers (3)

Image Analyst
Image Analyst on 25 Oct 2016
Edited: Thorsten on 25 Oct 2016
Use rand() to add an offset and a slight amount of noise. ofr a grayscale image, try this:
maxGL = max(grayImage(:));
hazyImage = uint8(double(grayImage) + 240 - maxGL + 10 * rand(size(grayImage)));
figure;
subplot(1, 2, 1);
imshow(grayImage);
subplot(1, 2, 2);
imshow(hazyImage);
  6 Comments
Image Analyst
Image Analyst on 24 Nov 2016
I'm not Thorsten but since the 240 was in my code I'll answer anyway. Basically I wanted to brighten the image and add a bit of noise to make it look hazy.
I subtracted maxGL to get the image all negative.
Then I added up to 10 gray levels of noise. So now the gray levels go from large negative up to as much as 10.
Then I added 240 to brighten the image. Whatever the old max was, it will now be at 240. For example it might have been at 130 - doesn't matter - now it will be at 240 so it looks brighter. Then there's still the 10 gray levels of noise on top of that so the image goes to as bright as 250 gray levels. You can change the 240 to be whatever you want, to map the old max brightness to a new level.
hussein ali
hussein ali on 23 Jan 2017
Thank you so much my teacher

Sign in to comment.


Amjad Mushtaq
Amjad Mushtaq on 2 Jun 2022
Edited: Walter Roberson on 19 Sep 2022
image=imread('image2.jpg');
subplot(2,2,1); imshow(image);title('imege');
a=imcomplement(image);
subplot(2,2,2);imshow(a);title('incomplement');
b=imreducehaze(a); % this is hazy filter code
subplot(2,2,3);imshow(b);title('hazy filter');
  1 Comment
Walter Roberson
Walter Roberson on 2 Jun 2022
Ah, but the question was how to add haze, not how to remove it.

Sign in to comment.


GNANA PRAKASH
GNANA PRAKASH on 19 Sep 2022
maxGL = max(grayImage(:));
hazyImage = uint8(double(grayImage) + 240 - maxGL + 10 * rand(size(grayImage)));
figure;
subplot(1, 2, 1);
imshow(grayImage);
subplot(1, 2, 2);
imshow(hazyImage);

Categories

Find more on Image Processing Toolbox in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!