bwlabel MATLAB

bwlabel这个东西我有点迷糊
怎么对每个被标记的对象操作
比如要对每个被标记的对象 旋转一定的角度
我不是要这个东西,比如标记出来的 第K个区域,我怎么将第K个区域旋转 或者进行别的操作,将第K个连通域作为一个单独的矩阵 操作而不影响 原来别的区域
将某个区域K以红色显示 等等 六个QQ我切图给你看咯 好像说不明白 我的447050220

bwlabel只是对对象进行标记而已,不能对对象进行旋转一定的角度的操作,而之后的步骤要用regionprops来完成,它是对标记对象的描述,它里边的参数有很多,有一个参数好像是orientation的是关于角度问题的,利用它才能完成旋转的操作。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2009-03-05
建议看一下给的例子:

你用imshow(BW),可以看错效果。

BW = [1 1 1 0 0 0 0 0
1 1 1 0 1 1 0 0
1 1 1 0 1 1 0 0
1 1 1 0 0 0 1 0
1 1 1 0 0 0 1 0
1 1 1 0 0 0 1 0
1 1 1 0 0 1 1 0
1 1 1 0 0 0 0 0];

L = bwlabel(BW,4)

L =

1 1 1 0 0 0 0 0
1 1 1 0 2 2 0 0
1 1 1 0 2 2 0 0
1 1 1 0 0 0 3 0
1 1 1 0 0 0 3 0
1 1 1 0 0 0 3 0
1 1 1 0 0 3 3 0
1 1 1 0 0 0 0 0

[r,c] = find(L==2);
rc = [r c]

rc =

2 5
3 5
2 6
3 6
第2个回答  2020-03-01
建议看一下给的例子:
你用imshow(BW),可以看错效果。
BW
=
[1
1
1
0
0
0
0
0
1
1
1
0
1
1
0
0
1
1
1
0
1
1
0
0
1
1
1
0
0
0
1
0
1
1
1
0
0
0
1
0
1
1
1
0
0
0
1
0
1
1
1
0
0
1
1
0
1
1
1
0
0
0
0
0];
L
=
bwlabel(BW,4)
L
=
1
1
1
0
0
0
0
0
1
1
1
0
2
2
0
0
1
1
1
0
2
2
0
0
1
1
1
0
0
0
3
0
1
1
1
0
0
0
3
0
1
1
1
0
0
0
3
0
1
1
1
0
0
3
3
0
1
1
1
0
0
0
0
0
[r,c]
=
find(L==2);
rc
=
[r
c]
rc
=
2
5
3
5
2
6
3
6
相似回答