在gdal_calc的文档中,使用numpy语法声明了命令行栅格计算器。稍后有几个示例,其中一个示例:
gdal_calc.py -A input.tif --outfile = result.tif --calc =“ A *(A> 0)” --NoDataValue = 0- 表示将零以下的值设置为null
不幸的是,没有逻辑运算符的示例,例如:
--calc =“ A *(A> 0和A> B)”- 表示如果A大于零且B较大,则保留A,并将其余值设置为null
基于Numpy / Scipy逻辑函数,我希望将逻辑运算符写为:
--calc =“ A * logical_and(A> 0,A> B)”
我尝试了一下,它似乎可以工作,但是我想向您保证这是正确的。
以类似的方式,如果您想要最少的A和B:
--calc =“ A *(A <= B)+ B *(A> B)”
您可以这样写:
--calc =“ minimum(A,B)”
我的问题是我找不到任何食谱来确保我做对了。是否有一些不错的食谱,其中包含有关gdal_calc什么是和不可能的高级示例?