Skip to content

Commit a75ee8a

Browse files
committed
enh: continuing deep overhaul of fieldmapless implementation
Salient points on this commit: - There's no need for intensity inversion if MI is used as cost function - Use of the T1w as reference (fixed) image increases reliability - Giving more flexibility to ``restrict_deformation`` with 0.1 instead of 1 makes optimization faster leveraging a minimal increase of dofs - To double-check things look good, use our internal transform object to generate the unwarped reference, and then generate the field, which should be fairly close to the one generated by ANTs. - Addressed LPS orientation bug in the function node that extracts the nonzero component of distortion. - Better registration parameters, with thanks to @yasseraleman for suggestions (in particular, the one about flexibilizing the gradient restriction above came from him). - Use of laplacians in a multi-channel registration framework Resolves: #186.
1 parent 3d0da8e commit a75ee8a

File tree

3 files changed

+149
-103
lines changed

3 files changed

+149
-103
lines changed

sdcflows/data/affine.json

+9-9
Original file line numberDiff line numberDiff line change
@@ -1,24 +1,24 @@
11
{
22
"collapse_output_transforms": true,
3-
"convergence_threshold": [ 1e-06, 1e-06 ],
4-
"convergence_window_size": [ 50, 10 ],
3+
"convergence_threshold": [ 1e-06, 1e-07 ],
4+
"convergence_window_size": [ 10, 5 ],
55
"dimension": 3,
66
"initial_moving_transform_com": 1,
77
"interpolation": "Linear",
88
"metric": [ "Mattes", "Mattes" ],
99
"metric_weight": [ 1.0, 1.0 ],
10-
"number_of_iterations": [ [ 1000, 500, 0 ], [ 1000, 500, 250, 100 ] ],
10+
"number_of_iterations": [ [ 1000, 0 ], [ 250, 100 ] ],
1111
"radius_or_number_of_bins": [ 32, 32 ],
12-
"sampling_percentage": [ 1.0, 0.25 ],
12+
"sampling_percentage": [ 1.0, 0.4 ],
1313
"sampling_strategy": [ "Regular", "Random" ],
14-
"shrink_factors": [[ 8, 4, 1] , [ 8, 4, 2, 1 ]],
14+
"shrink_factors": [[ 4, 1] , [ 2, 1 ]],
1515
"sigma_units": [ "mm", "vox" ],
16-
"smoothing_sigmas": [ [ 8, 6, 0 ], [ 4, 2, 1, 0 ] ],
17-
"transform_parameters": [ [ 10.0 ], [ 0.6 ] ],
16+
"smoothing_sigmas": [ [ 6, 0 ], [ 2, 1 ] ],
17+
"transform_parameters": [ [ 2.0 ], [ 1.0 ] ],
1818
"transforms": [ "Rigid", "Affine" ],
1919
"use_estimate_learning_rate_once": [ false, false ],
20-
"use_histogram_matching": [ false, true ],
20+
"use_histogram_matching": [ true, true ],
2121
"winsorize_lower_quantile": 0.001,
22-
"winsorize_upper_quantile": 0.9999,
22+
"winsorize_upper_quantile": 0.998,
2323
"write_composite_transform": false
2424
}

sdcflows/data/sd_syn.json

+17-17
Original file line numberDiff line numberDiff line change
@@ -1,24 +1,24 @@
11
{
22
"collapse_output_transforms": true,
3-
"convergence_threshold": [ 1e-06, 1e-06, 1e-08 ],
4-
"convergence_window_size": [ 10, 5, 2 ],
3+
"convergence_threshold": [ 1e-06, 1e-08 ],
4+
"convergence_window_size": [ 5, 2 ],
55
"dimension": 3,
66
"interpolation": "Linear",
7-
"metric": [ "Mattes", "Mattes", "CC" ],
8-
"metric_weight": [ 1, 1, 1 ],
9-
"number_of_iterations": [ [ 500, 500, 0 ], [ 20, 10, 0 ], [ 10 ] ],
7+
"metric": [ ["Mattes", "Mattes"], ["Mattes", "Mattes"] ],
8+
"metric_weight": [ [0.5, 0.5], [0.5, 0.5], [0.5, 0.5] ],
9+
"number_of_iterations": [ [ 200, 100 ], [ 10 ] ],
1010
"output_transform_prefix": "fmap_syn",
11-
"radius_or_number_of_bins": [ 32, 32, 5 ],
12-
"sampling_percentage": [ 0.25, 0.40, 1.0 ],
13-
"sampling_strategy": [ "Random", "Random", "Random" ],
14-
"shrink_factors": [ [ 4, 2, 1 ], [ 2, 1, 1 ], [ 1 ] ],
15-
"sigma_units": [ "mm", "mm", "vox" ],
16-
"smoothing_sigmas": [ [ 8, 6, 0 ], [ 6, 2, 0 ], [ 0 ] ],
17-
"transform_parameters": [ [ 0.5, 3.0, 3.0 ], [ 0.8, 2.8, 1.0 ], [ 0.8, 2.0, 1.0 ] ],
18-
"transforms": [ "SyN", "SyN", "SyN" ],
19-
"use_estimate_learning_rate_once": [ false, false, true ],
20-
"use_histogram_matching": [ false, false, false ],
21-
"winsorize_lower_quantile": 0.0001,
22-
"winsorize_upper_quantile": 0.9999,
11+
"radius_or_number_of_bins": [ [48, 48], [48, 48] ],
12+
"sampling_percentage": [ [0.8, 0.8], [1.0, 1.0] ],
13+
"sampling_strategy": [["Random", "Random"], [null, null] ],
14+
"shrink_factors": [ [ 1, 1 ], [ 1 ] ],
15+
"sigma_units": [ "vox", "vox" ],
16+
"smoothing_sigmas": [ [ 2, 0 ], [ 0 ] ],
17+
"transform_parameters": [ [ 0.8, 6.0, 3.0 ], [ 0.8, 2.0, 1.0 ] ],
18+
"transforms": [ "SyN", "SyN" ],
19+
"use_estimate_learning_rate_once": [ true, true ],
20+
"use_histogram_matching": [ true, true ],
21+
"winsorize_lower_quantile": 0.001,
22+
"winsorize_upper_quantile": 0.998,
2323
"write_composite_transform": false
2424
}

0 commit comments

Comments
 (0)