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
R3Para 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
distancia
2 = (255-0)
2+(0-0)
2+(0-255)
2Las 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