python tkinter: como trabalhar com pixels?

usando o google (e este site) eu tenho visto algumas perguntas semelhantes, mas o meu problema ainda está aqui:

"Eu quero desenhar uma imagem (sem ler um arquivo), sendo capaz de manipular a cor de cada pixel naquela imagem."

Eu vi outra pergunta onde foi sugerido para fazer algo assim:

from tkinter import *
A=Tk()
B=Canvas(A)
B.place(x=0,y=0,height=256,width=256)
for a in range(256):
    for b in range(256):
        B.create_line(a,b,a+1,b+1,fill=pyList[a][b])#where pyList is a matrix of hexadecimal strings
A.geometry("256x256")
mainloop()

na verdade, isso responde à minha pergunta, mas ... é extremamente lento. O que devo fazer com uma imagem de 1920x1080? esperar pela minha morte?

por isso estou pedindo algo para executar o mesmo que o código acima, mas de uma maneira mais rápida

Eu encontrei uma maneira de melhorar o método sugerido pelo jsbueno, é explicado na página ligada:

Por que o Photoimage está lento?