Detecting a stain in a texture
3 views (last 30 days)
Show older comments
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:
http://upload.wikimedia.org/wikipedia/commons/f/f3/SierraXenolith.JPG http://us.123rf.com/400wm/400/400/losalex/losalex0711/losalex071100030/2057779-marble-structure-a-stain-a-strip-stone.jpg http://image2.yell.ru/responses/5/7/1/r_670743_pr8rse37rffkijk9skb7.jpg https://lh3.googleusercontent.com/-48VlxENbnkY/SjXKwlNTtyI/AAAAAAAABGs/fFIwLb21bu8/s640/Texture%20-%20Granite.JPG http://us.123rf.com/400wm/400/400/lobanov/lobanov1108/lobanov110800013/10391208-a-texture-of-marble-with-rust-stains.jpg
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
0 Comments
Answers (1)
Constantino Carlos Reyes-Aldasoro
on 9 Aug 2021
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 ...
0 Comments
See Also
Categories
Find more on Migrate GUIDE Apps 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!