我有一個 numpy 陣列串列,其中每個陣列的等級相同,例如每個陣列的(H, W, C).
假設我擁有的串列有 12 個這樣的陣列,例如
my_list = [A, B, C, D, E, F, G, H, I, J, K, L]
我想要的是給定一個網格大小(在網格下方的示例中,網格為 3x4),創建一個具有相同秩的每個陣列的單個矩陣,將第一個陣列放在左上角,最后一個陣列放在右下角有序方式,例如
[A, B, C, D,
E, F, G, H,
I, J, K, L]
這只是一個偽結果,因為在這種情況下結果應該是形狀為 的矩陣(H*3, W*4, C)。上面的示例僅用于位置說明。
如何使用 numpy 實作這一目標?
uj5u.com熱心網友回復:
import numpy as np
h = 7
w = 5
c = 10
grid = 3*4
##Creating sample data for list
a = np.random.rand(grid,h,w,c)
my_list = list(a)
####
my_array = np.array(my_list) ## shape (grid,h,w,c)
my_array = my_array.reshape(3,4,h,w,c)
my_array = my_array.transpose(0,2,1,3,4)
your_req_array = my_array.reshape(3*h,4*w,c)
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/322031.html
