我一直在尝试将图像保存到一个特定的目录中,该目录由下面的列表生成。我能够生成img.show()显示的位图图像,但当我尝试将其保存到指定目录时,它只保存最后一个图像中的一个。我搜索了各种其他类似的问题,除了在https://stackoverflow.com/a/56237732/13648455中有点帮助外,没有对我的问题增加任何帮助。我可能在代码中遗漏了一些小东西。我正在使用Jupyter笔记本运行我的代码
arrays = [[1, 1, 1, 0, 1, 1, 0, 0, 1, 0, 1, 0, 1, 1, 0, 0, 1, 0, 1, 1, 0, 0,
0, 0, 1, 0, 1, 0, 1, 0, 0, 0, 1, 0, 1, 0, 1, 1, 0, 0, 1, 0, 1, 1,
0, 0, 0, 0, 1, 0, 1, 0, 1, 0, 0, 0, 1, 0, 1, 0, 1, 1, 0, 0, 1, 0,
1, 1, 0, 0, 0, 0, 1, 0, 1, 0, 1, 0, 0, 0, 1, 0, 1, 0, 1, 1, 0, 0,
1, 0, 1, 1, 0, 0, 1, 0, 1, 1, 1, 1, 1, 1], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]]
arr = np.array(arrays)
def image_creator(image_array):
count = 0
image_array = image_array.reshape(2, 51)
img = Image.new('1', (2, 51))
pixels = img.load()
new_list = image_array.tolist()
for i in range(img.size[0]):
for j in range(img.size[1]):
pixels[i, j] = new_list[i][j]
save_dir = '{Insert Directory}'
img.show()
img.save(f'{save_dir}/Example_{count}.bmp')
count += 1
return img
x = map(image_creator, arr)
print(list(x))
发布jasonharper提到的答案版本(上面的评论)
相关问题 更多 >
编程相关推荐