World In My Eyes : kortlæg ikke til et layout

(Artikelserie Dit og mit kort, 81). Nå du kortlægger i OpenStreetMap så er det eneste du egentlig gør er, at indsætte punkter, linjer og polygoner og så give disse geografiske objekter nogle egenskaber fx type af vej, navn på vej, navn på cafe o.s.v. Der er intet i beskrivelserne der fortæller hvordan tingene skal se ud på et kort. Derfor er ideer om at fx man vil have en lille skovsti til at se ud som en villavej på kort, ved at angive skovstien som villavej lig med et stort “No Go”.

Desuden hvis en anden OpenStreetMap frivillig ser dette, så vil det ganske givet blevet rettet til mere korrekt angivelse for lille skovsti. Layoutstyring sker i “Renderingen”. Det vil typisk sige at geodata (rettere sagt vektordata) via noget “Rendering” software bliver omsat til mange små tiles (raster bitmap) af typisk 256×256 px. størrelse.

Typisk finder rendering af sted på en server, men det kan lige så godt ske i desktop programmer. Der skrives så regler for hvordan fx en motorvej skal layouttes, hvilke POIs der skal vises o.s.v. Da OpenStreetMap har alene over 500 veldokumenteret POIs, så et layout med alle disse POIs ville være det rene information overload.

Derfor er enhver rendering (kortlayout design om man vel) et valg om hvad skal med eller ikke med. Det er umuligt at fremstille et kort, der vil kunne tilfredsstille alle. Fx en familie på bilferie og en familie på cykelferie har vidt forskellige ønsker og ideer om hvad der er relevant at se på et kort.

Lad se på nogle forskellige renderinger af Kastellet i København. Først det layout de fleste har set, hvis de har brugt OpenStreetMap, nemlig standard layoutet Mapnik (interaktivt kort ses her)

Osmarender layoutet – Bemærk for et miltærområde har designeren besluttet, at der skal vises en kampvogn som baggrundsbillede. (interaktivt kort ses her)

CloudMade Midnight Commander layout. (interaktivt kort ses her)

CloudMade Matrix layout (Hvor mon inspirationen dog kommer fra?) (interaktivt kort ses her)

CloudMade har over 1000 standard kortlayout, som du kan vælge imellem og indlejre på din hjemmeside og hvis det ikke er nok så er der også en “Edit Map Style” editor. CloudMade hoster og kører selv deres egen geoserver – geodata hentes så løbende fra Planet OpenStreetMap geodataarkiverne.

Hvis du ser på de fleste digitale korttjenester, så er de orienteret mod, hvordan man bevæger sig rundt i fx byrummet med bil. Sådan behøver det ikke at være. OpenStreetMap giver dig mulighed via deres frie geodata selv at ændre og skræddersy nye kort til dine behov. Det er bare et spørgsmål om rendering, fantasi og så en masse frivillige der fordrer OpenStreetMap med masser af geodata (vektor data), så der er lidt at arbejde med.

Jeg kan anbefale dig at kigge på OpenStreetMap Wiki og se listen med over 100 forskellige måder at bruge geodata fra OpenStreetMap på.

Planet OpenStreetMap of visions

(Artikelserie Dit og mit kort, 60). Mine indlæg om OpenStreetMap har for det meste handlet om at få geodata ind i databasen. Jeg skifter nu fokus over imod hvordan geodata kan hentes ud. OpenStreetMap er ikke et sort hul du fodrer med geodata, og kan ikke få disse ud igen. Vi starter hårdt og stortænkende ud. Selvfølgelig er hele OpenStreetMap databasen muligt at få en kopi af. Hver torsdag bliver der lavet et datadump af alt indhold. Dette geodata dump kalder man i OpenStreetMap regi for Planet.osm. En komprimeret “planet-latest.osm.bz2” fil på p.t. 16GB dannes. Udpakket fylder filen ca. 220GB, og er teknisk set bare en stor XML fil.

Nu er det lidt voldsomt at hente en 16GB pakket fil hver eneste uge for, at opdaterer sin egen version af OpenStreetMap, så derfor har man såkaldte osm diffs (differences) filer, så det kun er ændringerne fra sidste gang der skal hentes, og ikke hele databasen igen. Disse osm diffs filer bliver lavet hvert minut, time eller dagligt.

Nu fortæller denne store XML fil intet om layout af kort. XML filen fortæller kun hvordan punkter, linjer og polygoner forholder sig til hinanden i WGS84 koordinatsystemet samt hvad disse punkter, linjer og polygoner er blevet klassificeret ( som de 400.000 OSM frivillige arbejde består i) til at være.

Så for at se et kort output på fx web skal der såkaldt “Rendering” til. I billedet nedenfor vises den mest hyppige vej, man gør det.

(Kilde – Slide af Harry Wood)

Hvor XML, så er lig med Vector og Rendering er så noget software, der typisk laver mange mange tiles om til 256X256 px rasterbilleder (typisk i png, jpg eller gif format). Nu findes alt software og webservere i open source, der gør alt dette for dig. Ricard Weait har skrevet en installeringsguide til PostGIS, PostgreSQL og Mapnik (tile rendering softwaren) i Build your own OpenStreetMap Server .

Hvorfor egen “rendering”? Grunden kan være at fx OpenStreetMap standardkort ikke opfylder dine behov samt ønsker – Du synes måske, at motorveje skal lyserøde, fastfood POIs ikoner skal se anderledes ud o.s.v – Alt dette har du helt fuld kontrol over, når du kører din egen version af OpenStreetMap database. Der er også software der henter de seneste ændringer fra OpenStreetMap og selv indsætter i din egen database automatisk. (alt efter hvor tit du ønsker at der skal opdateres)
For nævne nogle få firmaer her, så er der fx CloudMade, MapQuest og GeoFabrik som kører selv deres egne webserver som fordres med geodata fra OpenStreetMap. Man kunne bedre sige at geodatabasen på openstreetmap.org domænet er moderdatabasen, som fodres af 400.000 frivillige – Moderdatabasen fodrer så dernæst sine børn (diverse webservere, mashupprojekter) med geodata

NB – Rendering behøver ikke nødvendigvis at ske på en webserver – Fx i mit indlæg om cykelkort til Garmin, så har VeloMap og OpenMTB bare et software der konverterer fra OpenStreetMap XML til Garmin format. Dernæst laves OpenStreetMap download arkiver med Garmin format hos VeloMap og OpenMTB, hvor de enkelte lande kan hentes.

Vækst over hele linien for OpenStreetMap Danmark

(Artikelserie Dit og mit kort, 33). Dem af jer der har fulgt med her de sidste tre uger er sikkert træt af at jeg kun nævner at det p.t. går ufatteligt godt med kortlægningsprocessen til OpenStreetMap projektet i Danmark. Hvad med at få nogle tal og fakta på bordet? – Det ønske opfylder jeg hermed i dag med den første analyse af væksten for OpenStreetMap for de sidste tre uger siden, at de 662 ortofotos fra Fugro er gået live. Jeg har downloadet 2 datasæt fra h.h.v. 28 december 2010 og fra 18 januar 2011 i ESRI Shapefile formatet, og som kun vedrører Danmarks delen af OpenStreetMap. De to gratis Danmark geodatasæt i Shape filformatet kommer fra CloudMade og GeoFabrik.

Tal og fakta – 28. december 2010 var der 184358 vejstrækninger (bilveje, cykelstier, gangstier osv.) og 18. januar 2011 var der 201094 for hele Danmark. Det giver på tre uger en tilføjelse af 16736

nye vejstrækninger. Dette tal skal ses i lyset af at man har brugt tiden fra ca. slutningen af 2004 til 2010 (ultimo) på at komme frem til 184358 vejstrækninger. Så en ca. 9 % vækst på 3 uger er en meget imponerende indsats af de danske frivillige i OpenStreetMap. Note her – vejstrækninger er ikke det samme længden af fx et vejnavn. Et vejnavn strækker sig tit over flere vejstrækninger i OpenStreetMap forstand (skal ikke kede jer med nodes og andet XML stof her). Den type af veje, der har fået den største nye tilførelse er “residential” som er defineret i OpenStreetMap som

street or road generally used only by people that live on that road or roads that branch off it.

Her er der kommet 9676 nye vejstrækninger ud af de i alt 16736 nye. Da Danmark er blevet mere synligt via disse ortofotos som giver en 100% dækning af Danmark, så kan man også se flere andre geografiske objekter end lige veje. Vi kan lige se på tallene for småsøer, gadekær, vandhuller, her er der kommet 491 nye på tre uger. Hvis det er andre oplysninger I kunne tænke jer at få belyst, så skriv gerne en kommentar.

Jeg vil løbende orientere jer om nye tal, imens kan du sende en venlig tanke til de frivillige i OpenStreetMap som gør alt dette her muligt. Endnu bedre, du kan selv være med i OpenStreetMap projektet som frivillig, der er masser at gå i gang med stadigvæk. Er du lidt skeptisk overfor hele ideen med at frivillige laver kort? så kan du måske overbevises ved at læse mit indlæg om OpenStreetMap i Kolding området.

Teknisk orientering : Jeg benytter open source programmet Quantum GIS (til Windows, Linux og Mac) til at analysere Shape filerne. Quantum GIS har en smart “Query Builder”, der gør det let og hurtigt at analysere store mængder af geodata i Shape filerne. Quantum GIS har også et hav af andre smarte ting – fx eksport til KML, GeoRSS, GML.


(screendump af Quantum GIS softwaren)

Gør cykelrutevejledningsalgoritmerne bedre i OpenStreetMap

(Artikelserie Dit og mit kort, 19). Du har måske prøvet cykelrutevejledningen hos CloudMade Maps eller OpenRouteService.org som baserer sig på geodata fra OpenStreetMap. Disse cykelrutevejledninger klarer sig ganske godt, men nogle gange er deres ruteforslag lidt ude i skoven.

Du ved fx at i en ensrettet gade for biltrafik, der må cyklister gerne køre i begge retninger, men ruteforslaget sender dig i forkert retning i den gade. Nu er problemet ikke større end du selv kan rette det og dermed gøre cykelrutevejledningsalgoritmerne endnu bedre, og til gavn for cyklister samt for cykelturister. Det er ofte kun lige et metatag, der skal tilføjes i gaden/vejens metadatabeskrivelse.

Vi tager et let eksempel med Asger Rygs Gade på Vesterbro, som er en ensrettet gade for biltrafik samt hvor der ingen cykelstiafmærkning er, men hvor cyklister gerne må køre i begge retninger. Asger Rygs Gade metadatabeskrivelse i OpenStreetMap kan ses her.

metadatabeskrivelse for Asger Rygs Gade

I metatag oneway = yes defineres at gaden er ensrettet og i oneway:bicycle = no defineres undtagelsen for cyklister. Det sidste metatag gør en kæmpe forskel for cykelrutevejledningerne. Efter du har klikket “Save” for en ændring i OpenStreetMap, så går det ikke live i cykelrutevejledningerne med det samme. Det går ofte et par dage før ændringer i disse cykelrutevejledninger kan ses.

OpenStreetMaps Wiki om, hvordan cykelstier skal beskrives er ganske godt dokumenteret. Der er næsten et eksempel for enhver tænkelig situation i vejnettet. Nu er det ikke altid helt logisk i København, hvor man må cykle i begge retninger i ensrettet gader. Fx Valdemarsgade fra Vesterbrogade ned til krydset ved Matthæusgade er det forbudt, men fra Matthæusgade og videre langs Valdemarsgade ned til Istedgade er det tilladt. Disse forhold hvor det kun er tilladt i dele af en gade/vej at cykle, kan selvfølgelig også nemt beskrives i OpenStreetMap.

Et godt tips – Bevæg dig ud på gader/veje i den virkelige verden, og se hvordan færdselsskilte og tavler er for fx den ensrettet gade, før du begynder at tilføje metadata rettelser i OpenStreetMap.

Flere artikler om rutevejledninger baseret på OpenStreetMap

Ad nye veje i København – test af bilrutevejledning

(Artikelserie Dit og mit kort, 15). Vi laver i dag en test af rutevejledninger for en personbil, hvor geodata fra OpenStreetMap (CloudMades rutevejledning) testes imod 4 kommercielle korttjenesters rutevejledninger. Turen går fra Vesterbro Svømmehal og så til Landbohøjskolens Bibliotek på Frederiksberg. [opdatering 4. februar 2011 – det er kun OpenStreetMap kortet der stadigvæk har fået opdateret rutevejledningen – De 4 andre har ikke endnu. Opdatering 23. februar- Google og Krak har fået nu ændret rutevejledningerne – Men en tidshorisont på 3 måneder er lidt lang tid.]

Der er sket en væsentlig ændring i det københavnske vejnet, idet Platanvej pr. 1. november 2010 er blevet afspærret for gennemkørsel af bil/lastbil trafik frem til mindst år 2016. Lukningen skyldes metrobyggeri ved Frederiksberg Alle. Cyklister og fodgængere kan stadigvæk benytte Platanvej. Så testen går på, hvem har fået indarbejdet samt ændret disse nye vejforhold her pr. 17. november 2010 i deres rutevejledninger samt på kort.

Google Maps (se rutekort her selv) : Vi føres stadigvæk ad Platanvej for at komme frem.

De Gule Sider Kort (se rutekort her selv) : Vi føres stadigvæk ad Platanvej for at komme frem.

Krak (se rutekort her selv) : Vi føres stadigvæk ad Platanvej for at komme frem.

Bing Maps (se rutekort her selv) : Vi føres stadigvæk ad Platanvej for at komme frem.

CloudMade Maps, som er baseret på geodata fra OpenStreetMap (se rutekort her selv) : Her føres vi ad Henrik Ibsens Vej i stedet for ad Platanvej, hvilket også er den korteste vej for en personbil i vores test.

Konklusion : ingen af de 4 kommercielle korttjenester har i løbet af de 17 dage Platanvej har været lukket, fået indarbejdet dette på deres kort samt i deres rutevejledninger for personbiler. CloudMade Maps vinder selvfølgelig i denne test kun fordi jeg brugte 2 min. den 1. november på at rette disse vejdata i OpenStreetMap. Her er vi ved vigtigt punkt i OpenStreetMap ideen, mange OpenStreetMap frivillige, der holder øje med deres nærområder, kan lynhurtigt reagere på ændringer/fejl og ikke mindst rette dem selv.

Nu ville en test med CloudMade rutevejledning i landområderne for Danmark ikke vinde over de andre 4 korttjenester, fordi OpenStreetMap ikke er helt udbygget endnu der. Her kan du selvfølgelig hjælpe til, ved at blive frivillig i OpenStreetMap projektet.

Epilog : Hvis du vælger rutevejledning for cyklister i CloudMade Maps i stedet for (se rute kort her selv) – Så bliver du her korrekt ført ad Platanvej og frem til ankomststedet.

Læs også min artikel og test af “Fodgænger-rutevejledninger

Walking the fastest way in my shoes

(Artikelserie Dit og mit kort, 6). Nu er tiden kommet til at teste rutevejledninger baseret på OpenStreetMaps vejdata mod nogle kommercielle korttjenester. CloudMade Maps har en rutevejledning baseret på OpenStreetMap vejdata. Den benytter vi til at teste mod De Gule Sider (kortleverandør Kort & Matrikelstyrelsen), Google Maps (kortleverandør TeleAtlas [ejet af TomTom] og Bing Maps (kortleverandør Navteq [ejet af Nokia]).

Vi tester på gåture, da rutevejledninger er mere komplekse at beregne til gåture end til biler. Det skyldes, at der er mange flere muligheder for fodgængere i den fysiske verden at bevæge sig rundt fx i ensrettet gader for biler, kan fodgængere som regel bevæge sig i begge retninger på fortorvet. Samtidigt er der mange smutveje (fx gennem parker, trapper o.s.v.), og er disse smutveje så blevet beskrevet digitalt i kortene for fodgængere? Jo bedre beskrivelser og kortlægning af stier, veje osv – vil alt andet lige også give bedre output i rutebeskrivelserne.

Det samme forhold gør sig også gældende for cykelrutevejledninger, men da Google Maps og Bing Maps ikke har cykelrutevejledninger for Danmark endnu, så tester vi her kun på gåturvejledninger. Da OpenStreetMap er ikke fuldt ud dækket over hele Danmark m.h.t. vejnettet endnu, så tester vi her kun på byniveau og i København. Testen går fra Westend 26 (blind vej) på Vesterbro og så til Nokken Strandvej (ude ved Islands Brygge). Testen er udført 4. oktober 2010.

De Gule Sider – resultat 4,76 km (tjek ruten her selv) – kommentar : jeg bliver sendt op på Vesterbrogade, Rådhuspladsen, Langebro, Islands Brygge før jeg kommer frem. Det er ikke den mest logiske vej, hvis man er stedkendt i København.

Google Maps – resultat 4,9 km (tjek ruten her selv) – kommentar : jeg bliver sendt ned på Istedgade, op mod Postterminalen, Kalvebod Brygge, Fisketorvet og over Bryggebroen (cykel- og gangbro bygget i 2006), Islands Brygge og så ankomst til mit endemål – Her er Google i deres sjove hjørne, lidt i den ene retning og så den anden igen – en stedkendt ville aldrig lade sig føre ad den vej.

Bing Maps – resultat 3,54 km (tjek ruten her selv) Kommentar – Bing Maps har fat i den lange ende her – jeg bliver sendt i noget nær perfekt retning mod Fisketorvet, men ved Fisketorvet bliver jeg som gående sendt lidt af en omvej ned mod Bryggebroen, derefter på rette spor mod ankomststed.

CloudMade Maps – resultat 2,8 km (tjek ruten her selv) Kommentar – CloudMade Maps sender mig også i næsten perfekt retning mod Fisketorvet. Nede ved Fisketorvet sendes jeg ned via en trappe og hen mod en gangbro bagved Fisketorvet og så op til Bryggebroen – Det er helt klart den vej jeg også ville tage til fods for at komme hurtigst frem til Nokken Strandvej.

På denne lille enkelte gåtest er der vildt forskel i vejledningerne, og ruternes længde er fra ca 2,8 km til ca. 4,9 km. Vi skal have fordelt pladserne, på sidstepladsen er Google Maps, tredjepladsen skarpt forfulgt af De Gule Sider, andenpladsen går til Bing Maps, som klarede sig godt. Vinderen er CloudMade Maps og det skyldes den smutvej ad en trappe ved Fisketorvet, som gør hele forskellen.

Kun fordi lokale frivillige OpenStreetMap folk med lokalkendskab har kortlagt disse smutveje i nævnte gåtest, gør at CloudMade Map kan vinde. Her er vi ved kernen i hele OpenStreetMap projektet – “Lokalkendskab er guldet” – At lokalkendskab om veje, stier, smutveje, POIs (inkl. ting der forsvinder, bliver renset ud) , bliver nedfældet i OpenStreetMap, og derved kan være fuldt på omgangshøjde med kommercielle produkter, er nøglen til OpenStreetMaps overlevelse. Det kræver selvfølgelig at mange bakker projektet op.

Der findes andre rutevejledninger til OpenStreetMap, og der en del mennesker i udviklermiljøet der bruger tid på dette. Dette vil jeg ved et senere indlæg tage op.