Exemplo n.º 1
0
def load_data(args):
    """
    Modify this to load your data and labels
    """

    validation_data_params = {
        "dim": (args.patch_dim, args.patch_dim, args.patch_dim),
        "batch_size": 1,
        "n_in_channels": args.number_input_channels,
        "n_out_channels": 1,
        "train_test_split": args.train_test_split,
        "augment": False,
        "shuffle": False,
        "seed": args.random_seed
    }
    validation_generator = DataGenerator(False, args.data_path,
                                         **validation_data_params)

    # for batch_idx in tqdm(range(validation_generator.num_batches),
    #                       desc="Predicting on batch"):

    batch_idx = 0
    imgs, msks = validation_generator.get_batch(batch_idx)
    fileIDs = validation_generator.get_batch_fileIDs(batch_idx)
    """
    OpenVINO uses channels first tensors (NCHWD).
    TensorFlow usually does channels last (NHWDC).
    So we need to transpose the axes.
    """
    imgs = imgs.transpose((0, 4, 1, 2, 3))
    msks = msks.transpose((0, 4, 1, 2, 3))

    return imgs, msks, fileIDs
Exemplo n.º 2
0
for name in model.metrics_names:
    print("{} = {:.4f}".format(name, m[i]))
    i += 1

save_directory = "predictions_directory"
try:
    os.stat(save_directory)
except:
    os.mkdir(save_directory)

print("Predicting masks")

for batch_idx in tqdm(range(validation_generator.num_batches),
                      desc="Predicting on batch"):

    imgs, msks = validation_generator.get_batch(batch_idx)
    fileIDs = validation_generator.get_batch_fileIDs(batch_idx)

    preds = model.predict_on_batch(imgs)

    # Save the predictions as Nifti files so that we can
    # display them on a 3D viewer.
    for idx in tqdm(range(preds.shape[0]), desc="Saving to Nifti file"):

        img = nib.Nifti1Image(imgs[idx, :, :, :, 0], np.eye(4))
        img.to_filename(
            os.path.join(save_directory, "{}_img.nii.gz".format(fileIDs[idx])))

        msk = nib.Nifti1Image(msks[idx, :, :, :, 0], np.eye(4))
        msk.to_filename(
            os.path.join(save_directory, "{}_msk.nii.gz".format(fileIDs[idx])))
Exemplo n.º 3
0
for idx, name in enumerate(model.metrics_names):
    print("{} = {:.4f}".format(name, m[idx]))


save_directory = "predictions_directory"
try:
    os.stat(save_directory)
except:
    os.mkdir(save_directory)

print("Predicting masks")

for batch_idx in tqdm(range(testing_generator.num_batches),
                      desc="Predicting on batch"):

    imgs, msks = testing_generator.get_batch(batch_idx)
    fileIDs = testing_generator.get_batch_fileIDs(batch_idx)

    preds = model.predict_on_batch(imgs)

    # Save the predictions as Nifti files so that we can
    # display them on a 3D viewer.
    for idx in tqdm(range(preds.shape[0]), desc="Saving to Nifti file"):

        img = nib.Nifti1Image(imgs[idx, :, :, :, 0], np.eye(4))
        img.to_filename(os.path.join(save_directory,
                                     "{}_img.nii.gz".format(fileIDs[idx])))

        msk = nib.Nifti1Image(msks[idx, :, :, :, 0], np.eye(4))
        msk.to_filename(os.path.join(save_directory,
                                     "{}_msk.nii.gz".format(fileIDs[idx])))