将GeoTIFF转换为JPEG并在Python中提取GeoTIFF标头

Pha*_*nto 7 python jpeg tiff geospatial gdal

我正在制作一个将在GeoTIFF文件中读取的Python脚本,并将同时执行这两项操作:将GeoTIFF转换为静态JPEG(尺寸要小得多),并创建一个包含GeoTIFF标头的单独文本文件.

使用Python GDAL API,我能够拿到剧本打开的GeoTIFF文件和打印细节,如RasterXSize,RasterYSize,RasterCount,等.

问题在于保存JPEG.我研究了这个driver.CreateCopy()方法,然而,它所做的只是创建一个非常大的JPEG文件,它是空白的,无法打开.

另外,哪个方法检索我可以保存到文件的所有GeoTIFF标头?

我既不是GeoTIFFs也不是GDAL的专家,我非常感谢你的帮助!

Pha*_*nto 8

我用一些谷歌搜索来弄清楚自己.

要以不同的质量级别保存.jpg文件,您需要使用以下代码:

# Assume this retrieves the dataset from a GeoTIFF file.
dataset = getDataSet(tiffFileLocation)      

saveOptions = []
saveOptions.append("QUALITY=75")

# Obtains a JPEG GDAL driver
jpegDriver = gdal.GetDriverByName("JPEG")   

# Create the .JPG file
jpegDriver.CreateCopy("imageFile.jpg", dataset, 0, saveOptions)  
Run Code Online (Sandbox Code Playgroud)

我需要的参数存储在theDataset.GetGeoTransform()theDataset.GetProjection()方法中.

特别感谢这个网站:http://adventuresindevelopment.blogspot.com/2008/12/python-gdal-set-jpeg-quality-values-and.html