Earth Engine 推出了
非商业配额层级,以保护共享计算资源并确保为所有人提供可靠的性能。非商业项目默认使用 Community
层级,但您可以随时更改项目的层级。
Google uses AI technology to translate content into your preferred language. AI translations can contain errors.
Export.classifier.toAsset
使用集合让一切井井有条
根据您的偏好保存内容并对其进行分类。
创建一个批处理任务,以将 ee.Classifier 导出为 Earth Engine 资产。
仅适用于 ee.Classifier.smileRandomForest、ee.Classifier.smileCart、ee.Classifier.DecisionTree 和 ee.Classifier.DecisionTreeEnsemble。
| 用法 | 返回 |
|---|
Export.classifier.toAsset(classifier, description, assetId, priority) | |
| 参数 | 类型 | 详细信息 |
|---|
classifier | ComputedObject | 要导出的分类器。 |
description | 字符串,可选 | 任务的直观易懂的名称。默认为“myExportClassifierTask”。 |
assetId | 字符串,可选 | 目标素材资源 ID。 |
priority | 数字,可选 | 项目中任务的优先级。系统会更早地安排优先级较高的任务。必须是介于 0 到 9999 之间的整数。默认值为 100。 |
示例
Code Editor (JavaScript)
// First gather the training data for a random forest classifier.
// Let's use MCD12Q1 yearly landcover for the labels.
var landcover = ee.ImageCollection('MODIS/061/MCD12Q1')
.filterDate('2022-01-01', '2022-12-31')
.first()
.select('LC_Type1');
// A region of interest for training our classifier.
var region = ee.Geometry.BBox(17.33, 36.07, 26.13, 43.28);
// Training features will be based on a Landsat 8 composite.
var l8 = ee.ImageCollection('LANDSAT/LC08/C02/T1')
.filterBounds(region)
.filterDate('2022-01-01', '2023-01-01');
// Draw the Landsat composite, visualizing true color bands.
var landsatComposite = ee.Algorithms.Landsat.simpleComposite({
collection: l8,
asFloat: true
});
Map.addLayer(landsatComposite, {
min: 0,
max: 0.3,
bands: ['B3', 'B2', 'B1']
}, 'Landsat composite');
// Make a training dataset by sampling the stacked images.
var training = landcover.addBands(landsatComposite).sample({
region: region,
scale: 30,
// With export to Classifier we can bump this higher to say 10,000.
numPixels: 1000
});
var classifier = ee.Classifier.smileRandomForest({
// We can also increase the number of trees higher to ~100 if needed.
numberOfTrees: 3
}).train({features: training, classProperty: 'LC_Type1'});
// Create an export classifier task to run.
var assetId = 'projects/<project-name>/assets/<asset-name>'; // <> modify these
Export.classifier.toAsset({
classifier: classifier,
description: 'classifier_export',
assetId: assetId
});
// Load the classifier after the export finishes and visualize.
var savedClassifier = ee.Classifier.load(assetId)
var landcoverPalette = '05450a,086a10,54a708,78d203,009900,c6b044,dcd159,' +
'dade48,fbff13,b6ff05,27ff87,c24f44,a5a5a5,ff6d4c,69fff8,f9ffa4,1c0dff';
var landcoverVisualization = {
palette: landcoverPalette,
min: 0,
max: 16,
format: 'png'
};
Map.addLayer(
landsatComposite.classify(savedClassifier),
landcoverVisualization,
'Upsampled landcover, saved');
Python 设置
如需了解 Python API 以及如何使用 geemap 进行交互式开发,请参阅
Python 环境页面。
import ee
import geemap.core as geemap
Colab (Python)
# First gather the training data for a random forest classifier.
# Let's use MCD12Q1 yearly landcover for the labels.
landcover = (ee.ImageCollection('MODIS/061/MCD12Q1')
.filterDate('2022-01-01', '2022-12-31')
.first()
.select('LC_Type1'))
# A region of interest for training our classifier.
region = ee.Geometry.BBox(17.33, 36.07, 26.13, 43.28)
# Training features will be based on a Landsat 8 composite.
l8 = (ee.ImageCollection('LANDSAT/LC08/C02/T1')
.filterBounds(region)
.filterDate('2022-01-01', '2023-01-01'))
# Draw the Landsat composite, visualizing true color bands.
landsatComposite = ee.Algorithms.Landsat.simpleComposite(
collection=l8, asFloat=True)
Map = geemap.Map()
Map # Render the map in the notebook.
Map.addLayer(landsatComposite, {
'min': 0,
'max': 0.3,
'bands': ['B3', 'B2', 'B1']
}, 'Landsat composite')
# Make a training dataset by sampling the stacked images.
training = landcover.addBands(landsatComposite).sample(
region=region,
scale=30,
# With export to Classifier we can bump this higher to say 10,000.
numPixels=1000
)
# We can also increase the number of trees higher to ~100 if needed.
classifier = ee.Classifier.smileRandomForest(
numberOfTrees=3).train(features=training, classProperty='LC_Type1')
# Create an export classifier task to run.
asset_id = 'projects/<project-name>/assets/<asset-name>' # <> modify these
ee.batch.Export.classifier.toAsset(
classifier=classifier,
description='classifier_export',
assetId=asset_id
)
# Load the classifier after the export finishes and visualize.
savedClassifier = ee.Classifier.load(asset_id)
landcover_palette = [
'05450a', '086a10', '54a708', '78d203', '009900',
'c6b044', 'dcd159', 'dade48', 'fbff13', 'b6ff05',
'27ff87', 'c24f44', 'a5a5a5', 'ff6d4c', '69fff8',
'f9ffa4', '1c0dff']
landcoverVisualization = {
'palette': landcover_palette,
'min': 0,
'max': 16,
'format': 'png'
}
Map.addLayer(
landsatComposite.classify(savedClassifier),
landcoverVisualization,
'Upsampled landcover, saved')
如未另行说明,那么本页面中的内容已根据知识共享署名 4.0 许可获得了许可,并且代码示例已根据 Apache 2.0 许可获得了许可。有关详情,请参阅 Google 开发者网站政策。Java 是 Oracle 和/或其关联公司的注册商标。
最后更新时间 (UTC):2025-07-25。
[null,null,["最后更新时间 (UTC):2025-07-25。"],[],["This content details exporting an `ee.Classifier` as an Earth Engine asset using `Export.classifier.toAsset`. Key actions include: creating a classifier, defining a training dataset using landcover data and Landsat composites, sampling training data, and then training the classifier. The export process involves specifying the `classifier`, `description`, `assetId`, and `priority`. After export, the saved classifier can be loaded and used for classification, then visualized.\n"]]