把tif图像批量双线性插值到与目标图像相同的分辨率python代码
时间: 2024-02-21 20:01:38 浏览: 74
要批量将多张tif图像双线性插值到与目标图像相同的分辨率,可以使用Python中的循环遍历和OpenCV库中的`cv2.resize()`函数。以下是Python代码示例:
```
import cv2
import os
# 目标图像分辨率大小
dst_size = (1024, 768)
# 遍历所有tif图像
for filename in os.listdir('input_folder'):
if filename.endswith('.tif'):
# 加载源图像和目标图像
src_img = cv2.imread(os.path.join('input_folder', filename))
dst_img = cv2.imread('target_image.tif')
# 双线性插值缩放源图像到目标图像分辨率大小
resized_img = cv2.resize(src_img, dst_size, interpolation=cv2.INTER_LINEAR)
# 保存缩放后的图像
cv2.imwrite(os.path.join('output_folder', filename), resized_img)
```
在代码中,首先定义了目标图像的分辨率大小。然后,使用Python中的`os`库遍历`input_folder`目录下的所有tif图像。对于每张tif图像,我们使用`cv2.imread()`函数加载源图像和目标图像。接着,使用`cv2.resize()`函数将源图像双线性插值缩放到目标图像分辨率大小。最后,使用`cv2.imwrite()`函数将缩放后的图像保存到`output_folder`目录下,并保持原始的文件名不变。
阅读全文