Инструмент earthengine
— это служебная программа, которая позволяет управлять активами и задачами Earth Engine из командной строки. Он устанавливается автоматически при установке Python API . Чтобы проверить, правильно ли установлен и работает инструмент, введите в командной строке следующее:
earthengine
Если инструмент установлен правильно, он распечатывает краткую сводку доступных команд. Чтобы получить справку по конкретной команде, используйте:
earthengine command -h
При первой установке API Python вам необходимо войти в систему, используя команду authenticate
описанную ниже. В следующих разделах доступные команды описаны более подробно.
Учетные данные сервисной учетной записи
Чтобы использовать CLI с учетными данными учетной записи службы, используйте флаг service_account_file
, чтобы указать на файл JSON, содержащий ключ учетной записи службы.
earthengine --service_account_file=service_account_creds.json
Использование в Колабе
Инструмент командной строки Earth Engine предустановлен и готов к использованию в Google Colab .
Аутентификация
Выполняйте аутентификацию для каждого нового сеанса Colab или в случае истечения срока действия виртуальной машины из-за бездействия (учетные данные не сохраняются между сеансами).
Импортируйте клиентскую библиотеку Python и вызовите ee.Authenticate()
, чтобы запустить поток аутентификации. Следуйте инструкциям для завершения аутентификации. По умолчанию в Colab используется auth_mode
— colab
, другие параметры см. в руководстве по аутентификации .
import ee
ee.Authenticate()
Выполнение команды
Чтобы запустить утилиты командной строки, такие как Earth Engine CLI, вам необходимо добавлять к вызовам команд восклицательный знак.
!earthengine -h
Установить облачный проект
Используйте опцию --project
, чтобы установить облачный проект для каждой отдельной команды earthengine
.
!earthengine --project my-project <command>
Альтернативно, установите проект по умолчанию, который будет использоваться всеми вызовами earthengine
с помощью команды set_project
. Проект будет добавлен в файл учетных данных (~/.config/earthengine/credentials) и использован для последующих команд, если только он не будет переопределен--project
. Установите проект по умолчанию для каждого нового сеанса Colab или в случае истечения срока действия виртуальной машины из-за бездействия (учетные данные не сохраняются между сеансами).
!earthengine set_project my-project
Справочник команд
аутентифицировать
Аутентифицирует инструмент командной строки и клиентскую библиотеку Python в Earth Engine. Пример:
earthengine authenticate
Earth Engine использует протокол OAuth 2.0 для аутентификации клиентов. Команда Earthengine Authenticate предложит вам пройти процесс аутентификации с помощью веб-браузера.
Вам потребуется установить gcloud, если вы используете режим аутентификации gcloud по умолчанию. Другие режимы аутентификации, доступные через параметр auth_mode
, смотрите в руководстве по аутентификации .
ACL
Печатает или обновляет список управления доступом (ACL) ресурса Earth Engine. ACL контролирует, кто может читать или записывать актив. Примеры:
earthengine acl get projects/my-project/assets/asset_id
earthengine acl set public projects/my-project/assets/asset_id
earthengine acl ch -u username@gmail.com:R projects/my-project/assets/asset_id
Подкоманда get
печатает описание ACL в формате JSON. Подкоманда set
устанавливает список ACL, предоставленный в файле того же формата JSON. Вы можете скопировать ACL из одного ресурса в другие, сохранив выходные данные get
и передав их в set
.
Подкоманда set также принимает два специальных имени ACL:
-
private
: удаляет разрешения у всех, кроме владельца. -
public
: предоставляет разрешение на чтение всем пользователям.
Подкоманда ch
позволяет вносить отдельные изменения в ACL. Чтобы предоставить разрешение на чтение, укажите -u username@gmail.com:R
, чтобы предоставить разрешение на запись, укажите -u username@gmail.com:W
, а чтобы удалить разрешения пользователя, укажите -d username@gmail.com
. Специальный идентификатор пользователя AllUsers
может использоваться для предоставления или отзыва разрешения на чтение всем пользователям или у всех пользователей. (Обратите внимание, что отзыв разрешений AllUsers
не отменяет никаких дополнительных разрешений, которые вы также могли предоставить отдельным пользователям.)
объект
Печатает или обновляет метаданные, связанные с активом Earth Engine. Примеры:
earthengine asset info projects/my-project/assets/asset_id
earthengine asset set -p name=value projects/my-project/assets/asset_id
Субкоманда info
печатает подробную информацию об активе, включая его метаданные, в форме JSON. Подкоманда set
устанавливает отдельные свойства метаданных актива.
Значения свойств метаданных, которые вы устанавливаете, могут быть числами или строками. При задании имен свойств с помощью флага --property
или -p
разделяйте имя и значение свойства знаком равенства. Тип данных определяется автоматически, или вы можете указать его явно, добавив к имени свойства префикс (string)
, (number)
или (date)
. Например, это устанавливает свойство со строковым значением со значением "42"
:
earthengine asset set -p '(string)name=42' projects/my-project/assets/asset_id
(Кавычки в этом примере не позволяют оболочке интерпретировать круглые скобки. Они могут быть, а могут и не быть необходимыми, в зависимости от вашей оболочки и платформы.)
Чтобы удалить свойство, установите для него значение null
без указания типа:
earthengine asset set -p name=null projects/my-project/assets/asset_id
Свойства даты — это просто числа, которые представляют собой количество миллисекунд, прошедших с эпохи Unix ( т. е. полночь 1 января 1970 года), и могут быть указаны непосредственно в виде числа или в одном из следующих форматов:
YYYY-MM-DD
YYYY-MM-DDThh:mm:ss
YYYY-MM-DDThh:mm:ss.f
Предполагается, что часовой пояс — UTC. Вы можете установить специальные свойства времени начала и окончания, используя флаги --time_start
и --time_end
:
earthengine asset set --time_start 1978-10-15T12:34:56 projects/my-project/assets/asset_id
КП
Копирует актив. Пример:
earthengine cp projects/my-project/assets/asset_id projects/my-project/assets/new_asset_id
создавать
Создает новые папки и коллекции изображений. Пример:
earthengine create folder projects/my-project/assets/folder_id
earthengine create collection projects/my-project/assets/collection_id
Используйте подкоманду folder
для создания папок и collection
для создания коллекций изображений. Вы можете указать опцию -p
для рекурсивного создания родительских папок по мере необходимости. Вновь созданные папки и изображения по умолчанию имеют частные списки управления доступом.
лс
Перечисляет содержимое одной или нескольких папок или коллекций. Пример:
earthengine ls users/username
Опция -l
запрашивает длинный формат с дополнительной информацией о каждом активе (в настоящее время только о его типе). Вы можете указать --max_items number
(или -m
для краткости), чтобы ограничить количество элементов в каждой папке или коллекции, которую вы указываете:
earthengine ls -m 10 projects/my-project/assets/my_large_collection
Запуск команды ls
без аргументов выведет список принадлежащих вам папок верхнего уровня.
модель
Инструмент для управления сохраненными моделями TensorFlow.
model prepare
Подготовьте сохраненную модель для обслуживания в Earth Engine. В частности, это преобразует вашу SavedModel
в форму, подходящую для обработки запросов от Earth Engine. ( Подробнее о SavedModel
.)
earthengine model prepare my_source_dir my_dest_dir '{"Conv2D:0":"my_input_band"}' '{"Sigmoid:0":"my_output_band"}'
Узнайте больше о моделях платформы искусственного интеллекта здесь . Полный пример смотрите здесь .
МВ
Перемещает или переименовывает актив. Пример:
earthengine mv projects/my-project/assets/asset_id projects/my-project/assets/new_asset_id
проект_конфигурация
Устанавливает значения конфигурации проекта. Перед использованием этой команды обязательно установите проект с помощью set_project
.
получать
Чтобы просмотреть конфигурацию проекта, используйте подкоманду get
:
earthengine alpha project_config get
Если у вас есть разрешение на просмотр настроек пакетной задачи проекта , выходные данные будут содержать:
-
maxConcurrentExports
: число, указывающее максимальное количество пакетных задач, которые могут выполняться параллельно всеми пользователями данного проекта. По умолчанию установлено максимальное значение, разрешенное планом подписки связанного платежного аккаунта.
Кроме того, если у вас есть разрешение на просмотр конфигурации плана , выходные данные будут содержать:
-
planMaxConcurrentExports
— число, указывающее максимальное количество пакетных задач, которые могут выполняться параллельно для всех пользователей и проектов, использующих учетную запись выставления счетов.
набор
Чтобы обновить конфигурацию проекта, используйте подкоманду set
. Можно настроить следующие параметры:
-
max_concurrent_exports
для управления максимальным параллелизмом пакетных задач проекта.- требуются правильные разрешения
Например, чтобы настроить проект так, чтобы одновременно разрешалось параллельное выполнение только 10 задач для данного проекта:
earthengine alpha project_config set --max_concurrent_exports=10
В выходных данных отображается обновленная конфигурация проекта, идентичная той, которую возвращает get
.
Дополнительные сведения о параллелизме пакетных задач см. на странице квот Earth Engine .
РМ
Удаляет один или несколько активов. Пример:
earthengine rm projects/my-project/assets/asset_id
earthengine rm -r projects/my-project/assets/folder_id
Вы можете использовать флаг -r
для рекурсивного удаления содержимого папки или коллекции. В целях безопасности при удалении нескольких ресурсов вы можете использовать флаг --dry_run
, чтобы точно проверить, что именно будет удалено, не удаляя при этом ничего.
set_project
Устанавливает проект Google Cloud, через который направляются запросы вычислений.
earthengine set_project foo-project
Эта команда необходима перед запуском команд, требующих облачных функций, например model
.
задача
Печатает информацию о долго выполняющихся задачах или управляет ими. Примеры:
earthengine task list
earthengine task list -l
earthengine task info TASK_ID
earthengine task cancel TASK_ID
Субкоманда list
выводит основную информацию о задачах, которые вы недавно отправили. Опция -l
запрашивает длинный формат с дополнительной информацией о каждой задаче. Подкоманда info
выводит подробную информацию об отдельных задачах. Подкоманда cancel
отменяет одну или несколько запущенных задач.
загрузить
Загружает изображения или таблицы из Google Cloud Storage в Earth Engine или создает ресурсы на основе внешних изображений.
изображение
Чтобы загрузить изображение с настройками по умолчанию:
earthengine upload image --asset_id=projects/my-project/assets/asset_id gs://bucket/image.tif
Если вы укажете несколько входных файлов изображений, они будут интерпретироваться как фрагменты одного графического ресурса. Дополнительную информацию о вариантах загрузки изображений в Earth Engine можно узнать в разделе Загрузка графических ресурсов: дополнительные параметры .
Вы можете указать политику сокращения пирамиды, используя флаг --pyramiding_policy
, для которого можно установить одно из значений: mean
(по умолчанию), sample
, mode
, min
или max
. Это будет управлять тем, как Earth Engine генерирует пирамиду версий вашего изображения с более низким разрешением:
earthengine upload image --asset_id=projects/my-project/assets/asset_id --pyramiding_policy=sample gs://bucket/image.tif
Вы можете использовать --last_band_alpha
, чтобы указать, что маска для изображения должна быть взята из альфа-канала в последней полосе:
earthengine upload image --asset_id=projects/my-project/assets/asset_id --last_band_alpha gs://bucket/image.tif
Вы можете указать значение без данных, используя флаг --nodata_value
. Это замаскирует все пиксели изображения с этим значением:
earthengine upload image --asset_id=users/myuser/asset --nodata_value=255 gs://bucket/image.tif
Вы также можете указать свойства метаданных для установки на ресурсе, используя те же флаги, которые принимаются командой asset set
описанной выше . Эти параметры также описаны в руководстве по манифесту изображения .
стол
Чтобы загрузить шейп-файл, CSV или TFRecord из Google Cloud Storage в ресурс таблицы Earth Engine, вы можете использовать любое из:
earthengine upload table --asset_id=projects/my-project/assets/myUploadedShapefile gs://bucket/foo.shp
earthengine upload table --asset_id=projects/my-project/assets/myUploadedCSV gs://bucket/foo.csv
earthengine upload table --asset_id=projects/my-project/assets/myUploadedTFRecord gs://bucket/foo.tfrecord
Существует множество вариантов интерпретации файлов CSV и TFRecord. Полный список вариантов загрузки таблиц можно просмотреть, посетив руководство по манифесту таблицы или выполнив следующие действия:
earthengine upload table -h
внешнее_изображение
Чтобы создать ресурс, поддерживаемый внешним изображением, запустите команду upload_image
с манифестом:
earthengine alpha upload external_image --manifest /tmp/foo.json
Пример манифеста:
{
"name": "projects/{project}/assets/cogdemo1",
"tilesets": [
{ "id": "0", "sources": [{ "uris": ["gs://ee-docs-demos/COG_demo.tif"] }] }
],
"properties": {
"source": "https://code.earthengine.google.com/d541cf8b268b2f9d8f834c255698201d"
},
"startTime": "2016-01-01T00:00:00.000000000Z",
"endTime": "2016-12-31T15:01:23.000000000Z"
}
Дополнительные сведения о создании манифеста см. в руководстве Cloud GeoTIFF и руководстве по манифесту изображения .