np array 將3D 陣列 10,255,255 轉 255,255,10?

 


在 Python 的 NumPy 中,可以使用 np.transpose() 方法來調整(轉置)陣列的軸順序。以下是將 3D 陣列從形狀 (10, 255, 255) 轉換為 (255, 255, 10) 的方法:


代碼範例:

import numpy as np

# 假設原始陣列形狀為 (10, 255, 255)
array = np.random.rand(10, 255, 255)  # 創建一個隨機 3D 陣列

# 轉換軸順序,將形狀從 (10, 255, 255) 變為 (255, 255, 10)
transposed_array = np.transpose(array, (1, 2, 0))

# 檢查結果
print("原始形狀:", array.shape)
print("轉置後形狀:", transposed_array.shape)

說明:

  1. np.transpose()

    • 此函數用於調整陣列軸的順序。
    • 第二個參數是軸順序的元組,(1, 2, 0) 表示:
      • 原始第 1 軸 (255) -> 新的第 0 軸
      • 原始第 2 軸 (255) -> 新的第 1 軸
      • 原始第 0 軸 (10) -> 新的第 2 軸
  2. 結果對應:

    • 原始形狀為 (10, 255, 255),轉換後變為 (255, 255, 10)

適用情境:

這種操作在處理 3D 醫學影像數據(如 MRI 或 CT 的切片)、視覺化或改變數據格式時非常常見。

如果還有其他進一步需求,可以告訴我!