【发布时间】:2021-05-14 22:04:27
【问题描述】:
最近,我一直在尝试使用 Pillow 的 Image.open() 将一些灰度图像加载到我的 Python 程序中。但是,我发现图像失真了,并且所有的值都出现了极化。
这是Mac预览生成的图片:
而且,这是Image.open()函数生成的图像:
我的代码如下:
from PIL import Image, ImageOps
from pathlib import Path
import matplotlib.pyplot as plt
mod_path2 = Path("/Volumes/Sans/ROI/Images/sub-S03046_ses-E06791_run-1_bp-chest_vp-pa_dx.png")
b = Image.open(str(mod_path2))
plt.imshow(b)
plt.show()
而且,预览图的特点是:
我认为这可能与图像的色彩空间或缺少 Alpha 通道有关,因为正确加载了两者的图像。
【问题讨论】:
-
请分享您的 "不开心" 图片 - 最好通过 Dropbox 或 Google Drive,以免 imgur 更改它。另请显示您的实际、完整的最小代码。
-
@MarkSetchell。感谢您的回复。就我个人而言,我发现我电脑上的 imgur 和图像之间几乎没有什么区别。我也更新了代码。谢谢!
-
显然 imgur 图片不是
3050 x 2539。此外,由于您正在处理 CT 数据,因此您可能有一些带有任何值的float格式,并且由于将float值裁剪到[0.0 ... 1.0]范围内而得到一些损坏的输出。这就是 Mark 特意要求提供原始图片的原因。 -
@MarkSetchell 这是图片的链接:drive.google.com/drive/folders/…。
-
@HansHirse 谢谢,我已经分享了真实的图像。另外,如果剪辑真的发生了,有没有办法解决它?
标签: python image matplotlib python-imaging-library