如何在matlab中修改图像的动态范围(灰度)在[-3000 15000]之间?

时间:2012-01-13 07:56:48

标签: matlab

如何在matlab中修改图像的动态范围(灰度[-30000 30000])在[-3000 15000]之间?

2 个答案:

答案 0 :(得分:2)

您可以使用imagesc的第二个参数来执行此操作:

imagesc(rand(10),[-3000 15000])
colormap('gray')

答案 1 :(得分:1)

简单插值和一些向量乘法

x1 = img[i,j]
O1 = -30000 // min range of values in img
O2 = 30000  // max range of values in img
T1 = -3000  // min range of target value
T2 = 15000  // max range of target value

x2 = ((x1 - O1) * (T2 - T1)) / (O2 - O1) // Value in new range

使用上面的等式并使用矢量化在矩阵上进行两次传递,您可以转换值。我把那部分留给你了。