Clear Filters
Clear Filters

how to find the image damaged area pixels and fill the area in appropriate way.

3 views (last 30 days)
I want to find damaged region of an damaged digital image then need to find the the pixels of that region in order to fill the place in an appropriate way. If anybody know a tutorial site or any other web space to refer, could you please mention ?
  2 Comments
Image Analyst
Image Analyst on 11 Feb 2017
Who knows what you mean by damaged? I don't. Do you mean like regions that might be repaired if you used the healing brush in Photoshop? Do you mean Salt and Pepper noise? Something else? You forgot to attach your image and indicate what areas were considered "damaged". Please attach your image so we can help you.
Piyum Rangana
Piyum Rangana on 11 Feb 2017
Edited: Image Analyst on 11 Feb 2017
Damaged images like the attached one. Previously I meant the degraded areas of ancient wall paintings. Just I need to find the pixels around the degraded region and fill it, according to the, found pixel values.

Sign in to comment.

Answers (1)

Image Analyst
Image Analyst on 11 Feb 2017
That's called inpainting. Create a mask by detecting the white area(s), then use imregionfill().
  2 Comments
Walter Roberson
Walter Roberson on 24 Feb 2017
You could start with
ROI = all(IMG_0305 >= 200,3) & (IMG_0305(:,:,1) >= 220);
and tweak a bit from there.
The blob near the center appears to be > 220 for all channels, but the blob to the left is a bit dimmer than that on the green channel. There are little patches here and there which do not need repair but which are part of the ROI as computed above.
One possibility would be to use imfill('holes') on the above ROI and then bwareafilter() to remove the smaller patches.

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!