Matlab:列式图像

时间:2013-03-27 17:31:18

标签: matlab visualization

我有一个 m -by- n 矩阵,其中 n 很大。我想通过使用每列中的值范围来可视化它,即我想在一个图像中可视化整个矩阵,但每列将具有其自己的范围。这就像应用列式图像c并最终连接每一列。

有一种有效的方法吗?

1 个答案:

答案 0 :(得分:2)

我认为在使用imagesc之前,列式规范化应该可以解决问题。

假设您有一个名为original的图像。

original = rand(10,5);

首先获取每列的范围:

myMax = max(original);
myMin = min(original);
myDiff = myMax-myMin;

然后我们将其降低到适当的水平

newimage = bsxfun(@minus,original,myMin);

最后,我们将其重新调整到适当的比例:

newimage = bsxfun(@rdivide,newimage ,myMax - myMin);

现在您可以将imagesc应用到newimage,我认为这样可以满足您的需求。

请注意,如果最大值和最小值可以相等,则可能需要添加另一个步骤。