Использование PIL и Tkinter, я пытаюсь сделать некоторые манипуляции в pixelMatrix образа как:Преобразование изображения в другие
start = Image.open("gua.jpg")
sta = start.load()
i,j = start.size
current = np.zeros((i,j,3))
for ix in range(i):
for jx in range(j):
current[ix,jx] = [elem*0.5 for elem in sta[ix,jx]]
current = np.asarray(current)
current = Image.fromarray(current, "RGB")
out = ImageTk.PhotoImage(current)
panel.configure(image = out)
panel.image = out
Но даже если я просто передать информацию от pixelMatrix на изображение для моей матрицы (current[ix,jx] = sta[ix,jx]
), мой результат случайный, что я делаю неправильно?
Спасибо!
P.S: Я могу сделать out = ImageTk.PhotoImage(start)
без проблем.
После вас do 'current = np.asarray (current)' что на самом деле выглядит 'current'? (распечатайте и опубликуйте первый бит, я знаю, что он будет действительно большой) –
, когда внутри цикла, я делаю 'print sta [ix, jx], current [ix, jx]', это вывод: '(128, 128, 120) [128. 128. 120.]' после того, как оно было получено в массив: '... [[179. 179. 177.] [174. 174. 172 .] [167. 167. 165.] ... [73. 68. 64.] [84. 70. 67.] [153. 133. 132.]] ... ' –
что вы ожидаете? Я имею в виду, что вы хотите сделать? –