导入 7 张 .jpeg 图片列表(大小相同)并将它们堆叠到 NxMx7 numpy 数组中

我正在尝试将图像导入到一个 numpy 数组中。我有这样的东西,但没有给我我需要的东西,似乎无法在网上找到答案。


import easygui as eg

import cv2

openfiles1 = eg.fileopenbox("Select the files to stack",  multiple=True)

stack = np.array([])

for item in openfiles1:

    pic = cv2.imread(item)

    stack =np.dstack(pic)


白衣非少年
浏览 215回答 1
1回答

天涯尽头无女友

根据np.dstack文档,dstack将一个 numpy 数组元组作为参数。现在,在每个循环中,您都将堆栈变量重置为具有长度为 1 的元组的堆栈(您当前在循环中的图像)。相反,你可能想要这样的东西:import easygui as egimport cv2openfiles1 = eg.fileopenbox("Select the files to stack",  multiple=True)pics = []for item in openfiles1:    pics.append(cv2.imread(item))stack = np.dstack(tuple(pics))这将创建一个您想要加入的数组的列表(稍后您将其变成一个不可变的元组)。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python