Sono estremamente nuovo alla libreria di scikit-image (skimage
) in Python per l'elaborazione delle immagini (avviata pochi minuti fa!). Ho usato imread
per leggere un file immagine in un numpy.ndarray
. L'array è tridimensionale dove la dimensione della terza dimensione è 3 (ovvero una per ciascuna delle componenti Rosso, Verde e Blu di un'immagine).Come estrarre il canale verde dall'immagine RGB in Python usando la libreria Scikit-Image?
rgb_image = imread("input_rgb_image.jpg")
rgb_image.shape # gives (1411L, 1411L, 3L)
ho cercato di estrarre canale verde come:
green_image = rgb_image[:,:,1]
Ma quando scrivo questa matrice immagine ad un file di output come:
imsave("green_output_image.jpg",green_image)
ottengo un'immagine che non lo fa davvero guardare SOLO verde!
Ohh. Colpa mia. Penso a quello che ho fatto creando una nuova immagine RGB con dimensioni più ridotte. Grazie per il puntatore! – Sangram
Stranamente, estrarre di nuovo solo il verde restituisce un'immagine rossa. Ecco il link dell'immagine che stavo cercando di estrarre il canale verde da: http://upload.wikimedia.org/wikipedia/commons/3/37/Fundus_photograph_of_normal_right_eye.jpg – Sangram
Ok. Quindi dovevo impostare il componente rosso a zero come: 'rgb_image [:,:, 0] = 0' e così via .... – Sangram