Measuring Diameter of Calibration Pin
2 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Ang Xian Jia
am 28 Nov. 2019
Bearbeitet: Ang Xian Jia
am 30 Nov. 2019
I want to measure the diameter of the pin but getting a bad edge detection image. Can someone help me to further improve it?

My edge detection image:

My coding:
%% Read and Binarize
load image.mat
I4 = imgaussfilt(I3);
I4 = I4 <120;
%%
I5 = edge(I4,'Sobel');
imshow(I5)
0 Kommentare
Akzeptierte Antwort
Image Analyst
am 28 Nov. 2019
Why are you doing edge detection???? I see no need for that. If the edges are about where you put them, then try thresholding and getting the area and divide by the width:
mask = grayImage < someValue;
mask = imfill(mask, 'holes');
diameter = nnz(mask) / size(mask, 2); % height = area / width. Answer is in pixels.
It's trickier if you want the inner, instead of outer, dark thing.
5 Kommentare
Image Analyst
am 30 Nov. 2019
Do you have another, more trusted method? If not, then why do you doubt the image analysis? Why do you assume it's wrong if you don't have another more trusted method? If it's the only thing you have that gives you an answer, then why do you doubt it?
What you really need to ask is if the image analysis meets your needs. For example does it properly identify diameters that are for usable parts and unusable parts? If not, you can construct an ROC curve.
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Computer Vision with Simulink finden Sie in Help Center und File Exchange
Produkte
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
