2013-01-16 3 views
6

Ho un 3D NumPy serie di un'immagine in grigio, che sembra qualcosa di simile:NumPy 3D-immagine array 2D

[[[120,120,120],[67,67,67]]...] 

Ovviamente ho tutte RG e B lo stesso, perché si tratta di una immagine grigia - questo è ridondante. Voglio ottenere un nuovo array 2D che assomiglia a:

[[120,67]...] 

Il che significa prendere matrice di ogni pixel [x, x, x] per solo il valore x

Come posso fare questo?

risposta

12

Se la forma del vostro ndarray è (M, N, 3), allora si può ottenere un (M, N) immagine in scala di grigi come questo:

>>> gray = img[:,:,0]