学习日志(十九):

本文介绍了一个使用Python编写的脚本,该脚本利用PIL库实现图片的高分辨率到低分辨率转换。通过命令行参数指定HR和LR路径以及转换数量和比例,脚本能够批量处理指定文件夹内的所有图片,进行缩放并保存。
摘要由CSDN通过智能技术生成
import argparse
import os
import glob
import torch
import PIL.Image as image
from tqdm import tqdm
import matplotlib.pyplot as plt
parser = argparse.ArgumentParser()
parser.add_argument('--hr-path',type=str,default='/home/radio/DS/lr_spixel/train')
parser.add_argument('--lr-path',type=str,default='/home/radio/DS/lr_spixel/train_lr')
parser.add_argument('--num',type = int,default=348)
parser.add_argument('--scale',type = int,default=2)
# parser.add_argument('',type = ,default='')
args = parser.parse_args()

if torch.cuda.is_available():
    device = torch.device('cuda')
else:
    device = torch.device('cpu')

if not os.path.exists(args.lr_path):
        os.makedirs(args.lr_path)

def convert2lr(args):
    with tqdm(total=args.num) as t:
        for image_relative_name in os.listdir(args.hr_path):
            image_path = os.path.join(args.hr_path,image_relative_name)
            hr = image.open(image_path).convert('RGB')
            hr_width = (hr.width//args.scale)*args.scale
            hr_height = (hr.height//args.scale)*args.scale
            hr = hr.resize((hr_width,hr_height),resample=image.BICUBIC)
            lr = hr.resize((hr_width//args.scale,hr_height//args.scale),resample=image.BICUBIC)
            lr = lr.resize((lr.width*args.scale,lr.height*args.scale),resample=image.BICUBIC)
            lr.save('/home/radio/DS/lr_spixel/train_lr/{}'.format(image_relative_name))
            t.update()






if __name__ == '__main__':
    convert2lr(args)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值