在迁移学习的时候,如果pre-trained model的输入图像比例与我们需要输入的图像比例相差加大时就需要对原图像进行padding操作。
关键思想:保持现有图像数据的尺寸比例不变,对其余部分按照网路输入预处理格式
进行填充,使得此paddig部分对应网络输入0。
比如,原图像除以255,减0.5,乘以2,即映射到(-1,1)区间的预处理操作,我们能就需要填充int(256/2)左右的值,使得网络对应的输入数值为0。
CV2实现
import cv2
import numpy as np
def image_preporcess(image, target_size):
# resize 尺寸
ih, iw = target_size
# 原始图片尺寸
h, w, _ = image.shape
# 计算缩放后图片尺寸
scale = min(iw/w, ih/h)
nw, nh = int(scale * w), int