图像等比例缩放加pading

import os
import cv2 

BLACK = [158,160,161]
for filename in os.listdir(r"./0"):
   
    filename_ori = './0/'+filename
   
    image=cv2.imread(filename_ori)
 
    shape = image.shape
    print(shape)
    r0 = shape[0]/224
    r1 = shape[1]/224
    if r0>r1:
        width =  int(shape[1]/r0)
        height = 224
    else:
        width = 224
        height = int(shape[0]/r1)
    print(height)
    print(width)

    res=cv2.resize(image,(width,height),interpolation=cv2.INTER_CUBIC)
   
    if r0>r1:
        pading = int((224 - width)/2)
        constant = cv2.copyMakeBorder(res,0,0,pading,pading,cv2.BORDER_CONSTANT,value= BLACK)
    else:
        pading = int((224 - height)/2)
        constant = cv2.copyMakeBorder(res,pading,pading,0,0,cv2.BORDER_CONSTANT,value= BLACK)
   
   
    
    out_filename = './0_out/'+filename
    cv2.imwrite(out_filename, constant)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值