Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- 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)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement