Foro de elhacker.net

Programación => Java => Mensaje iniciado por: AFelipeTrujillo en 13 Abril 2010, 02:48 am



Título: Sensor de Movimiento
Publicado por: AFelipeTrujillo en 13 Abril 2010, 02:48 am
Hola comunidad, como puedo implementar un sensor de movimiento en JAVA .... ideas??? que cámaras puedo utilizar ? y que librerías lo podría implementar?

salu2


Título: Re: Sensor de Movimiento
Publicado por: egyware en 13 Abril 2010, 02:54 am
Que realmente deseas saber
Nota:Si deseas usar camaras usa JMF


Título: Re: Sensor de Movimiento
Publicado por: AFelipeTrujillo en 13 Abril 2010, 07:10 am
Tkxxx por tu respuesta ..... lo que deseo en si saber es como implementar un sensor de movimiento.... supongamos que tengo un espacio vacio y que mediante el programa se dispare un alarma apenas haya movimiento en este espacio... no si me hice entender??


Título: Re: Sensor de Movimiento
Publicado por: AFelipeTrujillo en 13 Abril 2010, 14:25 pm
Hola a todos estuve averiguando hacer del desarrollo de este programa y creo que la solución es: Tomar fotos cada rango de tiempo y estar comparando la actual con la anterior (suena sencillo) .... me pregunto si conocen algún otro método  :huh:


Título: Re: Sensor de Movimiento
Publicado por: egyware en 13 Abril 2010, 14:46 pm
Ah ya mas o  menos se lo que quieres. Bueno ese metodo te lo hiba a mencionar que bueno que lo encontraste.
Colocando una cota de que solo usaras camaras creo que ese te servira y jugar con imagen generada (mediante la resta de 2 fotos consecutivas), a menos que la camara que te avise que haya movimiento pero ahi hay que implementar segun camara.
Lo otro que puedes hacer es usar hardware de sensor de movimiento (un sensor de movimiento real ) y conectarlo al puerto Serial de tu pc para eso debes buscar una biblioteca antigua de java (busca hace tiempo lo vi en un blog) que ya no se distribuye con el JDK actual.
Bueno eso seria creo que tendras que arreglartelas solo con los algoritmos, ya que si existe ese software seria de pago :(
Saludos Adios.


Título: Re: Sensor de Movimiento
Publicado por: MazarD en 13 Abril 2010, 15:23 pm
Todas las aplicaciones que yo he visto sobre el tema utilizan este mismo método y dudo que haya otro teniendo en cuenta que la cámara, como comentaba egyware, no tenga nada más que la camara en sí.

Como decías puedes hacerlo tomando fotos consecutivas, tomas dos, las cargas en dos BufferedImage de la libreria awt y las comparas pixel a pixel con getRGB, si son distintas pues salta la alarma. Pero hay que tener en cuenta que tienes que darle cierto grado de tolerancia, para que si por ejemplo cambia la luz del día no salte la alarma. La tolerancia puedes establecerla por la similaridad de los colores combinado con la cantidad de pixeles distintos y la cantidad de fotos consecutivas que no cumplen las condiciones, con esto ya podrías tener un sistema bastante eficaz.

Saludos.


Título: Re: Sensor de Movimiento
Publicado por: egyware en 13 Abril 2010, 15:37 pm
Exacto, debes dar una tolerancia por ejemplo si tienes una camara de no muy buena resolucion tu alarma saltara mucho .
Ahora si tu camara es de buena resolucion tu algoritmo se demorara mucho por los 2 for que tendras que hacer.
Ahora como calcular tolerancia no se como lo haran los demas pero tengo un algoritmo (generalmente diseño algoritmos pero mas tarde me doy cuenta que ya alguien mas los hizo  :¬¬)

Considerar que los colores son un vector de R3
Para el rojo se tiene (255,0,0) y para el azul (0,0,255) entonces para calular la distancia entre rojo y azul
distancia = raiz((255-0)2+(0-0)2+(0-255)2)
entonces con esa formula sencilla tienes para calcular la distancia si los colores son consecutivos te dara un numero mas pequeño.
Ahora si calculas mucho la raiz tu algoritmo demorara mucho entonces la ecuacion de distancia queda
distancia2 = (255-0)2+(0-0)2+(0-255)2
Las multiplicaciones son mucho mas rapidas.
Tienes saber que a*a -> 0 siempre y cuando a -> 0
Y si puedes trata de sacar la resta de imagenes hardware y no software ya que el ultimo es mas lento, osea trata de implementar algo con JNI si deseas.

Saludos

Nota: -> es tender


Título: Re: Sensor de Movimiento
Publicado por: AFelipeTrujillo en 13 Abril 2010, 19:17 pm
Hola compañeros gracias por su apreciación me dieron mas idea de por donde va este desarrollo... me tocaría mirar mejor la tolerancia de la imagen para que no se salte a cada rato .... bueno por lo que se esto va a estar montado sobre Internet y creo que va ser un poco demorado  :-\ hay muchas variables en juego ... espero que pueda resolverlo y les comentare como va el asusto... muchas gracias