Detecting a stain in a texture

12 次查看(过去 30 天)
Rafael Andrade
Rafael Andrade2013-12-5
Hello.
I'm trying to detect a stain in an image. The original image has a marble background and the stain its almost the same color, sometimes the stain is darker and sometimes brighter than the marble background. See some examples:
I would like to know if there is a function that can detect such stain. The difficulty is distinguish the stain from the marble texture background. Can somebody help me?
Thanks.
Rafael

回答(1 个)

Constantino Carlos Reyes-Aldasoro
This would not be that difficult,
marble = imread('https://upload.wikimedia.org/wikipedia/commons/f/f3/SierraXenolith.JPG');
imagesc(marble)
marble2 = marble(:,:,2)<120;
imagesc(marble2)
just by intensity you can distinguish the central part, if you use some morphological operators you could remove small parts and consolidate the centre. The only problem is the finger ...

标签

Community Treasure Hunt

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

Start Hunting!

Translated by