matlab取图像矩阵并切割,matlab – 使用图形切割与种子点的图像分割

我不熟悉你链接到的FEX的图形实现,

但是我会用

GCMex matlab wrapper(适当的披露:我实现了这个包装)来显示一个例子.

假设你有一个具有n个像素的尺寸大小(S)的图像,并且K是尺寸为n×n的稀疏矩阵,K(ii,jj)表示ii和jj像素连接的程度(对于相邻的ii和jj).

此外,您有一个前景像素的掩码和背景像素的掩码v被视为硬约束.

首先,使用u和v构建数据项:

Dc = 1000*[u(:), v(:)]; %// assign very large cost for picking FG pixel to label zero and vice versa

正如你可以看到数据项Dc,是n-by-2数组,其中将标号l(0或1)分配给像素ii的成本存储在Dc(ii,l 1)中.因此,对于前景中的像素(u(ii))为1)分配标签l = 0(即背景),您支付的成本为1000.背景中的像素也相同(v(ii))为1)将其分配给前景(即,1 = 1)是成本1000.因此,数据项Dc给种子像素(前景或背景)获得错误标签的非常高的成本.

构建图形切割对象

gch = GraphCut('open'), Dc, [0 1; 1 0], K );

[gch L] = GraphCut('expand',gch);

gch = GraphCut('close',gch);

L = reshape(L, size(u));

figure; imshow(L,[]); title('the resulting mask');

请注意,要使用GCMex,您需要按照安装说明进行编译,以使其正常工作.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值