QGIS-Koordinatengenauigkeit

11

An welcher (xten) Dezimalstelle der Koordinatenwerte, die QGIS definiert, ist ein Satz von Punkten doppelt vorhanden?

Ich hatte gedacht, QGIS handhabt ~ 15. Dezimalstelle; aber es war die Einschränkung nur, weil ich hauptsächlich an Shapefiles gearbeitet hatte.

Geben Sie hier die Bildbeschreibung ein

Das Limit gilt jedoch nicht, wenn ich eine andere Datenquelle wie eine temporäre Scratch-Ebene auswähle.

Geben Sie hier die Bildbeschreibung ein

Unter Verwendung von Dummy-Daten wie unten habe ich einen schnellen Test mit zwei Werkzeugen durchgeführt, um den kleinsten Wert zu finden, mit dem Koordinatenunterschiede identifiziert werden können:

  • QGIS-Geoverarbeitung: Delete duplicate geometries
  • MMQGIS Plugin: Delete Duplicate Geometries

Geben Sie hier die Bildbeschreibung ein

Geben Sie hier die Bildbeschreibung ein

Die Ausgabe von entspricht QGIS Delete duplicate geometriesden obigen Eingabedaten (alle 20 Datensätze wurden beibehalten). Dies kann bedeuten, dass QGIS der Ansicht ist, dass sie alle unterschiedlich sind. Übersteigt diese Grenze 1e-29 (oder 1e-30) in diesem kleinen Test?

Nur zum Vergleich, MMQGIS Delete Duplicate Geometriesunten produziert. Es scheint, dass MMQGIS die 16. oder 17. Dezimalstelle als Grenze festlegt.

Geben Sie hier die Bildbeschreibung ein


[Bearbeiten]

Ich fürchte, ich war mir nicht sicher, was der zentrale Teil meiner Frage war. Mein Ziel ist es, die Beziehung zwischen Koordinatenwerten und den Duplikaten / Überlappungen zu verstehen, wie im ersten Absatz meiner Frage angegeben. Hoffentlich kann uns diese Art von Wissen helfen, überlappende Funktionen leicht zu kontrollieren, indem wir die Ausdrücke des Feldrechners optimieren.

Das zugrunde liegende Problem, auf das ich mich konzentrieren wollte, war jedoch, dass die Dezimalstellen QGIS Punkte (Knoten) als überlappend erkennen, die je nach Datenquelle zu variieren scheinen.

Wenn wir Shapefiles für unsere Ebene verwenden, verarbeitet QGIS ~ 15. Dezimalstelle und kleinere Unterschiede (am 16. oder 17.) werden nicht erkannt ... MMQGIS ist ebenfalls von dieser Einschränkung betroffen (für meine Augen). Wenn wir eine zeitlich verkratzte Ebene oder DB-Ebenen erstellen, geht diese Einschränkung weit über die 30. Ebene hinaus. Diese Verhaltensänderung lässt mich wundern.

Kazuhito
quelle
2
Mit ArcGis können Sie beim Erstellen von Feature-Classes in einer Datenbank den minimalen Unterschied zwischen zwei Koordinaten angeben, die als unterschiedlich angesehen werden sollen (der Standardwert scheint 0,001 m für in Meter projizierte Koordinaten und 0,000000008983153 Grad für WGS84 zu sein). Ich bin auch interessiert zu wissen, was diese Werte in qgis sind und ob Sie sie ändern können.
JR

Antworten:

2

Das QGIS- Tool zum Löschen doppelter Geometrien (in den Geoalgorithmen von QGIS 2.18, Vector General Tools) ist ein Python-Skript, das mit den Geometrieobjekten arbeitet, die von der Python-Ebene von QGIS exportiert / verfügbar gemacht werden. Und unter dieser Schicht befindet sich die GEOS-Schicht.

Der Geometriegleichheitsoperator der GEO-Ebene akzeptiert beim Vergleichen zweier Geometrien einen Toleranzparameter (in Kartenabstandseinheit). Leider wird dieser Toleranzparameter von der Python-Ebene von QGIS nicht verfügbar gemacht. Daher werden beim Löschen doppelter Geometrien zwei Geometrien genau dann als gleich angesehen, wenn alle ihre XY-Werte vollständig gleich sind. Beispielsweise ist POINT (1.000000 1.000000) nicht gleich POINT (1.00000001 1.00000001).

Ralph Tee
quelle
Vielen Dank, dass Sie sich mit dem QGIS-Geoalgorithmus befasst haben! Wenn die Wrapper-Tools (z. B. Python-Skripte) nach Ihren Erkenntnissen keinen Zugriff auf den Toleranzparameter haben, bedeutet dies, dass die Toleranz ausschließlich dem Datentyp entspricht? (Mit anderen Worten, ist das der Grund, warum es so scheint, als ob die Toleranz von der Datenquelle gesteuert wird, die wir wählen?)
Kazuhito
Ja. Zu diesem Zeitpunkt müssen Sie die X- und Y-Werte selbst abschneiden oder runden, bevor Sie eine doppelte Erkennung durchführen können. Dies ist für POINTs unkompliziert (obwohl das Konvertieren immer noch mehrere Schritte umfasst), für die anderen Geometrien ist jedoch eine (umfangreiche) Programmierung erforderlich.
Ralph Tee
Aha. Vielen Dank für die weitere Klarstellung. Im Moment ist es ein bisschen unglücklich, aber hoffentlich geben zukünftige QGIS-Versionen uns (ich meine, Nicht-Programmierern) etwas mehr Raum zur Kontrolle.
Kazuhito
1

Eine interessante Lektüre zu diesem Thema ist die häufig gestellte Frage: Messung der Genauigkeit von Längen- und Breitengraden?

Ich kenne die Tools zur Identifizierung von Duplikaten nicht, aber aus rechnerischer Sicht ist es nur eine Frage der Art und Weise, wie die Zahlen von der Speicherarchitektur der Entitäten und der Software, die sie verarbeitet, behandelt werden. Es werden zwei verschiedene Zahlen ausgegeben FLASE, solange die Sprache die Zahlen auf eine Weise darstellt, die einen kleinen Unterschied macht, wenn der Test ist, wenn sie nicht gleich sind. In vielen Fällen besteht das Interesse von Duplikaten darin, Werte zu finden, die genau gleich sind, um eine Art Tippfehler während der Digitalisierung herauszufinden, nicht wie nahe diese sind.

In anderen Kontexten besteht das Interesse von Duplikaten darin, Objekte zu identifizieren, die nah genug sind und in der Praxis übereinstimmen.

Angenommen, das QGIS verwendet Python als Hauptsprache, kann Ihre Frage an die Python-Dokumente gerichtet werden, und Sie erhalten eine interessante Lektüre darüber, wie sich eine Basis-2-Arithmetik von unseren elementaren Mathematikbüchern unterscheidet: Python: Gleitkomma-Arithmetik: Probleme und Einschränkungen

Marco
quelle
Vielen Dank an @Marco, aber der Punkt, auf den ich mich in meiner Frage konzentrieren wollte, war, dass die Genauigkeit (daher in direktem Zusammenhang mit doppelten / überlappenden Problemen) durch die Datenquelle (Shapefile oder Datenbank wie Spatialite, ...) gesteuert zu werden scheint. Entschuldigung es war vielleicht nicht klar genug. Ich werde die Frage bearbeiten, um sie zu klären.
Kazuhito
0

Ich bin ein registrierter Landvermesser in mehreren Staaten. Was Sie bei den verschiedenen Projektionen sehen, sind gerade Linien / Entfernungen, die von den Lambert- oder Mercator-Gittern kommen. Es ist, als würde man einen Kegel auf die Erde legen. Dann wird die Messung, die Sie durchführen, auf den Radienlinien über der Erdkrümmung platziert. Transverse Mercator ist eine zylindrische Projektion für längere Ost-West-Staaten wie Tennessee. Mit GPS-Systemen mit Vermessungsqualität vergleichen wir die Informationen häufig mit den Weltprojektionen und sogar mit staatlichen Projektionen, wenn diese auf den Antennen liegen. Alle Messungen basieren auf den Parametern, die an jedem gemessenen Punkt in die Berechnungen integriert sind. Die Verwendung von GIS-Geräten mit einem Submeter-Parameter passt sehr gut auf Strecken von einer oder zwei Meilen. Nach ungefähr 6 Dezimalstellen bei Winkelmessungen ist das Maximum, mit dem Sie die Genauigkeit erwarten können. Unabhängig davon, wie oft Sie einen Punkt mit einer Genauigkeit von beispielsweise einem Meter GPS verwenden, erhalten Sie niemals einen "Mittelwert" oder sogar einen "Modus", der den hochgenauen Messungen entspricht. Zusammenfassend lässt sich sagen, dass ich mich bei der Arbeit mit Antennen- oder Satelliteninformationen nicht von einem Messgerät stören lasse. Oh, es gibt sphärische Berechnungen für Nickerchen der Erdmessungen unter Verwendung von Theta-Winkeln, die den Lotwinkel im Feld im Vergleich zu dem berechneten Winkel an diesem Punkt zum Erdmittelpunkt berechnen. Es gibt keine echte Messung. Um uns diesen Punkt zu beweisen, als ich 1975 mit der Vermessung begann, setzte unser Chef zwei Nägel in einer hügeligen Straße im Abstand von einer Viertelmeile ein, und wir mussten sie einen Monat lang jeden Tag verketten und die Entfernung abschießen. Mit atmosphärischen Korrekturen an der Kette und dem HP-Entfernungsmesser haben wir die ursprüngliche Entfernung nur dreimal mit dem Entfernungsmesser und einmal mit der Kette abgeglichen. Ein sehr demütigendes Beispiel und bleibt das ganze Jahr bei mir. Ich wurde einmal auf einer GIS-Tagung ausgebuht, als sie mich als Landvermesser ankündigten (er er) und ich hatte kein Wort gesagt, aber ich weiß, wann ich meinen Vermesserhut aufsetzen und wann ich meinen GIS-Hut aufsetzen muss.

user35019
quelle
Ich verstehe dein Argument. Tatsächlich hatte ich nie Probleme mit der Genauigkeit der realen Welt. QGIS sagt mir, dass ich selbst im Nanomaßstab oder im Pikomaßstab an verschiedenen Orten stehe. Das ist auch in Ordnung. Nur kann ich nicht herausfinden, wie viel Dezimalstelle ich eingeben muss, um zu sagen, dass zwei gegebene Punkte die Duplikate sind. Übrigens, vielen Dank, dass Sie die Geschichte der 1970er Jahre erzählt haben. Ich habe noch nie von einer so wegweisenden Phase der Kartierung und des GIS gehört, insbesondere von Tagen vor dem GPS. Beeindruckend.
Kazuhito