def boton_hoyos():
    #A grises
    imagen2 = cambiar_agrises(path_imagen_original)
    imagen = cambiar_agrises(path_imagen_original)
    imagen.save("paso_1.jpg")
    
    umbral_valor = 0.2
    imagen = cambiar_umbral(imagen.convert("RGB"), umbral_valor)
    imagen.save("paso_2.jpg")
    
    pixeles_img = imagen.load()
    x, y = imagen.size
    pixeles = numpy.zeros(x*y).reshape((x, y))
    
    for a in range(x):
        for b in range(y):
            pixeles[a, b] = pixeles_img[a, b][0]

    col, fil = pixeles.shape

    suma_filas = []
    suma_col = []
    dibuja = ImageDraw.Draw(imagen2)

    for i in range(col):
        suma_col.append(pixeles[i].sum())

    for i in range(fil):
        suma_filas.append(pixeles[:, i].sum())

    maxcol, mincol, prueba_col = peakdet(suma_col, .1)
    maxfil, minfil, prueba_fil = peakdet(suma_filas, .1)

    coor_filas = []
    coor_col = []

    for i in range(len(suma_filas)):
        y = i
        PixMax = 255*col
        x = (((suma_filas[i]) * col) / PixMax)
        #print "(%s, %s)" %(str(x), str(y))
        dibuja.ellipse((x-2, y-2, x+2, y+2), fill="blue")
        if i in prueba_fil:
            coor_filas.append(y)
            dibuja.line((x, y, 0, y), fill="green")
            #dibuja.ellipse((x-4, y-4, x+4, y+4), fill="red")

    for i in range(len(suma_col)):
        x = i
        PixMax = 255*fil
        y = (((suma_col[i]) * fil) / PixMax)
        #print "(%s, %s)" %(str(x), str(y))
        dibuja.ellipse((x-2, y-2, x+2, y+2), fill="green")
        if i in prueba_col:
            coor_col.append(x)
            dibuja.line((x, y, x, 0), fill="red")
            #dibuja.ellipse((x-4, y-4, x+4, y+4), fill="red")

    imagen2.save("paso_algo.jpg")
    if coor_col < coor_filas:
        tam = len(coor_filas)
    else:
        tam = len(coor_col)

    coor_filas = coor_filas[::-1]
    #coor_col = coor_col[::-1]
    centros = []
    imagen_copia = imagen
    for i in range(tam):
        x = coor_col[i]
        y = coor_filas[i]
        print "(%s, %s)" %(str(x), str(y))
        print pixeles[x, y]
        color = (randint(170,230), randint(0,190), 255)
        if pixeles[x, y] == 0.0:
            imagen_copia, masa, c = BFS(imagen_copia.convert("RGB"), (x, y), color)
            x_suma = 0
            y_suma = 0
            for i in range(len(masa)):
                x_suma = x_suma + masa[i][0]
                y_suma = y_suma + masa[i][1]
                x_centro = x_suma/len(masa)
                y_centro = y_suma/len(masa)
            centros.append((x_centro, y_centro))
        #dibuja.ellipse((x-1, y-1, x+1, y+1), fill="yellow")

    imagen_copia.save("paso_3.jpg")
    label.destroy()
    poner_imagen(imagen2)

    global frame
    y = frame.winfo_height()
    
    imagen4 = cambiar_agrises(path_imagen_original)
    dibuja3 = ImageDraw.Draw(imagen4)
    for i in range(len(centros)):
        label_fig = Label(text = str(i))
        label_fig.place(x = centros[i][0],  y = centros[i][1] + y)
        #dibuja3.ellipse((centros[i][0]-2, centros[i][1]-2, centros[i][0]+2, centros[i][1]+2), fill="yellow")
        dibuja3.line((x, y, x, 0), fill="red")
    imagen4.save("paso_4.jpg")