附件是matlab附带的cameraman.tif
图片,但在应用[fuzzy c-means]
1之后
此外,由于算法的输出是u2
(像素的隶属度)。有关此数据,请参阅matlab.mat。
我想要做的是从u2
值为equal to 1
的附加图像中选择像素。
有关如何在matlab
中完成此操作的任何想法?
感谢。
答案 0 :(得分:3)
获取适当像素的索引:
ind = find( u2 == 1 ); % return indices of all pixels with u2 eq to 1
自己获取像素
pixels = img( ind );
答案 1 :(得分:2)
或者,您可以避免使用查找并直接进入logical indexing。
鉴于图像为:
>> image = [1 3 5; 2 3 1; 3 2 2]
image =
1 3 5
2 3 1
3 2 2
您可以使用条件iamge == 2:
找到值为2的像素K>> image == 2
ans =
0 0 0
1 0 0
0 1 1
例如,如果您想通过将这些像素设置为7来操纵这些像素,则可以使用一行轻松完成:
image(image == 2) = 7
image =
1 3 5
7 3 1
3 7 7