我有32×32個灰度級圖像的堆疊在多維數組masks
如下:如何從多維數組中刪除總和值等於0的元素?
(2560, 1, 32, 32)
一些這些圖像中的包含非零值,如果我總結它們的值。
我想從多維數組中刪除其值總和等於零的元素。
這是我如何接近:
for idx in range(masks.shape[0]):
if np.sum(masks[idx]) == 0:
masks = np.delete(masks, idx)
第一次迭代之後,其中一個零和元素被發現,從形狀masks
變化
(2560, 1, 32, 32)
到
(2621439,)
爲什麼會發生這種情況,我該如何解決?我想要的只是減少第一維度,例如
(2120, 1, 32, 32)
檢查'np.delete'文檔。如果你沒有指定'axis','delete'將在扁平數組上運行。嘗試'掩碼= np.delete(掩碼,idx,軸= 0)'。 –
刪除所有零元素後你打算看到什麼? –
@RobertValencia有點像'(2120,1,32,32)' – pepe