Domande di carattere generale
Ho un problema, ho bisogno di aiuto.
Pubblica una domanda seguendo questa guida, fornendo quante più informazioni possibili (consulta la guida di Stack Overflow su come porre domande efficaci). In genere, ciò significa che:
invio di un link a uno script nell'editor di codice (fai clic sul pulsante "Ottieni link" per ottenerlo)
condividere eventuali asset necessari per eseguire lo script
Per le attività batch non riuscite, segnala l'ID dell'attività non riuscita. Gli ID attività hanno questo aspetto:
4C25GIJBMB52PXTEJTF4JLGL. Si trovano nella scheda Attività dell'editor di codice. Scopri di più.
Dove posso leggere informazioni sull'architettura di Earth Engine?
Consulta questo articolo: Gorelick et al. 2017.
Esistono tutorial consigliati su Earth Engine non creati da Google?
Consulta le pagine EDU e Risorse di formazione.
Esistono tutorial sul telerilevamento consigliati?
Consulta questo corso senza costi di EE di Ujaval Gandhi, che include un video con un'introduzione al telerilevamento.
Programmazione di Earth Engine
Quali sono alcuni errori di codifica comuni?
Consulta la guida al debug.
Perché ricevo l'errore "... is not a function"?
Questo errore si verifica quando Earth Engine non riesce a trovare il metodo chiamato. Controlla le seguenti cause comuni:
Ortografia o sensibilità alle maiuscole: i metodi sono sensibili alle maiuscole. Verifica l'ortografia rispetto al riferimento API.
Error: img.normalizedDiff(...) -> Correct: img.normalizedDifference(...)
Cast di tipo mancanti: i valori restituiti da funzioni come .get() sono
istanze ee.ComputedObject generiche e devono essere sottoposti a cast esplicito. Vedi
Casting del tipo di oggetto sconosciuto.
Error: dict.get('val').add(5) -> Correct: ee.Number(dict.get('val')).add(5)
Combinazione di metodi client e server: assicurati di non utilizzare metodi JavaScript o Python standard (come .push() o .append()) sugli oggetti Earth Engine. Consulta Evitare di combinare funzioni client e server.
Error: list.push(4) or list.append(4) -> Correct: list.add(4)
Metodi non disponibili: se l'oggetto è digitato correttamente e il metodo esiste nella documentazione o ha funzionato in precedenza, ma ora non funziona, segnala un bug.
Perché non posso utilizzare operazioni matematiche di base come ee.Image("image") * 2?
In EE non devi combinare oggetti o operazioni lato server e lato client. Tutte le operazioni sugli oggetti EE vengono eseguite lato server. I calcoli lato client non funzioneranno come previsto. Per ulteriori dettagli, consulta questa pagina.
Come faccio a utilizzare i loop for o le istruzioni if/else?
La programmazione di Earth Engine viene eseguita utilizzando un linguaggio funzionale, quindi
i cicli e le operazioni condizionali devono essere espressi utilizzando concetti
equivalenti come map o filter. Per maggiori dettagli, visita
questa pagina.
Come faccio a mostrare le etichette di testo nella mia immagine o nel mio video?
Non è disponibile un supporto integrato per le etichette di testo, ma puoi:
- Utilizza un pacchetto JS di terze parti. Vedi esempio
- Utilizza un pacchetto Python di terze parti geemap.
- Utilizza QGIS importando le immagini di EE utilizzando il plug-in EE QGIS
Posso utilizzare alcune tavolozze dei colori standard?
Utilizza un pacchetto JS di terze parti ee-palettes.
Come faccio a creare il mio sito web che utilizza Earth Engine?
Utilizza le app Earth Engine per le applicazioni di base. Nei casi più complessi, puoi creare app App Engine basate su EE.
Come funzionano gli ID mappa?
Gli ID mappa (chiamati mapid nell'API) sono chiavi che consentono ai client di recuperare i riquadri della mappa. Ogni ID è un hash creato fornendo un'espressione dell'immagine all'endpoint getMapId. Gli ID risultanti sono chiavi che puntano sia all'espressione dell'immagine sia alle credenziali utente che verranno utilizzate per generare i riquadri in una fase successiva.
La richiesta di riquadri della mappa prevede la specifica della posizione del riquadro (x, y,
zoom) e della mapid (la chiave dell'immagine e delle credenziali). Lo stesso
ID può essere riutilizzato per caricare molte tessere della mappa. Non esistono limiti al riutilizzo delle chiavi
mapid, ma scadono dopo alcune ore. Non pubblichiamo
tempistiche specifiche sulla durata, ma qualsiasi codice tu scriva deve
essere resiliente alla scadenza dell'ID.
La creazione di questi ID comporta l'archiviazione di una piccola quantità di dati e la convalida
delle credenziali, pertanto è consigliabile riutilizzarli il più a lungo possibile. Non esiste una quota API
specificamente associata all'endpoint getMapId, ma qualsiasi flusso di lavoro
che prevede la creazione di mapid oggetti a una velocità vicina a quella di
recupero dei riquadri probabilmente non funziona correttamente. Earth Engine non dispone di un endpoint API
per rimuovere, elencare o gestire questi ID, poiché si tratta di risorse
temporanee.
Perché ee.Algorithms.If() stampa sia il caso vero che quello falso?
function a() { print("true"); }
function b() { print("false"); }
// Prints 'true' and 'false'.
ee.Algorithms.If(true, a(), b());
L'algoritmo If() funziona come tutti gli altri algoritmi su Earth Engine, in quanto tutti i suoi argomenti devono essere valutati prima che l'algoritmo stesso possa essere eseguito.
L'algoritmo riceve sia i risultati trueCase che falseCase e poi ne sceglie
e ne restituisce uno in base all'argomento condition, ma entrambi i percorsi dovevano essere
eseguiti affinché i valori venissero passati all'algoritmo.
Visualizzo l'errore "Le dimensioni del payload della richiesta superano il limite"
Stai cercando di inviare a Earth Engine una richiesta molto grande. In genere ciò si verifica quando il codice utilizza molti cicli "for" lato client o crea un FeatureCollection da molti oggetti geometria. In quest'ultimo caso, invece di creare queste geometrie nello script, genera un file CSV che le contenga e caricalo in un asset tabella.
Qual è la differenza tra ee.Image.clip() e ee.Filter.bounds()?
Consulta questo thread di GIS Stack Exchange.
La funzione ee.Image.clip() maschera i pixel che non intersecano un determinato ee.Geometry o ee.Feature, rendendoli trasparenti nelle visualizzazioni ed esclusi dai calcoli. Puoi
considerarlo come il ritaglio di pixel da un'immagine.
La funzione ee.Filter.bounds()
filtra gli oggetti ee.Image da un ee.ImageCollection in base
all'intersezione dell'immagine con un ee.Geometry o un ee.Feature. Viene utilizzato per limitare
l'ambito di un'analisi alle sole immagini che intersecano una determinata regione,
il che consente di ottimizzare le espressioni.
Come convertire i pixel dell'immagine in raccolte di feature, con una feature per pixel?
Utilizza la funzione ee.Image.sample(). Consulta gli esempi di utilizzo nella pagina di riferimento dell'API della funzione.
Qual è la differenza tra ee.ImageCollection.merge() e ee.ImageCollection.combine()?
La funzione ee.ImageCollection.merge()
unisce tutte le immagini di due raccolte in una sola raccolta,
indipendentemente dal fatto che le rispettive immagini abbiano bande, metadati,
CRS o scala coincidenti. È l'unione di due raccolte. Il metodo combine()
combina le bande delle immagini corrispondenti di due raccolte in un'unica
raccolta. Le immagini corrispondenti condividono lo stesso ID (proprietà system:index). Si tratta
di un'unione interna di due raccolte basata sull'ID immagine, in cui le bande delle immagini
corrispondenti vengono combinate. Per le immagini corrispondenti, le bande dell'immagine secondaria vengono
aggiunte all'immagine primaria (la sovrascrittura è facoltativa). Se non ci sono immagini
corrispondenti, viene restituita una raccolta vuota.
Come filtrare le raccolte di immagini in più intervalli di date?
Consulta questo thread di GIS Stack Exchange.
Combina più raccolte merge() o utilizza ee.Filter.or().
Come si crea un riquadro di delimitazione intorno a un determinato punto?
// 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
Puoi aggiungere il set di dati X?
Segnala un bug relativo alla richiesta di set di dati seguendo la guida alle richieste di set di dati.
Puoi anche caricare i dati nella cartella principale di Earth Engine. Consulta Importazione di dati raster e Importazione di dati tabellari.
Una nuova versione di un set di dati esistente
Segnala un bug del set di dati seguendo la guida alle richieste di set di dati e indica che stai richiedendo un aggiornamento del set di dati.
Un set di dati esistente non viene aggiornato o mancano risorse
Prima di segnalare un problema, verifica, se possibile, che gli asset selezionati esistano effettivamente sul sito del fornitore del set di dati. Per saperne di più, consulta la guida sulle immagini mancanti.
Se stai cercando una risorsa filtrando un ImageCollection, assicurati che
i filtri non siano troppo restrittivi.
In particolare, tieni presente che:
Sentinel-2 SR (dati di livello 2) non sono stati prodotti dall'ESA per le prime scene di livello 1.
Landsat non ha una copertura mondiale prima del 2000.
Un set di dati esistente ha valori errati
Pubblica un post nel forum degli sviluppatori. Includi uno script che ingrandisce la risoluzione originale dell'asset e mostra chiaramente quali valori sono errati. Spiega esattamente dove hai osservato il valore alternativo.
Dove posso fare altre domande sui set di dati?
Per domande sui set di dati della NASA, consulta il forum NASA Earth Data.
Per domande sulle toolboxes che operano sui set di dati Copernicus, consulta i forum S1, S2 e S3.
Quanto è grande il catalogo di EE?
A ottobre 2023, il catalogo contiene oltre 1000 set di dati. Le sue dimensioni su disco superano i 90 petabyte (dopo aver preso in considerazione la compressione lossless).
Con quale frequenza vengono aggiornati i dati in EE?
Normalmente, tutti i set di dati in corso vengono aggiornati almeno una volta al giorno (anche se non tutti contengono nuovi dati ogni giorno). Alcuni set di dati vengono aggiornati più volte al giorno. Tuttavia, non esiste una policy che garantisca la presenza degli asset più recenti nel catalogo.
Come faccio a visualizzare i contenuti del catalogo EE in modo programmatico?
L'elenco dei set di dati viene esportato in formato STAC in
un bucket Cloud Storage gs://earthengine-stac.
Il file di voce è
catalog.json.
Posso utilizzare i dati o le immagini di Google Maps per l'analisi?
Google non concede in licenza né vende dati di basemap per l'analisi.
Come faccio a trovare la data di importazione di un asset?
La proprietà dell'asset 'system:version' è il timestamp di importazione, formattato come
microsecondi dall'epoca di Unix. Ecco un esempio che converte il timestamp di importazione
di un'immagine Landsat in un formato leggibile.
var image = ee.Image('LANDSAT/LC08/C02/T1_L2/LC08_044034_20210508');
print('Ingest date', ee.Date(image.getNumber('system:version').divide(1000)));
Il catalogo di Earth Engine contiene metadati JSON-LD?
Sì, i metadati JSON-LD sono incorporati nelle pagine HTML del catalogo. Ad esempio, la pagina Sentinel-2 contiene il seguente blocco:
<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
Come viene implementato l'algoritmo simpleComposite?
L'implementazione lato server è equivalente a questo codice JavaScript.
Come posso creare composizioni senza nuvole dai dati di riflettanza di superficie di Landsat?
I dati Landsat di livello 2 (riflettanza di superficie) hanno diverse bande di qualità che possono essere utilizzate per mascherare le nuvole e altri artefatti indesiderati dell'immagine. Un esempio di utilizzo di queste bande per elaborare immagini SR di Landsat 8 e creare un composito mediano senza nuvole è disponibile in questo post di GIS Stack Exchange. La stessa procedura viene utilizzata per creare un composito senza nuvole da utilizzare negli esempi di classificazione supervisionata nella Guida per gli sviluppatori.
È necessaria l'armonizzazione della riflettanza di superficie Landsat tra sensori?
Roy et al., 2016 includeva un'analisi delle differenze di riflettanza tra la riflettanza TOA e di superficie di Landsat 7-8. Hanno pubblicato i coefficienti OLS e RMA in modo che i lettori potessero trasformare i valori di riflettanza dei dati di un sensore in quelli di un altro. L'ultima riga dell'articolo afferma: "Sebbene le differenze tra i sensori siano piuttosto piccole, possono avere un impatto significativo a seconda dell'applicazione dei dati Landsat". Tuttavia, questa analisi si basava su dati pre-raccolta.
I miglioramenti apportati durante il rielaborazione della raccolta 1 e della raccolta 2 potrebbero influenzare la relazione tra i sensori, ma per quanto ne sappiamo, non sono state eseguite analisi simili a quelle di Roy et al. (2016) per i dati della raccolta 1 o della raccolta 2. Nonostante non sia stata eseguita un'analisi formale, sembra esserci un consenso generale tra gli utenti influenti di Landsat sul fatto che non sia necessaria alcuna correzione per i dati della raccolta 2, livello 2 (riflettanza di superficie). Ad esempio, in risposta a una domanda sulla necessità di armonizzazione della raccolta 2, livello 2, Mike Wulder del team scientifico di Landsat ha osservato che, a seconda della natura dell'applicazione di interesse (inclusi la mappatura della copertura del suolo e il rilevamento dei cambiamenti), i prodotti di riflettanza di superficie della raccolta 2 sono altamente adatti e affidabili, senza necessità di aggiustamento tra sensori.
Come posso mascherare le nuvole e le ombre delle nuvole nelle immagini MSS?
Il modulo msslib di terze parti per l'editor di codice JavaScript include un'implementazione dell'algoritmo MSScvm, nonché altre funzioni utili per esplorare e preparare i dati MSS.
Gestione dei dati
A chi appartengono i dati che carico?
Ai sensi dei Termini di servizio di Earth Engine, i clienti sono proprietari dei dati che caricano su Earth Engine.
Non riesco a caricare i dati.
Controlla lo stato dell'attività di caricamento nel riquadro Attività nell'angolo in alto a destra dell'editor di codice. Puoi anche visualizzare la pagina delle attività dedicata.
Se non è presente alcuna attività, probabilmente hai provato a caricare il file tramite l'editor di codice, ma a causa di un problema di rete il caricamento non è mai stato completato, quindi l'attività non è mai stata creata. Prova a utilizzare un altro browser o un altro computer.
Se è presente un'attività non riuscita, esamina l'errore visualizzato. Se non è presente
un messaggio di errore specifico, verifica innanzitutto che il file non sia danneggiato eseguendo
gdalinfo per i file
raster o ogr2ogr per i file vettoriali.
Questi comandi tenteranno di leggere tutti i dati dai file di origine e
mostreranno errori se i file sono danneggiati.
Esempio di chiamata gdalinfo:
gdalinfo -mm -stats -checksum file.tif
Esempio di chiamata ogr2ogr che convertirà in.shp in out.csv:
ogr2ogr -lco GEOMETRY=AS_WKT -f CSV out.csv in.shp
Se il file sembra valido, pubblica l'ID dell'attività non riuscita come testo (non come
screenshot) nell'elenco mailing degli sviluppatori.
Gli ID attività hanno questo formato: 4C25GIJBMB52PXTEJTF4JLGL. Se possibile, rendi il file sorgente leggibile pubblicamente. Se si tratta di un file privato, condividilo
solo con earthengine@google.com se vuoi che il team di Earth Engine
lo esamini. Se non è possibile condividere il file di origine, fornisci almeno
l'output di gdalinfo -mm -stats -checksum.
Se Earth Engine non supporta una determinata proiezione, dovrai
riproiettare i dati prima del caricamento utilizzando, ad esempio,
gdalwarp.
Come faccio a caricare un file in formato NetCDF o in un altro formato raster non supportato?
Su Earth Engine è possibile caricare solo file GeoTIFF. Altri formati compatibili con GDAL possono essere convertiti in GeoTIFF utilizzando gdal_translate. Esempio:
gdal_translate -co COMPRESS=DEFLATE file.nc file.tif
Tieni presente che alcuni file NetCDF o HDF sono costituiti da più set di dati secondari che possono essere
individuati con gdalinfo. Il comando
gdal_translate in questo caso sarà simile al seguente (nota il percorso
tra le virgolette doppie):
gdal_translate HDF4_EOS:EOS_GRID:"/tmp/MCD12Q1.A2001001.h00v08.005.2011055224312.hdf":MOD12Q1:Land_Cover_Type_1 file.tif
A volte i file NetCDF non contengono una proiezione riconosciuta da GDAL. In questo caso, devi impostare la proiezione e l'estensione spaziale nella riga di comando gdal_translate. Esempio:
gdal_translate -a_srs EPSG:4326 -a_ullr -180 90 180 -90 file.nc file.tid
Quali algoritmi di compressione posso utilizzare per i GeoTIFF caricati?
Per il caricamento, i GeoTIFF possono essere compressi con DEFLATE, JPEG, JPEG-XL/JXL, LERC, LERC_DEFLATE, LERC_ZSTD, LZMA, LZW, WEBP o ZSTD. Per la lettura live di COG, puoi utilizzare DEFLATE, JPEG, LZW o ZSTD. ZSTD è una buona scelta complessiva, in quanto è veloce da decomprimere e offre comunque una buona compressione della maggior parte delle immagini.
Per applicare la compressione ZSTD quando utilizzi gdal_translate, aggiungi queste opzioni. Se
i dati hanno valori in virgola mobile, modifica 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
L'importazione raster è in corso da giorni e non è stata completata.
Utilizzando gdalinfo, controlla se il file ha impostato la seguente opzione GDAL:
INTERLEAVE=PIXEL. Per i file con questa opzione e molte bande, l'importazione potrebbe
non terminare mai perché il layout di questi file rende le letture molto lente.
Prova a convertire questi file nel layout band-interleaved prima di caricarli:
gdal_translate -co "INTERLEAVE=BAND" src.tif dst.tif
I raster caricati non corrispondono alla basemap.
Se i dati sono leggermente spostati rispetto alla mappa base, la proiezione probabilmente ha
un datum errato (presupposto sulla forma della Terra).
Ciò si verifica più spesso con la proiezione sinusoidale che non può essere codificata completamente nei metadati GDAL. Quando
sai qual è la proiezione di destinazione (ad es. SR-ORG:6974 per i file che utilizzano
la proiezione sinusoidale MODIS), imposta il flag --crs durante
il caricamento da riga di comando
o il campo crs del
manifest di caricamento.
Se i dati appaiono notevolmente distorti o nella posizione completamente sbagliata, la proiezione o la trasformazione affine è probabilmente errata.
Il mio raster viene visualizzato solo nell'emisfero orientale.
Probabilmente hai caricato un raster globale che copre l'intervallo di longitudine [0, 360]. Tuttavia, Earth Engine richiede che i raster siano compresi nell'intervallo [-180, 180]. Scambia le metà sinistra e destra del raster prima dell'importazione. Consulta questi suggerimenti di GIS Stack Exchange.
Perché l'immagine di classificazione importata appare macchiettata?
Probabilmente hai utilizzato la norma di piramidazione predefinita MEAN.
Per le immagini di classificazione, deve essere utilizzata la policy di piramidi MODE. Per le immagini QA/bitmask, deve essere utilizzata la policy di piramidi SAMPLE.
Ricevo il seguente errore: No data value -128.0 cannot be applied to band #0 of type Short<0, 255>.
GDAL non può trattare le bande a byte singolo come contenenti numeri interi con segno, quindi le legge come numeri interi senza segno. Ciò entrerebbe in conflitto con i valori negativi di nessun dato.
Se i valori sono numeri interi con segno, utilizza
il caricamento del manifest
e aggiungi quanto segue alla sezione del tileset contenente il file: data_type: "INT8"
Se i valori sono numeri interi senza segno, il file ha un valore nodata errato. Puoi
eseguire l'override al momento del caricamento con il valore di dati corretto (o un valore che non si verifica mai,
se esiste). Puoi anche utilizzare gdal_translate -a_nodata per modificare il valore
nodata o gdal_edit.py -unsetnodata per rimuoverlo.
Come faccio a caricare un file in formato GeoJSON o in un altro formato vettoriale non supportato?
Utilizza ogr2ogr per convertire
i formati compatibili con OGR in CSV o SHP. Esempio:
or2ogr -f "ESRI Shapefile" file.shp file.kml
Tieni presente che nei caricamenti CSV, la colonna della geometria può contenere GeoJSON.
Voglio caricare i dati utilizzando Python o caricare molti file contemporaneamente.
Utilizza il caricamento da riga di comando. Per questi caricamenti è necessario inserire prima i file di origine in un bucket GCS (Google Cloud Storage). L'utilizzo di GCS non costa nulla se rispetti i limiti del livello senza costi. Consulta la pagina dei prezzi.
Voglio caricare un mosaico raster di grandi dimensioni suddiviso in molte tessere.
Se tutti i file hanno la stessa proiezione e le stesse dimensioni dei pixel, caricali insieme nello stesso asset: verranno mosaici automaticamente.
Se i file hanno proiezioni o dimensioni dei pixel diverse, non possono essere assemblati
in un unico asset raster. Carica invece ogni riquadro come asset separato nello stesso ImageCollection che può essere assemblato utilizzando ImageCollection.mosaic().
Sto provando a caricare un mosaico e ricevo errori relativi a tessere non corrispondenti.
I riquadri per i mosaici raster di Earth Engine devono avere la stessa proiezione e le stesse dimensioni dei pixel. Inoltre, le tessere devono essere allineate esattamente ai limiti dei pixel.
Sto tentando di caricare un file da un bucket GCS, ma Earth Engine non riesce a trovarlo.
Potresti aver utilizzato Account Google diversi per il caricamento di GCS e per la connessione a Earth Engine. Assicurati che il file GCS sia leggibile dall'account che utilizzi per connetterti a Earth Engine. Se l'accesso multiplo al browser crea confusione, connettiti a Earth Engine in una finestra del browser in incognito.
Voglio esportare molti asset contemporaneamente.
Devi esportare ogni immagine separatamente.
Voglio spostare o eliminare un Folder o un ImageCollection con un unico comando.
Devi prima spostare o eliminare ogni asset, poi spostare o eliminare la cartella o la raccolta principale. Se ci sono molte risorse secondarie, scrivi un ciclo shell o Python per iterarle.
Voglio accedere direttamente ai dati di Earth Engine dall'esterno.
QGIS ha un plug-in Earth Engine.
GDAL ha un driver Earth Engine.
Altri sistemi possono utilizzare l'API REST di EE.
Vorrei aggiornare una parte del mio asset Earth Engine senza doverlo reimportare completamente.
Non è possibile aggiornare i dati raster o vettoriali caricati in EE. È possibile aggiornare solo le proprietà dei metadati della risorsa.
Sto perdendo l'accesso al mio account. Cosa faccio con le mie risorse?
Se le norme dell'account originale consentono il trasferimento dei dati, condividi le tue risorse con un altro account, quindi copia le risorse di proprietà del nuovo account. Utilizza l'utilità di copia da riga di comando se devi spostare molti asset.
Se un account viene eliminato, gli asset di sua proprietà non sono più accessibili.
L'immagine esportata si trova nel posto sbagliato.
Per alcune proiezioni, come quella sinusoidale o conica, a volte i file GeoTIFF non possono memorizzare tutti i parametri di proiezione necessari. Il risultato è un file esportato che viene visualizzato nella posizione sbagliata quando viene visualizzato negli strumenti GIS desktop o reimportato in EE.
Per risolvere il problema, specifica un parametro crs di esportazione noto per funzionare bene con i file GeoTIFF. Ad esempio, utilizza il codice EPSG per la zona UTM contenente l'area di interesse.
Quale località del bucket Cloud Storage devo utilizzare per archiviare gli asset COG?
La risposta dipende da ciò per cui stai cercando di ottimizzare. Se stai eseguendo l'ottimizzazione per l'accesso al calcolo a bassa latenza, le posizioni migliori dei bucket GCS per archiviare gli asset COG sono US-CENTRAL*. Consulta la pagina Località dei bucket per informazioni su altre considerazioni.
Gli asset della raccolta di funzionalità esportati non conservano le proprietà che ho impostato.
Nessuna funzione Export.table.* conserva le proprietà a livello di tabella nell'output.
Per molti formati di output (ad es. CSV, GeoJSON), non è previsto il supporto di questi
metadati. La funzione Export.table.toAsset potrebbe supportare le proprietà a livello di tabella, ma al momento non lo fa.
Le tabelle esportate in Drive in formato CSV vengono convertite in formato XLSX.
A seconda delle impostazioni di Google Drive, le tabelle CSV esportate da Earth Engine possono essere convertite in file XLSX con effetti indesiderati, come la conversione del tipo di dati. Segui questi passaggi per modificare il comportamento per le esportazioni successive.
- In Google Drive sul web, fai clic sull'icona a forma di ingranaggio delle impostazioni in alto a destra.
- Fai clic su Impostazioni.
- Scorri fino a "Converti i file caricati nel formato dell'editor di Documenti Google" e deseleziona l'opzione.
Editor di codice
Non riesco ad accedere all'editor di codice perché mi viene chiesto di utilizzare l'account sbagliato.
Esci, seleziona l'account registrato per utilizzare Earth Engine nella pagina "Scegli un account" e poi seleziona di nuovo lo stesso account nella seconda pagina "Scegli un account per continuare a Earth Engine Code Editor" (la formulazione esatta potrebbe essere diversa).
Voglio fare uno screenshot di una mappa del mondo, ma non mi piace la proiezione Web Mercator.
La proiezione della mappa utilizzata nell'editor di codice è
Web Mercator
('EPSG:3857'). Aumenta le dimensioni degli oggetti lontano dall'equatore, facendo apparire
le regioni ad alta latitudine molto più grandi di quanto non siano in realtà,
rispetto alle regioni vicino all'equatore. Non puoi modificare la proiezione del canvas della mappa dell'editor di codice, ma puoi "dipingere" un'immagine nella proiezione che preferisci sul canvas Web Mercator utilizzando il metodo ee.Image.changeProj.
Consulta la pagina di riferimento dell'API del metodo per un esempio di visualizzazione di un DEM globale nella mappa dell'editor di codice nella proiezione di Robinson.
Tieni presente che questa tecnica deve essere utilizzata solo a scopo di visualizzazione, poiché
gli strumenti di disegno e l'inspector dell'editor di codice funzionano ancora in Web Mercator.
Il mio script non viene salvato (Script error: Unknown commit).
Se ricevi un messaggio Script error: Unknown commit quando salvi uno script,
probabilmente significa che il repository in cui stai salvando non è sincronizzato.
La causa di questo stato è variabile e difficile da identificare. Per risolvere il problema, prova ad aggiornare l'elenco degli script utilizzando il pulsante nell'angolo in alto a destra
della scheda Script. Se non funziona, prova a creare un nuovo repository dal pulsante Nuovo nella scheda Script e a salvare lo script lì (potrebbe essere necessario spostare gli script nel nuovo repository dal repository non sincronizzato).