首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >使用python将16位GeoTiff文件转换为8位JPEG文件

使用python将16位GeoTiff文件转换为8位JPEG文件
EN

Stack Overflow用户
提问于 2018-04-19 02:37:13
回答 2查看 4.2K关注 0票数 1

我正在尝试将一个16位的3波段RGB GeoTIFF文件转换成一个8位3带JPEG文件。看来gdal库在这方面应该能很好地工作。我的问题是如何在python API中指定到8位输出的转换,以及如何缩放转换中的值?另外,如何检查以判断输出是8位还是16位?

gdal.Translate()函数应该达到这个目的。但是,我发现的唯一一个将值重命名为8位的示例涉及C接口。下面的两篇文章提供了这方面的例子,但它们不适合我的目的,因为它们没有使用Python接口。

https://gis.stackexchange.com/questions/26249/how-to-convert-qgis-generated-tiff-images-into-jpg-jpeg-using-gdal-command-line/26252

https://gis.stackexchange.com/questions/206537/geotiff-to-16-bit-tiff-png-or-bmp-image-for-heightmap/206786

我想出的python代码是:

代码语言:javascript
运行
复制
from osgeo import gdal
gdal.Translate(destName='test.jpg', srcDS='test.tif')

这是可行的,但我不认为输出被转换为8位,或者值被重新标度。有人知道如何应用这些特定设置吗?

请注意,下面的文章非常类似,但使用了PIL包。然而,问题是,显然PIL在摄取16位图像方面有困难。当我尝试这段代码时,我发现了读取数据的错误。因此,我不能使用这个解决方案。

converting tiff to jpeg in python

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-04-19 06:46:16

您可以像这样使用options

代码语言:javascript
运行
复制
from osgeo import gdal

scale = '-scale min_val max_val'
options_list = [
    '-ot Byte',
    '-of JPEG',
    scale
] 
options_string = " ".join(options_list)

gdal.Translate('test.jpg',
               'test.tif',
               options=options_string)

选择您认为适合您的图像的最小值和最大值,如min_valmax_val

如果您希望扩展到整个范围,只需跳过min和max值,只需使用scale = '-scale'

票数 3
EN

Stack Overflow用户

发布于 2018-05-23 22:23:19

我认为gdal的方法是使用gdal.TranslateOptions()

代码语言:javascript
运行
复制
from osgeo import gdal

translate_options = gdal.TranslateOptions(format='JPEG',
                                          outputType=gdal.GDT_Byte,
                                          scaleParams=[''],
                                          # scaleParams=[min_val, max_val],
                                          )

gdal.Translate(destName='test.jpg', srcDS='test.tif', options=translate_options)
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/49911864

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档