2

我是 Matlab 的新手。我正在对骨架图像进行图像处理。我正在使用bworphMatlab 中的函数检测分支点和端点。现在我想计算骨架图像中每个分支的长度。Matlab中有哪些不同的选项以及如何计算图像的长度?

以下是我用来查找分支点和端点的代码。现在我想去图像中的每个分支并确定它的长度。

mn=bwmorph(y,'branchpoints');
[row column] = find(mn);
branchPts    = [row column];
endImg    = bwmorph(y, 'endpoints');
[row column] = find(endImg);
endPts       = [row column];
figure;imshow(y);
hold on ; 
plot(branchPts(:,2),branchPts(:,1),'rx');
hold on; plot(endPts(:,2),endPts(:,1),'*');
4

1 回答 1

3

如果您取出分支点 - 分支将成为不同的连接组件。您可以申请它们regionprops以获得所需的属性

branches = y & ~mn; % set branch points to zero
branchesLabeled = bwlabel( branches, 4 ); % label connected components
sts = regionprops( branchesLabeled, 'Area', 'Perimeter' ); % extract properties
于 2013-01-17T06:39:45.787 回答