Visión por computador

En estos estoy terminando un pequeño proyecto de visión por computador. Se trata de un programa que reconoce cosas, ya sea círculos por la pantalla o mi mano.

Por ejemplo aquí el programa está reconociendo con éxito un circulo dibujado a mano en la pizarra y la forma redonda del objetivo. Sin embargo solamente en ocasiones reconoce correctamente los dos cirulos pequeños.

Circles recognition

Aquí por ejemplo el programa está delimitando los bordes de mi mano. Esta primera versión tiene en cuenta diferencias de intensidad, pero creo que funcionará mucho mejor cuando lo cambie a diferencia cromática.

Computer vision

28 Responses to “Visión por computador”

  1. Aprendiz de titiritero dice:

    Eso es lo que teniamos que haber hecho en la asignatura de Ginés, pero reconociendo caras. Si fuera para allá Ginés, sería como un dios en la universidad noroguense.
    Por cierto, esa camiseta es la del Sicarm. La he reconocido.

  2. Alfredo dice:

    Eso no lo dudo. En cuanto a lo que tendríamos que haber hecho… se podría decir que todo lo que hicimos tampoco estuvo mal.

    Esta camiseta que nos dieron en el Sicarm me trae viejos recuerdos.

  3. Titiritero dice:

    Vaya, vaya, vaya, vaya. A mi me ha llamado la atención es que todo ese proyecto lo estas haciendo en linux con ipl y openCV y en eclipse según veo en la imagen, además de muchos corrupt jpeg data, ¿no te debería de llamarte la atención tanta corrupción?

    Mi aprendiz de titiritero idolatra a Gines, pero esto de noruega me gusta más: sin windows y sin c++ builder

  4. Alfredo dice:

    Que va, todos esos mensajes me suelen salir al principio porque la web cam todavia no esta inicializada cuando empiezo a capturar imagenes, pero despues de 2 segundos todo va bien. A lo mejor es que tu estas obsesionado con la corrupcion por algo relacionado con cierto alcalde.

    En cuanto a lo de noruega… tampoco te confundas. Esto es un proyecto de iniciativa propia. He sido yo el que he decidido usar linux con eclipse OpenCV etc.

  5. Por una vez no te estaba criticando. Al que criticaba era a Gines. Me parece una maravilla tu elección que has hecho.

  6. Titiritero dice:

    El del comentario de antes era del gran titiritero, es que lo he escrito en el amd64 de juan que por cierto tendrá menos rendimiento pero es más robusto y no se quema por tener un 10% más de rendimiento.

  7. Alfredo dice:

    Hombre, Titiritero, seamos serios, tu un portatil lo quieres con un procesador de uno de sobremesa? un rendimiento equiparable a los de la NASA, total para que? para saludar por el messenger y poner comentarios. En ese aspecto me temo que tanto el aprendiz como el ingrato metieron la pata.

    No empieces a poner comentarios con los nombres de otras personas que luego los ingratos se hacen un lio. Por esta vez te lo cambio y te lo pongo bien.

  8. El Miguel dice:

    como mola tio, mi práctica de CV en cambio fue la práctica mínima, reconocimiento de figuras simples pasados por ficheros .png, si fue una chapuza y me valió el A, a tí te pondrán un A++++++++

  9. Titiritero dice:

    Esto se desvía del tema como de costumbre. Lo único que te digo es que me gusta un portátil que no se quede frito como tu antiguo portátil, solo eso. ¿Para que más rendimiento si al año está echando humo?

  10. Alfredo dice:

    Oye, que el portatil aun funciona, y sigue teniendo un buen rendimiento. Mi hermana lo usa y todo.

  11. Titiritero dice:

    Pero por dios, es que no sabes que yo todavía no he pegado el estirón y soy muy infantil. No discutas de esa manera conmigo. Y esfuérzate en darle el ĺtimo empujón a tus estudios norueguiles. Dale a tu blog unas vacaciones como yo hago de vez en cuando con lanxarxa en tiempos de Poncio Pilatos.

  12. Alfredo dice:

    ya, pero de vez en cuando puedo dedicarle 5 minutos

  13. Nidi dice:

    Hola:
    Me parece muy interesante tu aplicacion, en que lenguaje de programacion lo estas haciendo y hw ocupaste¿??
    Saludos

  14. Alfredo dice:

    Hardware: Acer Aspire 5720 con webcam integrada
    Sistema operativo: Ubuntu 8.04
    Entorno de desarrollo: Eclipse (CDT)
    Lenguaje: C++
    Librerias: OpenCV

    Espero que te sea de utilidad y que consigas desarrollar algo interesante.

  15. Titiritero dice:

    ¿Para openCV necesitas la librería IPL?

    Que por cierto para algunas cosas las funciones IPL son mejores o no están en openCV; antes ahora no se.

  16. Alfredo dice:

    Realmente la librería IPL no es necesaria, aunque si está presente y OpenCV la detecta, la utilizará para realizar los cálculos más rapidamente.

  17. Martin dice:

    Hola, acabo de empezar a trabajar en linux y actualmente estoy tomando una clase de visón por computadora, mi pregunta es que programas utilizas para hacerlo desde linux y si tienes un tutorial o algo para iniciarme y trabajar todo desde ubuntu. actualmente utilizo matlab para el procesamiento de imágenes.

  18. Alfredo dice:

    Lamentablemente no dispongo de ningún tutorial. El punto clave de todo el desarrollo es la librería OpenCV, y en cuanto al entorno puedes elegir el que más te guste. Lo único que tienes que hacer es incluir las librerias de OpenCV en el proyecto.
    Sin embargo, si usas Matlab no necesitas nada de esto, ya que el propio Matlab incluye las librerías de procesamiento de imagenes.

    Mucha suerte y gracias por comentar.

  19. Silvia dice:

    Buenos días, en primer lugar enhorabuena por el blog porque resulta muy interesante.

    Os escribo porque he tenido un problema con la cam de mi portátil, también trabajo con OpenCV y OpenCvdotNet. Resulta que tanto programando en C++ como en C# me muestra la ventana de la captura en negro… Tengo hechos los programas en mi sobremesa con una webcam conectada por USB y si que funcionan. Pero con la integrada del portatil no hay forma y lo intenté en el portátil con la USB y obtengo el mismo resultado: ventana en negro.

    Habéis experimentado este problema???

    Espero vuestra respuesta.

    Gracias.

  20. Alfredo dice:

    No estoy muy seguro. Es posible que no le de tiempo a imprimir la imagen si el retardo que has puesto entre capturas es demasiado bajo (por lo menos ese fue el problema que mas tiempo me llevó a mi resolver). En el bucle donde realizas las capturas y muestras por pantalla el resultado tienes que tener una instrucción como:

    if(cvWaitKey(10) & 255) == 27) …;

    para salir del programa si la tecla pulsada es escape (27) o si no espera durante 10 milisegundos.

    Prueba a ir variando el valor del parametro de cvWaitKey. Espero que te funcione, pero tanto si te funciona como si no, coméntalo.

  21. Daili dice:

    hola alfredo, me llama mucho la atencion tu proyecto y veo que has utilizado software libre…
    Ahora mismo yo estoy inmersa en un pequeño proyecto parecido al tuyo, te parece si intercambiamos ideas. Escribeme.. Saludos

  22. Alfredo dice:

    Hola Daili,

    El servidor me devuelve los correos con un error. ¿Has escrito tu direccion bien?

  23. Titiritero dice:

    ¿Cómo? A Daili le devuelves los correos y a mi no. Ingrato eres, eres, eres un *********, jajajajajajajajajaja :D :D :D :D :D.

  24. Alfredo dice:

    A ti también te los devuelvo, incluso a veces, cuando escribes algún post serio hasta te comento.

  25. Krok dice:

    Hola saludos, como te puedo contactar para una consulta de tu programa

  26. yely dice:

    hola disculpa yo estoy tratando de hacer un proyecto para niños que trata sobre pintar.Bueno la cosa es que no puedo pillar la libreria openCV solo pillo el exe y la verdad no se como utilizarlo.No se lo instalo pero no pillo la libreria o como la utilizo yo pense que era una libreria no un exe no se como utilizarla si me podrias decir si utilizarla como exe como lo adjunto a mi programa o donde puedo conseguir la libreria bueno gracias de antemano saludos atte yely

  27. yely dice:

    hola disculpa ya pille la libreria de openCV2.0 la cosa es que la instale porque venia en un exe y me puso un mundo de carpetas con librerias adentro la verdad soy algo principiante y no se como utilizarla cuales son las mas importantes solo quiero capturar imagen de la camara y que exame un color o una forma bueno te lo agradeceria si me avisas ok..

  28. Sergio dice:

    Hola, estoy en un proyecto similar , que corre en pcduino imagen ubuntu y tengo funcionando opencv me permite deterctar circulo pero no me doy cuenta como fijar el radio y que solo me detecte un sólo circulo , que en caso de encontrar dos circulos de radios similares que salga algun mensaje, podrás darme una ayuda , saludos, espero tu respuesta.

Leave a Reply


3 + 2 =