我在GTiff中有一个范围为0到65535的卫星图像,我需要将其转换为字节格式(0-255)。
使用: gdal_translate [-a_nodata 0 and -scale 0 65535 0 255] -ot Byte infile.if outfile.tif
这样可以正常工作,但是我得到了很多像素,这些像素被向下舍入(截断)为0,这是我的nodata值,这意味着它们在可视化时变得透明。
我尝试过使用-a_nodata 0和-scale 1 65535 0 255,但我还没有找到适合我的解决方案。
我正在寻找的是nodata为0,数据范围为1-255。
答案 0 :(得分:0)
如果有其他人偶然发现,我只想发布我找到的解决方案。
例程gdal_calc.py,它允许人们使用例如Python函数。 numpy和数学,可以轻松完成。
gdal_calc.py -A inputfile.tif --outfile=outputfile.tif --calc="A/258+1" --NoDataValue=0
然后只需要通过gdal_translate og gdalwarp将其转换为字节格式(如果还需要重新网格化数据)。