Wo war ich im 2023?

Hier einer der Posts zu meinem 2023. Dieser und andere Posts sind unter dem Tag jahresrückblick23 zu finden.

Christian hat mich daran erinnert, dass ich noch darüber schreiben wollte, wo ich dieses Jahr war.

Dank dem ‘Premium’-Abo von WHIB habe ich einen Überblick der Positionen meines Telefons während der letzten 5 Jahre in einer CSV-Datei, die mit etwas Python-Code einfach auswertbar ist.
Schlussendlich habe ich 20700 Datenpunkte mit einer Position im 2023.
Ich schalte mein Telefon in der Nacht aus, also habe ich im Schnitt (bei 8h ausgeschaltetem Telefon) ca. alle 20 Minuten einen Datenpunkt.

Im Sommer sind wir mit unserer fahrenden Ferienwohnung an der Atlantikküste gewesen, haben auf lustigen, eigentlich privaten Campingplätzen übernachtet und viel unsere mitgenommenen Velos bewegt.
Im Herbst haben wir die Nordostküste von Sardinien befahren und waren so viel wie möglich nicht auf Campingplätzen, sondern haben am Strand übernachtet, bis der Strom und Kühlschrank leer und das WC voll waren.

Wir sind insgesamt 910 km in Nord-Süd, und 893 km in Ost-West-Richtung unterwegs gewesen.

Im Median war ich auf dem Bänkli beim Elefantenspili.
Am nördlichsten waren wir etwas südlich von Paris, auf der Autobahn, am östlichsten irgendwo südlich von Bastia in Korsika (wo wir nicht waren, und sich wahrscheinlich mein Handy bei der Fährüberfahrt von Genua nach Porto Torres eingebucht hat), am südlichsten irgendwo nach 3 Nächten am schönsten Strand von Sardinien (Is Arutas, der uns von zwei wunderbaren alten Menschen ein paar Nächte vorher empfohlen wurde), am westlichsten irgendwo auf dem Weg zum Strand auf Noirmoutier.
Der höchste Punkt war zum Start in die Skisaison vor gut einem Monat auf dem kleinen Matterhorn in Zermatt.

Unten ist die Heatmap meiner Positionen im 2023 eingebunden, so dass Reinzoomen in die Karte und Raussuchen anderer Ausflüge selbst möglich ist.

Die komplette Analyse ist auf GitHub zu finden, falls jemand dies für sich nachbauen will.
Weil die Originaldatei mit meinen Positionen auch die genauen Zeiten enthält, liefere ich die aus datenschutztechnischen Gründen nicht mit.
Eine komplette Version meiner Analyse als Notebook mit allen Karten ist dank dem coolen NBViewer hier zu sehen.

Der nächste Jahresrückblick wird dann noch etwas spannender.
Wir planen von Mitte April bis Mitte Juli eine grosse Auszeit und werden mit den Kindern Nationalpärke auf einem anderen Kontinenten besuchen.

Die Bahnhofstrassen in jeder Schweizer Sprachregion

Letzhin hatte ich es bei einem Fiirabe-‘Getränk der Wahl’ von Bahnhofstrassen, wir diskutierten, ob’s ächt fast in jeder Gemeinde eine solche gibt.
Und welches ächt die längste Bahnhofstrasse der Schweiz ist.
Solche lustigen Fragen völlig over-engineered zu klären ist ja etwas, das ich gerne mache, drum das untenstehende.

Amanda Mc Cann hat ein Tool entwickelt, mit dem sogenante ways in OpenStreetMap zusammenzufassen und zu analysieren.
Im OpenStreetMap Datenmodell werden Strassen1 manchmal in einzelne Segmente aufgeteilt, wenn Eigenschaften daran unterschiedlich sind, wie beispielsweise die Marktgasse in Bern, die als 11 einzelne ways erfasst ist.

Amandas Tool osm-lump-ways fasst die aus datentechnisch getrennten Dinge wieder zusammen, und macht es möglich, damit etwas Datenjonglage zu betreiben.
Mit dem Tool ist es z.B. möglich, nach zusammenhängenden ‘Bahnhofstrassen’ zu suchen und diese der Länge nach zu sortieren.
Damit lässt sich die Eingangs gestellte Frage nach der längsten Bahnhofstrasse der Schweiz ziemlich einfach beantworten.

Das Tool installiert sich flink so (sofern vorher auch brew install rust gemacht wurde).

cd ~Dev
git clone git@github.com:amandasaurus/osm-lump-ways.git
cd osm-lump-ways
cargo install osm-lump-ways

Die Geofabrik bietet einen Service an, mit dem OpenStreetMap-Daten einfach runtergeladen werden können, sogenannte ‘Extracts`, die etwas einfacher im Handling sind, als die 132 GB an kompletten, komprimierten Daten.

Ein einfacher Befehl wie unten und schwupps sind die 424 MB OpenStreetMap-Daten nur aus der Schweiz auf der Festplatte.

wget https://download.geofabrik.de/europe/switzerland-latest.osm.pbf

Nachdem mit ./osm-lump-ways -h kurz die Hilfe des Tools durchgeschaut wurde ist es einfach, die längste Bahnhofstrasse der Schweiz rauszuklauben, nämlich mit ./osm-lump-ways -i switzerland-latest.osm.pbf -f highway -f name~"[b|B]ahnhof" -o ch-bahnhof.geojson --only-longest-n-per-file 1.
Der Aufruf sucht im neuesten Export aus der Schweiz nach allen highway-Tags, führt diejenigen mit dem Namen Bahnhofstrasse zusammen und schreibt die längsten zusammenhängenden davon in eine geoJSON-Datei.
“Leider” ist die so gefundene Bahnhofstrasse die als Fläche erfasste Fussgänger-zone am Bahnhof in Zürich und nicht ganz das was wir suchen.
Mit kurzer Nachhilfe von Amanda können wir den Aufruf durch -f highway?pedestrian2 erweitern um Trottoirs und Fussgängerzonen auszuschliessen.

Also liefert uns

./osm-lump-ways -i switzerland-latest.osm.pbf -f highway -f highway?pedestrian -f name~"[b|B]ahnhof" -o ch-bahnhof.geojson --only-longest-n-per-file 1
./osm-lump-ways -i switzerland-latest.osm.pbf -f highway -f highway?pedestrian -f name~"la [g|G]are" -o ch-gare.geojson --only-longest-n-per-file 1
./osm-lump-ways -i switzerland-latest.osm.pbf -f highway -f highway?pedestrian -f name~"[s|S]tazion" -o ch-stazion.geojson --only-longest-n-per-file 1
./osm-lump-ways -i switzerland-latest.osm.pbf -f highway -f highway?pedestrian -f name~"[s|S]taziun" -o ch-staziun.geojson --only-longest-n-per-file 1

die längste ‘Bahnhofstrasse’, die längste ‘Rue de la Gare’, die längste ‘Via della Stazione’ sowie die längste ‘Via de la Staziun’ jeweils als geoJSON-Datei.
Diese sind als Karte unten eingebunden.

Die längste ‘Bahnhofstrasse’ der Schweiz mit 3.14 km in Unterneuhaus (am Rand der Schweiz).


Die längste ‘Rue de la Gare’ der Schweiz mit 2.29 km in Sonceboz-Sombeval.


Die längste ‘Via della Stazione’ der Schweiz mit 1.69 km in Airolo.


Die längste ^Via de la Staziun’ der Schweiz mit 1.05 km in Pontresina.


Das Spiel können wir mit

./osm-lump-ways -i switzerland-latest.osm.pbf -f highway -f highway?pedestrian -f name~"[b|B]ahnhof" -o ch-bahnhof-all.geojson
./osm-lump-ways -i switzerland-latest.osm.pbf -f highway -f highway?pedestrian -f name~"la [g|G]are" -o ch-gare-all.geojson
./osm-lump-ways -i switzerland-latest.osm.pbf -f highway -f highway?pedestrian -f name~"la [s|S]tazion" -o ch-la-stazion-all.geojson
./osm-lump-ways -i switzerland-latest.osm.pbf -f highway -f highway?pedestrian -f name~"la [s|S]taziun" -o ch-la-staziun-all.geojson

wiederholen und wir haben dann jeweils alle solchen in einer jeweiligen Datei.
Diese alle geoJSON-Dateien schieben wir in eine sogenannte uMap und stellen für jede Sprachregion eine hübsche Farbe ein.
Und Voilà, eine Karte davon ist unten eingebunden zu sehen.

See full screen

Alle sprachregiongetrennten Bahnhofstrassen, die längste davon jeweils als besonders dick gezeichnet.


  1. Die eben als way abgebildet werden. ?
  2. Achtung, das “?” hier sollte ein “≠”, sein, genau wie Amanda hier schreibt, aber WordPress will das in Code-Zeilen nicht korrekt darstellen. ?

Wo war ich im 2022?

Hier einer der Posts zu meinem 2022.
Dieser und andere Posts sind unter dem Tag jahresrückblick22 zu finden.

Dieses Jahr haben wir uns mehr als andere Jahre in einem Fahrzeug bewegt.
Das ist eine längere Geschichte; kurz zusammengefasst sind wir seit Ostern Besitzer eines ziemlich grossen Fiat Ducatos, der sich auch als Camper identifiziert.
Das hat zur Folge, dass wir an einigen noch unbekannten Orten in der Schweiz waren und dort lustige Tage und Wochenenden verbracht haben.

Wie schon ein paar Jahre habe ich dank dem ‘Premium’-Abo von WHIB einen Überblick der Positionen meines Telefons während des ganzen Jahres in einer CSV-Datei.
Schlussendlich habe ich 23500 Datenpunkte mit einer Position im 2022.
Ich schalte mein Telefon in der Nacht immer aus, also habe ich im Schnitt (bei 8h Telefon ‘off’) ca. alle 15 Minuten einen Datenpunkt.

Aufgrund der Sommerferien an den Dolomiten und den Herbsferien in Sardinien sind wir fast 400 km in Ost-West-Richtung und knapp 800 km in Nord-Süd-Richtung unterwegs gewesen.
Im Median war ich im Beachcenter Bern, nämlich als ich dort Festbänke und Tische für unser Strassenfest abholte.
Am nördlichsten wiederum in Basel, am östlichsten in San Giovanni di Fassa neben Bolzano, am westlichsten in der Nähe von Lausanne und am südlichsten in Urzulei in Sardinien.
Der höchste Punkt war zum Start in die Skisaison vor einem Monat auf dem kleinen Matterhorn in Zermatt.

Unten ist die Heatmap meiner Positionen im 2022 eingebunden, so dass Reinzoomen in die Karte und Raussuchen anderer Ausflüge selbst möglich ist.

Die komplette Analyse ist auf GitHub zu finden, falls jemand dies für sich nachbauen will.
Weil die Originaldatei mit meinen Positionen auch die genauen Zeiten enthält, liefere ich die aus datenschutztechnischen Gründen nicht mit.
Eine komplette Version meiner Analyse als Notebook mit allen Karten ist dank dem coolen NBViewer hier zu sehen.

EqualStreetNames Bern. Oder die Geschlechterverteilung der Strassennamen in meiner Heimatstadt.

Bern

Wer mich ein bisschen kennt, weiss, dass ich einen OpenStreetMap-Fetisch habe.
Letzthin bin ich via WeeklyOSM auf EqualStreetNames gestossen.
Das Team von EqualStreetNames visualisiert, wie die Geschlechterverteilung der Strassennamen in einer Stadt aussieht, z.B. für Brüssel.
Das Team von EqualStreetNames hat eine Vorlage erstellt, damit eine solche Strassenbenamsungsgeschlechterverteilungsvisualisierung für jede beliebige Stadt erstellt werden kann.
Da ich Verknüpfungen von verschiedenen Datenquellen liebe und ’a sucker for nice visualizations’ bin, hab ich mir gedacht, das sollte doch auch für Bern gemacht werden.
Etwas später war die Vorlage angepasst und noch einen Moment später war https://bern.equalstreetnames.eu/ mit der Ersten nach dem Geschlecht der Namensgebebeerin visualisierten Strasse online, der Hardeggerstrasse.

Vor einer Woche hab’ ich dann ein paar OpenStreetMap-Aktive in Bern angeschrieben, ob sie mithelfen, die Strassen mit den notwendigen (und richtigen) name:etymology:wikidata-Tags zu versehen, damit diese Strassen dann in der Visualisierung auftauchen.
Dieser Tag beschreibt die Namensgeber*in in maschinenlesbarer Form, so dass automatisch das Geschlecht ausgelesen und visualisiert werden kann.

Eine Woche später haben mindestens thisss, ydrgbjo, freaktechnik, chatelao und orycteropus1 (sortiert in Reaktionszeitreihenfolge) mitgeholfen, dass von 908 Strassennamen in Bern schon 177 mit dem name:etymology:wikidata-Tag versehen sind [1].

Das Resultat der Arbeit ist hier zu sehen: EqualStreetNames.Bern.

Von den 177 Strassen, die bis jetzt eine*r Namensgeber*in zugeordnet sind, sind 151 nach einem Mann und 24 nach einer Frau benannt.
Die restlichen 731 Strassen sind entweder nach irgendwas sonst benannt, oder wurden noch nicht richtig zugeordnet.

Wer mithelfen möchte, am Repository für Bern rumzubasteln, oder dasselbe für ’seine’ Stadt nachzubauen möchte, kann sich gerne direkt bei mir melden.

[1]: Teilweise sogar mit zwei solchen Tags, wie die Tschäppätstrasse, die nach beiden Tschäppäts benannt ist.

PS1: chatelao hat von einer Bekannten aus der Politik eine Liste mit allen Strassenbeschilderungungen aufgetrieben, die wir mit Quellenangabe “Geodaten Stadt Bern” verwenden dürfen und in eine Tabelle abgefüllt.

PS2: ydrgbjo hat eine Wikimedia Commons-Kategorie erstellt; er und ich befüllen diese mit Strassenschilder-Fotos, damit unser Tagging nachvollziehbar ist.

PS3: Das Interdisziplinäre Zentrum für Geschlechterforschung der Uni Bern hat es in den zwei vergangenen Wochen noch nicht mal geschafft auf meine Mail-Anfrage nach Strassennamengeschlechteraufteilung zu reagieren, auch wenn der Barbara-Lischetti-Platz direkt vor deren Tür liegt :

PS4: Das Bild mit den Strassen von Bern im Header habe ich schnell mit der Hilfe von osmnx und dessen Beispiel-Notebook 7 gemacht…

Wo war ich im 2019

Hier einer der Posts zu meinem 2019.
Eine Darstellung meiner Aufenthaltsorte im vergangenen Jahr.
Dieser und andere Posts sind unter dem Tag jahresrückblick19 zu finden.

Wie letztes Jahr lief das ganze Jahr über WHIB im Hintergrund auf meinem iPhone SE.
Das heisst, dass ich jetzt ca. 18000 Datenpunkte habe, wo sich mein Telefon (und dadurch mit hoher Wahrscheinlichkeit ich) im 2019 befunden hat.

Im 2109 war ich drei Mal ausserhalb der Landesgrenzen.
Im Mai war ich an einer Konferenz in Belgien und habe dort die Geschichte mit den Zebrafischen präsentiert, über die ich hoffentlich bald mehr schreiben kann.
Auf der Karte, die ganz unten in diesem Post eingebunden ist, zieht sich die Zugfahrt dorthin hübsch als Linie von Bern bis Mechelen in Belgien.
Im Juli waren wir mit einem coolen, gemieteten Camper in der Umgebung des Comer See unterwegs.
Im Oktober fuhren wir mit dem Zug nach Rapallo und haben den sprichwörtlichen Steinwurf weit vom Meer weg übernachtet, ein paar entspannte Tage an der ligurischen Küste verbracht, bevor wir auf dem Rückweg noch ein paar Tage in Genua die spannende Stadt erkundet haben.

Von Mechelen in Belgien bis Prato (dem Leuchtturm unter Portofino) habe ich also ca. 750 km in Nord-Süd-Richtung gemacht.
Im Durchschnitt bin ich fast zuhause geblieben, nämlich in Brenzikofen :)
Ende November habe ich trotz kaputtem Knie die SkiTelemark-Saison gestartet.
Die Bergstation des Sessellifts auf den Furgsattel war der höchste Punkt, an dem ich mich im 2019 befunden habe.

Unten ist die Heatmap meiner Positionen im 2019 eingebunden.
Die komplette Analyse ist hier auf GitHub zu finden, falls jemand dies für sich nachbauen will.
Weil die Originaldatei mit meinen Positionen auch die genauen Zeiten enthält, liefere ich die aus datenschutztechnischen Gründen nicht mit.
Eine kommplette Version meiner Analyse als Jupyter-Notebooks mit allen Karten ist (zur Ansicht) hier zu finden.

1000e Bilder für OSM bereitstellen | Mapillary mit GoPro Hero 4 Session

Vor einiger Zeit hab ich ja schon mal darüber geschrieben, wie mensch die Welt kostenloses Kartenmaterial verbessern kann.

Da das Zusammenspiel der Mapillary-App mit der GoPro Hero 4 Session nicht ganz problemfrei ist habe ich letzthin beim Velopendeln ‘was neues versucht.

Wir waren ja eine Woche mehr oder weniger in den Ferien am Thunersee, ich bin dann doch zweimal von dort aus arbeiten gegangen, einmal mit A. im Zug (sie ging in die Kita), einmal mit dem Velo.
Mit der Zeitraffer-Funktion der Kamera habe ich eine gute Stunde Fotos vom Lenker aus gemacht, dazu mit der Aktivitäts-Uhr die Positionen aufgenommen.

Da der korrekte Transfer der gut 2000 Bilder zu Mapillary doch nicht ganz einfach war, beschreibe ich hier den Ablauf, auch damit ich das das nächste Mal nachschauen kann [1].

Als erstes muss mensch das Garmin TPX-File in ein normales GPX-File umwandeln (Das File landet übrigens dank Tapiriik automatisch auf meinem Computer).
Dank GPSBabel und untenstehendem Kommando geht das ganz easy.

[code lang=bash]
gpsbabel -i gtrnctr -f ~/Dropbox/Apps/tapiriik/2017/08017.08.04.Vom\ Ländli\ us\ ga\ schaffe_Cycling.tcx -o gpx -F ~/Desktop/thunbern.gpx
[/code]

Jetzt müssen wir die Fotos vorbereiten, d.h. korrekt geotaggen und für Mapillary vorbereiten.

[code lang=bash]
cd ~/Dev
git clone git@github.com:mapillary/mapillary_tools.git
[/code]

lädt die Mapillary Tools auf den Kompi. Theoretisch würde das geotag_from_gpx.py-Skript das geotaggen erledigen. Das Skript hat aber einen Fehler, also muss mensch diesen erst korrigieren.

Dann klappt das Geotagging wunderbar mit

[code lang=bash]
python ~/Dev/mapillary_tools/python/geotag_from_gpx.py ~/Pictures/GoPro/2017-08-04/HERO4 Session 1/Time Lapse 3/ ~/Desktop/thunbern.gpx
[/code]

Zum hochladen der Bilder müssen zuerst sogenannte Umgebungs-Variabeln gesetzt werden. Die genauen Werte für deinen User-Account sind in deinen Mapillary settings zu finden und landen in deinem ~/.bashrc.

[code lang=bash]
export MAPILLARY_USERNAME='habi'
MAPILLARY_PERMISSION_HASH='GanzVieleBuchstaben'
export MAPILLARY_SIGNATURE_HASH='NochmalVieleBuchstaben'
[/code]

Dann geht das hochladen der Bilder flink und automatisch mit

[code lang=bash]
python ~/Dev/mapillary_tools/python/upload_with_authentication.py ~/Pictures/GoPro/2017-08-04/HERO4\ Session\ 1/Time\ Lapse\
3/
[/code]

(Wenigstens theoretisch, ich musste die Vorgänge geotagging und hochladen ein paar Mal wiederholen, bis alle Bilder hochgeladen waren.)

Das Ganze sieht dann in etwa so aus.

Und die Fotos ermöglichen es dann dem geneigten OSM-Nutzer oder der OSM-Nutzerin, anhand der Fotos die OpenStreetMap zu verbessern, sei das z.B. um einen neuen Kreisel einzuzeichnen oder generell ein paar Verbesserungen zu machen.

[1]: Oder mit den insgesamt knapp 3000 Photos von der Hallo Velo-Runde wiederholen konnte.