光栅到点的转换:如何转换每个像素?在 Google 地球引擎上
Raster to Point conversion: how to convert every single pixel? on Google Earth Engine
美好的一天。我正在尝试使用 Google Earth Engine 将栅格转换为点。我的栅格有一个波段(簇),它已被剪裁到我的投资回报率。我知道 Google Earth Engine 上的 reduceToVectors
函数,但据我了解,此函数创建的区域具有 相同的相邻值 ,而我想要的是创建与像素一样多的点。
到目前为止,我已经尝试了不同版本的:
var vectors = image.reduceToVectors({
reducer : null,
geometry : treat,
scale:30,
crs :image.projection().getInfo().crs,
geometryType : 'centroid',
labelProperty : 'null',
eightConnected: false,
maxPixels: 1e15
});
非常感谢您的帮助。
ee.Image.sample
returns 每个像素一个点。
var vectors = image.sample({
region: treat,
geometries: true, // if you want points
});
如果您不指定 scale
和 crs
,它将使用输入图像原始分辨率中的每个像素。如果这样做,它将改为以给定的比例进行采样。
演示脚本:
var region = ee.Geometry.Polygon(
[[[-110.00683426856995, 40.00274575078824],
[-110.00683426856995, 39.99948706365032],
[-109.99576210975647, 39.99948706365032],
[-109.99576210975647, 40.00274575078824]]], null, false);
var image = ee.Image('CGIAR/SRTM90_V4');
Map.setCenter(-110, 40, 16);
Map.addLayer(image, {min: 1000, max: 2000}, 'SRTM');
var vectors = image.sample({
region: region,
geometries: true,
});
print(vectors);
Map.addLayer(ee.FeatureCollection([region]).style({"color": "white"}));
Map.addLayer(vectors);
https://code.earthengine.google.com/625a710d6d315bad1c2438c73bde843b
美好的一天。我正在尝试使用 Google Earth Engine 将栅格转换为点。我的栅格有一个波段(簇),它已被剪裁到我的投资回报率。我知道 Google Earth Engine 上的 reduceToVectors
函数,但据我了解,此函数创建的区域具有 相同的相邻值 ,而我想要的是创建与像素一样多的点。
到目前为止,我已经尝试了不同版本的:
var vectors = image.reduceToVectors({
reducer : null,
geometry : treat,
scale:30,
crs :image.projection().getInfo().crs,
geometryType : 'centroid',
labelProperty : 'null',
eightConnected: false,
maxPixels: 1e15
});
非常感谢您的帮助。
ee.Image.sample
returns 每个像素一个点。
var vectors = image.sample({
region: treat,
geometries: true, // if you want points
});
如果您不指定 scale
和 crs
,它将使用输入图像原始分辨率中的每个像素。如果这样做,它将改为以给定的比例进行采样。
演示脚本:
var region = ee.Geometry.Polygon(
[[[-110.00683426856995, 40.00274575078824],
[-110.00683426856995, 39.99948706365032],
[-109.99576210975647, 39.99948706365032],
[-109.99576210975647, 40.00274575078824]]], null, false);
var image = ee.Image('CGIAR/SRTM90_V4');
Map.setCenter(-110, 40, 16);
Map.addLayer(image, {min: 1000, max: 2000}, 'SRTM');
var vectors = image.sample({
region: region,
geometries: true,
});
print(vectors);
Map.addLayer(ee.FeatureCollection([region]).style({"color": "white"}));
Map.addLayer(vectors);
https://code.earthengine.google.com/625a710d6d315bad1c2438c73bde843b