空间数据类型—Image
1.1 创建 ee.Image/ee.Image.Constant
var Image_1= ee. Image ( 10 )
var Image_2 = ee. Image. constant ( 20 )
var Image_3 = Image_1. add ( Image_2)
print ( Image_1, Image_2, Image_3)
1.2 创建 ee.Image.pixelLonLat()
var Image_Lon_Lat= ee. Image. pixelLonLat ( ) ;
print ( Image_Lon_Lat) ;
Map. addLayer ( Image_Lon_Lat, { bands : [ 'longitude' ] , min : - 180 , max : 180 } , 'Longitude' ) ;
Map. addLayer ( Image_Lon_Lat, { bands : [ 'latitude' ] , min : - 60 , max : 60 } , 'Latitude' )
Map. setCenter ( 0 , 0 , 3 )
2.1 掩膜Image.mask() 栅格对栅格
var Image_DEM = ee. Image ( 'CGIAR/SRTM90_V4' )
var Image_CropLand = ee. Image ( "ESA/GLOBCOVER_L4_200901_200912_V2_3" ) . select ( 'landcover' ) . eq ( 11 )
var Image_Masked = Image_DEM. mask ( Image_CropLand)
print ( Image_DEM, Image_CropLand, Image_Masked)
Map. setCenter ( 106.4 , 34.78 , 4 )
Map. addLayer ( Image_DEM, { "opacity" : 1 , "bands" : [ "elevation" ] , "min" : 0 , "max" : 1400 ,
"palette" : [ "2dff07" , "ff0b0b" ] } , 'Image_DEM' )
Map. addLayer ( Image_CropLand, { "opacity" : 1 , "bands" : [ "landcover" ] ,
"palette" : [ "ffffff" , "fbff2d" ] } , 'Image_CropLand' )
Map. addLayer ( Image_Masked, { "opacity" : 1 , "bands" : [ "elevation" ] , "min" : 0 , "max" : 1400 ,
"palette" : [ "2dff07" , "ff0b0b" ] } , 'Image_Masked' )
2.2裁减 Image.clip() 矢量对栅格
var DEM = ee. Image ( "USGS/SRTMGL1_003" )
var Beijing = ee. FeatureCollection ( "projects/ee-wn1206/assets/china" )
. filterBounds ( ee. Geometry. Point ( [ 116.5 , 39.9 ] ) )
var Beijing_DEM = DEM . clip ( Beijing)
Map. setCenter ( 116.5 , 39.9 )
Map. addLayer ( Beijing_DEM, { min : 0 , max : 200 } )
2.3 选波段择 Image.select(‘波段名’)
var Glob_Cover = ee. Image ( "ESA/GLOBCOVER_L4_200901_200912_V2_3" )
var Land_cover = Glob_Cover. select ( 'landcover' )
var Land_cover_quality = Glob_Cover. select ( 'qa' )
var china_LC = Land_cover. clip ( ee. FeatureCollection ( "projects/ee-wn1206/assets/china" ) )
var china_LCQ = Land_cover_quality. clip ( ee. FeatureCollection ( "projects/ee-wn1206/assets/china" ) )
Map. setCenter ( 116.5 , 39.9 , 4 )
Map. addLayer ( china_LCQ, { "bands" : [ "Landcover" ] , "palette" : [ "ffbbff" , "fbff2d" ] } , China_LCQ)
Map. addLayer ( china_LC)
print ( Glob_Cover)
2.4 波段切割 Image…slice()
var L8 = ee. ImageCollection ( "LANDSAT/LC08/C02/T1_L2" )
var L8_One = ee. Image ( L8 . filterBounds ( ee. Geometry. Point ( 106.4958 , 29.5856 ) ) . first ( ) )
var L8_Slice = L8_One. slice ( 2 , 5 )
print ( L8_One, L8_Slice)
2.5 多段添加 Image.addBands()
var L8 = ee. ImageCollection ( "LANDSAT/LC08/C02/T1_RT" )
var L8_One = ee. Image ( L8 . filterBounds ( ee. Geometry. Point ( 106.4958 , 29.5856 ) ) . first ( ) )
var L8_B5 = L8_One. select ( 'B5' )
var L8_B4 = L8_One. select ( 'B4' )
var L8_B5_4 = L8_B5 . addBands ( L8_B4 )
print ( L8_B5 , L8_B4 , L8_B5_4 )
2.6 重投影 Image.reproject()
var L8 = ee. ImageCollection ( "LANDSAT/LC08/C01/T1_RT" )
var L8_One = ee. Image ( L8 . filterBounds ( ee. Geometry. Point ( 106.4958 , 29.5856 ) ) . first ( ) )
var L8_Reproject = L8_One. reproject ( 'EPSG:3857' , null , 100 )
print ( L8_One)
print ( L8_One. select ( 'B1' ) . projection ( ) , L8_Reproject. projection ( ) )
Map. setCenter ( 106.58365 , 29.56972 , 15 )
Map. addLayer ( L8_One, { "bands" : [ "B5" , "B4" , "B3" ] , "min" : 10586 , "max" : 18154 } , "30m" )
Map. addLayer ( L8_Reproject, { "bands" : [ "B5" , "B4" , "B3" ] , "min" : 10586 , "max" : 18154 } , "100m" )
2.7 RGB转HSV Image.rgbtohsv / hsvtorgb
var L8 = ee. ImageCollection ( "LANDSAT/LC08/C01/T1_RT" )
var L8_One = ee. Image ( L8 . filterBounds ( ee. Geometry. Point ( 106.4958 , 29.5856 ) ) . first ( ) ) . slice ( 2 , 5 ) . unitScale ( 0 , 32468 )
var L8_HSV = L8_One. rgbToHsv ( )
var L8_RGB = L8_One. hsvToRgb ( )
print ( L8_One, L8_HSV , L8_RGB )
Map. setCenter ( 106.5 , 29.5 .9 )
Map. addLayer ( L8_One, { } , 'Origin' )
Map. addLayer ( L8_HSV , { } , 'HSV' )
Map. addLayer ( L8_RGB , { } , 'RGB' )
2.8 修改多波段 Image.cast()
var L8 = ee. ImageCollection ( "LANDSAT/LC08/C01/T1_RT" )
var L8_One = ee. Image ( L8 . filterBounds ( ee. Geometry. Point ( 106.4958 , 29.5856 ) ) . first ( ) )
. slice ( 2 , 5 ) . unitScale ( 0 , 32468 )
var L8_Cast = L8_One. cast ( { 'B5' : 'double' , 'B4' : 'double' , 'B3' : "double" } , [ 'B5' , 'B4' , 'B3' ] )
print ( L8_One, L8_Cast)
2.9 修改属性信息 Image.set() Image.setMulti()
var L8 = ee. ImageCollection ( "LANDSAT/LC08/C01/T1_RT" )
var L8_One = ee. Image ( L8 . filterBounds ( ee. Geometry. Point ( 106.4958 , 29.5856 ) ) . first ( ) )
. slice ( 2 , 5 ) . unitScale ( 0 , 32468 )
var L8_HSV = L8_One. rgbToHsv ( ) . set ( 'note' , "This image was created by 'rgbToHsv()'" )
. setMulti ( { 'author' : 'szliu' , 'Mood' : 'Not bad' } )
print ( L8_HSV )
2.10 重分类 Image.remap()
var dataset = ee. Image ( 'ESA/GLOBCOVER_L4_200901_200912_V2_3' ) ;
var landcover = dataset. select ( 'landcover' ) ;
var China = ee. FeatureCollection ( "projects/ee-wn1206/assets/china" ) ;
var China_LC= landcover. clip ( China) ;
Map. setCenter ( 116.5 , 39.9 , 3 ) ;
var Land_Remap= China_LC. remap ( [ 11 , 14 , 20 , 30 , 40 , 50 , 60 , 70 , 80 , 90 , 100 , 110 , 120 , 130 , 140 , 150 , 160 , 17 , 0 , 180 , 190 , 200 , 210 , 220 , 230 ] , [ 0 , 0 , 0 , 0 , 1 , 1 , 1 , 1 , 2 , 2 , 2 , 3 , 3 , 3 , 4 , 4 , 4 , 5 , 5 , 6 , 7 , 8 ] , 8 , 'landcovet' )
Map. addLayer ( China_LC, { "palette" : [ "ffff63" , "009f00" , "8d9f00" , "ffebae" , "009578" , "c31300" , "0046c7" , "743411" ] } , 'Landcover_Remap' ) ;
print ( China_LC) ;
2.11 Image.Where()栅格计算器
var elevation = ee. Image ( 'CGIAR/SRTM90_V4' ) . select ( 'elevation' ) ;
var Land_Cover = ee. Image ( 'ESA/GLOBCOVER_L4_200901_200912_V2_3' ) . select ( 'landcover' ) ;
var High_Land= Land_Cover. where ( elevation. lt ( 4000 ) , 0 )
Map. setCenter ( 116.5 , 39.9 , 3 )
Map. addLayer ( High_Land)
Map. addLayer ( elevation. gt ( 4000 ) )
2.12 Image.clamp 截断值
var DEM = ee. Image ( 'CGIAR/SRTM90_V4' ) . select ( 'elevation' ) ;
print ( DEM ) 查看系统可见最小值或是官网数据信息
var DEM_Clamp= DEM . clamp ( 4000 , 8000 )
Map. setCenter ( 116.5 , 39.9 , 3 ) ;
Map. addLayer ( DEM_Clamp)
2.13 归一化.unitScale()
var dataset = ee. ImageCollection ( 'LANDSAT/LC08/C02/T1' )
. filterDate ( '2017-01-01' , '2017-12-31' ) ;
var trueColor432 = dataset. select ( [ 'B4' , 'B3' , 'B2' ] ) ;
var trueColor432Vis = {
min : 0.0 ,
max : 30000.0 ,
} ;
Map. setCenter ( 6.746 , 46.529 , 6 ) ;
Map. addLayer ( trueColor432, trueColor432Vis, 'True Color (432)' ) ;
var L8_One = ee. ImageCollection ( 'LANDSAT/LC08/C02/T1' ) . filterBounds ( ee. Geometry. Point ( [ 116.5 , 39.9 ] ) ) . first ( ) ;
Map. setCenter ( 116.5 , 39.9 , 6 ) ;
var L8_Unitscale= L8_One. unitScale ( 0 , 32767 )
print ( L8_One, L8_Unitscale)
Map. addLayer ( L8_One, { "bands" : [ 'B4' , 'B3' , 'B2' ] , "min" : 0 , "max" : 30000 } , ' Color (432)' ) ;
Map. addLayer ( L8_Unitscale, { "bands" : [ 'B4' , 'B3' , 'B2' ] , "min" : 0 , "max" : 0.92 } , 'True Color (432)' ) ;
2.14 Image.interpolate()分段线性拉伸
var china= ee. FeatureCollection ( "projects/ee-wn1206/assets/china" ) ;
function Add_Center ( feature )
{
return ee. Geometry ( feature. centroid ( ) )
}
var provinces_centers= china. map ( Add_Center) )
var center_distance= province_centers ( 200000 )
var distance_Interpolate= center_distance. interpolate ( [ 0 , 50000 , 100000 , 150000 , 200000 ] , [ 0 , 25 , 100 , 75 , 50 ] , 'extrapolate' ) ;
Map. centerObject ( province, 4 )
Map. addLayer ( center_distance, { min : 0 , "max" : 200000 } , 'origin' ) ;
Map. sddLayer ( distance_Interpolate, { min : 0 , max : 100 } , 'interpolated' )
Map. addLayer ( provinces_centers, { color : '0000ff' } , 'centers' )
2.15 Image.eq/neq/gt/gte/lt/lte()比较
var china= ee. FeatureCollection ( "projects/ee-wn1206/assets/china" ) ;
var night_Lights= ee. ImageCollection ( 'NOAA/DMSP-OLS/NIGHTTIME_LIGHTS' ) . first ( ) . select ( 'stable_lights' ) . clip ( china) ;
var urban= night_Lights. gte ( 20 )
Map. setCenter ( 116.5 , 39.9 , 6 ) ;
Map. addLayer ( urban, { "opacity" : 0.50 , "bands" : [ "stable_lights" ] , "palette" : [ "171801" , "fbff0f" ] } , 'NighttimeLights' )
` ` ` ![在这里插入图片描述](https://img-blog.csdnimg.cn/13417b023fbd49f5ac5aef3c5bcb1435.png#pic_center)
## 2.16 Image.and/or 逻辑运算
` ` ` javascript
var china= ee. FeatureCollection ( "projects/ee-wn1206/assets/china" ) ;
var night_Lights= ee. ImageCollection ( 'NOAA/DMSP-OLS/NIGHTTIME_LIGHTS' ) . first ( ) . select ( 'stable_lights' ) . clip ( china) ;
var urban = night_Lights. gte ( 20 )
var Low_Area= ee. Image ( "USGS/SRTMGL1_003" ) . lt ( 200 ) . clip ( China)
var Low_Urban= urban. and ( Low_Area)
print ( Low_Area, urban)
Map. setCenter ( 116.5 , 39.9 , 6 ) ;
Map. addLayer ( night_Lights)
Map. addLayer ( Low_Area)
Map. addLayer ( Low_Urban)
2.17 Image.add/subtract/multiply/divide() 加减乘除
var L8 = ee. ImageCollection ( 'LANDSAT/LC08/C02/T1' ) . filterBounds ( ee. Geometry. Point ( [ 116.5 , 39.9 ] ) ) . first ( ) ;
Map. setCenter ( 116.5 , 39.9 , 6 ) ;
var B5 = ee. Image ( L8 . select ( 'B5' ) )
var B4 = ee. Image ( L8 . select ( 'B4' ) )
var NDVI = B5 . subtract ( B4 ) . divide ( B5 . add ( B4 ) )
Map. centerObject ( NDVI )
Map. addLayer ( NDVI , { min : - 1 , max : 1 , "palette" : [ "0f01e2" , "ff9d93" , "fff707" , "11ff2e" , "04ce14" ] } )
2.18 Image.expression() 表达式计算
var L8 = ee. ImageCollection ( 'LANDSAT/LC08/C02/T1' ) . filterBounds ( ee. Geometry. Point ( [ 116.5 , 39.9 ] ) ) . first ( ) ;
var evi= L8 . expression ( '2.5*((NIR-RED)/(NIR+6*RED-7.5*BLUE+1))' ,
{ 'NIR' : L8 . select ( 'B5' ) , 'RED' : L8 . select ( 'B4' ) , 'BLUE' : L8 . select ( 'B2' ) } ) ;
Map. centerObject ( evi)
Map. addLayer ( evi, { min : - 1 , max : 1 , "palette" : [ "0f01e2" , "ff9d93" , "fff707" , "11ff2e" , "04ce14" ] } )
2.19 Image.ImageCollection()
var L8_1 = ee. Image ( 'LANDSAT/LC08/C01/T1_RT/LC08_127040_20130422' )
var L8_2 = ee. Image ( 'LANDSAT/LC08/C01/T1_RT/LC08_127039_20130422' )
var Collection= ee. ImageCollection ( [ L8_1 , L8_2 ] )
Map. setCenter ( 107.4 , 29.7 , 6 ) ;
Map. addLayer ( L8_1 , { "bands" : [ "B5" , "B4" , "B3" ] , "max" : 35000 } , 'L8_1' )
Map. addLayer ( L8_2 , { "bands" : [ "B5" , "B4" , "B3" ] , "max" : 35000 } , 'L8_2' )
Map. addLayer ( Collection, { "bands" : [ "B5" , "B4" , "B3" ] , "max" : 35000 } , 'Collection' )
3. Export.Image.toDrive() 导出云盘
var DEM = ee. Image ( 'CGIAR/SRTM90_V4' ) . select ( 'elevation' ) ;
var china= ee. FeatureCollection ( "projects/ee-wn1206/assets/china" ) ;
varDEM_Clip= DEM . clip ( china) ;
Export. image. toDrive ( DEM . Clip)