x

Osmosis - nur bestimmte Daten


  1. Osmosis - nur bestimmte Daten · support98 (Gast) · 21.03.2011 08:58 · [flux]

    Hallo,
    ich möchte gerne aus einer Deutschlanddatei alle TMC-Strecken/Punkte mit osmosis herausfiltern. Das Problem, das ich habe, besteht darin, dass manche Informationen in Relations gespeichert sind. Nur die Relations herauszufiltern ist kein Problem. Aber wie komme ich an die dazugehörigen Nodes und Ways und diese wiederum mit ihren entsprechenden Nodes? Kennt da jemand einen passenden Ansatz?

    Schon mal vielen Dank für Eure Mühe.


    • Re: Osmosis - nur bestimmte Daten · !i! (Gast) · 21.03.2011 09:12 · [flux]

      willkommen support98 🙂

      da musst du denke ich den "--tag-filter" nutzen und für deine Relation etwas einbauen. Bedenke, dass andere Filter evtl. deine Relationen schon vorher rausschmeißen! Ich bin auch nicht ganz sicher, wie sich das mit der Performace verhält, da er da IMHO mehr im RAM halten muss.


    • Re: Osmosis - nur bestimmte Daten · ajoessen (Gast) · 21.03.2011 09:22 · [flux]

      support98 wrote:

      Hallo,
      ich möchte gerne aus einer Deutschlanddatei alle TMC-Strecken/Punkte mit osmosis herausfiltern. Das Problem, das ich habe, besteht darin, dass manche Informationen in Relations gespeichert sind. Nur die Relations herauszufiltern ist kein Problem. Aber wie komme ich an die dazugehörigen Nodes und Ways und diese wiederum mit ihren entsprechenden Nodes? Kennt da jemand einen passenden Ansatz?

      Schon mal vielen Dank für Eure Mühe.

      Das geht nur mit rel2gpx,sofern du die ID der relation hast:
      http://mr-unseld.de/?q=de/node/170

      Neben der GPX-Datei wird auch eine osm-Datei erzeugt.

      gruß,
      ajoessen


    • Re: Osmosis - nur bestimmte Daten · support98 (Gast) · 21.03.2011 09:26 · [flux]

      ajoessen wrote:

      Das geht nur mit rel2gpx,sofern du die ID der relation hast:
      http://mr-unseld.de/?q=de/node/170

      Neben der GPX-Datei wird auch eine osm-Datei erzeugt.

      gruß,
      ajoessen

      geht das halbwegs automatisch? das sind ja tausende relationen mit noch mehr ways und nodes.


    • Re: Osmosis - nur bestimmte Daten · ajoessen (Gast) · 21.03.2011 09:31 · [flux]

      support98 wrote:

      geht das halbwegs automatisch? das sind ja tausende relationen mit noch mehr ways und nodes.

      Ja, du kannst alle Relations-IDs in eine Textdatei schreiben, und alle in einem Rutsch extrahieren lassen.

      Gruß,
      ajoessen


    • Re: Osmosis - nur bestimmte Daten · !i! (Gast) · 21.03.2011 09:59 · [flux]

      Danke, das kannte ich auch noch nicht, habe mal ne Wiki Seite angelegt


    • Re: Osmosis - nur bestimmte Daten · support98 (Gast) · 21.03.2011 14:03 · [flux]

      muss man das Programm verstehen? wo gibt man da was ein?


    • Re: Osmosis - nur bestimmte Daten · ajoessen (Gast) · 21.03.2011 14:11 · [flux]

      support98 wrote:

      muss man das Programm verstehen? wo gibt man da was ein?

      Das ist ein Perl-Programm. Dazu musst du dir Active Perl installieren, und die im Text erwähnten Zusatzmodule.

      Dann erstellst du dir ne Batch nach folgendem Muster:
      rel2gpx.pl -i D:\Karten\osm\Geofabrik\nordrhein-westfalen.osm -f linerel.txt -g -z

      wobei die relations-IDs in der datei linerel.txt im gleichen Verzeichnis stehen.

      Sofern du unter Windows arbeitest: Da muss man noch an der osm.pm rumschrauben. Linux und Windows verhalten sich da unterschiedlich, was das Öffnen von Dateien (binär oder nicht) betrifft. Leider kann ich das erst morgen klären :-(

      Gruß,
      ajoessen


    • Re: Osmosis - nur bestimmte Daten · Marqqs (Gast) · 22.03.2011 16:32 · [flux]

      Eine weiter Alternative, wenns einfach nur ums Filtern geht:
      http://wiki.openstreetmap.org/wiki/DE:Osmfilter


    • Re: Osmosis - nur bestimmte Daten · ajoessen (Gast) · 23.03.2011 07:47 · [flux]

      Marqqs wrote:

      Eine weiter Alternative, wenns einfach nur ums Filtern geht:
      http://wiki.openstreetmap.org/wiki/DE:Osmfilter

      ... sofern man Linux hat, ja.

      gruß,
      ajoessen


    • Re: Osmosis - nur bestimmte Daten · Marqqs (Gast) · 23.03.2011 08:50 · [flux]

      ajoessen wrote:

      ... sofern man Linux hat, ja.

      Naja, das Programm liegt im Quellcode als einzelne handliche Datei vor und kann auf sehr vielen Plattform übersetzt werden.

      Aber du hast Recht, unter Windows sind die meisten User gewohnt, Software fertig zubereitet als EXE zum Download vorzufinden. Ging mir früher zu Windows-Zeiten auch so. :-)
      Ich kümmer mich mal um eine Binary für Windows - wie es sich gehört.


    • Re: Osmosis - nur bestimmte Daten · ajoessen (Gast) · 23.03.2011 09:17 · [flux]

      Marqqs wrote:

      ajoessen wrote:

      ... sofern man Linux hat, ja.

      Naja, das Programm liegt im Quellcode als einzelne handliche Datei vor und kann auf sehr vielen Plattform übersetzt werden.

      Aber du hast Recht, unter Windows sind die meisten User gewohnt, Software fertig zubereitet als EXE zum Download vorzufinden. Ging mir früher zu Windows-Zeiten auch so. :-)
      Ich kümmer mich mal um eine Binary für Windows - wie es sich gehört.

      Ja, das wäre schön. Am besten gleich mit pbf-Support.

      Die Fähigkeit, selber zu Kompilieren ist nun mal nicht allen Nutzern gegeben. Mapper sind ja nicht unbedingt Programmierer.

      Gruß,
      ajoessen


    • Re: Osmosis - nur bestimmte Daten · ajoessen (Gast) · 23.03.2011 09:20 · [flux]

      ajoessen wrote:

      support98 wrote:

      muss man das Programm verstehen? wo gibt man da was ein?

      Das ist ein Perl-Programm. Dazu musst du dir Active Perl installieren, und die im Text erwähnten Zusatzmodule.

      Dann erstellst du dir ne Batch nach folgendem Muster:
      rel2gpx.pl -i D:\Karten\osm\Geofabrik\nordrhein-westfalen.osm -f linerel.txt -g -z

      wobei die relations-IDs in der datei linerel.txt im gleichen Verzeichnis stehen.

      Sofern du unter Windows arbeitest: Da muss man noch an der osm.pm rumschrauben. Linux und Windows verhalten sich da unterschiedlich, was das Öffnen von Dateien (binär oder nicht) betrifft.

      Der Vollständigkeit halber:


      In ActivePerl werden Dateien standardmäßig im Textmodus geöffnet, nicht im Binärmodus wie unter Linux. Fügt man in osm.pm hinter

      open ($file, "<", $fileName) || die "can't open osm file" ;

      die Zeile

      binmode ($file);

      ein, dann funktioniert es.


      Gruß,
      ajoessen


    • Re: Osmosis - nur bestimmte Daten · Marqqs (Gast) · 23.03.2011 17:38 · [flux]

      ajoessen wrote:

      Ja, das wäre schön. Am besten gleich mit pbf-Support.

      Die Sinnhaftigkeit des PBF-Formats hat mich noch nicht überzeugt. Von all den vielen Zielen, die PBF am Anfang hatte, sind in der Praxis nur die kleineren Dateigrößen übrig geblieben. Doch wenn man das als Ziel ansetzt, gäbe es Formate, die dafür besser geeignet wären. Ich will aber die Diskussion darüber nicht in diesen Thread hängen, denn dort da sie nicht hin. :-)
      Unabhängig davon will ich eine PBF-Input-Möglichkeit für osmfilter nicht ausschließen, vielleicht kommts irgendwann doch. Bis dahin kann ich nur empfehlen, das Programm osm2pbf zu verwenden - oder gleich die .osm.bz2-Datei runterzuladen.

      ajoessen wrote:

      Die Fähigkeit, selber zu Kompilieren ist nun mal nicht allen Nutzern gegeben. Mapper sind ja nicht unbedingt Programmierer.

      Du hast ja völlig Recht. :-)
      Habs grad unter Linux für Windows übersetzt, ist ja kein Problem.
      Download: http://wiki.openstreetmap.org/wiki/DE:O … r#Download


    • Re: Osmosis - nur bestimmte Daten · ajoessen (Gast) · 24.03.2011 07:58 · [flux]

      Marqqs wrote:

      Die Sinnhaftigkeit des PBF-Formats hat mich noch nicht überzeugt. Von all den vielen Zielen, die PBF am Anfang hatte, sind in der Praxis nur die kleineren Dateigrößen übrig geblieben.

      Die Verarbeitung in osmosis geht um einiges schneller als .osm oder .osm.bz2. Wenn das erst mal in deinem Porgramm eingebaut ist, wirst du nichts anderes mehr nutzen wollen ;-)

      Gruß,
      ajoessen


    • Re: Osmosis - nur bestimmte Daten · misterboo (Gast) · 24.03.2011 10:15 · [flux]

      ja die Geschwindigkeit sehe ich auch als einen großen Vorteil. Ich arbeite für mein Projekt mit einer Kartenregion, die grenzüberschreitend ist und nur mit dem pbf Format bekomme ich da die anstehenden Arbeiten mit einem Durchschnittsrechner noch in akzeptabler Zeit erledigt.