美文网首页
tools_jpeg2binary

tools_jpeg2binary

作者: Amdur | 来源:发表于2019-07-26 19:04 被阅读0次
    import os
    import argparse
    
    import skimage
    import skimage.io as sio
    
    import torch
    
    parser = argparse.ArgumentParser(description='Pre-processing DIV2K .jpeg images')
    
    parser.add_argument('--pathFrom', default='../../../../datadrive/DIV2K/DIV2K_train_HR',
                        help='directory of images to convert')
    parser.add_argument('--pathTo', default='../../../../dataset/DIV2K_decoded',
                        help='directory of images to save')
    parser.add_argument('--split', default=False,
                        help='save individual images')
    parser.add_argument('--select', default='',
                        help='select certain path')
    
    args = parser.parse_args()
    
    for (path, dirs, files) in os.walk(args.pathFrom):
        print(path)
        targetDir = path.replace(args.pathFrom, args.pathTo)
        if len(args.select) > 0 and path.find(args.select) == -1:
            continue
    
        if not os.path.exists(targetDir):
            os.mkdir(targetDir)
    
        if len(dirs) == 0:
            pack = {}
            n = 0
            for fileName in files:
                (idx, ext) = os.path.splitext(fileName)
                if ext == '.png':
                    png = sio.imread(os.path.join(path, fileName))
                    tensor = torch.Tensor(png.astype(float)).byte()
                    if args.split:
                        torch.save(tensor, os.path.join(targetDir, idx + '.pt'))
                    else:
                        pack[int(idx.split('x')[0])] = tensor
                    n += 1
                    if n % 100 == 0:
                        print('Converted ' + str(n) + ' images.')
            if len(pack) > 0:
                torch.save(pack, targetDir + '/pack.pt')
                print('Saved pt binary.')
                del pack

    相关文章

      网友评论

          本文标题:tools_jpeg2binary

          本文链接:https://www.haomeiwen.com/subject/iradrctx.html