【发布时间】:2016-09-24 14:41:58
【问题描述】:
我对 matplotlib 如何处理 fp32 像素强度感到困惑。据我了解,它会重新调整图像的最大值和最小值之间的值。但是,当我尝试通过使用 imshow() 将像素强度重新缩放到 [-1,1](通过 im*2-1)来查看最初在 [0,1] 中的图像时,图像的颜色会有所不同。如何重新缩放以使图像没有差异?
PS:我需要将这些值作为程序的一部分来输出 [-1,1]
以下是用于此的代码:
img = np.float32(misc.face(gray=False))
fig,ax = plt.subplots(1,2)
img = img/255 # Convert to 0,1 range
print (np.max(img), np.min(img))
img0 = ax[0].imshow(img)
plt.colorbar(img0,ax=ax[0])
print (np.max(2*img-1), np.min(2*img-1))
img1 = ax[1].imshow(2*img-1) # Convert to -1,1 range
plt.colorbar(img1,ax=ax[1])
plt.show()
最大、最小输出为:
(1.0, 0.0)
(1.0, -1.0)
【问题讨论】:
标签: python image-processing matplotlib