我在2048x2048数组中有一些要转换为图像的数据。
import numpy as np
from PIL import Image
path = 'E:\\petra_2018_backup\\final\\raw\data\zn_2_run\\'
file = 'Zn_2_Pos1-01537.tif'
im = Image.open(path+file)
a = np.array(im)
img = Image.frombytes('CMYK', (2048, 2048), a) # pass in the bytestring
img.save('pic.pdf')
img.show()
此结果非常暗,并且混合了绿色和蓝色。我要提到的是,附带的图片是结果的屏幕转储,因为附带的结果图片很大。
如果人们可以建议一种方法来压缩生成的图像,这也将很有用。
答案 0 :(得分:0)
我根本找不到使用枕头的解决方案。所以我开始使用scikit。
代码如下:
import numpy as np
from skimage import io
import matplotlib.pyplot as plt
path = 'E:\\petra_2018_backup\\final\\raw\data\zn_2_run\\'
file = 'Zn_2_Pos1-01537.tif'
im =io.imread(path+file,as_gray=True)
b = np.array([im],dtype=np.uint16 )
b[b<150]=150 #Modification to array not included in original code
b[b>6000]=6000 #Modification to array not included in original code
c=b.squeeze()
fig = plt.figure()
ax = plt.subplot(111)
ax = io.imshow(c)
fig.savefig('result_figure.png',dpi=320)