我在尝试将大型科学图像 (7 Mb) 16 位 PNG 图像转换为 JPG 以压缩它并检查 Python 中的任何最终工件时遇到了一个大问题。原始图像可以在以下位置找到: https : //postimg.cc/p5PQG8ry 在这里阅读其他答案 我尝试过 Pillow 和 OpenCV 没有任何成功,我唯一得到的是一张白纸。我做错了什么?注释行是使用 Python 读取 16 位 PNG 图像文件的尝试,但似乎不适用于我生成数据类型错误。
import numpy as np
from PIL import Image
import cv2
image = cv2.imread('terzafoto.png', -cv2.IMREAD_ANYDEPTH)
cv2.imwrite('terza.jpg', image)
im = Image.open('terzafoto.png').convert('RGB')
im.save('terzafoto.jpg', format='JPEG', quality=100)
#im = Image.fromarray(np.array(Image.open('terzafoto.jpg')).astype("uint16")).convert('RGB')