Calcular el número de píxeles "negros" en una imagen (blanco y negro)

Resuelto
neji55 Mensajes publicados 3 Estado Miembro -  
 nath84150 -
Hola,
he hecho un programa en python que cuenta los píxeles "negros" de una imagen (blanco y negro), pero desafortunadamente el contador ("print i") no muestra el resultado (número de píxeles negros), aquí está mi programa, ¿cuál es el problema?

gracias por tu ayuda ^^

1 respuesta

  1. Timmydu26 Mensajes publicados 85 Estado Miembro 30
     
    ## De hecho habías inicializado tu i=0 en tus bucles for...
    ## así que para cada píxel vuelves a poner i en cero cada vez...
    ## hay que ponerlo en cero una vez antes de los bucles for y luego
    ## se incrementa cuando es necesario.
    ## además tu while es innecesario y completamente incorrecto para
    ## lo que quieres hacer aquí...
    ## De lo contrario, tu imagen está en blanco y negro, así que cárgala en escala de grises
    ## prueba mejor esto entonces:

    import cv2
    import numpy as np

    image = cv2.imread('test.jpg',0)
    #--> con el cero, obtienes una imagen en escala de grises, es decir, un solo canal de color... #así que si tu imagen contenía solo negro y blanco no cambiará

    somme_px_noir = np.sum(image == 0)
    # aquí en cálculo matricial es ultra más rápido que los bucles for...
    print somme_px_noir
    # para mostrarte que el resultado es el mismo aquí está con los bucles for...
    s=0
    for i in range(208):
    ____for j in range(304):
    ________if image[i,j] == 0:
    ____________s = s +1
    print s
    # reemplaza los _ por el mismo número de espacios
    # Cordialmente.
    ## Si tienes preguntas no dudes en preguntar...
    8
    1. neji55 Mensajes publicados 3 Estado Miembro
       
      merci bien @Timmydu26 pour ton aide, le problème est résolu ^^
      1
    2. nath84150
       
      ¡gracias!
      1