1

Как использовать агломеративную кластеризацию для квантования цветов в изображении. Для этого я извлекаю вектор RGB для одиночного пикселя, и этот процесс требуется для всех позиций. Так снова, как извлечь все позиции rgb векторов.Цветная карта в python

im=Image.open('d:\eye.jpg') 
r,g,b = im.convert('RGB') 
r,g,b = rgb1.getpixel((1,1)) 
print r,g,b 

Этот код только извлекает значение вектора rgb только для одного пикселя за раз. Как извлечь все значения одновременно.

ответ

0

Вы можете использовать numpy.array и конвертировать весь Image в numpy.ndarray объекта:

import numpy as np 
a = np.array(Image.open('d:\eye.jpg')).swapaxes(0,1) 

Где a[i,j] это положение в этом массиве, который даст вам тот же результат, как rgb1.getpixel((i,j)) (с той разницей, что последний возвращается кортеж).

Смежные вопросы