Häufig gestellte Fragen

Allgemeine Fragen

Ich habe ein Problem und benötige Hilfe.

Stellen Sie eine Frage gemäß dieser Anleitung und geben Sie so viele Informationen wie möglich an (siehe Anleitung zum Stellen guter Fragen auf Stack Overflow). Das bedeutet in der Regel:

  • einen Link zu einem Script im Code-Editor senden (klicken Sie dazu auf die Schaltfläche „Link abrufen“).

  • die Freigabe aller Assets, die zum Ausführen des Scripts erforderlich sind

  • Geben Sie bei fehlgeschlagenen Batchaufgaben die ID der fehlgeschlagenen Aufgabe an. Aufgaben-IDs sehen so aus: 4C25GIJBMB52PXTEJTF4JLGL. Sie finden sie im Code-Editor auf dem Tab „Aufgabe“. Weitere Informationen

Wo finde ich Informationen zur Earth Engine-Architektur?

Siehe diesen Artikel: Gorelick et al. 2017.

Weitere Informationen finden Sie auf den Seiten EDU und Schulungsressourcen.

Sehen Sie sich diesen kostenlosen EE-Kurs von Ujaval Gandhi an. Er enthält ein Video mit einer Einführung in die Fernerkundung.

Earth Engine-Programmierung

Welche häufigen Programmierfehler gibt es?

Weitere Informationen finden Sie im Debugging-Leitfaden.

Warum kann ich keine einfachen mathematischen Ausdrücke wie ee.Image("image") * 2 verwenden?

In EE sollten Sie keine server- und clientseitigen Objekte oder Vorgänge mischen. Alle Vorgänge an EE-Objekten werden serverseitig ausgeführt. Clientseitige Berechnungen funktionieren nicht wie vorgesehen. Weitere Informationen finden Sie auf dieser Seite.

Wie kann ich for-Schleifen oder if/else-Anweisungen verwenden?

In Earth Engine wird mit einer funktionalen Sprache programmiert. Schleifen und bedingte Vorgänge sollten daher mit entsprechenden Konzepten wie map oder filter ausgedrückt werden. Weitere Informationen finden Sie auf dieser Seite.

Wie füge ich meinem Bild oder Video Textlabels hinzu?

Textlabels werden nicht unterstützt. Sie haben aber folgende Möglichkeiten:

  • JS-Paket eines Drittanbieters verwenden Beispiel
  • Verwenden Sie das Python-Paket geemap eines Drittanbieters.
  • Mit QGIS EE-Bilder über das EE QGIS-Plug-in importieren

Kann ich Standardfarbpaletten verwenden?

Verwenden Sie das JS-Paket eines Drittanbieters ee-palettes.

Wie erstelle ich eine eigene Website, die Earth Engine verwendet?

Verwenden Sie Earth Engine Apps für einfache Anwendungen. In komplexeren Fällen können Sie EE-basierte App Engine-Anwendungen erstellen.

Wie funktionieren Karten-IDs?

Karten-IDs (in der API als mapid bezeichnet) sind Schlüssel, mit denen Clients Kartenkacheln abrufen können. Jede ID ist ein Hashwert, der durch Einreichen eines Bildausdrucks an den getMapId-Endpunkt erstellt wird. Die resultierenden IDs sind Schlüssel, die sowohl auf den Bildausdruck als auch auf die Nutzeranmeldedaten verweisen, die in einer späteren Phase zum Generieren von Ansichten verwendet werden.

Wenn Sie Kartenkacheln anfordern, müssen Sie den Standort der Kachel (x, y, zoom) sowie den mapid (den Schlüssel für das Bild und die Anmeldedaten) angeben. Dieselbe ID kann zum Laden vieler Kartenkacheln wiederverwendet werden. Die Wiederverwendung von mapid-Schlüsseln ist unbegrenzt, sie laufen jedoch nach einigen Stunden ab. Wir veröffentlichen keine spezifischen Zeiträume dazu, wie lange sie gültig sind. Der von Ihnen geschriebene Code sollte jedoch so robust sein, dass er auch nach Ablauf der ID funktioniert.

Beim Erstellen dieser IDs werden eine kleine Menge an Daten gespeichert und Anmeldedaten validiert. Daher sollten Sie sie so lange wie möglich wiederverwenden. Es gibt kein API-Kontingent, das speziell mit dem getMapId-Endpunkt verknüpft ist. Bei einem Workflow, bei dem mapid-Objekte mit einer Rate erstellt werden, die annähernd der Rate entspricht, mit der Kacheln abgerufen werden, ist wahrscheinlich etwas falsch. In Earth Engine gibt es keinen API-Endpunkt, mit dem diese IDs entfernt, aufgelistet oder verwaltet werden können, da es sich um temporäre Ressourcen handelt.

Warum gibt ee.Algorithms.If() sowohl den True- als auch den False-Fall aus?

function a() { print("true"); }
function b() { print("false"); }
// Prints 'true' and 'false'.
ee.Algorithms.If(true, a(), b());

Der If()-Algorithmus funktioniert genau wie jeder andere Algorithmus in Earth Engine, da alle seine Argumente ausgewertet werden müssen, bevor der Algorithmus selbst ausgeführt werden kann. Der Algorithmus ruft sowohl die trueCase- als auch die falseCase-Ergebnisse ab und wählt dann eines basierend auf dem condition-Argument aus. Beide Pfade mussten jedoch ausgeführt werden, damit diese Werte überhaupt an den Algorithmus übergeben werden konnten.

Ich erhalte die Fehlermeldung „Größe der Anfragenutzlast überschreitet das Limit“.

Sie versuchen, eine sehr große Anfrage an Earth Engine zu senden. Das passiert in der Regel, wenn der Code viele clientseitige For-Schleifen verwendet oder eine FeatureCollection aus vielen Geometriesobjekten erstellt. In diesem Fall sollten Sie solche Geometrien nicht in Ihrem Script erstellen, sondern eine CSV-Datei mit ihnen generieren und in ein Tabellen-Asset hochladen.

Was ist der Unterschied zwischen ee.Image.clip() und ee.Filter.bounds()?

Weitere Informationen finden Sie in diesem GIS Stack Exchange-Thread. Mit der Funktion ee.Image.clip() werden Pixel ausgeblendet, die sich nicht mit einer bestimmten ee.Geometry oder ee.Feature überschneiden. Sie sind in Visualisierungen transparent und werden bei Berechnungen nicht berücksichtigt. Man kann sich das als Abschneiden von Pixeln aus einem Bild vorstellen.

Mit der Funktion ee.Filter.bounds() werden ee.Image-Objekte aus einem ee.ImageCollection basierend auf der Bildüberschneidung mit einem ee.Geometry oder ee.Feature herausgefiltert. Damit wird der Umfang einer Analyse auf die Bilder beschränkt, die sich mit einer bestimmten Region überschneiden. Das hilft, Ausdrücke zu optimieren.

Wie kann ich Bildpixel in Feature-Sammlungen umwandeln, wobei ein Element pro Pixel vorhanden ist?

Verwenden Sie die Funktion ee.Image.sample(). Nutzungsbeispiele finden Sie auf der Referenzseite der API der Funktion.

Was ist der Unterschied zwischen ee.ImageCollection.merge() und ee.ImageCollection.combine()?

Mit der Funktion ee.ImageCollection.merge() werden alle Bilder aus zwei Sammlungen in einer Sammlung zusammengeführt, unabhängig davon, ob die entsprechenden Bilder übereinstimmende Bänder, Metadaten, CRS oder Skalen haben. Es ist die Vereinigung von zwei Sammlungen. Mit der Methode combine() werden die Bänder mit übereinstimmenden Bildern aus zwei Sammlungen zu einer einzigen Sammlung kombiniert. Übereinstimmende Bilder haben dieselbe ID (system:index-Eigenschaft). Es ist ein innerer Join von zwei Sammlungen basierend auf der Bild-ID, bei dem Bänder aus übereinstimmenden Bildern kombiniert werden. Bei übereinstimmenden Bildern werden Bänder aus dem sekundären Bild an das primäre Bild angehängt (Überschreiben ist optional). Wenn keine übereinstimmenden Bilder gefunden werden, wird eine leere Sammlung zurückgegeben.

Wie kann ich Bildsammlungen nach mehreren Zeiträumen filtern?

Weitere Informationen finden Sie in diesem GIS Stack Exchange-Thread. Entweder merge() mehrere Sammlungen zusammen oder ee.Filter.or() verwenden.

Wie erstelle ich einen Begrenzungsrahmen um einen bestimmten Punkt?

// Buffer the point by a chosen radius and then get the bounding box.
var LNG = -117.298;
var LAT = 45.162;
var point = ee.Geometry.Point([LNG, LAT]);
var buffer = point.buffer(30000); // half of box width as buffer input
var box = buffer.bounds(); // draw a bounding box around the buffered point
Map.centerObject(box);
Map.addLayer(point);
Map.addLayer(box);

// Map the buffer and bounds procedure over a point feature collection.
var pointCol = ee.FeatureCollection([
  ee.Feature(ee.Geometry.Point([LNG + 1, LAT])),
  ee.Feature(ee.Geometry.Point([LNG - 1, LAT]))
]);
var boxCol = pointCol.map(function(feature) {
  var box = feature.buffer(30000).bounds();
  return feature.setGeometry(box.geometry());
});
Map.addLayer(boxCol);

Data Catalog

Können Sie Datensatz X hinzufügen?

Reichen Sie einen Fehlerbericht zu einer Datasetanfrage ein. Folgen Sie dazu dieser Anleitung.

Sie können Daten auch in Ihren Earth Engine-Startordner hochladen. Weitere Informationen finden Sie unter Rasterdaten importieren und Tabellendaten importieren.

Für einen vorhandenen Datensatz gibt es eine neue Version

Melden Sie einen Dataset-Fehler gemäß der Anleitung zum Erstellen von Dataset-Anfragen und geben Sie an, dass Sie eine Aktualisierung des Datasets anfordern.

Ein vorhandener Datensatz wird nicht aktualisiert oder es fehlen Assets

Bevor Sie ein Problem melden, prüfen Sie nach Möglichkeit, ob die ausgewählten Assets tatsächlich auf der Website des Datenanbieters vorhanden sind. Weitere Informationen finden Sie im Leitfaden zu fehlenden Bildern.

Wenn du nach einem Asset suchst, indem du eine ImageCollection filtern möchtest, achte darauf, dass deine Filter nicht zu einschränkend sind.

Beachten Sie dabei insbesondere Folgendes:

  • Sentinel-2 SR (Level-2-Daten) wurden von der ESA für frühe Level-1-Szenen nicht erstellt.

  • Vor 2000 gibt es keine weltweite Abdeckung durch Landsat.

Ein vorhandener Datensatz enthält falsche Werte

Posten Sie im Entwicklerforum. Fügen Sie ein Script hinzu, das in die Originalauflösung des Assets hineinzoomt und deutlich macht, welche Werte falsch sind. Geben Sie an, wo genau Sie den alternativen Wert festgestellt haben.

Wo kann ich sonst nach Datasets fragen?

Fragen zu NASA-Datasets finden Sie im NASA Earth Data-Forum.

Fragen zu den Toolboxen, die mit Copernicus-Datensätzen arbeiten, finden Sie in den Foren S1, S2 und S3.

Wie groß ist der EE-Katalog?

Stand Oktober 2023 enthält der Katalog über 1.000 Datasets. Die Größe auf dem Laufwerk beträgt über 90 Petabyte (unter Berücksichtigung der verlustfreien Komprimierung).

Wie oft werden die Daten in EE aktualisiert?

Normalerweise werden alle laufenden Datensätze mindestens einmal täglich aktualisiert. Allerdings enthalten nicht alle Datensätze dieser Art jeden Tag neue Daten. Einige Datensätze werden mehrmals täglich aktualisiert. Es gibt jedoch keine Richtlinie, die dafür sorgt, dass die neuesten Assets im Katalog vorhanden sind.

Wie kann ich den Inhalt des EE-Katalogs programmatisch aufrufen?

Die Datensatzliste wird im STAC-Format in einen Google Cloud Storage-Bucket gs://earthengine-stac exportiert. Die Eingabedatei ist catalog.json.

Kann ich Google Maps-Daten oder -Bilder für die Analyse verwenden?

Google lizenziert oder verkauft keine Basiskartendaten für Analysen.

Wie finde ich das Datum, an dem ein Asset aufgenommen wurde?

Das Asset-Attribut 'system:version' ist der Zeitstempel der Datenaufnahme, formatiert als Mikrosekunden seit der Unix-Epoche. Hier ist ein Beispiel, in dem der Zeitstempel der Datenaufnahme eines Landsat-Bildes in ein für Menschen lesbares Format konvertiert wird.

var image = ee.Image('LANDSAT/LC08/C02/T1_L2/LC08_044034_20210508');
print('Ingest date', ee.Date(image.getNumber('system:version').divide(1000)));

Enthält der Earth Engine-Katalog JSON-LD-Metadaten?

Ja, JSON-LD-Metadaten sind in die HTML-Seiten des Katalogs eingebettet. Die Sentinel-2-Seite enthält beispielsweise den folgenden Block:

<script type="application/ld+json">
  {
    "@context": "https://schema.org",
    "@type": "BreadcrumbList",
    "itemListElement": [{
      "@type": "ListItem",
      "position": 1,
      "name": "Earth Engine Data Catalog",
      "item": "https://developers.google.com/earth-engine/datasets"
    },{
      "@type": "ListItem",
      "position": 2,
      "name": "Harmonized Sentinel-2 MSI: MultiSpectral Instrument, Level-1C",
      "item": "https://developers.google.com/earth-engine/datasets/catalog/COPERNICUS_S2_HARMONIZED"
    }]
  }
  </script>

Landsat

Wie wird der simpleComposite-Algorithmus implementiert?

Die serverseitige Implementierung entspricht diesem JavaScript-Code.

Wie kann ich wolkenfreie Komposite aus Landsat-Reflexionsdaten erstellen?

Landsat-Level-2-Daten (Oberflächenreflexion) haben mehrere Qualitätsbänder, mit denen sich Wolken und andere unerwünschte Bildartefakte maskieren lassen. Ein Beispiel für die Verwendung dieser Bänder zum Verarbeiten von Landsat 8-SR-Bildern und zum Erstellen eines wolkenfreien Median-Composites finden Sie in diesem Beitrag in der GIS Stack Exchange. Mit demselben Verfahren wird ein wolkenfreier Composite für die Verwendung in den Beispielen für die beaufsichtigte Klassifizierung im Entwicklerhandbuch erstellt.

Ist eine sensorübergreifende Harmonisierung der Landsat-Oberflächenreflexion erforderlich?

Roy et al., 2016 wurde eine Analyse der Reflexionsunterschiede zwischen der TOA von Landsat 7-8 und der Oberflächenreflexion durchgeführt. Sie haben die OLS- und RMA-Koeffizienten veröffentlicht, damit Leser die Reflexionswerte der Daten eines Sensors in die eines anderen umwandeln können. In der letzten Zeile des Artikels heißt es: „Obwohl die Sensorunterschiede recht gering sind, können sie je nach Anwendung der Landsat-Daten erhebliche Auswirkungen haben.“ Diese Analyse basierte jedoch auf Daten, die vor der Erhebung erhoben wurden.

Die Verbesserungen, die bei der Neuverarbeitung von Daten der Erhebung 1 und 2 vorgenommen wurden, können sich auf die Beziehung zwischen den Sensoren auswirken. Soweit uns bekannt, wurden für die Daten der Erhebung 1 und 2 jedoch keine Analysen wie die von Roy et al. (2016) durchgeführt. Trotz fehlender formaler Analyse besteht unter einflussreichen Landsat-Nutzern offenbar ein allgemeiner Konsens, dass für Daten der Sammlung 2, Ebene 2 (Oberflächenreflexion) keine Korrektur erforderlich ist. In einer Antwort auf eine Frage zur Notwendigkeit der Harmonisierung von Collection 2, Level 2, wies Mike Wulder vom Landsat Science Team beispielsweise darauf hin, dass die Produkte zur Oberflächenreflexion von Collection 2 je nach Art der Anwendung (z. B. Kartierung der Landbedeckung und Erkennung von Veränderungen) sehr geeignet und zuverlässig sind, ohne dass eine sensorübergreifende Anpassung erforderlich ist.

Wie kann ich Wolken und Wolkenschatten in MSS-Bildern maskieren?

Das Drittanbietermodul msslib für den JavaScript-Code-Editor enthält eine Implementierung des MSScvm-Algorithmus sowie andere nützliche Funktionen zum Untersuchen und Vorbereiten von MSS-Daten.

Datenverwaltung

Wem gehören die Daten, die ich hochlade?

Gemäß den Nutzungsbedingungen für Earth Engine sind Kunden Inhaber der Daten, die sie in Earth Engine hochladen.

Ich kann keine Daten hochladen.

Den Status der Uploadaufgabe sehen Sie im Bereich „Aufgaben“ oben rechts im Code-Editor. Sie können sich auch die eigene Seite für Aufgaben ansehen.

Wenn keine Aufgabe vorhanden ist, haben Sie wahrscheinlich versucht, Ihre Datei über den Code-Editor hochzuladen. Aufgrund eines Netzwerkproblems wurde der Upload der Datei jedoch nicht abgeschlossen und die Aufgabe wurde nicht erstellt. Probieren Sie einen anderen Browser oder einen anderen Computer aus.

Wenn eine Aufgabe fehlgeschlagen ist, prüfen Sie den angezeigten Fehler. Wenn keine bestimmte Fehlermeldung angezeigt wird, prüfen Sie zuerst, ob die Datei beschädigt ist. Führen Sie dazu gdalinfo für Rasterdateien oder ogr2ogr für Vektordateien aus. Mit diesen Befehlen werden alle Daten aus den Quelldateien gelesen und Fehler angezeigt, wenn die Dateien beschädigt sind.

Beispiel für einen gdalinfo-Aufruf:

gdalinfo -mm -stats -checksum file.tif

Beispiel für einen ogr2ogr-Aufruf, mit dem in.shp in out.csv konvertiert wird:

ogr2ogr -lco GEOMETRY=AS_WKT -f CSV out.csv in.shp

Wenn die Datei gültig erscheint, poste die ID der fehlgeschlagenen Aufgabe als Text (nicht als Screenshot) in der Mailingliste für Entwickler. Aufgaben-IDs haben das Format 4C25GIJBMB52PXTEJTF4JLGL. Machen Sie Ihre Quelldatei nach Möglichkeit öffentlich lesbar. Wenn es sich um eine private Datei handelt, geben Sie sie nur für earthengine@google.com frei, wenn das Earth Engine-Team sie prüfen soll. Wenn die Freigabe der Quelldatei nicht möglich ist, stellen Sie zumindest die Ausgabe von gdalinfo -mm -stats -checksum bereit.

Wenn Earth Engine eine bestimmte Projektion nicht unterstützt, müssen Sie die Daten vor dem Hochladen mithilfe einer anderen Projektion neu projizieren, z. B. gdalwarp.

Wie lade ich eine Datei im NetCDF- oder einem anderen nicht unterstützten Rasterformat hoch?

In Earth Engine können nur GeoTIFFs hochgeladen werden. Andere GDAL-kompatible Formate können mit gdal_translate in GeoTIFFs konvertiert werden. Beispiel:

gdal_translate -co COMPRESS=DEFLATE file.nc file.tif

Einige NetCDF- oder HDF-Dateien bestehen aus mehreren untergeordneten Datasets, die mit gdalinfo gefunden werden können. Der gdal_translate-Befehl sieht in diesem Fall so aus (beachten Sie den Pfad zwischen den doppelten Anführungszeichen):

gdal_translate HDF4_EOS:EOS_GRID:"/tmp/MCD12Q1.A2001001.h00v08.005.2011055224312.hdf":MOD12Q1:Land_Cover_Type_1 file.tif

NetCDF-Dateien enthalten manchmal keine Projektion, die von GDAL erkannt wird. In diesem Fall müssen Sie die Projektion und den räumlichen Umfang in der gdal_translate-Befehlszeile festlegen. Beispiel:

gdal_translate -a_srs EPSG:4326 -a_ullr -180 90 180 -90 file.nc file.tid

Welche Komprimierungsalgorithmen kann ich für hochgeladene GeoTIFFs verwenden?

Zum Hochladen können GeoTIFFs mit DEFLATE, JPEG, JPEG-XL/JXL, LERC, LERC_DEFLATE, LERC_ZSTD, LZMA, LZW, WEBP oder ZSTD komprimiert werden. Für das Live-Lesen von COG-Dateien können Sie DEFLATE, JPEG, LZW oder ZSTD verwenden. ZSTD ist eine gute allgemeine Wahl, da es schnell dekomprimiert und gleichzeitig eine gute Komprimierung der meisten Bilder bietet.

Wenn du die ZSTD-Komprimierung bei der Verwendung von gdal_translate anwenden möchtest, füge die folgenden Optionen hinzu. Wenn die Daten Gleitkommawerte enthalten, ändern Sie PREDICTOR in 3.

gdal_translate in.tif out.tif \
  -co COPY_SRC_OVERVIEWS=YES \
  -co TILED=YES \
  -co BLOCKXSIZE=512 \
  -co BLOCKYSIZE=512 \
  -co COMPRESS=ZSTD \
  -co PREDICTOR=2 \
  -co ZSTD_LEVEL=22 \
  -co INTERLEAVE=BAND \
  -co NUM_THREADS=ALL_CPUS

Die Rasteraufnahme läuft seit Tagen und ist noch nicht abgeschlossen.

Prüfen Sie mit gdalinfo, ob für Ihre Datei die folgende GDAL-Option festgelegt ist: INTERLEAVE=PIXEL. Bei Dateien mit dieser Option und vielen Bändern wird die Datenaufnahme möglicherweise nie abgeschlossen, da das Layout solcher Dateien das Lesen sehr verlangsamt.

Konvertieren Sie solche Dateien vor dem Hochladen in das Band-Interleaved-Layout:

gdal_translate -co "INTERLEAVE=BAND" src.tif dst.tif

Die hochgeladenen Raster stimmen nicht mit der Basiskarte überein.

Wenn die Daten leicht von der Grundkarte abweichen, hat die Projektion wahrscheinlich ein falsches Datum (Annahme zur Form der Erde). Das passiert am häufigsten bei der Sinusprojektion, die nicht vollständig in GDAL-Metadaten codiert werden kann. Wenn Sie wissen, wie die Zielprojektion aussehen soll (z.B. SR-ORG:6974 für Dateien mit der MODIS-Sinusoidenprojektion) das Flag --crs beim Befehlszeilenupload oder das Feld crs des Upload-Manifests festlegen.

Wenn die Daten stark verzerrt oder an völlig falscher Stelle erscheinen, sind die Projektion oder die affine Transformation wahrscheinlich falsch.

Mein Raster wird nur über der Osthemisphäre angezeigt.

Sie haben wahrscheinlich ein globales Raster hochgeladen, das den Längengradbereich [0, 360] umfasst. In Earth Engine müssen Raster jedoch im Bereich [−180, 180] liegen. Tauschen Sie vor der Datenaufnahme die linke und rechte Hälfte des Rasters aus. Sehen Sie sich diese Vorschläge von GIS Stack Exchange an.

Warum sieht das aufgenommene Klassifizierungsbild gesprenkelt aus?

Sie haben wahrscheinlich die standardmäßige MEAN Richtlinie für Pyramidensysteme verwendet. Für Klassifizierungsbilder sollte die Pyramidierungsrichtlinie MODE verwendet werden. Für QA-/Bitmaskenbilder sollte die Pyramidierungsrichtlinie SAMPLE verwendet werden.

Ich erhalte die folgende Fehlermeldung: „Kein Datenwert –128,0 kann nicht auf Band 0 vom Typ Short<0, 255> angewendet werden.“

GDAL kann einzelne Byte-Bänder nicht als signierte Ganzzahlen behandeln und liest sie daher als ungesignierte Ganzzahlen. Dies würde mit negativen Werten und Werten für „Keine Daten“ kollidieren.

Wenn Ihre Werte tatsächlich Ganzzahlen mit Vorzeichen sind, verwenden Sie Manifest-Upload und fügen Sie den folgenden Code in den Bereich „Tileset“ mit Ihrer Datei ein: data_type: "INT8"

Wenn Ihre Werte Ganzzahlen ohne Vorzeichen sind, enthält Ihre Datei einen ungültigen NoData-Wert. Sie können ihn beim Hochladen mit dem richtigen Datenwert überschreiben (oder mit einem Wert, der nie vorkommt, falls vorhanden). Mit gdal_translate -a_nodata können Sie den NoData-Wert ändern und mit gdal_edit.py -unsetnodata entfernen.

Wie lade ich eine Datei im GeoJSON- oder einem anderen nicht unterstützten Vektorformat hoch?

Mit ogr2ogr können Sie OGR-kompatible Formate in CSV oder SHP konvertieren. Beispiel:

or2ogr -f "ESRI Shapefile" file.shp file.kml

Bei CSV-Uploads kann die Geometriespalte GeoJSON enthalten.

Ich möchte Daten mit Python oder viele Dateien gleichzeitig hochladen.

Verwenden Sie den Befehlszeilenupload. Für solche Uploads müssen die Quelldateien zuerst in einen GCS-Bucket (Google Cloud Storage) verschoben werden. Die Nutzung von GCS ist kostenlos, solange Sie die Limits der kostenlosen Stufe einhalten. Weitere Informationen finden Sie auf der Preisseite.

Ich möchte ein großes Rastermosaik hochladen, das in viele Kacheln aufgeteilt ist.

Wenn die Dateien dieselbe Projektion und Pixelgröße haben, laden Sie sie einfach in dasselbe Asset hoch. Sie werden dann automatisch zu einem Mosaik zusammengesetzt.

Wenn die Dateien unterschiedliche Projektionen oder Pixelgrößen haben, können sie nicht zu einem einzigen Raster-Asset zusammengesetzt werden. Laden Sie stattdessen jede Kachel als separates Asset in dieselbe ImageCollection hoch, die mit ImageCollection.mosaic() zu einem Mosaik zusammengesetzt werden kann.

Beim Hochladen eines Mosaiks erhalte ich Fehlermeldungen wegen nicht übereinstimmender Kacheln.

Die Kacheln für Earth Engine-Rastermosaike müssen dieselbe Projektion und Pixelgröße haben. Außerdem müssen die Kacheln genau an den Pixelgrenzen ausgerichtet sein.

Ich versuche, eine Datei aus einem GCS-Bucket hochzuladen, aber Earth Engine kann sie nicht finden.

Möglicherweise haben Sie für den GCS-Upload und die Verbindung zu Earth Engine unterschiedliche Google-Konten verwendet. Die GCS-Datei muss für das Konto lesbar sein, mit dem Sie eine Verbindung zu Earth Engine herstellen. Wenn das Multi-Login im Browser zu Verwirrung führt, stellen Sie eine Verbindung zu Earth Engine in einem Inkognitofenster her.

Ich möchte viele Assets gleichzeitig exportieren.

Sie müssen jedes Bild einzeln exportieren.

Ich möchte eine Folder oder eine ImageCollection mit einem einzigen Befehl verschieben oder löschen.

Sie müssen zuerst jedes Asset verschieben oder löschen und dann den übergeordneten Ordner oder die übergeordnete Sammlung verschieben oder löschen. Wenn es viele untergeordnete Assets gibt, schreibe eine Shell- oder Python-Schleife, um sie zu durchlaufen.

Ich möchte direkt von außerhalb von Earth Engine auf Earth Engine-Daten zugreifen.

Für QGIS gibt es ein Earth Engine-Plug-in.

GDAL hat einen Earth Engine-Treiber.

Andere Systeme können die REST API von EE verwenden.

Ich möchte einen Teil meines Earth Engine-Assets aktualisieren, ohne es vollständig noch einmal hochzuladen.

Es ist nicht möglich, in EE hochgeladene Raster- oder Vektordaten zu aktualisieren. Es können nur Asset-Metadateneigenschaften aktualisiert werden.

Ich verliere den Zugriff auf mein Konto. Was mache ich mit meinen Assets?

Wenn die Richtlinien des ursprünglichen Kontos die Datenübertragung zulassen, geben Sie Ihre Assets für ein anderes Konto frei und kopieren Sie sie dann in das neue Konto. Wenn viele Assets verschoben werden müssen, verwenden Sie das Befehlszeilen-Kopierprogramm.

Wenn ein Konto gelöscht wird, ist kein Zugriff mehr auf die zugehörigen Assets möglich.

Das exportierte Bild befindet sich an der falschen Stelle.

Bei einigen Projektionen, z. B. Sinusoidal- oder Kegelprojektion, können in GeoTIFF-Dateien manchmal nicht alle erforderlichen Projektionsparameter gespeichert werden. Dies führt dazu, dass die exportierte Datei an der falschen Stelle angezeigt wird, wenn sie in Desktop-GIS-Tools geöffnet oder wieder in EE aufgenommen wird.

Geben Sie dazu einen Exportparameter crs an, der für GeoTIFF-Dateien bekanntlich gut funktioniert. Verwenden Sie beispielsweise den EPSG-Code für die UTM-Zone, die Ihr Interessengebiet enthält.

Welchen Cloud Storage-Bucket-Speicherort sollte ich zum Speichern von COG-Assets verwenden?

Die Antwort hängt davon ab, was Sie optimieren möchten. Wenn Sie den Zugriff auf die Rechenleistung mit niedriger Latenz optimieren möchten, sind US-CENTRAL* die besten Speicherorte für COG-Assets. Weitere Informationen finden Sie auf der Seite Bucket-Standorte.

Bei exportierten Assets von Sammlungen mit Elementen werden von mir festgelegte Properties nicht beibehalten.

Bei keiner Export.table.*-Funktion werden Eigenschaften auf Tabellenebene in der Ausgabe beibehalten. Für viele Ausgabeformate (z.B. CSV, GeoJSON) werden solche Metadaten nicht unterstützt. Die Funktion Export.table.toAsset könnte Eigenschaften auf Tabellenebene unterstützen, tut dies aber derzeit nicht.

Tabellen, die als CSV-Datei nach Google Drive exportiert wurden, werden in das XLSX-Format konvertiert.

Je nach Ihren Google Drive-Einstellungen können CSV-Tabellen, die Sie aus Earth Engine exportieren, in XLSX-Dateien konvertiert werden, was unerwünschte Auswirkungen haben kann, z. B. Datentypkonvertierungen. So ändern Sie das Verhalten für nachfolgende Exporte:

  1. Klicken Sie in der Webversion von Google Drive rechts oben auf das Zahnradsymbol für die Einstellungen.
  2. Klicke auf „Einstellungen“.
  3. Scrollen Sie zu „Hochgeladene Dateien in das Google-Dokumentenformat konvertieren“ und entfernen Sie das Häkchen.

Code-Editor

Ich kann mich nicht im Code-Editor anmelden, weil ich aufgefordert werde, das falsche Konto zu verwenden.

Melden Sie sich ab, wählen Sie auf der Seite „Konto auswählen“ das Konto aus, das für die Verwendung von Earth Engine registriert ist, und wählen Sie dann dasselbe Konto auf der zweiten Seite „Konto auswählen, um zum Earth Engine Code Editor zu gelangen“ noch einmal aus (die genaue Formulierung kann abweichen).

Ich möchte einen Screenshot einer Weltkarte erstellen, aber die Web Mercator-Projektion gefällt mir nicht.

Die im Code-Editor verwendete Kartenprojektion ist Web Mercator (EPSG:3857). Dadurch werden Objekte, die sich weiter vom Äquator entfernt befinden, größer dargestellt, sodass Regionen in hohen Breiten im Vergleich zu Regionen in Äquatornähe viel größer erscheinen, als sie tatsächlich sind. Sie können die Projektion des Kartencanvas im Code-Editor nicht ändern. Mit der Methode ee.Image.changeProj können Sie jedoch ein Bild in der gewünschten Projektion auf dem Web Mercator-Canvas „malen“. Auf der API-Referenzseite der Methode finden Sie ein Beispiel für die Darstellung einer globalen DEM in der Robinson-Projektion in der Code-Editor-Karte. Diese Methode sollte nur zu Visualisierungszwecken verwendet werden, da die Prüf- und Zeichentools des Code-Editors weiterhin in Web Mercator ausgeführt werden.

Mein Script lässt sich nicht speichern (Script error: Unknown commit).

Wenn Sie beim Speichern eines Scripts die Meldung Script error: Unknown commit erhalten, ist das Repository, in dem Sie speichern, wahrscheinlich nicht synchronisiert. Die Ursache dieses Zustands ist variabel und schwer zu identifizieren. Um das Problem zu beheben, aktualisieren Sie die Script-Liste über die Schaltfläche oben rechts auf dem Tab „Script“. Wenn das nicht funktioniert, erstellen Sie über die Schaltfläche „Neu“ auf dem Tab „Script“ ein neues Repository und speichern Sie das Script dort. Möglicherweise müssen Sie Scripts aus dem nicht synchronisierten Repository in das neue Repository verschieben.