2017-06-03 82 views
0

我想用矢量为rowcolumn数字索引一个矩阵(用imread()读取的图像)。带有矢量的MATLAB中的索引

map是使用imread()读取的图像,而rowscolumns是1维索引向量。

但是,当我做map(rows, columns)它返回一个2维矩阵,其中我相信它正在使用的rowscolumns每一个置换来索引map

如何索引map与每个对应元素(rows,columns)

我相信我正在寻找的答案相当于diag(map(rows,columns),但我认为它有点低效。

回答

0

如果我找到你想要的是提取一个像素矢量,其中每个像素是行和列索引的组合。

如果我找到了你,那么做法是使用sub2ind
你可以做这样的事情(假设图像是灰度图像):

vPixelIdx = sub2ind(size(mInputImage), vRowsIdx, vColIdx); 
vPixels = mInputImage(vPixelIdx); 

我没有测试它,因为我没有访问MATLAB现在,但它应该工作。