matlab 图形骨架,matlab – 来自中轴骨架的图形

我有一个前景为白色的二进制图像.在其内侧轴骨架的分支点和端点之外,我想构建一个图形.理想情况下,具有以下结构:

> [节点]具有格式[ID X Y],其中X,Y是分支点或端点的像素位置,ID是节点的ID – 整数.

> [edge]具有格式[ID N1 N2],其中N1和N1表示节点的ID.

通过使用[nodes]和[edges],我将拥有骨架到无向图表示的映射.

使用下面的代码,我可以计算分支和端点,但现在我需要正确连接它们:

skelImg = bwmorph(im, 'thin', 'inf');

branchImg = bwmorph(skelImg, 'branchpoints');

endImg = bwmorph(skelImg, 'endpoints');

[row, column] = find(endImg);

endPts = [row column];

[row, column] = find(branchImg);

branchPts = [row column];

figure; imshow(skelImg); hold on; plot(branchPts(:,2),branchPts(:,1),'r*'); hold on; plot(endPts(:,2),endPts(:,1),'*');

输入图像(左侧),骨架(中间)以及相应的分支点和终点(右侧)的示例如下:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值