在日常的图像处理工作中,可能会遇到需要将 TIFF 格式的图像转换为其他格式的情况,例如 PNG 和 JPG。下面,本文将介绍如何使用 Python 和 GDAL 库实现这一功能。
在开始之前,请确保已经安装了必要的库:
可以使用以下命令安装 GDAL:
pip install gdal
以下是一个将 TIFF 文件转换为 PNG 文件的示例代码:
import os
from osgeo import gdal
file_folder = 'val/images_tif' # 储存tif格式的文件夹
output_folder = 'val/images_png' # 储存png格式的文件夹
# 如果输出文件夹不存在,则创建它
if not os.path.exists(output_folder):
os.makedirs(output_folder)
for file_name in os.listdir(file_folder):
file_path = os.path.join(file_folder, file_name)
print(file_path)
# 检查是否为 TIFF 文件
if file_path.endswith('.tif'):
ds = gdal.Open(file_path)
if ds is None:
print(f"Failed to open {file_path}")
continue
driver = gdal.GetDriverByName('PNG')
# driver = gdal.GetDriverByName('JPEG') # 使用JPEG驱动
# 创建输出文件的路径
output_file_path = os.path.join(output_folder, file_name.replace('.tif', '.png'))
# output_file_path = os.path.join(output_folder, file_name.replace('.tif', '.jpg'))
dst_ds = driver.CreateCopy(output_file_path, ds)
del dst_ds # 释放资源
如果需要将 TIFF 文件转换为 JPG 格式,只需将代码中的 PNG
替换为 JPEG
并修改输出文件的扩展名:
driver = gdal.GetDriverByName('JPEG')
output_file_path = os.path.join(output_folder, file_name.replace('.tif', '.jpg'))