簡體   English   中英

在Python中反轉3D數組

[英]Reverse a 3d array in python

我想知道是否有一種方法可以反轉3d numpy數組? 像在1d情況下一樣,我們可以從[1 2 3]轉到[3 2 1]。 3d有類似的東西嗎?

謝謝

您是說要沿特定軸反轉嗎?

例如,如果我們有一個彩色圖像,其大小為height x width x 3 ,其中最后一個軸是紅色,綠色,藍色(RGB)像素,並且我們想將其轉換為藍色,綠色,紅色(BGR):

image_bgr = image[:, :, ::-1]

如果您願意,甚至可以將其寫為:

image_bgr = image[..., ::-1]

作為更完整的示例,請考慮以下事項:

import numpy as np

# Some data...
x = np.arange(3 * 4 * 5).reshape(5, 4, 3)

print x[0,0,:]

# Reverse the last axis
y = x[:, :, ::-1]

print y[0,0,:]

但是,通常,您可以使用它來反轉任何特定的軸。 例如,您可以輕松完成以下操作:

y = x[:, ::-1, :]

反轉第二個軸。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM