Beispiel #1
0
        # input_tensor is tensor, format CxHxW, data range [0.0, 1.0]
        input_tensor.unsqueeze_(0)
        input_tensor = input_tensor.to(device)
        with torch.no_grad():
            output_tensor = model(input_tensor)

        output_tensor.squeeze_(0)
        output_image = tensor_to_image(output_tensor.cpu())
        output_image.save("{}/{:03d}.png".format(output_dir, i))


if __name__ == '__main__':
    # Define specific options and parse arguments
    parser.add_argument("-i",
                        "--input",
                        help="input video",
                        required=True,
                        type=str)
    parser.add_argument("-o",
                        "--output",
                        help="output video directory, defaut: /tmp/output",
                        type=str,
                        default="/tmp/output")
    parser.add_argument('--checkpoint-file',
                        type=str,
                        default="output/WDSR-B-f32-b16-r6-x4-best.pth.tar")
    args = parser.parse_args()

    # Set cuDNN auto-tuner and get device
    device = torch.device('cuda:0' if torch.cuda.is_available() else 'cpu')
Beispiel #2
0
            psnr.update(
                calc_psnr(sr,
                          hr,
                          scale=args.scale,
                          max_value=args.rgb_range[1]), lr.shape[0])

            t.set_postfix(loss='{:.4f}'.format(losses.avg))
            t.update(lr.shape[0])

        return losses.avg, psnr.avg


if __name__ == '__main__':
    # Define specific options and parse arguments
    parser.add_argument('--dataset-dir',
                        type=str,
                        required=True,
                        help='DIV2K Dataset Root Directory')
    parser.add_argument('--output-dir', type=str, required=True)
    parser.add_argument('--checkpoint-file', type=str, required=True)

    args = parser.parse_args()

    # Set cuDNN auto-tuner and get device for learning
    cudnn.benchmark = True
    device = torch.device('cuda:0' if torch.cuda.is_available() else 'cpu')

    # Set random seed
    random.seed(args.seed)
    torch.manual_seed(args.seed)

    # Create a directory to store weights
Beispiel #3
0
                sr = forward(lr)

            # Quantize results
            sr = quantize(sr, args.rgb_range)

            # Update PSNR
            psnr.update(calc_psnr(sr, hr, scale=args.scale, max_value=args.rgb_range[1]), lr.shape[0])

            t.update(lr.shape[0])

    print('DIV2K (val) PSNR: {:.4f} dB'.format(psnr.avg))


if __name__ == '__main__':
    # Define specific options and parse arguments
    parser.add_argument('--dataset-dir', type=str, required=True, help='DIV2K Dataset Root Directory')
    parser.add_argument('--checkpoint-file', type=str, required=True)
    parser.add_argument('--self-ensemble', action='store_true')
    args = parser.parse_args()

    # Set cuDNN auto-tuner and get device
    cudnn.benchmark = True
    device = torch.device('cuda:0' if torch.cuda.is_available() else 'cpu')

    # Create model
    if args.model == 'WDSR-B':
        model = WDSR_B(args).to(device)
    else:
        model = WDSR_A(args).to(device)

    # Load weights