How to calculate the length of the longest crack in this image automatically ?

1 view (last 30 days)
How to highlight those cracks in this image and calculate their lengths?
  2 Comments
Image Analyst
Image Analyst on 26 Dec 2024
Edited: Image Analyst on 26 Dec 2024
It's complicated by the fact that the really long crack crosses over dark circular regions. Do you consider the crack to end when it hits a round dark region? Or do you want it to continue through it? Please annotate the image with red lines showing exactly where each crack is.

Sign in to comment.

Accepted Answer

KALYAN ACHARJYA
KALYAN ACHARJYA on 29 Dec 2024
Edited: KALYAN ACHARJYA on 29 Dec 2024
img = imread('image_crack.png');
% Enhance contrast
enhancedImg = imadjust(grayImg);
% Apply Gaussian filter to reduce noise
smoothedImg = imgaussfilt(enhancedImg, 2);
% Binarize the image using a manually set threshold
binaryImg = imbinarize(smoothedImg,0.32);
%figure, imshow(binaryImg);
%get the highest blob
BW = bwareafilt(~binaryImg,1);
figure,imshow(BW);
Appooximate Only: Now, attempt to use a skeleton-based approach or approximating triangles to determine spatial coordinates and calculate the distances.

More Answers (0)

Products


Release

R2024b

Community Treasure Hunt

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

Start Hunting!