首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >制作ndarray数组的正确方法

制作ndarray数组的正确方法
EN

Stack Overflow用户
提问于 2021-03-07 02:09:19
回答 2查看 38关注 0票数 0

下面的代码实现了我想要实现的目标,但是使用的是python列表,效率可能非常低。请让我知道有没有办法完全用Numpy来做以下事情:

代码语言:javascript
复制
def makeImageArray(count):
    l = []
    for i in range (count):
        l.append(image)
    res = np.array(l)
    return res

其中image是形状(1200,1200,3)的数值数组。

非常感谢!

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2021-03-07 02:23:10

可以使用numpy.stack() (reference)

如果您有多个要添加到新数组中的图像,您可以使用以下命令

代码语言:javascript
复制
import numpy as np

image_0 = np.random.rand(1200,1200,3)
image_1 = np.random.rand(1200,1200,3)

stack = np.stack((image_0, image_1))
stack.shape

>>> (2, 1200, 1200, 3)

如果您只想多次堆叠一个数组

编辑

如果您想堆叠相同的图像:

代码语言:javascript
复制
image = np.random.rand(1200,1200,3)
count = 10
stack = np.stack([image for _ in range(count)])
stack.shape
>>> (10, 1200, 1200, 3)
票数 1
EN

Stack Overflow用户

发布于 2021-03-07 02:27:03

代码语言:javascript
复制
arr = np.array([image for x in range(count)])
return arr
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66509039

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档