def test_iterative_scheme():
    result_a = scheme.iterative_scheme(solve_regression, calibration, act, g,
                                       kernel, field_list, sigma0, sigma1,
                                       points_a, nb_iteration)

    result_b = scheme.iterative_scheme(solve_regression, calibration, act, g,
                                       kernel, field_list, sigma0, sigma1,
                                       points_b, nb_iteration)
def calibration_equation(original, noisy):
    result = cali.calibrate_equation_1D_translation(original, noisy, space,
                                                    kernel)
    return result


sigma0 = 1
sigma1 = 500

dim = 1
nb_iteration = 30
points = np.array(points_list).T
# first raw estimation
result = scheme.iterative_scheme(solve_regression, calibration_equation,
                                 action, g, kernel, data_list_noisy, sigma0,
                                 sigma1, points, nb_iteration)
#pts_space=space.points().T
#data_displaced = []
#for i in range(nb_data):
#    # Apply inverse : specific here !
#    pts_displaced = g.apply(result_init[1][i], pts_space)
#    data_displaced.append(space.tangent_bundle.element([data_list[i][u].interpolation(pts_displaced) for u in range(dim)]))
#
#for i in range(nb_data):
#    data_displaced[i].show()
#

#%% Compare ground truth and result
result_unstruc = get_unstructured_op(result[0])
original_unstructured = get_unstructured_op_generate(original)
Beispiel #3
0
pairing = struct.scalar_product_unstructured
sigma0 = 1
sigma1 = 10

nb_iteration = 10
field_list = copy.deepcopy(vectorfield_list_center)
##%%

def calibration(original, noisy, group, action, product, pairing):
    """
    Main calibration function.
    """

    discrepancy = make_discrepancy_from(noisy, product, pairing)
    velocity = compute_velocity(original, group, action, discrepancy)
    return velocity



result = scheme.iterative_scheme(solve_regression, calibration, action, g,
                                 kernel, vectorfield_list_center, sigma0,
                                 sigma1, points, nb_iteration)

#%%

get_unstructured_op = struct.get_from_structured_to_unstructured(space, kernel)
vect_field_ref = get_unstructured_op(result[0])


np.savetxt('/home/bgris/DeformationModulesODL/deform/vect_field_rotation_SheppLogan_scheme_sigma_0_3__nbtrans_72',vect_field_ref)