我有一個3D Numpy陣列[[[242,122,123],[111,30,12]]]
我想爲它創建一個遮罩。對於第一個數組,它將是條件242> 122 + 123。有沒有辦法做到這一點與numpy的條件?類似於mask[a > b+c] = 1
其中a,b,c是數組中的值。在Numpy中製作3D陣列的2D面具
-1
A
回答
0
這只是一個猜測(因爲你想要什麼)
In [134]: M=np.array([[[242,122,123],[111,30,12]]])
In [135]: M.shape
Out[135]: (1, 2, 3)
In [136]: M[:,:,0]>(M[:,:,1]+M[:,:,2])
Out[136]: array([[False, True]], dtype=bool)
In [137]: M[_]
Out[137]: array([[111, 30, 12]])
+0
這使我想到需要做什麼。 結果爲:「mask [ (image [:,:,2]/255.0> ar *(image [:, 1]/255.0 + image [:,:,0]/255.0))& (圖像[::[:2]/255.0 -np.maximum(圖像[:,:1],圖像[:,0])/ 255.0)> (br *(np.maximum :,],1],image [:,:,0]) - np.minimum(image [:,:1],image [:, 0]))/ 255.0) ) ] = 255「 。這個洞穴我的程序速度提升28.5倍:D –
相關問題
- 1. 將2D numpy陣列有效地複製爲3D numpy陣列的通道?
- 2. 快速計算隨機3D numpy陣列從2D numpy陣列
- 3. 將2D numpy陣列重組爲3D
- 4. 重塑3D numpy的陣列到2D陣列
- 5. 使用提取從3D numpy的陣列1D陣列2D布爾
- 6. 使用2D矩陣作爲numpy 3D矩陣的索引?
- 7. 從3D陣列中減去2D陣列
- 8. 從2D陣列numpy的
- 9. 排名2D numpy的陣列
- 10. 使用3D numpy的陣列
- 11. 2D蟒蛇名單2D numpy的陣列
- 12. numpy的3D到2D變換基於二維掩模陣列
- 13. 2D到3D numpy陣列的高效轉換
- 14. 2D和3D numpy陣列之間的點積
- 15. 從2D陣列生成3D陣列
- 16. CUDA 2D或3D陣列
- 17. Numpy修改2D陣列
- 18. 轉移3D numpy陣列
- 19. numpy的點積(3D倍2D)
- 20. 如何在LC3中製作2D陣列
- 21. 如何在BASH中製作3D陣列?
- 22. 獲取在2D numpy的陣列
- 23. 如何在3D numpy的陣列
- 24. Numpy 3D陣列矩陣乘法函數
- 25. 包裝2D陣列中的子陣列的高效Numpy採樣
- 26. 在Python中製作2D或3D字典
- 27. 在更大的3D陣列內存儲2D陣列
- 28. 的Python numpy的2D陣列最小值
- 29. 追加Python的3D numpy的陣列
- 30. Numpy重塑1d到2d陣列,1列
什麼是預期的輸出? – Divakar
@Divakar在這種情況下掩碼應該是[[0,1]],因爲242> 122 + 123是假的,但是111> 30 + 12是真的。如果第一個數組是M. 那麼看來mask [M [:,:0]> M [:,1] + M [:,:2]] = 1。但是,如果我想添加額外的條件,我使用和或做我做這樣的面具[cond1,cond2] = 1或maks [cond1和cond2] = 1? –