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

问题描述 投票:0回答:1

我试图导入图像堆叠成一个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)
python numpy cv2 numpy-ndarray
1个回答
0
投票

根据np.dstack文档,dstack将numpy数组的元组作为参数。现在,对于每个循环,您将堆栈变量重置为具有长度为1的元组的堆栈(您当前在循环中使用的一个映像)。相反,你可能想要这样的东西:

import easygui as eg
import cv2
openfiles1 = eg.fileopenbox("Select the files to stack",  multiple=True)
pics = []
for item in openfiles1:
    pics.append(cv2.imread(item))
stack = np.dstack(tuple(pics))

这将创建要加入的数组列表(稍后将转换为不可变元组)。

© www.soinside.com 2019 - 2024. All rights reserved.