gpt4 book ai didi

python - 连接两个 numpy 数组 channel

转载 作者:行者123 更新时间:2023-11-28 21:34:40 24 4
gpt4 key购买 nike

我有两个 numpy 数组,例如:

a = [[1,2,3],[4,5,6],[7,8,9]]
b = [[11,12,13],[14,15,16],[17,18,19]]

哪些是同一张图片的 channel 。我想尽可能以 pythonic 方式获取“已连接” channel 数组。想要的结果:

c = [[[1,11],[2,12],[3,13]],
[[4,14],[5,15],[6,16]],
[[7,17],[8,18],[9,19]]]

我试过的:我创建了一个相同大小的数组并遍历两个源数组以连接它们。

for x in range(len(a)):
for y in range(len(a[x])):
c[x][y] = [a[x][y],b[x][y]]

我需要什么:我很想找到一种更高效、模块化和 pythonic 的方式来实现它。

最佳答案

您可以在第二个轴上使用 np.stack:

>>> np.stack((a,b),axis=2)
array([[[ 1, 11],
[ 2, 12],
[ 3, 13]],

[[ 4, 14],
[ 5, 15],
[ 6, 16]],

[[ 7, 17],
[ 8, 18],
[ 9, 19]]])

检查它是否与您的 c 数组相同:

c = np.array([[[1,11],[2,12],[3,13]],
[[4,14],[5,15],[6,16]],
[[7,17],[8,18],[9,19]]])

>>> (c == np.stack((a,b),axis=2)).all()
True

关于python - 连接两个 numpy 数组 channel ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53052761/

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