GEE(10):使用mask、unmask掩膜掉特定值的区域

GEE中提供了关于掩膜的几个函数,分别为mask()unmask()updateMask().

1.mask()

使用方法:image.mask(),这时image.mask()就变成了一个掩膜,可以配合updateMask使用:

// imageA、imageB为影像
var maska = imageA.mask();
var imageBNew = imageB.updateMask(maska);

如上,就可以使用imageA将imageB掩膜掉,也就是将imageB中imageA的部分提取出来。
如果只是单纯的使用image.mask(),会将影像的掩膜区域与非掩膜区域用0和1区分开来,其中1代表为掩膜,0代表未掩膜。

2.unmask()

使用方法:image.unmask(数字),可以将掩膜掉的区域替换为任意数字,而未掩膜的区域保持原值。例如image.unmask(-9999),可以将掩膜掉的区域值替换为-9999,导出到arcgis中打开就可以与其匹配。
此外,还可以将特定条件的掩膜替换为指定的值,例如想要将imageB中小于0的部分统一替换为0,可以这样写:

var a = imageB.mask(imageB.gte(0)).unmask(0);

如上,首先将小于0的部分mask掉,那么未掩膜掉的区域就是大于0的部分,然后将掩膜掉(小于0的分布)的地方替换为0。

3.updatemask()

使用方法:image.updateMask(),updateMask会将影像上为0的区域掩膜掉,如果你希望某一景影像与另一景影像具有相同的掩膜,可以使用image2.updateMask(image1.mask().not())

你可能感兴趣的:(GEE,GEE,mask,unmask,undateMask,按掩膜提取)