gpt4 book ai didi

python - 如何使用 numpy 追加 2 个具有不同尺寸和形状的 numpy 图像数组

转载 作者:太空宇宙 更新时间:2023-11-03 20:37:20 25 4
gpt4 key购买 nike

我正在制作一个输入数据集,其中将包含数千张图像,这些图像的大小不同,但 channel 数相同。我需要将这些不同的图像放入一个堆栈中。

orders = (channels, size, size)
Image sizes = (3,240,270), (3,100,170), etc

我尝试将其附加到 0 和 1 轴并也插入。

Images = append(Images, image, axis = 0)
  File "d:/Python/advanced3DFacePointDetection/train.py", line 25, in <module>
Images = np.append(Images, item, axis=0)
File "C:\Users\NIK\AppData\Roaming\Python\Python37\site-packages\numpy\lib\function_base.py", line 4694, in append
return concatenate((arr, values), axis=axis)
ValueError: all the input array dimensions except for the concatenation axis must match exactly

理想的输出形状类似于(图像数量,3)3(表示 channel 数量),之后包含不同形状的图像。

最佳答案

如果你不想调整图片大小,就选择最大的一张,然后将所有图片填充成与它相同的形状,我曾经回答过如何填充这个问题:Can we resize an image from 64x64 to 256x256 without increasing the size.

当为所有图像循环运行该脚本时,创建一个列表来保存它们的所有形状。当您想要获取原始图像时,只需在数组中的索引 x 处获取图像并在列表中形状 x ,然后按原始大小裁剪填充图像。

关于python - 如何使用 numpy 追加 2 个具有不同尺寸和形状的 numpy 图像数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57086868/

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