25 June 2008 ~ 2 Comments

Más de la detección 3D con una cámara


3D object tracking with one camera from Ariel Molina on Vimeo.

Ahora si me tocó mostrar mi fea cara. Pero todo sea por mostrar más de la detección 3D monocular. La cosa en el video está fácil. Al principio no se detecta nada, pues no se ha tomado la muestra, luego, a los 7 segundos se toma una muestra de la esfera. Entonces comienza el seguimiento y los objetos detectados se pintan en “video inverso” (o sea pues XOR), luego de un par de segundos de incialización se comienzan a detectar las coordenadas.

Durante el seguimiento se reportan las 3 coordenadas del espacio, que es donde se detecta el objeto. Quise poner una representación visual de las coordenadas (x,y,z) que se están detectando, así que hay 3 rayas en la esquina que representan una idea de la posicion 3D, como aún no existen monitores 3D pues puse la coordenada z como una diagonal color cyan.  El seguimiento es muy robusto, y la detección de profundidad es bastante precisa, note cuando la bola se acerca a la cámara y cuando se aleja.

Un ejemplo de aplicación

Seguimiento monocular 3D

Pueden ver una aplicación de este juguete en el post anterior donde lo uso para jugar algunos juegos simples. Pero si alguien me ayuda (hacerlo solo me da weba) puedo hacer de esto una interfaz para TuxRacer, Quake 3 Arena, o algun otro juego.

Y bueno, seguro ya están hartos de que me la pase nomas poniendo estas cosas, pero pss como ya acabe mi tesis no tengo otra cosa que hacer, asi que ¡se aguantan!, jejeje.

2 Responses to “Más de la detección 3D con una cámara”

  1. lhuerta 26 June 2008 at 7:56 pm Permalink

    Qué pasa cuando alejas muchísimo la esfera? La deja de ‘ver’?

  2. Desert Zarzamora 30 June 2008 at 2:55 pm Permalink

    Lo que ocurriría sería que la “mancha” se hace cada vez mas pequeña, y tiene un umbral, manchas mas pequeñas de cierto umbral son ignoradas, éste umbral sirve para ignorar el ruido. Una mancha con tamaño similar al ruido sería tratada como ruido y seria ignorada. Checa el ruido cerca del sofá azul de atras que es ignorado. En el tracking lo que ocurre es que ya no “lo ve”. O sea que es como si el objeto no estuviera en escena.

    Otras formas de perder el tracking es ocluir el objeto, y otra es sacarlo de la escena. En ambos casos se recupera tan pronto (aprox 2seg) como el objeto regresa a escena o la oclusion total termina.

    Una ultima manera de hacer que falle es moverla muy muy muy rapido de lado a lado del cuadro. Tan rapido como que se mueva 2radios de esfera en menos de 1/30seg. Ahi el tracking podría perderse temporalmente debido a que la cámara que funciona a 30 cuadros por seg. no alcanza a mandar imagenes suficientes. Pero se soluciona con una cámara de 60FPS o, mejor, una cámara como la del control del Wii de 100FPS.


Leave a Reply