我想基于栅格中的“值”字段,使用python脚本将多个栅格文件转换为点文件。但是,我想排除值为“ 0”的单元格。有一种方法可以一步完成,还是我需要将原始栅格复制到新栅格并将no_data值设置为0?有什么建议吗?谢谢。
答案 0 :(得分:0)
免责声明:我是以下库的作者。
您可以尝试lidario.Translator:它可以将多个.tif文件快速转换为任何类型的点云(np.array,pd.dataframe,csv文件等)。它与GDAL一起使用。
对np.array的保留:
import lidario as lio
# Create a Translator object which will take a tif file and return a np.array
translator = lio.Translator("geotiff", "np")
# Translate the tif file and get the np.array
point_cloud = translator.translate("/path/to/file.tif", no_data=0, band=1)
直接保存为CSV:
import lidario as lio
translator = lio.Translator("geotiff", "csv")
translator.translate("/path/to/file.tif", out_file='output.csv', no_data=0, band=1)