陣列大翻轉

NumPy 入門

Izzy Weber

Core Curriculum Manager, DataCamp

資料增強(Data augmentation)

一個塑膠瓶的照片

同一個塑膠瓶倒置並鏡射的照片

1 Plastic bottle photo by Lilly_M via Wikimedia Commons
NumPy 入門

翻轉陣列

 

NumPy 標誌

flipped_logo = np.flip(logo_rgb_array)
plt.imshow(flipped_logo)
plt.show()

套用 np.flip() 後的 NumPy 標誌

NumPy 入門

沿軸翻轉

flipped_rows_logo = np.flip(logo_rgb_array, axis=0)
plt.imshow(flipped_rows_logo)
plt.show()

像素列順序反轉的 NumPy 標誌

NumPy 入門

沿軸翻轉

flipped_colors_logo = np.flip(logo_rgb_array, axis=2)
plt.imshow(flipped_colors_logo)
plt.show()

紅色與藍色通道互換的 NumPy 標誌

NumPy 入門

多軸翻轉

flipped_except_colors_logo = np.flip(logo_rgb_array, axis=(0, 1))
plt.imshow(flipped_except_colors_logo)
plt.show()

第一與第二軸翻轉、第三軸不變的 NumPy 標誌;色彩與原圖相同

NumPy 入門

轉置陣列

array = np.array([[1.1, 1.2, 1.3], 
                  [2.1, 2.2, 2.3], 
                  [3.1, 3.2, 3.3], 
                  [4.1, 4.2, 4.3]])
np.flip(array)
array([[4.3, 4.2, 4.1],
       [3.3, 3.2, 3.1],
       [2.3, 2.2, 2.1],
       [1.3, 1.2, 1.1]])
array = np.array([[1.1, 1.2, 1.3], 
                  [2.1, 2.2, 2.3], 
                  [3.1, 3.2, 3.3], 
                  [4.1, 4.2, 4.3]])
np.transpose(array)
array([[1.1, 2.1, 3.1, 4.1],
       [1.2, 2.2, 3.2, 4.2],
       [1.3, 2.3, 3.3, 4.3]])
NumPy 入門

設定轉置軸順序

transposed_logo = np.transpose(logo_rgb_array, axes=(1, 0, 2))
plt.imshow(transposed_logo)
plt.show()

NumPy 標誌的列與行對調後,畫面呈左右鏡射且側轉

NumPy 入門

一起來練習吧!

NumPy 入門

Preparing Video For Download...