コード例 #1
0
def test_coreg_gui_automation():
    """Test that properties get properly updated."""
    from mne.gui._file_traits import DigSource
    from mne.gui._fiducials_gui import MRIHeadWithFiducialsModel
    from mne.gui._coreg_gui import CoregModel
    subject = 'sample'
    hsp = DigSource()
    hsp.file = raw_path
    mri = MRIHeadWithFiducialsModel(subjects_dir=subjects_dir, subject=subject)
    model = CoregModel(mri=mri, hsp=hsp)
    # gh-7254
    assert not (model.nearest_transformed_high_res_mri_idx_hsp == 0).all()
    model.fit_fiducials()
    model.icp_iterations = 2
    model.nasion_weight = 2.
    model.fit_icp()
    model.omit_hsp_points(distance=5e-3)
    model.icp_iterations = 2
    model.fit_icp()
    errs_icp = np.median(model._get_point_distance())
    assert 2e-3 < errs_icp < 3e-3
    info = mne.io.read_info(raw_path)
    errs_nearest = np.median(
        dig_mri_distances(info, fname_trans, subject, subjects_dir))
    assert 1e-3 < errs_nearest < 2e-3