2013-04-08 187 views
0

我有这样的问题;从另一个矩阵中提取矩阵值

points(size = 65,2)是一个具有图像像素坐标的变量。在第一列中,有x个坐标,而在第二个y坐标中,我想从仅有一个通道的像素坐标(例如,大小= 256,256,6)中获取矩阵的大小值。 3(三)。

我无法成功。

intensities = images(points(:,2), points(:,1), 3); 

构成矩阵65x65。

感谢

希门尼斯

+0

你的问题还不够清楚,我给你一个答案。如果图像是您的256x256x6矩阵,则强度现在是通道3中从您的点开始的值。绝对(强度)给你这些值的大小,但是你想从那里做什么? – Geodesic 2013-04-08 03:45:56

回答

1

你可以把你x,y指数线性指数摆脱你的形象,你想要的值:

% some sample data  
list = round(256*rand(65,2)); 
im = rand(256,256); 
% calculate linear indices 
ind = sub2ind([256,256],list(:,1),list(:,2)); 
intensities = im(ind); 

这导致intensities矩阵是65x1其中每个元素对应于您列表中的x,y对。