fill in missing or incorrect data in skeletonized image

Hello,
I have a skeletonized line that meanders. However, the corners of the line are eiher missing or are not straight. I was wondering if there was any matlab function or techniques that could be used to either straighten out the corners or a add the missing points. I attached the data for it.
Thank you
Andrew

回答(1 个)

You could remove all single pixels with bwareafilt, then call imdilate with a vertical and horizontal structuring element.
mask = bwareafilt(mask, 4, [2, inf]); % Remove single, 4-connected dots.
mask = imdilate(mask, [1,1,1]); % Widen lines by one pixel on each end.
mask = imdilate(mask, [1;1;1]); % Heighten lines by one pixel on each end.

类别

帮助中心File Exchange 中查找有关 Images 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by