matlabimage-processingnoise-reduction

How to remove the image noises in this photo with morphology while making the backgorund white and without reducing the text readability too much?


This must be done in MATLAB. I tried median filter by [5 5], Tried imerode, imdilate but texts are getting worse. I even tried strel with line, square, disk, degreed line, anything you name it. Can't do much. Isn't there a way to do it without damaging the text?

enter image description here


Solution

  • By using Morphological closing you will get a somehow acceptable results:

    enter image description here

    % Image
    img = imread('Noisy_Text.jpg');
    
    % Structuring Element
    SE=zeros(3,3);
    SE(1,1)=1;
    SE(1,3)=1;
    SE(2,2)=1;
    SE(3,1)=1;
    SE(3,3)=1;
    Imdilte=imclose(img,SE);
    
    figure();
    subplot(1,2,1);
    imshow(Imdilte)
    subplot(1,2,2);
    imshow(img);