utils.py 524 Bytes
import cv2
import numpy as np
from PIL import Image
# 填充黑边,等比缩放
def keep_resize_image(image_path,size=(128,128)):
    image=Image.open(image_path)
    w,h=image.size
    temp=max(w,h)
    mask=Image.new('RGB',(temp,temp))
    if w>=h:
        mask.paste(image,(0,(w-h)//2))
    else:
        mask.paste(image,((h-w)//2,0))
    mask=mask.resize(size)
    mask=np.array(mask)
    mask=cv2.cvtColor(mask,cv2.COLOR_RGB2BGR)
    return mask
if __name__ == '__main__':
    keep_resize_image('image/mask/img.png')