我正在尝试使用imread()
和row
数字的向量索引矩阵(使用column
读取的图像)。
map
是使用imread()
读取的图片,rows
和columns
是1维索引向量。
但当我map(rows, columns)
时,它返回一个二维矩阵,我假设它使用rows
和columns
的每一个排列来索引map
。< / p>
如何使用map
处的每个对应元素索引(rows,columns)
?
我相信我所寻找的答案相当于diag( map(rows,columns )
,但我认为它的效率有点低。
答案 0 :(得分:0)
如果我找到你想要的就是提取一个像素矢量,其中每个像素是行和列索引的组合。
如果我找对你,那么使用sub2ind
的方法就是这样
你可以这样做(假设图像是灰度图像):
vPixelIdx = sub2ind(size(mInputImage), vRowsIdx, vColIdx);
vPixels = mInputImage(vPixelIdx);
我没有测试它,因为我现在无法访问MATLAB,但它应该可以工作。