Übersichten: zu Kacheln oder .vrt oder beidem?

10

Wenn Sie , um große Bildersammlungen im laufenden Betrieb zu mosaikieren, ist es besser, den einzelnen Rastern oder der endgültigen .vrt oder beiden Übersichten (Pyramiden) hinzuzufügen? (Wo "besser" bedeutet, den Gleichgewichtspunkt zwischen der Verwendung von nicht mehr Speicher als nötig zu finden und gleichzeitig eine reibungslose Erfahrung für die Verwendung und das Durchsuchen des endgültigen Bilds zu bieten.)

matt wilkie
quelle
Ich möchte fragen, was der Grund für die Verwendung von Mosaik ist
Luka Tumba

Antworten:

8

Es hängt hauptsächlich davon ab, auf welcher minimalen Skala Ihre Bildebene angezeigt wird.

Das Erstellen von Übersichten für einzelne Raster ist flexibler, wenn Sie Ihre Ebene teilweise aktualisieren. Löschen Sie einfach das alte Bild und erstellen Sie ein neues Bild mit Übersichten. Wenn Sie Übersichten für die .vrt erstellt haben, müssen Sie diese nach dem Update erneut erstellen. Einzelne Übersichten funktionieren jedoch im kleinen Maßstab nicht gut. Wenn Ihre Originalbilder jeweils 10 x 10 km umfassen und Sie eine Fläche von 100 x 100 km auf dem Bildschirm anzeigen möchten, muss das System 100 einzelne Dateien zum Lesen der Übersichten öffnen. Wenn Sie Übersichten für die .vrt-Datei erstellt haben, muss nur eine Datei geöffnet werden, und diese ist schneller.

Sie können auch ein Hybridmodell verwenden: Erstellen Sie einige interne Übersichtsebenen (2 4 8) und erstellen Sie dann eine neue physische Datei aus .vrt mit der Pixelgröße der nächsten Übersicht (16). Erstellen Sie interne Übersichten für das unterabgetastete Bild und kombinieren Sie schließlich alle zu einer skalierungsabhängigen Gruppe. Wenn einzelne Bilder in neuere geändert werden, muss die physische Übersichtsdatei häufig nicht aktualisiert werden, da Änderungen in kleinen Fällen ohnehin nicht sichtbar sind.

Wenn es um den Speicherplatzbedarf geht, ist er in beiden Fällen gleich. Denken Sie jedoch daran, Ihre Übersichten zu komprimieren. Mit Luftbildern können Sie mehr als 90% des Speicherplatzes einsparen, indem Sie Übersichten mit der JPEG-Methode und der photometrischen Interpretation komprimieren.

Wenn Sie Ihre Frage stellen, würde ich sagen, dass Sie komprimierte Übersichten für Ihre .vrt erstellen. Es wird die gleiche Menge an Speicherplatz benötigt und das Surferlebnis ist in jeder Größenordnung gut. Denken Sie noch daran, was ich über das Aktualisieren geschrieben habe.

user30184
quelle
Die hybride Idee ist sehr interessant! Ich bin gespannt, warum eine physische Datei auf Stufe 16. Bietet das etwas gdaladdo foo.vrt 16 32 64nicht? ... fällt mir auch ein: In Fällen, in denen auf einzelne Kacheln zugegriffen werden kann, sind möglicherweise sowohl gekachelte als auch vrt-Übersichten sowie das virtuelle Mosaik erwünscht.
Matt Wilkie
gdaladdo foo.vrt 16 32.64gdaladdo foo.vrt 2 4 8Erstellt eine physische Datei, aber wenn Sie dies zuvor getan haben, haben Sie bereits eine foo.vrt.ovr-Datei. Nun, die .ovr-Datei ist wirklich nur ein Tiff, und Sie können sie umbenennen und Übersichtsebenen von Hand mit einer neuen .vrt-Datei erstellen, die etwas kompliziert ist. Meinen Sie damit, dass Sie foo_1234.tif in einem virtuellen Mosaik all_foo.vrt haben, aber einige Benutzer müssen möglicherweise direkt auf diesen einzelnen TIFF zugreifen? Dann haben Sie Recht, keine Software kann raten, Übersichten von all_foo.vrt.ovr zu erhalten.
user30184
Oh, vielleicht wollten Sie 2 4 8 Übersichten für einzelne Bilder und 16 32 64 ... für das vrt schreiben. Hervorragende Idee.
user30184
Ja zur 2. Antwort, 2 4 8 für Kacheln und 16 32 64 für vrt.
Matt Wilkie
Das Problem, über das diskutiert wird, ist eines, das ich häufig zu hacken versuche, und es ist ständig ein Grund für Qualen. Ich habe eine große Anzahl von Dateien in Ordnern von 10 km2 angeordnet. Für jeden Ordner generiere ich ein vrt und füge Übersichten hinzu (2 4 8 16). Ich aggregiere dann die vrt-Dateien in einer (gdalbuildvrt aggreg.vrt * .vrt). Das Erstellen einer Übersicht für die Datei aggreg.vrt (32 64 128 256) ist mühsam. Ich vermute, dass gdalbuildvrt direkt zu den Quelldateien anstatt zu den bereits erstellten OVR-Dateien geht ... Ist das richtig? Und wenn ja: Gibt es eine Problemumgehung?