2/1/08

Nuevo enfoque para detectar los objetos en movimiento.

Tras estar haber utilizado las funciones para actualización de fondos se me ha ocurrido cambiar la forma en la que obtenía las imágenes en binario con los objetos que se movían en la imagen en blanco y el resto en negro.

En vez de restas sucesivas con la imagen anterior, he aprovechado el echo de estar usando actualización de fondo para ir restando en cada iteración la imagen actual con el fondo. Esto me genera una serie de ventajas respecto a la implementación anterior, principalmente que de esta forma puedo obtener figuras sólidas y no siluetas como anteriormente y además las figuras siguen siendo detectadas cuando se quedan quietas hasta que no se integran con el fondo.

Como única desventaja he podido apreciar que esta técnica introduce algo de ruido, pero las ventajas me hacen pensar que esta forma me será mucho más útil a la hora de hacer el seguimiento y el ruido que surge es casi despreciable.

En el siguiente video se puede apreciar el resultado:


Tras esto me voy a dedicar a crear algún tipo de historial del fondo para detectar cuando se producen cambios, pero antes voy a rehacer mi código ya que debido a que he ido haciendo muchas pruebas con varias cosas al final ha quedado muy desordenado y complicado de depurar.

7 comentarios:

mntinside dijo...

Madre mia, eres un genio. Sabes si se puede usar opencv con vb.net? Porque necesito detectar movimiento como en tu programa pero en vb.

Salu2

Antonio Collazos Carrera dijo...

Mucha gracias mntinside, siento no haberte contestado en todo este tiempo, pero pensaba que cuando hacían un comentario en tu blog te mandaban un correo (a lo mejor no lo tengo bien configurado) y no me había dado cuenta de que me habían escrito y como has sido el primero en hacerlo...jejej

En cuanto a tu pregunta estoy casi seguro de que sí se puede usar opencv con vb.net, de hecho si me pasas tu correo puedo pasarte unas transparencias en donde viene explicado.

Unknown dijo...
Este comentario ha sido eliminado por el autor.
Unknown dijo...

Hola Antonio, tengo la misma duda que mntinside, si puedes enviarme las transparencias te lo agradeceria. Gracias de atemano.
Saludos.

Mi correo es: franciscojusto@gmail.com

proglaw dijo...

hola te escribo porque al igual que los demas comentarios me seria demucha ayuda esas transparencias te lo agradeceria mucho ya que en la escuela me han encargado un proyecto parecido y me seria de mucha utilidad.

saludos

atte proglaw

Oscar Cano dijo...

hola Antonio, he visto tu publicación y me gustaría que me enviaras la explicación de como usar opencv con vb.net ocano122086@yahoo.es Agradezco tu colaboración

LeoArd dijo...

hola te dejo mi correo, me gusta tu tecnologia. podemos arreglar algo
reximp@hotmaiil.com