please i need a help.. how to remove the darkest handwritten text (black and red) from this image? just the text?

1 view (last 30 days)

Answers (2)

Walter Roberson
Walter Roberson on 24 Oct 2016
somethreshold = 11; %found by examining the image RGB values
mask = YourImage(:,:,3) > somethreshold;
NewImage = YourImage .* cast(mask(:,:,[1 1 1]), class(YourImage));
%And to view it,
image(NewImage, 'AlphaData', double(mask))
Only the darkest text is removed.
  4 Comments
Walter Roberson
Walter Roberson on 24 Oct 2016
No, it relies upon the blue channel being low for both black and red text. You asked to remove the dark black and dark red from the image, which implies you want to leave dark green or dark blue alone, but when you convert to grayscale you cannot distinguish original source colors.
Given your other questions, I suspect that what you are looking for with regards to grayscale is:
mask = YourGrayImage >= lowerbound & YourGrayImage <= upperbound
for some lowerbound and upperbound; this would be for extracting portions that are not too dark and not too bright. Then
NewImage = YourGrayImage .* cast(mask, class(YourImage));
%And to view it,
image(NewImage, 'AlphaData', double(mask))
Walter Roberson
Walter Roberson on 25 Oct 2016
There is no white colored text.
Notice the "And to view it" portion. The image is being displayed with transparency for the pixels that are not selected. You are seeing the white of the background showing through. The image itself has been set to black at all other locations. The locations that are selected (the ROI, region of interest) are the ones where mask is true.

Sign in to comment.


Image Analyst
Image Analyst on 25 Oct 2016
Try imtophat() or imbothat() to do a morphological filter.

Categories

Find more on Images 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!