Interesante, que algoritmo usas para detectar el movimiento, talvez seria solo de mejorar el algoritmo ya que ubicar desde la nada el objeto pienso que seria mucho mas tardado. a mi se me ocurre hacer verificaciones sobre un ratio determinado de pixels alrededor del centroide. (o bien sobre las esquinas visibles del objeto) utilizando multithreading podrias estar verificando las esquinas visibles sobre un cuadrado seleccionado. no se son ocurrencias mias, talvez estoy fuera de foco de esto de manejo de imagenes.