Я пытаюсь отсортировать пиксели изображений в порядке значений RGB. Будучи новичком в Python, я попробовал это :
from PIL import Image
source = Image.open("source.jpg")
colors = source.getcolors(source.size[0] * source.size[1]) #maxcolor value =256, get all colors with source.size[0] * source.size[1]
pixels = []
for i, color in colors:
pixels.extend(i * [color])
pixels.sort()
new = Image.new('RGB', source.size)
new.putdata(pixels)
new.save("new.png")
. Он хорошо работает для небольших файлов размером около 40x40 пикселей. Но целью было использовать его на фотографиях с разрешением до 3000x2000, я пробовал запускать его, но через два часа конца и края не было видно. Можно ли оптимизировать код, я сделал что-то совсем не так или Python просто не подходит для такой задачи?