2010-05-06 55 views
3

给定一个已转换为二进制的二维数组,对于二进制数组的某些索引值,如何在原始数据中找到相应的值?从二进制转换为原始数组值

也许使用ind2sub的东西?

回答

5

不,您可以直接编制索引。

%# create some test data 
m = magic(4); 
%# make binary image 
bw = m>10; 

%# read values from m 
values = m(bw); 

%# alternatively, if you have linear indices (as found via find)... 
linIdx = find(bw); 
%# ...you can use that instead 
values = m(linIdx); 
1

您可以使用按元素的乘法保留2D结构。

m = magic(4); 
bw = m>10; 
m .* bw