Пытается найти способ эффективно сместить пиксели изображения в python. В конечном итоге вы хотите отображать результаты на экране после каждой смены. Например, пиксель в 1920-1080 становится пикселем в 1920, 1079 и 1920,1080, заполняется новым значением, в конце пикселя в 0,0 отбрасывается и заполняется пикселем от 0,1. Глядя на достижение 30fps или выше на медленном процессоре, таком как raspi 3.Эффективный способ смены пикселей изображения в python
Моя интуиция - это переместить все в 1D-массив, сдвинуть все «влево», добавить новый пиксель в конец и снова вернуться в изображение.
сырой рисунок «Z» эффект сдвига Я ищу
Вот моя наивная реализация только пиксельного смещения, который является слишком медленным:
from PIL import Image
im = Image.new("RGBA", (1920, 1080), "black") #create blank image
pix = im.load() #load image
#iterate over width and height
for x in xrange(1,1919):
pix[x,y] = pix[x+1, y] #shift x
for y in xrange(1,1079):
pix[x,y] = pix[x, y+1] #shift y
pix[1919,1079] = (255,255,255) #set new pixel white