将栅格栅格四舍五入到小数点后两位

问题描述

Blockquote

在使用Rasterio的shp剪切栅格后,我需要将栅格四舍五入到小数点后两位,如何才能做到最好?是否有光栅功能? 我在下面添加了剪切功能

是否需要设置光栅参数或其他解决方案?

Blockquote

def ClipRaster (polyIN,RASTERIN):

import numpy
import Rasterio
from Rasterio.mask import mask

RASTER = Rasterio.open(RASTERIN)

# # Visualize raster if needed
# show((RASTERIN),cmap='terrain')

#load shapefile
gdf_crop_extent = gpd.read_file(polyIN)
# print('crop extent crs: ',gdf_crop_extent.crs)

def getFeatures(gdf):
    """Function to parse features from GeoDataFrame in such a manner that Rasterio wants them"""
    import json
    return [json.loads(gdf.to_json())['features'][0]['geometry']]

crop_shape= getFeatures(gdf_crop_extent)


# Clip the raster with polygon in proper format
RASTEROUT,out_transform = mask(dataset=RASTER,shapes=crop_shape,crop=True)

 # copy the Metadata to new raster
out_Meta = RASTER.Meta.copy()


# # Parse epsg code for CRS if needed
# epsg_code = int(gdf_crop_extent.crs['init'][5:])
# print(epsg_code)


# update Metadata
#coordinate system can be added if needed,check website at top
out_Meta.update({"driver": "AAIGrid","height": RASTEROUT.shape[1],"width": RASTEROUT.shape[2],"transform": out_transform
                 }
                         )

return (RASTEROUT,out_Meta)

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)