def rasterize_pctcover_geom(geom, shape, affine, scale=None, all_touched=False):
"""
Parameters
----------
geom: GeoJSON geometry
shape: desired shape
affine: desired transform
scale: scale at which to generate percent cover estimate
Returns
-------
ndarray: float32
"""
if scale is None:
scale = 10
min_dtype = min_scalar_type(scale ** 2)
new_affine = Affine(affine[0]/scale, 0, affine[2],
0, affine[4]/scale, affine[5])
new_shape = (shape[0] * scale, shape[1] * scale)
rv_array = rasterize_geom(geom, new_shape, new_affine, all_touched=all_touched)
rv_array = rebin_sum(rv_array, shape, min_dtype)
return rv_array.astype('float32') / (scale**2)
评论列表
文章目录