Skip to content

Commit 03b9e8a

Browse files
committed
FIX: Recenter data when reloaded for generating debug maps
1 parent 2cb9770 commit 03b9e8a

File tree

1 file changed

+7
-4
lines changed

1 file changed

+7
-4
lines changed

sdcflows/interfaces/bspline.py

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -181,17 +181,20 @@ def _run_interface(self, runtime):
181181
)
182182

183183
# Recenter the fieldmap
184+
center = 0
184185
if self.inputs.recenter == "mode":
185186
from scipy.stats import mode
186187

187188
# Handle pre- and post-1.9 mode behavior.
188189
# squeeze can be dropped when the minimum version reaches 1.9
189190
# Will become: data -= mode(data[mask], keepdims=False).mode
190-
data -= np.squeeze(mode(data[mask]).mode)
191+
center = np.squeeze(mode(data[mask]).mode)
191192
elif self.inputs.recenter == "median":
192-
data -= np.median(data[mask])
193+
center = np.median(data[mask])
193194
elif self.inputs.recenter == "mean":
194-
data -= np.mean(data[mask])
195+
center = np.mean(data[mask])
196+
197+
data -= center
195198

196199
# Calculate collocation matrix from (possibly resized) image and knot grids
197200
colmat = sparse_vstack(grid_bspline_weights(fmapnii, grid) for grid in bs_grids).T.tocsr()
@@ -228,7 +231,7 @@ def _run_interface(self, runtime):
228231
if need_resize:
229232
fmapnii = nb.load(self.inputs.in_data)
230233
fmapnii = nb.as_closest_canonical(fmapnii)
231-
data = fmapnii.get_fdata(dtype="float32")
234+
data = fmapnii.get_fdata(dtype="float32") - center
232235
if masknii is not None:
233236
masknii = nb.load(self.inputs.in_mask)
234237
masknii = nb.as_closest_canonical(masknii)

0 commit comments

Comments
 (0)