1 van 1

GPS ruis reductie

Geplaatst: di 09 jun 2015, 09:15
door msabbaghian
Heeft iemand een goede methode hoe je het beste uit XYZ-coördinaten  (makkelijk te vertalen naar positie en hoogte om het 2d te maken) je het beste geautomatiseerd uitschieters kan verwijderen en het glad kan strijken?
 
Ik heb geprobeerd hellingen over een bepaalde drempelwaarde te verwijderen en vervolgens loess (lokale regressie) toe te passen.
 
Mijn probleem is hiermee is dat een drempel waarde subjectief is en dat bij loess het aantal trendpunten bepaald hoe glad het wordt en het juiste aantal is belangrijk om niet te veel of te weinig informatie te verliezen. 
 
Iemand een goede tip om goede waarden te kiezen of een andere methode doe beter is?

Re: GPS ruis reductie

Geplaatst: di 09 jun 2015, 13:35
door jkien
Dat is een vaag geformuleerde vraag: in je bericht noem je geen GPS, alleen in de titel van het topic staat dat woord. Als je GPS bedoelt dan wil je waarschijnlijk gebruik maken van de nauwkeurigheid, in meters, die de GPS-ontvanger aan iedere plaatsbepaling toevoegt. De plaatsen met een grote onnauwkeurigheid laat je weg.

Re: GPS ruis reductie

Geplaatst: di 09 jun 2015, 13:50
door WillemB
Ik ben daar ook mee bezig geweest, maar is niet zo eenvoudig,
 
GPS klok in ontvangst, is op korte termijn niet erg nauwkeurig, meestal slechter dan 10-9,
alleen op lange termijn is het perfect.
 
De GPS was fixed, op locatie en hoogte, uitschieters tot 100 meter zijn
niet ongebruikelijk. Daarnaast vond ik ook een dag en nacht ritme,
wat mij verbaasde, de klok verschoof in de nacht ongeveer 100 nSec,
en in de ochtend weer terug.
 
Je hebt overvliegende vliegtuigen, ionosfeer variaties ed, ontvangst paden
die wijzigen, reflecties, aantal zichtbare satellieten etc.
 
Ik sloeg alle samples op, zodat je er na een dag of wat verzamelen, er
eens rustig oplos kon rekenen. 
 
Maar in mijn geval gaf uit middelen toch het beste resultaat.
Het is ook lastig om je locatie zonder GPS vast te stellen als vergelijk.

Re: GPS ruis reductie

Geplaatst: di 09 jun 2015, 14:36
door msabbaghian
Bedankt beiden. Ik zei inderdaad GPS in de titel, maar ik heb alleen de XYZ ervan en niet de DOP waarden, vandaar dat ik het niet meer noem.
 
Om het misschien iets duidelijker te maken:
 
Ik heb de latitude, longitude en altitude en ik wil daar een hoogte profiel van de landschap van maken. Dus afstand en hoogte.
Wat de beste manier is om het glad te strijken zonder al te veel informatie te verliezen? 

Re: GPS ruis reductie

Geplaatst: di 09 jun 2015, 18:26
door Xenion
Doorgaans wordt daar een Kalman filter voor gebruikt: http://stackoverflow.com/questions/1134579/smooth-gps-data
Maar voordat je jezelf daarin verdiept moet je misschien gewoon eens proberen uit te middelen met een eenvoudig box filter ofzo. Als de afstand tussen opeenvolgende metingen klein is dan zal dat ook een goed resultaat geven.

Re: GPS ruis reductie

Geplaatst: wo 10 jun 2015, 09:45
door msabbaghian
Dankje Xenion,
 
Ik had inderdaad ook de kalman filter gevonden, probleem daarmee is dat ik dan nog een (betrouwbare) variabele zoals snelheid nodig heb om te filteren. Tenminste als ik het goed begrepen hebt is het idee dat als je X m/s gaat, kun je T seconden later niet meer dan X*T meter verder zijn en het een fout moet zijn. 
 
Als ik de boxfilter goed begrijp is het een soort van laplacian smoothing/rollende gemiddelde. Dat is dus weer afhankelijk van de gekozen horizon, wat weer afhankelijk is van de hoeveelheid ruis per dataset.. Dat is denk ik wel de juiste weg, maar weet niet zo goed hoe ik de horizon moet bepalen per data set.

Re: GPS ruis reductie

Geplaatst: do 11 jun 2015, 08:23
door Xenion
Je data bestaat normaal gezien uit periodische metingen. De 'horizon' of 'bandbreedte' van het smoothing filter dat je nodig hebt zal dan min of meer afhankelijk zijn van hoe snel het voorwerp beweegt.
 
Voor Kalman: je hebt inderdaad snelheid nodig in de state-space voorstellig, maar die kan geschat worden dmv finite-differences. Het is al even geleden voor mij, dus de details ervan weet ik zelf ook nimeer, maar je vindt daar wel enkele MATLAB/Simulink demo's van online.