Necesito encontrar un algoritmo o método que pueda detectar latitude
longitude
puntos atípicos en una trayectoria durante el procesamiento posterior , que luego se puede arreglar (volver a la trayectoria de la trayectoria en función de sus vecinos).
Como ejemplo del tipo de puntos atípicos que me gustaría detectar y corregir, adjunto una imagen que demuestra:
Intenté usar un filtro Kalman sin perfume para suavizar los datos lo mejor posible, pero esto no parece funcionar de manera suficientemente efectiva para valores atípicos más extremos (datos sin procesar en azul, datos suavizados en rojo):
Es posible que mi UKF no esté calibrado correctamente (pero estoy bastante seguro de que sí).
Las trayectorias son las de caminantes, corredores, ciclistas: movimiento impulsado por humanos que puede comenzar y detenerse, pero que no cambia drásticamente la velocidad o la posición tan rápido o repentino.
Una solución que no se base en datos de tiempo (y solo en datos de posición) sería extremadamente útil (ya que los datos que se procesan no siempre contienen datos de tiempo). Sin embargo, soy consciente de cuán improbable es que exista este tipo de solución, ¡así que estoy igualmente feliz de tener alguna solución!
Idealmente, la solución detectaría el valor atípico para poder solucionarlo, lo que da como resultado una trayectoria corregida:
Recursos que he examinado:
Smooth GPS data
- /programming/1134579/smooth-gps-dataCommon GPS and Geospatial Tracking Challenges and Solutions
- http://www.toptal.com/gis/adventures-in-gps-track-analytics-a-geospatial-primer (la solución parece perder precisión en los datos)¿Qué algoritmo debo usar para eliminar valores atípicos en los datos de rastreo?