| dc.contributor.author | Vuokko, Juha | |
| dc.date.accessioned | 2020-10-30T06:35:48Z | |
| dc.date.available | 2020-10-30T06:35:48Z | |
| dc.date.issued | 2020 | - |
| dc.identifier.uri | http://www.theseus.fi/handle/10024/346780 | |
| dc.description.abstract | When collecting locations to track walking path, collected data can be inaccurate. If tracking paths are an important feature of application, this reduces the sense of quality of the application. This thesis studies, how errors in tracked paths can be corrected.
In this thesis the accuracy of locations given by mobile device is studied as well as how this accuracy can be increased using filtering algorithms. An Android application using Kotlin is developed for this purpose. The application has a service that can run as foreground service collecting locations. The application has a live map that shows recent locations. These locations are stored in the SQLite-database using Room. After saving all the locations in the database, this data can be viewed. The map used is OpenStreetMap.
Four different algorithms are compared. Three of these can be manually tuned by changing variables. The algorithms include Kalman filter, Ramer-Douglas-Peucker, removal of most inaccurate locations and running average. The algorithms are compared visually to find the best solution used in walking route mapping for different projects. The algorithms can be compared for one route and they can be drawn in a map together with accuracies and bearings.
The solution does not need to be complicated, an algorithm that removes the most inaccurate points works with random errors in pathway that are not too plentiful. If the locations are collected frequently, the running average can smooth the path. This algorithm could be used even when collecting the locations and save just the averages to the database. This could be developed in a later project. | en |
| dc.description.abstract | Kerättäessä mobiililaitteella sijaintitietoja kulkureitiltä kerätyissä sijainneissa esiintyy epätarkkuuksia. Jos kulkureitin tallentaminen on olennainen osa sovelluksen toimintaa, liian epämääräisesti tallentunut reitti laskee sovelluksen laadun tuntua huomattavasti. Insinöörityössä tutkittiin, miten sijaintitiedoista muodostetun reitin oikeellisuuteen voi vaikuttaa.
Työssä selvitettiin mobiililaitteiden tallentamien sijaintitietojen tarkkuutta ja sitä, miten tätä tarkkuutta voidaan parantaa käyttämällä suodatusalgoritmeja. Tätä varten kehitettiin Android-laitteelle sovellus käyttäen ohjelmointikielenä Kotlinia. Sovellus käyttää taustapalvelua, jonka tarkoitus on kerätä sijaintitiedot. Kerätyt sijaintitiedot tallennetaan SQLite-tietokantaan käyttäen Room-tietokantakirjastoa. Tietokantaan kerättyjä sijainteja voi tarkastella omassa karttanäkymässään. Karttapohjana toimii OpenStreetMap.
Työssä vertailtiin neljää eri algoritmia, joista kolmea voi hienosäätää sovelluksessa. Käytetyt algoritmit olivat Ramer-Douglas-Peucker, Kalman-suodin, epätarkimpien sijaintien poistaminen ja juokseva keskiarvo. Näitä algoritmeja vertailtiin sovelluksessa visuaalisesti, jotta saatiin selville, millä algoritmilla reitti näyttää parhaiten noudattavan todellista reittiä. Samassa karttanäkymässä voidaan esittää niin alkuperäinen reitti kuin myös valituilla algoritmeilla muokatut reitit. Tässä näkymässä voidaan esittää sijaintien tarkkuus ja niiden yhteydessä tallennettu kompassisuunta.
Vertailussa ilmeni, että sijaintitietojen tarkkuuta saadaan parannettua käyttämällä algoritmeja. Kaikissa algoritmeissa on puolensa. Epätarkimpien sijaintien poistaminen voi riittää hyvien tuloksien saamiseen. Jatkossa täytyy tutkia vielä juoksevan keskiarvon käyttöä jo sijaintitietojen keräysvaiheessa. | fi |
| dc.language.iso | eng | - |
| dc.rights | CC BY-NC 4.0 | - |
| dc.title | Accuracy in Tracking of Location of Mobile Device | - |
| dc.type.ontasot | fi=AMK-opinnäytetyö|sv=YH-examensarbete|en=Bachelor's thesis| | - |
| dc.identifier.urn | URN:NBN:fi:amk-2020102721693 | - |
| dc.subject.specialization | Mobile Solutions | - |
| dc.subject.degreeprogram | fi=Tieto- ja viestintätekniikka|sv=Informations- och kommunikationsteknik|en=Information and Communications Technology| | - |
| dc.subject.yso | algorithms | - |
| dc.subject.yso | locationing | - |
| dc.subject.yso | mobile apps | - |
| dc.subject.discipline | Tieto- ja viestintätekniikan tutkinto-ohjelma | - |
| annif.suggestions.links | http://www.yso.fi/onto/yso/p4834|http://www.yso.fi/onto/yso/p14524|http://www.yso.fi/onto/yso/p6230|http://www.yso.fi/onto/yso/p19374|http://www.yso.fi/onto/yso/p16923|http://www.yso.fi/onto/yso/p5914|http://www.yso.fi/onto/yso/p27414|http://www.yso.fi/onto/yso/p1467|http://www.yso.fi/onto/yso/p27194|http://www.yso.fi/onto/yso/p26484 | en |