gpt4 book ai didi

python - 多个 PIL 图像合并为一个图

转载 作者:太空宇宙 更新时间:2023-11-04 04:24:19 25 4
gpt4 key购买 nike

我有 n 个格式的图像:

<PIL.JpegImagePlugin.JpegImageFile image mode=RGB size=64x64 at 0x7F555F6E3898>

所有这些都在一个列表中。我可以单独可视化每一个,但我想将它们一起可视化,一个并排地可视化,直到它变得太长然后转到下一行(例如,n/4 行,每行 4 个图像)。完成后,我也想将其保存为 jgp。

我尝试使用 matplotlib 中的子图,但它说这些值是不可散列的。

我的代码是:

from os import listdir
from os.path import isfile, join

files = [f for f in listdir(mypath) if isfile(join(mypath, f))]
files.sort()
files.sort(key = len)
im = []
for jpg in files:
im.append(Image.open(mypath+'/'+jpg))

for i in im:
image = np.asarray(i)
plt.subplot(3,np.floor(len(image)/3),image)
plt.show()

最佳答案

更新您对子图的用法,那么它应该是好的。请参阅下面的示例代码。

import matplotlib.pyplot as plt
%matplotlib inline
import numpy as np

# get sample data
from sklearn import datasets
x,y=datasets.load_digits(n_class=10, return_X_y=True)
x = x[0:100,:]
x = np.reshape(x,[100,8,8])

# plot
for i in range(x.shape[0]):
if i >= 9:
break
image = x[i,:].squeeze()
plt.subplot(3,3,i+1)
plt.imshow(image,cmap='gray',interpolation='none')

enter image description here

或者:

# https://matplotlib.org/mpl_toolkits/axes_grid/users/overview.html
from mpl_toolkits.axes_grid1 import ImageGrid
fig = plt.figure(1,(10,10))
grid = ImageGrid(fig, 111,
nrows_ncols=(2,7),
axes_pad=0.1,
)
for i in range(14):
image = x[i,:].squeeze()
grid[i].imshow(image,cmap='gray',interpolation='none')

enter image description here

关于python - 多个 PIL 图像合并为一个图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53806616/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com