noise removal from image

1 次查看(过去 30 天)
I have a series of 1000 images extracted from a video. There are horizontal bright and dark noises in each image. The position of these horizontal noises are different for different images. How to get rid of such kind of noise.

采纳的回答

Akira Agata
Akira Agata 2019-4-15
If the noise is exactly horizontal, one straight-forward solution would be like this:
% Read your image and convert it to gray-scale
I = imread('img.jpeg');
Igray = rgb2gray(I);
% Extract the target region
Igray = imcrop(Igray,[178 20 443 443]);
% Estimate line noise in horizontal direction
rowAvg = mean(double(Igray),2);
rowNoise = rowAvg - mean(rowAvg);
% Cancellation of noise
Igray2 = double(Igray) - rowNoise;
Igray2 = uint8(Igray2);
% Compare original and processed image
figure
subplot(1,2,1)
imshow(Igray)
title('Original image','FontSize',16)
subplot(1,2,2)
imshow(Igray2)
title('After processing','FontSize',16)

更多回答(0 个)

Community Treasure Hunt

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

Start Hunting!

Translated by