Any ideas how I can perform segmentation on this image?
1 Ansicht (letzte 30 Tage)
Ältere Kommentare anzeigen
I have tried a range of methods such as clustering and thresholding to seperate the white circle from the brown ring without any luck.
Please could someone help?
Thanks!
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/296433/image.jpeg)
4 Kommentare
Image Analyst
am 21 Mai 2020
Use bwconvhull. Do you want the actual boundary, following all the little nooks and crannies, or do you want the best-fit perfect circle?
Antworten (1)
Ryan Comeau
am 29 Mai 2020
Hey, i've read through the comments, might have a binarization solution for you. The imbinarize function is very elaborate, take a good look through the documentation. Here is what i've done in the past to get the best binarization results.
image=imread('path/to/image')
image=rescale(image,0,1); %matlab loves 0-1 range for binarize don't ask me why lol
BW_im=imbinarize(image);
If this doesn't work, try a variable sensitivity, adaptive binarization, and create some validation conditions for yourself:
is_done = 0;
sensitivity= 0.1; %tune this to whatever you want
i=1;
while is_done == 0
BW(i).image = imbinarize(I,'adaptive','Sensitivity',sensitivity);
i=i+1;
sensitivity=sensitivity+0.1;%tune this to what you want.
if sensitivity >= 1
is_done == 1
end
end
%you then place some validation criterion on you binarization and take which one is the best
Hope this helps,
RC
1 Kommentar
Siehe auch
Kategorien
Mehr zu Image Segmentation and Analysis finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!