【发布时间】:2014-08-08 09:30:26
【问题描述】:
假设我在 Matlab 中有一个从 0 到 1 的颜色条。我想知道如何找到图像中的哪些位置(像素值)对应于颜色栏中从 0.7 到 0.8 的范围?
【问题讨论】:
标签: matlab image-processing colorbar
假设我在 Matlab 中有一个从 0 到 1 的颜色条。我想知道如何找到图像中的哪些位置(像素值)对应于颜色栏中从 0.7 到 0.8 的范围?
【问题讨论】:
标签: matlab image-processing colorbar
如果您的数据从 min(data) 到 max(data) 并且您没有手动设置颜色条限制,则颜色条中的位置由以下公式计算:
colorbarpos= (p-min(data))/(max(data)-min(data))
因此
p=colorbarpos*(max(data)-min(data))+min(data)
根据@Divakar 的建议,您可能想要这个:
[r,c] = ind2sub(size(data),find(data>=0.7 & data<=0.8))
【讨论】:
data 是二维索引图像数据,也许您正在寻找这个-[r,c] = ind2sub(size(data),find(data>=0.7 & data<=0.8))。在图形窗口中的 X-Y 坐标中,这将对应于 X = c,Y = r。