from time import *
import sys
import Tkinter
from PIL import Image
import random
import math
from math import *
def bfs(image):
pixeles = image.load()
ancho,altura=image.size
for i in range(ancho):
for j in range (altura):
if pixeles[i,j]==(0,0,0):#Si es negro
r=random.randint(0,255)#Color random entre 0 y 255
g=random.randint(0,255)
b=random.randint(0,255)
pixeles = image.load()
ancho, altura = image.size
cola = []
ver = []
hor= []
cola.append((i,j))
pixeldondeinicia = pixeles[i,j]#Donde empezara
contador= 0
while len(cola) > 0:#mientras la cola tenga valores
(x, y) = cola.pop(0)#se quita de la cola
puntoactual = pixeles[x, y]#punto actual toma el valor de la cola
if puntoactual == pixeldondeinicia or puntoactual == (r,g,b):#Si es igual al pixel donde inicia o a el color
for parax in [-1, 0, 1]:#Revisar los vecinos
for paray in [-1, 0, 1]:
i, j = (x + parax, y + paray)
if i >= 0 and i < ancho and j >= 0 and j < altura:
contenido = pixeles[i, j]
if contenido == pixeldondeinicia:
pixeles[i, j] = (r,g,b)#le da el color r,g,b que tenga
ver.append(i)
hor.append(j)
contador += 1
cola.append((i, j))
image.save("imagenfFINALLL.png",\'png\')
return image
if __name__ == "__main__":
imPath = sys.argv[1]
image = Image.open(imPath)
bfs(image)