if args.init is not None:
        print('Initialization image: ', args.init)
    else:
        print('No initialization image provided.')

    ###---- Load input data -----------------------------------------------------
    inputImages = []
    for i in args.input:
        inputImages.append(nibabel.load(i))

    print('Loading Transforms')
    print('Warning: Transforms depend on the HR image.')
    inputTransforms = []
    if args.transform is not None:
        for t in args.transform:
            inputTransforms.append(read_itk_transform(t))
    else:
        #no transform provided : use identity as transform and zero as center
        m = np.identity(4)
        c = np.array([0, 0, 0, 1])
        for i in args.input:
            inputTransforms.append((m, c))

    maskImages = []
    if args.mask is not None:
        for i in args.mask:
            maskImages.append(nibabel.load(i))

    else:
        print('Creating mask images using the following padding value:',
              str(args.padding))
  parser = argparse.ArgumentParser()

  parser.add_argument('-r', '--ref',   help='Reference Image filename (i.e. ground truth) (required)', type=str, required = True)
  parser.add_argument('-i', '--input', help='Low-resolution image filename (required), created using btkImageResampling', type=str, required = True)
  parser.add_argument('-t', '--transform', help='Transform for each input image (optional)')
  parser.add_argument('-o', '--output', help='Estimated high-resolution image filename (required)', type=str, required = True)
  parser.add_argument('-p', '--psf', help='3D PSF type (boxcar (default), gauss)', type=str, default='boxcar')
  parser.add_argument('--padding', help='Padding value used when no mask is provided (default is 0)', type=float, default=0)

  args = parser.parse_args()
  
  HRimage = nibabel.load(args.ref)
  LRimage = nibabel.load(args.input)
  inputTransform = None
  if args.transform is not None :
    inputTransform = read_itk_transform(args.transform)
  else:
    #no transform provided : use identity as transform and zero as center
    m = np.identity(4)
    c = np.array([0, 0, 0, 1])
    inputTransform = (m,c) 

  print('Creating mask image using the following padding value:'+str(args.padding))
  data = np.zeros(HRimage.get_data().shape)
  data[HRimage.get_data() > args.padding] = 1
  maskHRImage = nibabel.Nifti1Image(data, HRimage.affine)
  print('Percentage of HR masked values : %.2f '%( np.size(np.nonzero((data))) / (1.0*np.size(data.shape)) * 100.0 / np.size(data) ) )
  data = np.zeros(LRimage.get_data().shape)
  data[LRimage.get_data() > args.padding] = 1
  maskLRImage = nibabel.Nifti1Image(data, LRimage.affine)
  print('Percentage of LR masked values : %.2f '%( np.size(np.nonzero((data))) / (1.0*np.size(data.shape)) * 100.0 / np.size(data) ) )
Esempio n. 3
0
                        help='3D PSF type (boxcar (default), gauss)',
                        type=str,
                        default='boxcar')
    parser.add_argument(
        '--padding',
        help='Padding value used when no mask is provided (default is 0)',
        type=float,
        default=0)

    args = parser.parse_args()

    HRimage = nibabel.load(args.ref)
    LRimage = nibabel.load(args.input)
    inputTransform = None
    if args.transform is not None:
        inputTransform = read_itk_transform(args.transform)
    else:
        #no transform provided : use identity as transform and zero as center
        m = np.identity(4)
        c = np.array([0, 0, 0, 1])
        inputTransform = (m, c)

    print('Creating mask image using the following padding value:' +
          str(args.padding))
    data = np.zeros(HRimage.get_data().shape)
    data[HRimage.get_data() > args.padding] = 1
    maskHRImage = nibabel.Nifti1Image(data, HRimage.affine)
    print('Percentage of HR masked values : %.2f ' %
          (np.size(np.nonzero(
              (data))) / (1.0 * np.size(data.shape)) * 100.0 / np.size(data)))
    data = np.zeros(LRimage.get_data().shape)
Esempio n. 4
0
    if args.init is not None:
        print("Initialization image: ", args.init)
    else:
        print("No initialization image provided.")

    ###---- Load input data -----------------------------------------------------
    inputImages = []
    for i in args.input:
        inputImages.append(nibabel.load(i))

    print("Loading Transforms")
    print("Warning: Transforms depend on the HR image.")
    inputTransforms = []
    if args.transform is not None:
        for t in args.transform:
            inputTransforms.append(read_itk_transform(t))
    else:
        # no transform provided : use identity as transform and zero as center
        m = np.identity(4)
        c = np.array([0, 0, 0, 1])
        for i in args.input:
            inputTransforms.append((m, c))

    maskImages = []
    if args.mask is not None:
        for i in args.mask:
            maskImages.append(nibabel.load(i))

    else:
        print("Creating mask images using the following padding value:", str(args.padding))
        for i in range(len(inputImages)):