Detectar movimiento del iris

Imagen de marcelo39
0 puntos

Hola!

Estoy empezando a investigar para desarrollar una aplicación que me permita manejar el mouse con el movimiento de los ojos capturando la imagen del rostro con una webcam.

Para esto tengo dos tareas:

-Detectar donde estan los ojos en una imagen del rostro. 

-Detectar el movimiento del iris una vez que tengo la imagen del rostro.

Alguno tiene conocimiento que herramientas investigar? o algun link que me pueda servir.

Lo unico que pude leer hasta ahora es que se puede usar opencv para detectar el rostro y mathlab para el iris...

Alguien del foro me puede asesorar o recomendar otras herramientas?

 

desde ya, muchas gracias por cualquier ayuda.

Marcelo 

 

Imagen de cerilet
+1
0
-1

Yo he utilizado la libreria OpenCV pero muy poco, hice un par de aplicaciones para un trabajo de la universidad y como venian examenes de junio ya no pude jugar mas.

El procesamiento de imagenes es muy interesante y a la vez complicado. Me costo bastante hacer funcionar la libreria y eso que lo hice con windows, y despues de todo no pudimos llegar a donde queriamos.

Estoy trabajando en un robot de proyecto final de carrera, de momento tenemos que hacerlo andar, poner en marcha todos los sensores y controlarlo todo via radio desde el ordenador, pero en futuras ampliaciones estaba el de incorporarle dos camaras para reconocimiento de personas y del entorno.

Cuando empiece con esta parte ya te comentare.

Ya has progresado en este interesante proyecto?

 

Saludos desde Valencia.

+1
0
-1

Les coses o es fan bé o no cal fer-les.

Cada dia que passa, em done cónter de la meua ignorància.

Visita mi web www.cerilet.com

Imagen de Geo
+1
0
-1

Estoy en los inicios de un proyecto de procesamiento de imágenes, y quizá podamos ir compartiendo información conforme avancemos :).

Necesitas una forma de obtener las imágenes, en Linux la alternativa es v4l (video for linux), buscando encontré una librería interesante llamada libfg, que permite obtener imágenes desde una webcam usando precisamente v4l, aunque no pude compilarla en Ubuntu a la primera y la dejé, pues por lo pronto sólo estoy haciendo pruebas, quizá un poco más adelante.

Para realizar el procesamiento de una imagen, hay que aplicar algoritmos a dicha imagen, manipularla de alguna forma para ir obteniendo lo que deseas, por ejemplo, para encontrar el punto más brillante podrías analizar todos los pixeles y quedarte con el de mayor valor promedio de sus componentes de color. Pues bien, hay librerías que ya cuentan con funciones para procesar imágenes, por ejemplo OpenCV, no la he usado todavía pero es una de mis opciones. Con MATLAB puedes hacer todo, de hecho, si así lo desearas, podría ser quizá la única herramienta que necesites usar, en Windows permite conectar con una webcam para obtener las imágenes y luego puedes procesarlas. En Windows todavía estoy definiendo si usaré C++ o C#, aunque creo que voy a empezar con MATLAB para algnas pruebas.

Para obtener las imágenes de la webcam en Windows, hasta ahora he encontrado tres alternativas: - Avicap (video for Windows) - WIA (Windows Image Acquisition) - DirectShow En CodeProject.com me parece que encontré algunos ejemplos precisamente de procesamiento de imágenes en C++ usando avicap.

En fin, para resumir, estas son las cosas a encarar:

  • adquisición de imagen
  • procesamiento de esa imagen
  • salida

Para la adquisición, dependiendo de qué herramientas tienes y en qué SO vas a trabajar, ya mencioné v4l en linux; y avicap, wia o directshow en Windows. En internet puedes encontrar algunas librerías que faciliten el trabajo (aunque seguramente harán uso de algunas de las que mencioné), por ejemplo libfg que usa v4l, Aforge.NET que hace uso de DirectShow, etc.

En cuanto al procesamiento, si vas a usar MATLAB quizá no necesites de ninguna otra herramienta, en C++ está la alternativa de OpenCV (a menos que quieras ocupar tiempo en implementar tú mismo algunos algoritmos), para C# encontré Aforge.net (está en Google code).

Y por último, la salida, en tu caso será averiguar las funciones para poder implementar el movimiento del cursor en tu SO :). Pues bien, ojalá alguien con experiencia se pase por aquí, que yo apenas empiezo, además espero que vayamos compartiendo información y experiencia para poder avanzar :).

Suerte.

 

~~~~~~~~~~~~~~~~~~~

La imaginación es el límite.

+1
0
-1

~~~~~~~~~~~~~~~~~~~
La imaginación es el límite.

Imagen de JoseTlaseca
+1
0
-1

Hola marcelo39:

¿Como vas con tu proyecto de seguimiento de iris?

Te pregunto porque ahora mismo yo estoy haciendo un trabajo de seguimiento de objetos en general... tu seleccionas mediante un cuadro el objeto patron a trackear y despues solo esperas a ver hacia donde se mueve el objeto, y este debe quedar siempre dentro de la mira que habias puesto al inicio.
Mi programa parece ser mas sencillo que el tuyo, yo he escrito todas las funciones que se necesito para ver el indice de igualdad entre dos imagenes del mismo tamaño usando la correlacion con media sustraida, lo demas es solo usar QT para pintar en pantalla y C++ para la programacion general. Hasta ahora he estado trabajando con secuencias de imagenes que tengo en mi disco duro, pero necesito usar una camara para que las imagenes se tomen en tiempo real, he oido que V4L me ayuda en eso, el problema es que nunca lo he usado y no se como incorporar sus funciones a mi codigo en C++ y no se si esten es disposicion de ayudarme con eso, si es que aun sigues con ese proyecto y has avanzado... en caso contrario, este es el momento para sacarlo adelante, tal vez yo te peda ayudar diciendote como he logrado lo que tengo hasta la fecha.
Uso GNU/Linux, QT, Diseñador de interfaces QT y lenguaje C++.

+1
0
-1
Imagen de RokuRT
+1
0
-1

Hola,

Soy estudiante y estoy realizando una tesis del mismo tema (Seguimiento del ojo humano aplicado como dispositivo periferico), espero que podamos compartir informacion.

Saludos!

----------
I got soul, but i'm not soldier
FESC UNAM MEXICO

+1
0
-1

I got soul, but i'm not soldier
FESC UNAM MEXICO

Imagen de JoseTlaseca
+1
0
-1

Hola RokuRT:

Pues parece que el amigo que inicio el post ya no esta suscrito a el pues no contesta... en fin... yo ahora mismo ya tengo un programa que funciona de manera aceptable, es decir, realiza seguimiento de objetos y como fuente de imagenes uso una webcam (soportada por UVC), si crees que en algo te pueda ayudar con mucho gusto lo haré, contactame si es necesario.

Salu2 y buena vibra...

_________________________
"Recoger datos es solo el primer paso hacia la sabiduria, pero compartir informacion es el primer paso hacia la COMUNIDAD"

+1
0
-1
Imagen de Fox83
+1
0
-1

Hola Muchachos al igual que marcelo39 ando trabajando en un proyecto similar. Segun lo que he leido en este post veo que algunos de ustedes ya tienen avaces sobre el tema. Les agradezco si pudieran enviarme informacion al respecto o alguna aplicacion. De antemano muchas gracias.

P.D. Aca dejo mi correo para que porfavor envien la informacion: ******** editado *******

+1
0
-1
Imagen de slap
+1
0
-1

Norma 2.2 del foro.

Este es un tema muy interesante. Compartid el conocimiento.
Gracias ;)

Equipo de Ubuntu-es

+1
0
-1

Saludos.

0000 start out (+FD),A
           ld  BC, +7FFF
           jp 03CB, RAM-CHECK

http://www.injiniero.es

Imagen de Sanguinario_Joe
+1
0
-1

Mi hermano esta a punto de desarrollar su poryecto sobre este mismo asunto, y por mi experiencia voy a estar muy ligado a el.

Basicamente, el proyecto (idea) del que se parte es un barco con una pelota roja, y mediante dos camarasd se tiene que poder localizar y triangular.

El proyecto de mi hermano no sera exactamente ese (a dios gracias, porque el trabajo que tenian hecho era sobre MFC, y con unas librerias compradas a matrox... :-/ )

El plan a trazar es el siguiente:

1.- Conseguirse una interfaz grafica.
Para ello vamos a emplear wxWidgets, que han demostrado ser una poderosisima herramienta.
2.- Capturar las webcams.
Aqui comienzan los problemas serios, pues en un principio el tratamiento sobre windows (a pesar de mi insistente negativa) es importante, asi que probablemente requiramos para este punto una pareja de codigos completamente diferentes.
3.- Tratamiento de imagen.
Casi seguro que optaremos por OpenCV.

Le dire a mi hermano que ojee este hilo de vez en cuando, e intentare informar sobre los avances, y como se llevan a cabo...

Veo que este hilo todavia esta un poco verde, y que nadie ha aportado todavia ideas definitivas. Si acaso alguien puede resolver nuestro punto numero 2 de una forma elegante, probablemente podamos ayudarle, y mucho, con el tratamiento de imagen, pues tenemos gente con experiencia en OpenCV.

Respecto al punto numero 1, el de crear la interfaz grafica con wxWidgets, estoy creando un tutorial en doc-ubuntu, aunque lo tengo un poco paradillo por carga de trabajo:

http://doc.ubuntu-es.org/Creaci%C3%B3n_de_interfaz_gr%C3%A1fica_con_CodeBlocks_y_wxWidgets

Saludos!!!

+1
0
-1
Imagen de delriorh
+1
0
-1

No es precisamente lo que busco , pero esta relacionado con imagenes.
Existe forma de iniciar sesion con la webcam? digamos , que reconozca el rostro registrado e inicie, como si fuera un lector de huellas digitales?
Saludos y muchas gracias

+1
0
-1
Imagen de famer
+1
0
-1

hola tengo dudas aserca de este tema.
mi proyecto consiste justamente en tdetectar el movimiento del iris
espero que me puedan aydar dandome pequeños tutoriales y recomendaciones gracias.

+1
0
-1