ee.data.getDownloadId

Laden Sie eine Download-ID herunter.

Gibt eine Download-ID und ein Token zurück oder „null“, wenn ein Callback angegeben ist.

NutzungAusgabe
ee.data.getDownloadId(params, callback)DownloadId
ArgumentTypDetails
paramsObjektEin Objekt mit Downloadoptionen mit den folgenden möglichen Werten:
name:  – ein Basisname, der beim Erstellen von Dateinamen verwendet werden soll. Gilt nur, wenn das Format „ZIPPED_GEO_TIFF“ (Standard), „ZIPPED_GEO_TIFF_PER_BAND“ ist oder filePerBand auf „true“ gesetzt ist. Standardmäßig wird die Bild-ID verwendet (oder „download“ für berechnete Bilder), wenn das Format „ZIPPED_GEO_TIFF“, „ZIPPED_GEO_TIFF_PER_BAND“ ist oder „filePerBand“ auf „true“ gesetzt ist. Andernfalls wird eine zufällige Zeichenfolge generiert. Bandnamen werden angehängt, wenn „filePerBand“ auf „true“ gesetzt ist.
bands: : Eine Beschreibung der herunterzuladenden Bänder. Muss ein Array mit Bandnamen oder ein Array mit Wörterbüchern sein, wobei jedes Wörterbuch die folgenden Schlüssel enthält (optionale Parameter gelten nur, wenn „filePerBand“ auf „true“ gesetzt ist):
  • id:  Der Name des Bands, ein String, erforderlich.
  • crs:  – ein optionaler CRS-String, der die Bandprojektion definiert.
  • crs_transform: : ein optionales Array mit 6 Zahlen, das eine affine Transformation aus dem angegebenen CRS in zeilenweiser Reihenfolge angibt: [xScale, xShearing, xTranslation, yShearing, yScale, yTranslation]
  • dimensions: : Ein optionales Array mit zwei Ganzzahlen, die die Breite und Höhe definieren, auf die das Band zugeschnitten wird.
  • scale: : Eine optionale Zahl, die den Maßstab des Bands in Metern angibt. Wird ignoriert, wenn „crs“ und „crs_transform“ angegeben sind.
crs:  einen Standard-CRS-String, der für alle Bänder verwendet wird, für die kein CRS explizit angegeben ist.
crs_transform:  eine standardmäßige affine Transformation, die für alle Bänder verwendet werden soll, für die keine angegeben ist. Sie hat dasselbe Format wie die crs_transform der Bänder.
dimensions: -Standardabmessungen für das Zuschneiden von Bildern, die für alle Bänder verwendet werden, für die keine Abmessungen angegeben sind.
scale:  – Eine Standardskala für alle Bereiche, für die keine Skala angegeben ist. Wird ignoriert, wenn crs und crs_transform angegeben sind.
region: : Ein Polygon, das einen herunterzuladenden Bereich angibt. Wird ignoriert, wenn crs und crs_transform angegeben sind.
filePerBand:  ob ein separates GeoTIFF pro Band erstellt werden soll (boolescher Wert). Der Standardwert ist „true“. Bei „false“ wird ein einzelnes GeoTIFF erstellt und alle Transformationen auf Bandebene werden ignoriert. Dieser Parameter wird ignoriert, wenn das Format „ZIPPED_GEO_TIFF“ oder „ZIPPED_GEO_TIFF_PER_BAND“ ist.
format:  das Downloadformat. Eine der folgenden Möglichkeiten:
  • „ZIPPED_GEO_TIFF“ (GeoTIFF-Datei in einer ZIP-Datei, Standard)
  • „ZIPPED_GEO_TIFF_PER_BAND“ (Mehrere GeoTIFF-Dateien in einer ZIP-Datei)
  • „NPY“ (binäres NumPy-Format)
 Bei „GEO_TIFF“ oder „NPY“ werden „filePerBand“ und alle Transformationen auf Bandebene ignoriert. Wenn Sie eine NumPy-Ausgabe laden, erhalten Sie ein strukturiertes Array.
id: ist veraltet. Verwenden Sie den Parameter „image“.
callbackFunktion (optional)Ein optionaler Callback. Wenn nicht angegeben, erfolgt der Aufruf synchron.

Beispiele

Code-Editor (JavaScript)

// A Sentinel-2 surface reflectance image.
var img = ee.Image('COPERNICUS/S2_SR/20210109T185751_20210109T185931_T10SEG');

// A small region within the image.
var region = ee.Geometry.BBox(-122.0859, 37.0436, -122.0626, 37.0586);

var downloadId = ee.data.getDownloadId({
    image: img,
    name: 'single_band',
    bands: ['B3', 'B8', 'B11'],
    region: region
});
print('Single-band GeoTIFF files wrapped in a zip file',
      ee.data.makeDownloadUrl(downloadId));

var downloadId = ee.data.getDownloadId({
  image: img,
  name: 'multi_band',
  bands: ['B3', 'B8', 'B11'],
  region: region,
  scale: 20,
  filePerBand: false
});
print('Multi-band GeoTIFF file wrapped in a zip file',
      ee.data.makeDownloadUrl(downloadId));

var downloadId = ee.data.getDownloadId({
  image: img,
  name: 'custom_single_band',
  bands: [
    {id: 'B3', scale: 10},
    {id: 'B8', scale: 10},
    {id: 'B11', scale: 20}
  ],
  region: region
});
print('Band-specific transformations',
      ee.data.makeDownloadUrl(downloadId));

var downloadId = ee.data.getDownloadId({
  image: img,
  bands: ['B3', 'B8', 'B11'],
  region: region,
  scale: 20,
  format: 'GEO_TIFF'
});
print('Multi-band GeoTIFF file',
      ee.data.makeDownloadUrl(downloadId));

Python einrichten

Informationen zur Python API und zur Verwendung von geemap für die interaktive Entwicklung finden Sie auf der Seite Python-Umgebung.

import ee
import geemap.core as geemap

Colab (Python)

"""Demonstrates the ee.data.getDownloadId method."""

import io
import requests
import ee


ee.Authenticate()
ee.Initialize()

# A Sentinel-2 surface reflectance image.
img = ee.Image('COPERNICUS/S2_SR/20210109T185751_20210109T185931_T10SEG')

# A small region within the image.
region = ee.Geometry.BBox(-122.0859, 37.0436, -122.0626, 37.0586)

# Image chunk as a NumPy structured array.
import numpy
download_id = ee.data.getDownloadId({
    'image': img,
    'bands': ['B3', 'B8', 'B11'],
    'region': region,
    'scale': 20,
    'format': 'NPY'
})
response = requests.get(ee.data.makeDownloadUrl(download_id))
data = numpy.load(io.BytesIO(response.content))
print(data)
print(data.dtype)

# Single-band GeoTIFF files wrapped in a zip file.
download_id = ee.data.getDownloadId({
    'image': img,
    'name': 'single_band',
    'bands': ['B3', 'B8', 'B11'],
    'region': region
})
response = requests.get(ee.data.makeDownloadUrl(download_id))
with open('single_band.zip', 'wb') as fd:
  fd.write(response.content)

# Multi-band GeoTIFF file wrapped in a zip file.
download_id = ee.data.getDownloadId({
    'image': img,
    'name': 'multi_band',
    'bands': ['B3', 'B8', 'B11'],
    'region': region,
    'scale': 20,
    'filePerBand': False
})
response = requests.get(ee.data.makeDownloadUrl(download_id))
with open('multi_band.zip', 'wb') as fd:
  fd.write(response.content)

# Band-specific transformations.
download_id = ee.data.getDownloadId({
    'image': img,
    'name': 'custom_single_band',
    'bands': [
        {'id': 'B3', 'scale': 10},
        {'id': 'B8', 'scale': 10},
        {'id': 'B11', 'scale': 20}
    ],
    'region': region
})
response = requests.get(ee.data.makeDownloadUrl(download_id))
with open('custom_single_band.zip', 'wb') as fd:
  fd.write(response.content)

# Multi-band GeoTIFF file.
download_id = ee.data.getDownloadId({
    'image': img,
    'bands': ['B3', 'B8', 'B11'],
    'region': region,
    'scale': 20,
    'format': 'GEO_TIFF'
})
response = requests.get(ee.data.makeDownloadUrl(download_id))
with open('multi_band.tif', 'wb') as fd:
  fd.write(response.content)