Si además quieres enviarnos un Artículo para el Blog y redes sociales, pulsa el siguiente botón:
Como ya estoy de medio vacaciones, pero a la vez no tengo demasiados medios técnicos, me dedico a recopilar datos y a procesarlos como puedo en mi cabecilla, para poder hacer cosas en verano.
Como sabeis estoy con el tema del Bluetooth... a falta de hacer algunas pruebas con otro ordenador, el tema del TouchPad... necesito más medios que mi portatil... y... ahora viene el proyecto guapi guapi... Visión artificial con una simple webcam, entonces aqui vienen mis preguntas y aclaraciones:
·Sé que es posible, porque si no me equivoco Golfus Hispanicus lo emplea, asi como otros proyectos como los de esta chiquita tan maja: Mavis
·¿Cómo se empieza en este mundito?
·¿Qué librerías usais para obtener imágenes de la webcam?
·¿Qué librerías usais para procesar la imagen?
·¿Es imprescindible programar el sistema en C?
·¿Tenemos algun proyecto de ejemplo?
Yo estoy comenzando con la librería WebCam.dll, pero me temo que es muy incompleta, y además consume demasiados recursos comparándolo con el proyecto de Mavis. Aun así, tengo un programa hecho que lo único que tiene es un botón, con el que al pulsarlo, se copia la imágen de la webcam en un control PictureBox... me imagino que es un primer paso en este mundo, y que me quedan miles de caminos que recorrer, pero esta librería no sé si da mucho más de si, de modo que me gustaría que alguno que haya trabajado con esto me eche un cablecillo.
Seguiré informando. Muchas gracias por la ayuda.
Ángel
Ya he visto mi cámara aunque no he podido ponerla en marcha (maldito trabajo), es como la del explorador de acicuecalo.
Ranganok, ¿cualquier camara de este tipo lee los infrarrojos?. si es asi flipo con la de cosas que se pueden hacer con las camaras estas diminutas
Mif, hemos podido ver aunque oscuro el primer choque "in situ" de tu tupperbot.
ya empezaré yo la semana que viene.... ya vereis... jejeje
furri
Si es que no me puedo estar quietooooooooooo
Antes de irme no podia dejar de imitar a Mif con un video de TarriBot...
http://www.youtube.com/watch?v=yVrbusqOSrI
furri.
Hola
Volviendo al tema de la programación, he seguido este hilo por encima y me parece muy interesante el tema de la visión artificial, ya que estoy liadillo en un proyecto que usa la misma.
Solo quería contribuir con unos pequeños comentarios.
El primer lugar creo que el código hay que desarrollarlo en C porque es más rápido y eficiente.
El uso de funciones del tipo GetPixel y SetPixel son muy lentas, y más cuando hay que usarlas miles de veces dentro de un bucle.
Yo lo que hago es que paso la imagen capturada a un buffer de memoria y accedo al mismo mediante punteros (el C permite hacerlo muy fácil). En un programa de tratamiento de imágenes en tiempo real obtuve un rendimiento de 5x con respecto al uso de funciones del Api de Windows.
(de algo sirvió mi experiencia como programador de videojuegos de hace algunos años 🙄 )
La resolución también es importante y obtengo buenos resultados a 320*240 (614.400 bytes por imagen) frente a por ejemplo 640*480 (2.457.600 bytes por frame) siempre que sea preferible la velocidad a la calidad.
En cuanto a las cámaras, si la capturadora usb es mala obtendremos la misma o peor velocidad que una webcam medianilla. Las mejores son las Pinnacle que van por usb 2.0 como la DVC100 de unos 60eur.
Animo y felicidades
¿cualquier camara de este tipo lee los infrarrojos?
furri
Furri, todos los sensores CCD son sensibles a la luz en el espectro infra-rojo, lo que ocurre es que en la mayoría de los casos y para evitar saturaciones de luminosidad en situaciones de luz ambiental diurna, y dado que el astro rey está sobrante de radiación IR, la gran mayoría de cámaras CCD y muchas CMOS, están equipadas con lentes que incluyen un tipo de filtro de IR para evitar esos efectos perjudiciales. En muchas cámaras web, ese filtro es simplemente un plástico con una especie de tintado azul o rosado, sencillo de retirar, para conseguir que sean sensibles a ese tipo de luz y en otras cámaras es la propia lente la que está tratada con una capa para reflejar los IR. En ese caso, la única solución consiste en aplicar un "pulido" con algún producto para tal efecto que elimine la capa de filtraje.
...El uso de funciones del tipo GetPixel y SetPixel son muy lentas, y más cuando hay que usarlas miles de veces dentro de un bucle.
Yo lo que hago es que paso la imagen capturada a un buffer de memoria y accedo al mismo mediante punteros (el C permite hacerlo muy fácil)....
Hola eventronic, bienvenido al hilo, nos puede venir muy bien alguien que ya ha tratado imagenes en C, eso de tratar la imagen en un buffer de memoria mediante punteros suena bien pero mi nivel de C no llega a tanto, si te puedes poner un ejemplillo pues mejor.
Furri, todos los sensores CCD son sensibles a la luz en el espectro infra-rojo, lo que ocurre.....
Gracias acicuecalo, lo he comprobado apuntando directamente el mando de la tele a la cámara... efectivamente se vé el led parpadeando... no lo sabia, gracias.
furri.


