我有一些图片,我想使用以下方法在 RGB 元组中提取数值:
from PIL import Image
raw_data = np.array(Image.open("./image.jpg"))
但是,我刚刚意识到这些图像没有内置 icc 配置文件。换句话说,当我使用
Image.open("./image.jpg").info.get('icc_profile','')
我没有。
根据https://github.com/python-pillow/Pillow/issues/3270,一些相机不会将色彩空间存储到 icc 配置文件中,而是将其存储到 EXif 文件中。我试图打印它的 exif.get(0xA001) 并且它确实在 sRGB 空间中。
但是,我只是想知道,当我使用 np.array(Image.open("./image.jpg"))
获取这张图片的数值时,PIL 会意识到这张图片在 sRGB 空间中并自动转换为 RGB 值吗?(似乎 np.array(Image.open("./image.jpg"))
并 np.array(Image.open("./image.jpg").convert("RGB"))
给了我相同的结果)或者我必须采用我得到的数值并做伽玛校正公式来自己从 sRGB 转换为 RGB 值?
谢谢!