在QGIS中将32位图像转换为8位图像


10

我想将图像从32位转换为8位。我正在使用otb计算纹理,并且光栅输出是8位的,我将使用此信息作为32位多光谱图像的图层堆栈!

如果在QGIS中,如何将8位转换为32位?

Answers:


10

在问题开始时,您会询问从32位升至8位,而在结束时,您会询问从另一位转向,所以这将是一个通用的答案。

大多数GDAL函数允许您使用命令行标记指定像素深度-ot(例如,请参阅gdal_translategdal_rasterize的文档)。-ot开关可以采用值Byte / Int16 / UInt16 / UInt32 / Int32 / Float32 / Float64 / CInt16 / CInt32 / CFloat32 / CFloat64。

在QGIS中,如果要强制从GDAL函数提供的输出为您提供特定的像素深度而不是默认像素深度,请编辑命令行以在-ot开关中包含所需的像素深度。例如,进入Raster-> Conversion-> Translate。在对话框的底部(至少在1.9版中),您将看到为您生成的命令行命令。单击带有小铅笔图标的按钮旁边的按钮,使您可以编辑命令行并添加-ot开关。

在QGIS中使用gdal_translate的示例,将浮点数从32位转换为16位无符号整数: 在此处输入图片说明


3
我要补充一点,该-ot开关不会缩放转换时的值。要做到这一点,使用-scale-scale_1-scale_2......每个频带。
Logan Byers

顺便说一句,“像素深度”是ESRI似乎毫无头绪组成的术语。
jpmc26

1
像素深度实际上是一个广泛与栅格图像文件结合使用的术语,并且绝不是ESRI或GIS所独有的。
MappaGnosis
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.