gps jälkien tuonti ohjelmallisesti

Tervehdys,

tässä on useammalla yrityksellä käytössä laitteita (aujoneuvoissa), jotka tallentavat gps jälkiä.
Ja näistä löytyisi ainakin näin alkuun muutamia yhteistyöhaluisia tahoja, jotka voisivat antaa gps jälkiä OSM:n käyttöön.

Reittejä tulisi siis mahdollisesti ympäri suomen ja tietysti mahdollisesti ylkomailtakin.
Onko näitä gps-jälkiä/reittejä mahdollista käyttää hyväksi jotenkin OSM:ssä ja onko niitä mahdollista jotenkin saada lähetettyä ohjelmallisesti palvelimelle ja kartan kehittämiseen niin, ettei näiden käyttäjien tarviisi itse rekisteröityä tänne ja opetella jälkien lähettämistä. Tämä kun ei heitä kiinnosta missään muotoa.

Osaisiko joku antaa vinkkejä miten asiaa kannattaisi lähestyä, jotta gps jäljet saataisiin näppärästi tänne käyttöön?

Vai onko ylipäätään hyötyä lähetellä pelkkiä jälkiä, ilman, että niitä piirretään “kartaksi”?

Siirtäminen voisi parhaiten onnistua välikäden kautta. Joku saisi tiedostot sellaisenaan, muuntaisi ne GPX-muotoon gpsbabel-ohjelmalla, tarkistaisi ne ja lähettäisi sitten tarkoitusta varten perustetulla käyttäjätunnuksella OpenStreetMap-palvelimelle.

Kyllä siitä voisi olla hyötyä etenkin kaupunkien ulkopuolella. Saisi esimerkiksi valtateiden liittymät (trunk_link, primary_link, secondary_link) kohdilleen.

Jos olet valmis ryhtymään tuohon puuhaan, voin yrittää neuvoa alkuun. Minulle riittää mkgmapin kanssa puuhastelu ja Suomen kartta Garmin-muodossa sekä pikkuteiden lisäily sitä mukaa, kun jossakin pyöräilen.

Jonkinlaisen suodatus olisi varmaan paikallaan siistimään taukojen aikana kertyviä pistekasoja. Jos jälkiä on paljon, niin pitäisi ilmeisesti tyytyä joidenkin oletusarvojen käyttöön, pienemmän määrän voisi tarkistaa plottaamalla suodatetun tiedoston ensin kartalle. Gpsbabel olisi varmaan hyvä vaihtoehto suodattamiseen ja mahdollisiin tiedostomuotojen muunnoksiin, se on monipuolinen ja sitä voi käyttää hyvin skripteistä. Käsiteltyjen tiedostojen lataus eräajona ei varmaan sekään olisi hankalaa. Tällainen Perl-koodinpätkä löytyi, näyttää olevan 0.5 API-version ajalta, mutta tuskin se suuria muutoksia vaatii. Ilmeisesti API-versio pitäisi muuttaa ja laittaa “public”:in sijasta “visibility” ja sille joku sopiva arvo. 0.6 API:n ohjeet ovat täällä:
http://wiki.openstreetmap.org/wiki/OSM_Protocol_Version_0.6#Uploading_Traces

Ja tässä on Perl-koodi

If you don’t mind a bit of Perl, you can upload a GPX to OSM like this:

use HTTP::Request::Common;
use LWP::UserAgent;

$ua=LWP::UserAgent->new;
$ua->credentials(‘www.openstreetmap.org:80 <http://www.openstreetmap.org/>’,‘Web
Password’,$yourusername, $yourpassword);

$response=$ua->request(POST ’
http://www.openstreetmap.org/api/0.5/gpx/create’,
Content_Type => ‘form-data’,
Content => [ file =>[$filename],
description=>$description,
tags =>$tags,
public =>“1” ] );

if ($response->code==200) {

yay, success

} else {

boo, failure

}

…from which a batch uploader (again, perhaps pausing every so often) can
be very easily constructed.

Richard

Hmm, joo kiitoksia vinkeistä!

Saan tuolta kyllä ihan suoraan ulos datan GPX muodossa, eli kyse on lähinnä tuosta palvelimelle siirrosta automaattisesti.
Tosiaan jonkinlainen “suodatus” tuossa välissä olisi paikallaan ja sihen taitaa olla ainoa vaihtoehto, että jonkun pitää se tehdä käsin.
Siis katsoa, ettei sinne turhaan lähetellä kymmeniä tuhansia gps-pisteitä, jotka jo ovat kartalla.

Kiitoksia tuosta api linkistä, tuohan on oikeastaan se mitä kaipailin.
Tosiaan väliin pitänee saada jokin taho tekemään tuon “suodatuksen”.

Toki sitten reitit pitää piirtää vielä kartaksi. Mitenköhän tämä toimii?
Onko liikkeellä vapaaehtoista porukkaa, joka seuraa lähetettyjä jälkiä ja piirtää ne kartoiksi?
Vai jääkö nämä jäljet sitten kuitenkin kummittelemaan tuonne palvelimelle ja käyttämättä loppujenlopuksi?

Tietokantaan mahtuu kyllä pisteitä, joten ei niitä niin valtavan tarkasti tarvitse siivota. Useista jäljistä samalla tiellä on ainakin johonkin rajaan asti vain hyötyä. Tärkeintä olisi saada pois selvästi virheelliset jaksot. Melkoisen varmasti joku käy piirtämässä jäljet teiksi, itse ainakin toisinaan katson Potlatch-editorin g-nappulan avulla onko jossain yksinäisiä käyttämättömiä jälkiä. Auttaa varmaan asiaa, jos vaikka tällä foorumilla vihjaa. mille seuduille uusia jälkiä on ladattu. Sopivien tagien antaminen ladatuille gpx-tiedostoille helpottaa myös niiden löytämistä.

Niitä visibility-asetuksia kannattaa myös miettiä etukäteen, eli kuinka hyvät mahdollisuudet antaa kenelle tahansa selvittää kuka on kuka on ollut missä ja mihin aikaan ja kuinka kovaa ylinopeutta onkaan ajanut.

Nostetaan aihe uudelleen esille, kun tuntuu, että nyt voisi olla ajankohtaista toteuttaa tällainen.

Eli jälkiä tallentuu päivittäin aika paljon, mutta kartoittamattomalle aluleelle yritysten autot eksyvät aikalailla harvoin (koska pyörivät lähinnä taajama-alueilla).
Kuitenkin näitä tulee jonkiverran ja meidän “piirtäjien” aika ei tahdo riittää merkintöjen piirtämiseen kartalle.

Näinollen osaisiko arvon raati vastata seuraaviin esille tulleisiin kysymyksiin:

  1. onko tuo api versio 0.6 se, jonka ohjeen mukaan tietojen upload voitaisiin edelleen rakentaa?
  2. jos lähetämme paikkatiedot ohjelmallisesti OSM:iin, niin miten olisi järkevä ilmoittaa näistä OSM:n vapaaehtoisille piirtäjille, jotta reitit tulee piirrettyä myös kartalle? (Vai onko kenties vapaaehtoisia piirtäjiä, joille nämä reitit voitaisiin ohjata suoraan?).
  3. Mitä olisi järkevää kirjoittaa kenttiin “description”, “tags” ja “visibility”? (jotta tiedoista olisi hyötyä piirtäjälle?)

Olisi siis valmiina tietty porukka, joka on valmiina jakamaan omien ajojensa paikkatiedot julkisesti, jotta saavat vastapainoksi kartan päivittymään puutteellisilta osilta.

Tietoja on alkuun aika vähän, mutta varmasti “testivaiheen” jälkeen tietoa voisi alkaa tulla reilumminkin…

Hei

Tarviikos noita jälkiä saman tien lisätä OSM:iin? Jos gpx tiedostot vain olisivat kaikkien saatavilla ja ihmeteltävissä ja piirtäjät tarvittaessa lisäisivät pätkän jälkeä OSM:iin?

Gpx-jäljille on olemassa tagging -menettely, tageilla kerrotaan jälkien sijaintialue, katso http://wiki.openstreetmap.org/wiki/Upload. Esim. minä saattaisin seurata Vesilahden alueelta, http://www.openstreetmap.org/traces/tag/Vesilahti, tai naapurikunnasta, http://www.openstreetmap.org/traces/tag/Lemp%C3%A4%C3%A4l%C3%A4, tai Pirkanmaalta, http://www.openstreetmap.org/traces/tag/Pirkanmaa.

Kaikkihan me olemme vapaaehtoisia, olemmehan? En tiedä onko OSM:ssa mitään viestitysmenettelyä, joka kertoisi, että nyt on tullut uusia jälkiä toiminta-alueellesi.

No tien nimi olisi kyllä hyvä olla, sen voisi kenties laittaa description -kenttään (jos tien nimiä on vähän, en tiedä kuinka pitkä kenttä on). tags -kenttään voi laittaa kuvauksen alueesta, katso http://wiki.openstreetmap.org/wiki/Upload#Tagging. Visibility -kenttään pitää valita arvo omantunnon mukaan, katso http://wiki.openstreetmap.org/wiki/Visibility_of_GPS_traces. Itse laittaisin “Public” vaikka taulukossa näyttäisi olevan commenttina “historical option”. Minusta aikaleimojen jättäminen gpx-jälkiin ei ole hyvä idea.

Kiva kiva, siitä sitten jakelemaan tietoa, mutta jotta aineisto olisi oikeasti hyödyllistä, teiden nimet olisi hyvä olla jotenkin mukana, niitä kun ei mistään muualta saa kuin paikalla käymällä (olemassaolevista kartoista kun ei teiden nimiä saa kopioida).