#!/usr/bin/env python """ plots the metric values at the start and end of each slice registration Usage: before_and_after_registration values_dir """ from sys import argv from os import listdir from metric_values import MetricValues from numpy import * import matplotlib.pyplot as plt metric_values_dir = argv[1] basenames = listdir(metric_values_dir) # extract metric values vals = MetricValues(metric_values_dir) fig = plt.figure() ax = fig.gca() x = range(vals.number_of_slices()) ax.plot(x, vals.initial_values(), label="Initial values") ax.plot(x, vals.final_values(), label="Final values") plt.grid(axis="y") ax.legend() plt.show()
from numpy import * import matplotlib.pyplot as plt # add registration graphing directory to python path sys.path.insert(0, registration_root + "graphing") from metric_values import MetricValues # metric values dirs metric_value_dir = registration_root + "results/Rat28/%s/MetricValues/" rigid_values = MetricValues(metric_value_dir % "rigid" + "CenteredRigid2DTransform" ) similarity_values = MetricValues(metric_value_dir % "size" + "CenteredSimilarity2DTransform") affine_values = MetricValues(metric_value_dir % "affine" + "CenteredAffineTransform") # check that they all have the same number of slices assert(rigid_values.number_of_slices() == similarity_values.number_of_slices() == affine_values.number_of_slices()) x = range(rigid_values.number_of_slices()) # plot figure fig = plt.figure(frameon=False) ax = fig.add_axes([0.05,0.05,0.9,0.9]) ax.plot(x, rigid_values.initial_values(), label="Initial values") ax.plot(x, rigid_values.final_values(), label="Final rigid values") ax.plot(x, similarity_values.final_values(), label="Final similarity values") ax.plot(x, affine_values.final_values(), 'y', label="Final affine values") plt.xlabel('Curated slice number', fontsize='large') plt.ylabel('Normalised correlation', fontsize='large') plt.grid() ax.legend()