How to remove triangles from an image?
Afficher commentaires plus anciens
I need to segment the red, blue and yellow/orange-ish parts of the image and I've mostly manged to do that, the only problem is that the yellow/orange-ish segmentation contains discontinuities in some parts due to those little triangles. Any suggestions on how can I remove those triangles? ( or other ideas on how to segment it without the discontinuities). Below I've attached both the image I need to segment and the segmented image with the discontinuities I'm reffering to.
Réponses (3)
Akira Agata
le 20 Juin 2019
How about the following?
% Read the original image
I = imread('image.jpg');
% Extract orange part (using Color Thresholder App.)
BW = createMask(I);
% Remove noise
BW = bwareafilt(BW,[10 Inf]);
% Apply morphological closing operation
BW = imclose(BW,strel('disk',50));
% Fill the area
BW = imfill(BW,'hole');
% Show the result
figure
imshowpair(I,BW)

1 commentaire
Akira Agata
le 20 Juin 2019
OK. Then, please change a little bit, like:
% Read the original image
I = imread('image.jpg');
% Extract orange part (using Color Thresholder App.)
BW = createMask(I);
% Remove noise
BW = bwareafilt(BW,[10 Inf]);
% Apply morphological closing operation
BW = imclose(BW,strel('disk',50));
% Trace the orange line
BW = bwmorph(BW,'skel',Inf);
% Show the result
figure
imshow(BW)

Paul Simon
le 20 Juin 2019
0 votes
Paul Simon
le 20 Juin 2019
0 votes
Catégories
En savoir plus sur Image Segmentation dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!