Hardware Vorraussetzungen um auf Handy Karten aus osm Daten zu rendern

hallo
bisher hatte ich noch kein Smartphone und bin daher sehr unerfahren was die verschiedenen Apps für Hardwareanforderungen stellen.
Da ich jetzt aber gemerkt habe das schon die Desktopanwendung josm Probleme beim “laden” und\bzw. Rendern von großen und detailreichen offlinekarten aus vektordaten hat .
Da ich mir jetzt ein Handy anschaffen möchte würde ich gerne wissen auf welche Hardwarekomponenten es ankommt wenn ich offlinekarten
direkt auf dem Gerät aus Vektordaten rendern möchte . Also nicht nur einfachste Renderstile für das Straßenrouting sondern detailliertere
Topografische Karten zb. im HikeBike Stil aus offlineDatensätzen im GB Bereich.
Ist das mit heutigen mobilen geräten bereits möglich oder müssen die Karten zur flüssigen Darstellung vorher als Rasterkarten und POIs vorbereitet werden?
Wenn ja was ist in dem Fall am wichtigsten CPU Leistung ,Ram oder Grafikkarte … ?
danke

JOSM ist in erster Linie ein Editor, und nicht darauf ausgelegt, große und detailreiche Karten darzustellen, sondern eher kleine Bereiche zum Bearbeiten zu laden. Auch lädt es keine Vektordaten, sondern die zugrundeliegenden Geodaten, um dann „on the fly“ die Anzeige daraus zu berechnen. Insofern ist das Verhalten schon okay so.

OsmAnd arbeitet tatsächlich mit Vektordaten/-karten und ist auf auf meinem ’14er Moto G (war auch vor zwei Jahren „Einsteigerklasse“) nahezu flüssig in der Darstellung, selbst auf einem Defy ist’s noch nutzbar (wenn man gewisse Sachen beachtet).

Alternativ Mapsforge, z.B. die Freizeitkarte. Dort hat man allerdings kein Routing.

Sind Vektordaten nicht die “roheste” Ebene ? Geodaten bedeutet dann doch schon Vektordaten (für die “Shapes”) plus der dazu gehörigen Daten wie Tags und Beschreibungen usw. ?
Ich brauche jedenfalls beides und möchte auch beides! (alles) nach Bedarf anzeigen können.
Ein Routingprogramm braucht doch zu einem “Vektor pfad” auch noch zumindest mal Namen z.B. von Straßen.
Die Routingprogramme verzichten allerdings soweit ich weis meist auf das rendern detaillierter Strukturen (Gelände Oberflächen usw.)
Ich möchte aber unterwegs aus großen datensätzen (Länder - mehrere GB) nach bedarf alle POIs suchen ,an und abwählen können und mir die weitergehenden Informationen wie Notitzen Beschreibungen usw. anzeigen lassen. Ausserdem möchte ich eine detailreiche Karte auch in einem schönen Renderstil (zb. mit höhenlinien darstellen können ) josm kann das alles nicht obwohl es ein desktop Programm ist. Nicht das ein Editor unbedingt diese Funktionen alle bräuchte aber josm kann ja eben noch nicht einmal eine ein GB große offlinekarte (.osm = mit allen Daten) irgendwie laden und den Bildausschnitt flüssig rendern und anzeigen .
Das macht mir halt sorge wenn ich etwas ähnliches jetzt auf einem mobilen gerät machen möchte.

Nein, die Daten in den OSM-Dateien sind nicht ohne Weiteres mit einem simplen SVG-Viewer o.ä. anschaubar, sondern müssen verarbeitet werden. Eigentlich™ handelt es sich um in XML-Format gebrachte Datenbankinhalte, genausogut kann man den Kram lokal wieder in eine DB kippen und das wunderbar durchsuchen, Informationen raussuchen lassen, etc. – alles, was man halt Nettes mit DBs so machen kann – außer eben direkt auf den Bildschirm malen. Das ist der Job des Renderers, der zu diesem Zweck die Daten aus der Datenbank liest, einige zusätzliche Infos (z.B. „Welche Farbe und Breite soll eine Linie mit dem Tag ›highway=primary‹ bekommen?”, „Wo und wie soll ›name=…‹ bei ›building=…‹ drangemalt werden?“, „Welche Elemente sollen überhaupt dargestellt werden?“, […]) aus einem weiteren XML-File holt und mit den Infos ein großes buntes Bild, eine Karte quasi, ausgibt (oder halt viele kleine Bilder, die man am Ende zu einer Karte zusammensetzen kann).

Ich möchte es nochmal explizit herausstellen: *.osm-Files sind keine Karten, sondern simples XML mit Informationen, aus denen Renderer Karten machen können, die JOSM zweckmäßig (und sein Zweck ist das Editieren einzelner Sachen, nicht das Verwursten oder hübsche Anzeigen ganzer Bundesländer) darstellen und verändern kann, in denen man prima Sachen suchen und hinterlegen kann, etc., aber die keinerlei Anweisungen enthalten, wie dein Programm was darstellen sollte. Bei Interesse einfach mal selbst lokal eine kleine Datei anlegen, einige Sachen reinmalen und die Datei anschließend in einem guten (wegen Syntaxhighlighting – macht das Erkennen der Strukturen viel einfacher) Texteditor anschauen.

Edit:

Kein mir bekanntes Programm und keine App greift direkt auf *.osm-Files zurück, alle nutzen vorgerenderte Karten (OsmAnd halt welche in einem Vektorformat, viele andere halt die handelsüblichen Tiles im Bitmapformat). Alles andere wäre viel zu rechen- und speicherintensiv für heutige Mobilgeräte.

Hallo Patrick,

um auf deine Kernfrage zurückzukommen:

Wenn du dir ein Android-basiertes Gerät zulegen möchtest (was ich empfehle wegen der Anzahl der verfügbaren OSM-verbundenen Apps) dann mindestens 1 GB oder besser 2 GB Arbeitsspeicher, Quadcore-CPU und einen Schacht für externe SD-Karte.

Und heutzutage mindestens Android 5.X

Das hatte ich vergessen … klar die ganzen änderungssätze (und gps rohdaten ?) und so weiter braucht ein Viewer oder renderer natürlich nicht.
Trotzdem kann dann ja immernoch einiges übrig bleiben was dann in so einer “programmspezifischen” Vektordatei steht.

Eigentlich dachte ich ja im Gegensatz zu 3d Spielen usw. wäre das rendern von 2dimensionalen Flächen nicht besondern aufwendig
aber
selbst der OSM server hat ja teilweise gut was zu tun beim rendern.
Ich wollte letztens eine größere Geländestruktur mit sehr vielen Punkten (das wurde sicher nicht manuell erstellt) mit einer “scree” textur versehen und das Ergebnis wurde dann stundenlang nicht richtig dargestellt daraufhin habe ich es wieder rückgängig gemacht.

Im Gegensatz zu 3D-Spielen hast du einige 100.000 Daten (je nach Größe/Umfang auch mehr) zu bearbeiten – wenn du einer 3D-Engine mit der Datenmenge kommst, steigt die direkt aus. Auch wird so’ne Karte deutlich größer sein, als das, was der Bildschirm darstellen soll (das eigentliche Rendern einer Karte mit 1920x1080px dauert nur einen kurzen Moment – wovon der größte Teil der Zeit für das Aufbereiten der Daten draufgehen wird [was wiederum auch der Grund ist, warum Mobilgeräte derzeit ihre Karten nicht direkt aus den Daten rendern könnten]). Nicht zuletzt wird die Grafik von solchen Spielen von der GPU berechnet, kein mir bekanntes OSM-bezogenes Programm benutzt derzeit CUDA oder OpenCL.
tl;dr: das Rendern von Spielegrafik ist ’ne ganz andere Sache und mit dem, was hier passiert, nicht im Ansatz zu vergleichen.

Änderungssätze und GPS-Daten befinden sich üblicherweise nicht in den heruntergeladenen *.osm-Files.

Du wolltest was machen?

Ich wollte in den Alpen ein großes Gebiet mit dem Tag “natural=scree” bezeichnen das Gebiet hatte die relation “inner” bezüglich einem Waldgebiet und bestand aus wirklich sehr sehr vielen Punkten (wahrscheinlich irgendwie auf der basis von Farbunterschieden aus einem Foto heraus erstellt - denn ich kann mir nicht vorstellen das solche flächen manuell von irgendwem gezeichnet und schon garnicht vermessen werden weder Forstämter noch sonstwer könnte das machen … keine Ahnng)
So und letztendlich sollte diese Fläche ja jetzt mit einer “scree = Schutt\Schotter” Textur (kleine schwarze Punkte im Mapnik standart Stil)
dargestellt werden aber das war wie gesagt sehr lange nicht möglich irgendwie wurde das nicht richtig dargestellt und ich habe angenommen das dies einerseits mit den extrem vielen beteiligten Punkten und andererseits mit der vielleicht etwas aufwendigeren Textur (die nicht nur einfarbig ist) zusammen hing .

Unwahrscheinlich, dass es an der Textur oder an den vielen Punkten gelegen hat. Eher wahrscheinlich, dass du aus Versehen ein Multipolygon beschädigt hast. Wenn die betreffende Fläche nicht aus zehntausenden Tiles besteht, schafft selbst ein alter Laptop von vor sieben Jahren sowas in überschaubarer Zeit, und die Maschinen hinter openstreetmap.org sind um Größenordnungen leistungsfähiger. Andererseits können auch die manchmal Schluckauf haben oder anderweitig sehr beschäftigt sein.

Maps.me nutzt OpenGL um ihr eigenes mwm vektor format darzustellen
Ist auch ziemlich schnell, selbst auf einer alten Moto G erste generation Kartoffel wo ich es mal getestet habe läuft es mit nördlich von 10fps beim scrollen und <3s Renderzeit bis alle Inhalte einer neuen Zoomstufe dargestellt sind im dichtesten Stadtgebiet
Die Dokumentation dazu ist aber eher mau

Ja, die Darstellung ist bei vielen Sachen, gerade im Mobilbereich, hardwarebeschleunigt. Allerdings ging‘s um das direkte Darstellen von OSM-Daten, und da könnte man die GPU nunmal allenfalls mit CUDA (nVidia) oder OpenCL (nicht -GL) zur Berechnung der Grafik aus den Rohdaten heranziehen – und das macht derzeit keiner.

Hallo

ich möchte die obige Frage erweitern und fragen welche Hardware neuesten GPS Chips bei den Android Smartphones drin hat.

Abei bitte keine Antworten “…wie das kann man googeln”. Mir geht es um erprobte (!) Erfahrungen die was über die GPS Genauigkeit aussagen.
Hintergrund ist, dass mein GPS Logger BT747 hinüber ist. Für Karten und loggen nutze ich ein Huawei G730 mit dem ich zufrieden bin.
Ich suche jetzt als Ersatz für den BT747 ein “kleines” Smartphone mit “sehr gutem” GPS Empfänger und als LoggerSoftware eventuell Oruxmaps wie auf dem G730. Das Gerät soll ausschließlich als Logger dienen.

Ich bin für ALLE Tipps die zum Ziel führen dankbar.

Ich kann dir nur sagen, dass mein 2011 vorgestelltes Defy+ in Punkto Genauigkeit meinem ’14er G nicht nachsteht. Es benötigt lediglich länger für den Fix und zeigt dann typischerweise was von 8-12 Satelliten an, während das G im Normalfall in wenigen Sekunden weiß, wo es ist und teils bis zu 20 Satelliten anzeigt (wo’s die her hat, weiß ich nicht – mit GPS alleine ist das technisch nicht möglich). Dafür behält das Defy unter schlechteren Bedingungen eine bessere Genauigkeit bzw. überhaupt den Empfang, und sein Akku hält beim reinen Loggen (via osmtracker) mehr als doppelt so lange, wie der des G. Mit Erfahrungen von neueren Geräten kann ich hingegen nicht dienen, würde aber davon abraten, zu sagen „Gerät X hat den neusten Chip und muss daher genauer/besser als Gerät Y mit einem Chip der vorherigen Generation sein“.

Das ist eigentlich ein neues Thema.

Mit Billig-Smartphones kann ich nicht dienen, aber als Anhaltspunkt, was mit Smartphone gehen kann, ein paar Daten.
Aufgeführt sind mittlere Abweichung und Ausfälle gegenüber einem Dutzend gemittelter Tracks aus sechs weiteren Loggern, jeweils parallel aufgenommen und zwar zu Fuß, mit Rad und mit Auto, insgesamt etwa 40000 Trackpunkte.
Samsung S7 4,2 m 2,1 %
Sony Xperia Z 4,4 m 0,3 %
Zum Vergleich zwei Logger:
Wintec G_Rays 2 2,6 m 0,7 %
Garmin Oregon 3,0 m 1,3 %

Die Chips, egal ob mit oder ohne GLONASS, spielen für die Genauigkeit eine geringere Rolle, wichtiger ist die Antenne und vor allem deren Plazierung. Da gibt es ziemliche Unterschiede selbst zwischen Modellversionen. Mein erstes Galaxy S, das wegen defektem GPS-Chip in dieser Aufstellung nicht dabei ist, lag eher bei 10 m und 20 %.

Sieh auch mal in den 2016er-Teil des Threads
http://forum.openstreetmap.org/viewtopic.php?pid=583379#p583379

Weide