A nagy futó-GPS pancserteszt, II.

2012.01.19. 18:58 :: mICK

A pancserteszt folytatódik – ezúttal még mélyebbre ásunk...

A dolgok további boncolgatásához muszáj kicsit jobban beleásni magunkat abba, hogy hogyan működik a GPS úgy általában. A GPS hálózat műholdjai úgy keringenek a fejünk felett, hogy a világ bármely pontján, az idő bármely pillanatában legalább négy műhold legyen látható a horizont felett. Ez a négy műhold már segít nekünk egy elvben három dimenziós koordináta kiszámításában, bár ennek a magasság összetevője eléggé érzékeny pont, és az tényleg durva különbségeket tud mutatni, most inkább ne is foglalkozzunk vele.

A GPS lényege nagyon leegyszerűsítve az, hogy minden műhold egy egymással nagyon pontosan összehangolt atomórát tartalmaz, és ők ennek az órának a jelét sugározzák felénk. A GPS vevő pedig érzékeli a műholdról a rádióhullám terjedési sebességével haladó jelek beérkezését, és abból hogy melyik műholdról milyen késleltetéssel érkezett meg a jel, ki lehet számolni az adott műhold tőlünk való távolságát; ha pedig ismerjük a műholdak helyzetét (ez megint egy külön téma, de tegyük fel, hogy ismerjük), akkor három ismert műholdból két-, négy műholdból három dimenziós koordinátát lehet kiszámolni. Elvben. Egy minden irányban sík horizonttal határolt területen, a puszta közepén, szép tiszta időben, egy tökéletes vevővel.

A gyakorlatban van néhány tényező ami bonyolítja a helyzetet:

  • A műholdak órájának egymáshoz képesti pontosságát, illetve azt hogy mennyire pontosan tartózkodnak tényleg ott, ahol tartózkodniuk kell, hagyjuk a rendszert üzemeltető kollégákra és tekintsük pontosnak.
  • A rádióhullám terjedési sebessége vákuumban ismert és állandó, párás levegőben, vulkáni hamun keresztül, stb. változó. Ez megint egy olyan téma, amire léteznek pontosító megoldások (differenciális GPS vagy DGPS névre hallgatnak), ezek használata növelheti a jel pontosságát – a telefonokban és szerintem futóórákban sem nagyon találhatók meg, tehát ezzel sem kell foglalkoznunk.
  • A rádióhullám hajlamos visszaverődni tereptárgyakról. Ez két okból fontos: ha pl. egy hegy kitakarja a műholdat, akkor annak a jelét a vevő akár egyáltalán nem is érzékelheti; ha viszont egy visszaverődő jelet fog el, akkor ott a rádióhullám által megtett út hossza a a műholdunk valós távolságánál hosszabb, ergo rontja a kiszámított pozíció minőségét. A GPS chipek viszonylag komoly méréseket és számításokat végeznek annak érdekében, hogy a direkt és visszaverődő jeleket meg tudják különböztetni egymástól (például jelerősség, fáziskésés felismerése) segítségével, és kompenzálni tudják azok hatását. Itt már számít az, hogy a GPS chip mennyire kifinomult és érzékeny, ez pedig egyenes arányosságban van az árával (meg persze a gyártó e téren szerzett tapasztalatával).
  • Bár a műholdakban nagyon pontos atomóra ketyeg, a zsebünkben lévő telefonban, a kezünkre csatolt GPS vevőben nem. Márpedig egy közel fénysebességgel haladó rádióhullám méréséhez nem árt a pontosság: elég néhány millisecundumnyi pontatlanság és máris a Duna túlsó partján találjuk magunkat. Ehhez hozzá jön még az a késleltetés, ami abból fakad hogy egy telefon nem csak a GPS alkalmazást, hanem sok minden mást is futtat egyidőben – ergo egyáltalán nem biztos hogy olyan pontosan tud mérni, mint egy erre a célra optimalizált eszköz. Megintcsak – pontosabb, erősebb, érzékenyebb hardver = pontosabb pozíció = magasabb ár.

Többek között a fentiek miatt eleve megkülönböztetnek polgári és katonai/légiközlekedési minőségi besorolású GPS eszközöket – pedig mindegyik ugyanazon műholdak jeleit érzékeli, de a velük elérhető mérési pontosság körülbelül egy nagyságrendnyi különbségű. A katonai eszközök egyébként még egyéb segéd jeleket is használnak amihez „földi halandó" nem fér hozzá. A polgári GPS-ek (még mindig csak a GPS chipről és nem a telefonon vagy órán futó alkalmazásról beszélünk) pedig különböző, részben titkos megoldásokat használnak arra, hogy egy viszonylag pontos pozíciót tudjanak generálni. Ez a valóságban ritkán lesz 10 méter alatti pontosságú – az, hogy az elmozdulás során mégsem kacskaringózunk, az ugyancsak a GPS chip saját kis intelligenciájának köszönhető, amivel az eltéréseket ügyesen, láthatatlanul egyensúlyozza ki.

Van még egy érdekes dolog. A GPS chip a pillanatnyi sebességet nem mozgás közben, a két ismert pozíció és elmozdulás ismeretében számolja ki, hanem a rádióhullámok ún. doppler hatásának méréséből. Az elmozdulás iránya (angolul heading, azaz „merre áll az orrunk") is hasonló trükkökkel készül. A vevő a pozícióval együtt ezt az információt is átadja az alkalmazásnak, aki ebből különböző következtetéseket vonhat le – például, észreveheti hogy kanyarodunk (valójában akkorra már legalább egy másodperc eltelt a kanyar óta) és mondjuk sűrűbben naplózhatja a koordinátákat. Ugyanakkor, ez az információ akár félrevezető is lehet, hiszen a fordulás tényéről csak később értesülünk.

Ebből talán már látható, hogy miért veszíti el a fonalat a GPS, ha túl kis ívben túl nagy fordulót teszünk. A GPS élete állandó találgatás, melynek során megpróbálja szétválasztani a valóságot a zavartól. Minél lassabban haladunk, annál nagyobb lesz ez a „jel-zaj viszony", annál nehezebb pontosan mérni. Ha pedig arra számít, hogy ha eddig észak fele haladtunk, mi pedig hirtelen irányt váltunk, akkor kell kis idő, amíg rájön a turpisságra.
Ez tehát a rendelkezésünkre álló technológia, ami közel sem nevezhető mértani pontosságúnak. Adott időnként kapunk egy kiszámított koordinátát, a megtett utat pedig a koordinátákat összekötő szakaszok hozzának összeadásával számíthatjuk ki. Könnyen belátható, hogy a pontatlan koordináták miért okozhatnak a mért útban nagyon is észrevehető különbségeket.

A különféle alkalmazások (és most ide értjük a céleszközöket is), a fenti adathalmazt dolgozzák fel, elemezgetik, optimalizálgatják, szemezgetik.

A mentett adat

A teszt szempontjából talán érdekes információ, hogy a közvetlen mérési eredmények magukból az alkalmazásokból érkeznek, az elemzést viszont értelemszerűen az alkalmazások weboldaláról elmentett, kiexportált GPX (vagy TCX) formátumú adaton végeztem. Végső soron ugyanazt nézzük, de tudni kell, hogy a kiexportált GPX adatban már nem feltétlenül vannak benne azok az esetleges extra információk, amik a weboldalnak a saját alkalmazásával kommunikálva esetleg még megvoltak. Ha például a Nike+ a lépésszámlálót és a telefon elmozdulásérzékelőjét is használja a szumma végösszegek kiszámításához, mi viszont csak a kiexportált térképadatból számolunk, egyáltalán nem biztos hogy ugyanazt az eredményt fogjuk kapni. Többek között ez az oka annak is, hogy egy kiexportált Garminos futás visszaimportálása során lehet, hogy kicsit eltérő eredményeket fogunk kapni. A másik dolog, hogy mindegyik alkalmazás a feltöltött térképeken még optimalizál, más lehet a mintavételezési módszerük, satöbbi – ezért egyáltalán nem meglepő ha az egyik helyről szerzett, másik alkalmazásba importált GPX naplóból kiszámított eredmények nem fognak pontosan egyezni.

A TCX formátum egyébként annyiban is különbözik a GPX-től, hogy előbbiben szerepelnek az úgynevezett „szumma" értékek, amit egy külső alkalmazás közvetlenül használni tud, és nem kell a GPX útvonal újraszámolásával újra előállítania azt.

A mérési gyakoriság

Rendelkezésünkre áll tehát az alkalmazásokból kimentett GPX fájl, ami többé-kevésbé hűen tükrözi azt az útvonalat, ami a végső statisztikában látható számokat eredményezte. Először is, elvben (figyelj, kulcsszó!) minél gyakrabban mérünk, annál pontosabb lesz az eredmény.

Az átlagos GPS vevők körülbelül másodpercenként produkálnak egy-egy újraszámított pozíciót. Ez az érték nagyjából hasonló az okostelefonokon is, bár ott a telefon általános leterheltségétől függően (főleg korábbi, gyengébb hardverrel rendelkező modelleken) ez az érték felmehet kettő-négy másodpercre is. Ha megnézzük az alkalmazásokból exportált GPX fájlban az időbélyegeket, az alábbi frissítési gyakoriságot látjuk (szigorúan tudománytalan itt-ott belenézős alapon):

Ebből az látszik, hogy (legalábbis a GPX tanúsága alapján) a nagy átlag nagyjából 4-9 másodpercenként tárolja el a pozíciót. Az egyetlen látványos kivétel a SportsTracker, ahol minden másodpercre megvan az adat – ebből elsőre azt a következtetést vonnánk le, hogy emiatt ő a legpontosabb, de ne siessünk ennyire. Egy biztos, ha a SportsTracker megteheti, elvileg a többi iPhone-on futó alkalmazás is rögzíthetne másodpercenként, de valamiért nem teszik. Az különösen elgondolkodtató, hogy a Garmin viszont biztosan megtehetné, lévén céleszköz, de az sem teszi.

(Azért visszautalnék arra, hogy a szummák számításához az alkalmazások vagy akár az óra nyugodtan felhasználhatja a másodpercenkénti adatokat, még akkor is ha azokat nem tárolják a GPX naplóban. Azonban ha teszik is, nagyon ügyesen teszik, mert nem esnek bele abba a hibába, amibe a SportsTracker igen, de erre még visszatérünk.)

Most pedig vegyük elő újra a mérési eredményeinket:

 

Ha azt nézzük hogy a (talán nem nagyon torz) műholdképen kézzel felrajzolt útvonal és a GPS által mért útvonalak hossza kevesebb mint 1%-ban különbözik, a fentiek fényében tulajdonképpen már maga egyfajta szenzáció. Hihetetlen ez a technika – de vajon mi okozza a különbségeket?

Először is, nézzük meg az út, valamint a Garmin és az iPhone alkalmazások által rögzített útvonalak viszonyát. Mi a lehetőségekhez képest egyenesen futottunk az út melletti járdán (ekkora nagyításnál a műholdkép maga el lehet csúszva, tehát inkább az út egyenességét és geometriáját érdemes figyelni):

Mint egy kettős DNS spirál, tekergőzik a piros (Nike+GPS), sötétkék (Runkeeper), zöld (Endomondo) és narancs (SportsTracker) egymás körül, az egész pedig a Garmin (világoskék) körül. A színes pöttyök az alkalmazások által rögzített pozíciókat jelzik, bár sajnos néha kitakarják egymást.

Maga a környék egyébként egy 1-2 szintes kertes házakkal övezett útszakasz, és ami ebből az ábrából mindenekelőtt látszik (és nagyjából mindenhol igaz is volt az útvonalon), az az, hogy a Garmin milyen szépen követte az út egyenes vonalát, míg az iPhone szenvedett és jobbra-balra kilengett. Pedig nem is ittunk futás előtt. Ez ugye egy pont a Garminnak, nyilván a telefonon futó alkalmazások emiatt szépen túlmérik a távolságot. Ez így önmagában meg is magyarázza azt, hogy miért volt a Garmin mérési eredménye a telefonosokhoz képest szignifikánsan alacsonyabb.

SportsTracker: a pontosság átka

Ha ráközelítünk egy-egy szakaszra, nagyjából hasonlót látunk:

Érdemes megfigyelni a Runkeeper sötétkékje alól ki-kikandikáló narancssárga SportsTracker nyomvonalat. Mivel a SportsTracker másodpercenként rögzít, pontosabban követi le az iPhone GPS hibáit. Ez a kétélű fegyver: egy sokkal jobb GPS vevő (esetleg szimplán GPS-barátabb körülmények) esetén a SportsTracker nyerhetett volna, hiszen pontosabban számol – azonban mindkét mérés során az derült ki, hogy ez a pontosság éppenhogy pontatlansághoz vezet.

Míg egy-egy egyenesebb szakaszon a többi alkalmazás nagyjából egyenesen követi az útvonalat, a SportsTracker folyamatosan kacskaringózik, és szorgalmasan gyűjti a hamis métereket. Ez az eltérés olyan látványos, hogy simán összejön belőle az a plusz két százalék eltérés, amit a SportsTracker a többiekhez képest produkált.

Endomondo: a kör négyszögesítése

Jóval kisebb arányban ugyan, de a következő alkalmazás ami eltért a közös átlagtól, az Endomondo volt, ami leheletnyivel kevesebbet számolt mint a Nike+GPS/Runkeeper páros. Ennek is megvan az oka, figyeljük meg a fenti és alábbi képeken a világoszöld útvonalat:

Ami szembetűnő, az az, hogy az Endomondo a kanyarokat általában még a többi iPhone-os alkalmazásnál is rosszabbul viseli. Mintha folyamatosan nem lenne szerencséje szegénynek, rendszeresen ő az, aki legjobban levágja a sarkokat – ezzel magyarázható az Endomondo által mért minimálisan ugyan, de alacsonyabb távolság.

RunKeeper és Nike+GPS: papírforma

A két nap logjait elnézegetve az tűnik még fel, hogy a sötétkék Runkeeper és a piros Nike+GPS az esetek nagyon nagy százalékában szinte tökéletesen ugyanazt az útvonalat követik (ezért nem is nagyon látszik az ábrákon a piros sáv, a sötétkék alatt bújkál). Ha megnézzük fentebb a körforgalmas képet, a Garmin világoskék sávjával leginkább a sötétkék RunKeeper és a Nike+GPS halad párhuzamosan, ergo nekem ezek azok az alkalmazások amelyeknek a legtöbbet sikerült kihozni az iPhone-ból. Itt még egyszer megjegyezném hogy a Nike+GPS-sel nem használtam a lépésszámlálót, ami lehet hogy picit finomítana a Nike+GPS eredményén, de csakis a szummán, és nem az útvonalon.

Kanyarvétel
Végül, egy utolsó képen még megmutatnám azt, hogy hogyan veszik be az alkalmazások az egyik, derékszögnél picit élesebb kanyart. Az eddigiek mellé felsorakozott még két útvonal, a pink Andi telefonján futó SportsTracker, a lila pedig az ugyanott futó Runkeeper logja:

Itt is szépen látszik a sokkal gyakoribb narancssárga (és pink) pozíció; az az érdekes hogy a felső kanyar pont egy olyan hely, ahol a SportsTracker adja a legpontosabb eredményt, kár, hogy egyenesben nem teljesít ilyen jól szegény. Az útgeometriát legjobban követő útvonal ezután a világoskék Garmin, majd jönnek szépen sorban a többiek, az Endomondo természetesen itt is a legnagyobb levágásokat eszközli a kanyarban :-)
Nekem szemet szúrt az is, hogy a Garmin például szemmel láthatóan variál a mentett pozíciók távolságával. Az embernek szinte az az érzése támad, hogy amikor kell, gyakrabban rögzít, amikor nem, akkor pedig ritkábban.

Konklúzió

A teszt kapcsán engem leginkább az érdekelt, hogy hogyan viszonyul az iPhone és rajta futó alkalmazások pontossága egy spéci Garmin futóórához, valamint azok együttesen a valósághoz. Nem volt szó az alkalmazások egyéb fontos funkcióiról, a támogató weboldalak szolgáltatásairól, csakis arról, hogy mit mér, mennyire pontos, milyen eredményt produkál. Előbbiekről talán érdemes lesz egyszer külön írni. Az is okozhatott volna szignifikánsan eltérő eredményt egyébként, ha ugyanezt a tesztet valamelyik Android alapú okostelefonnal végezzük el.

Ha csak a GPS pontosságot nézzük, valószínűleg a Garmin áll legközelebb a valósághoz, de azt gondolom, hogy az a korábban említett bizonyos 1% nem olyan sok, hogy a mobiltelefonos alkalmazásokat csak emiatt sutba vágjuk. A SportsTracker túl jó akar lenni, de túllő a célon és a legrosszabb eredményt produkálja, talán ez az egyetlen, amit én, ezen a környéken biztosan nem fogok használni. A többi esetében könnyen lehet hogy a minimális pontosság-különbség miatt inkább egyéb egyéni szempontok döntenek majd.

Az, hogy imádom az új órámat, ettől teljesen független dolog ;-)

11 komment

A bejegyzés trackback címe:

https://fusscsiga.blog.hu/api/trackback/id/tr753590917

Kommentek:

A hozzászólások a vonatkozó jogszabályok  értelmében felhasználói tartalomnak minősülnek, értük a szolgáltatás technikai  üzemeltetője semmilyen felelősséget nem vállal, azokat nem ellenőrzi. Kifogás esetén forduljon a blog szerkesztőjéhez. Részletek a  Felhasználási feltételekben és az adatvédelmi tájékoztatóban.

szasza75 · http://szasz-a.blog.hu 2012.01.21. 13:58:52

a Garminnál alapban 3 másodperces jelvétel van, úgy tudom 1 másodpercesre is lehet kapcsolni. Melyiket használtad?

mICK 2012.01.21. 22:26:33

@szasza75: alapértelmezés, de most megnéztem a 410-es GPS és Settings menüjében nem találtam erre vonatkozó opciót. Amúgy szerintem bőven jó a Garminnál ez a felbontás is.

effe 2012.01.26. 17:58:01

nagyon jó kis teszt lett!
egyszer én is elkezdtem egy ilyet, de csak a telefonomon hasonlítottam össze 2 alkalmazást.
akkor az endomondo győzött, és azóta már nem lenne kedvem átszokni valami másra.

házikoszt 2012.09.18. 09:54:34

A legutóbbi Runkeeper frissítés óta folyton fagy az app a telefonomon, ezért a megvásárolt endomondo pro-val futottam tegnap, ovális, atlétikai futópályán. Kár volt, mert az íveket sorra levágta, volt, hogy csak két egymással szöget bezáró egyenesnek vette. Nem futottam sokat, de nagyon bosszantó, hogy még azt a keveset is elcsalja a káromra :)

Egyébként lehet, hogy csak nálam, a telefonom hibája ez is, de pl a Runkeeper azt csinálja, ha sokat futok (idézőjelbe sokat, kb ha 5-6 km-nél többet) akkor a végén a Workout complete bemondásnál az adatok összesítésénél fagy le, túl sokáig számolja a pontok adatait amit a telefon úgy vesz, hogy a program nem válaszol, kiírja, hogy lefagyott, és kéri, hogy zárjam be... menjenek a fenébe konkrétan... :)

A Sportstrackerrel meg az volt a problémám, hogy a csili-vili grafikus felületet már nem bírja a 600 mhz-es telefonom, ezért folyton eldobálta magát a program. Ja meg csal, ahogy a cikkben is írod.

csibyyy 2012.09.19. 10:17:01

Jó kis teszt lett! :)

Én egy Samsung Galaxy Ace-szel használom a runkeepert, de eddig nekem tök jól működött, hosszabb távokat is bírt (42+). Ha képeket csinálok, akkor néha hajlamos volt megadni magát, vagy lenullázni az addigi workout-ot, de a mentés után minden megmaradt.

HelloJozsi 2013.01.30. 18:50:05

Ez igen!
Le a kalappal a türelmed és az alaposságod előtt! :)
Én vagy 5 éve nyúzok egy G-Sat GPS-es futóórát, kíváncsi vagyok az hogyan teljesítene.
Telefonnal egyszer próbáltam meg futni, félúton majdnem elhajítottam :D
Böszme, kezelhetetlen, nem nekem való.

Mariann Holló 2014.09.27. 14:26:35

Nagyon hasznos és tanulságos kis teszt lett. Köszönöm :)
Bringázáshoz én is összehasonlítottam egyszerre négy alkalmazást telefonnal (BikeComputer, B.iCycle, Runtastic és Endomondo). Nagyjából hasonló eredmények születtek ugyan, de ezek közül nálam mégis a legpontosabb a B.iCycle és az Endomondo volt. A BikeComputer gyakran eldobta a GPS jelet és sokszor pontatlan is volt, a Runtastic jellemzően kevesebbet mutat 1-2 kilométerrel, mert levágja a kanyarokat és a letöltött .gpx nagyon sokat téved a km/h adatait illetően. Viszont nálam a B.iCycle és az Endomondo .gpx-éből majdnem ugyanazokat az adatokat lehetett kiolvasni.

inf3rno 2015.07.14. 03:52:09

A frissítési gyakoriság nagyon sokat számít kisebb körpályákon. Én 200m-es kört futottam a helyi iskolánál, endomondo nyolcszögeket csinált, teljesen használhatatlan volt. A GPS chip típusa nagyon sokat számít, olcsóbb mobilokba általában gyenge GPS chip-et raknak. A szoftverek csak lerontani tudják a chip képességeit. Egyébként a Garmin 410-es sem egy kimondottan erős óra, SirfStar3 vagy SirfStar4 van benne. Nem találni róla pontos adatot. Én láttam másik szoftverek közötti tesztet, ami azt hozta ki, hogy sokat számít pontosságban, hogy melyiket használjuk, és Endomondo valahol a végén kullogott a sornak. Hát nem tudom mi az igazság.

inf3rno 2015.07.20. 14:48:37

Közben utánateszteltem én is egy kicsit. 200m-es salakos körpályán csináltam köröket endomondo-val és adidas micoach-al, ami 1sec-es frissítéseket csinál. Nagyon nagy a különbség minden téren. logout.hu/dl/upc/2015-07/159589_endo_vs_micoach_copy.png Elképzelhető, hogy hosszabb edzéseknél, amik többségében egyenes terepen mennek, ezek a különbségek egy kicsit elkenődnek, de kicsi körpályákon nagyon sokat számít a gyakori frissítés, és valószínűleg a pontosság is. A mobilos GPS, amit használok nem valami pontos, ami látszik a micoach-os mérésen is, mert legalább 1.5-2x olyan vastag sávot húz a fával jobban fedett területen (felső rész), mint a fával nem borítotton (alsó rész). Egy GPS-es óra valszeg ennél jóval pontosabb, de majd csinálok azzal is tesztet, majd ha már vettem egyet. Az előző hozzászólásban említett tesztet, ahol egy csomó alkalmazást hasonlítanak össze pontosság szempontjából, sajnos nem sikerült újra megtalálni. :S

Mottó

"It's very hard in the beginning to understand that the whole idea is not to beat the other runners. Eventually you learn that the competition is against the little voice inside you that wants you to quit." - George A. Sheehan

Friss topikok

Utolsó kommentek