Comments (9)
What is your fieldmap? phase1+phase2 or phasediff? I'm a bit surprised to see differences in affine for magnitude1 and magnitude2. Would you mind sharing the fslhd
output for all of your fieldmap images?
from sdcflows.
Phase1, phase2, mag1, mag2. Thanks for your quick response!
Phase1:
sizeof_hdr 348
data_type INT16
dim0 3
dim1 88
dim2 88
dim3 51
dim4 1
dim5 1
dim6 1
dim7 1
vox_units mm
time_units s
datatype 4
nbyper 2
bitpix 16
pixdim0 0.000000
pixdim1 2.500000
pixdim2 2.500000
pixdim3 2.500000
pixdim4 0.731000
pixdim5 0.000000
pixdim6 0.000000
pixdim7 0.000000
vox_offset 352
cal_max 0.0000
cal_min 0.0000
scl_slope 1.000000
scl_inter 0.000000
phase_dim 2
freq_dim 1
slice_dim 3
slice_name Unknown
slice_code 0
slice_start 0
slice_end 0
slice_duration 0.000000
time_offset 0.000000
intent Unknown
intent_code 0
intent_name
intent_p1 0.000000
intent_p2 0.000000
intent_p3 0.000000
qform_name Scanner Anat
qform_code 1
qto_xyz:1 -2.499968 -0.000000 0.012729 108.680000
qto_xyz:2 -0.001346 2.485991 -0.264286 -74.115219
qto_xyz:3 0.012657 0.264289 2.485959 -96.458961
qto_xyz:4 0.000000 0.000000 0.000000 1.000000
qform_xorient Right-to-Left
qform_yorient Posterior-to-Anterior
qform_zorient Inferior-to-Superior
sform_name Scanner Anat
sform_code 1
sto_xyz:1 -2.499968 0.000000 0.012735 108.680000
sto_xyz:2 -0.001346 2.485991 -0.264287 -74.115219
sto_xyz:3 0.012664 0.264289 2.485972 -96.458961
sto_xyz:4 0.000000 0.000000 0.000000 1.000000
sform_xorient Right-to-Left
sform_yorient Posterior-to-Anterior
sform_zorient Inferior-to-Superior
file_type NIFTI-1+
file_code 1
descrip TE=4.9;Time=171221.000
aux_file
Phase2:
sizeof_hdr 348
data_type INT16
dim0 3
dim1 88
dim2 88
dim3 51
dim4 1
dim5 1
dim6 1
dim7 1
vox_units mm
time_units s
datatype 4
nbyper 2
bitpix 16
pixdim0 0.000000
pixdim1 2.500000
pixdim2 2.500000
pixdim3 2.500000
pixdim4 0.731000
pixdim5 0.000000
pixdim6 0.000000
pixdim7 0.000000
vox_offset 352
cal_max 0.0000
cal_min 0.0000
scl_slope 1.000000
scl_inter 0.000000
phase_dim 2
freq_dim 1
slice_dim 3
slice_name Unknown
slice_code 0
slice_start 0
slice_end 0
slice_duration 0.000000
time_offset 0.000000
intent Unknown
intent_code 0
intent_name
intent_p1 0.000000
intent_p2 0.000000
intent_p3 0.000000
qform_name Scanner Anat
qform_code 1
qto_xyz:1 -2.499968 -0.000001 0.012711 108.680000
qto_xyz:2 -0.001345 2.485991 -0.264287 -74.115189
qto_xyz:3 0.012640 0.264290 2.485959 -96.459038
qto_xyz:4 0.000000 0.000000 0.000000 1.000000
qform_xorient Right-to-Left
qform_yorient Posterior-to-Anterior
qform_zorient Inferior-to-Superior
sform_name Scanner Anat
sform_code 1
sto_xyz:1 -2.499968 0.000000 0.012735 108.680000
sto_xyz:2 -0.001346 2.485991 -0.264288 -74.115189
sto_xyz:3 0.012664 0.264290 2.485971 -96.459038
sto_xyz:4 0.000000 0.000000 0.000000 1.000000
sform_xorient Right-to-Left
sform_yorient Posterior-to-Anterior
sform_zorient Inferior-to-Superior
file_type NIFTI-1+
file_code 1
descrip TE=7.1;Time=171407.000
aux_file
Mag1:
sizeof_hdr 348
data_type INT16
dim0 3
dim1 88
dim2 88
dim3 51
dim4 1
dim5 1
dim6 1
dim7 1
vox_units mm
time_units s
datatype 4
nbyper 2
bitpix 16
pixdim0 0.000000
pixdim1 2.500000
pixdim2 2.500000
pixdim3 2.500000
pixdim4 0.731000
pixdim5 0.000000
pixdim6 0.000000
pixdim7 0.000000
vox_offset 352
cal_max 0.0000
cal_min 0.0000
scl_slope 1.000000
scl_inter 0.000000
phase_dim 2
freq_dim 1
slice_dim 3
slice_name Unknown
slice_code 0
slice_start 0
slice_end 0
slice_duration 0.000000
time_offset 0.000000
intent Unknown
intent_code 0
intent_name
intent_p1 0.000000
intent_p2 0.000000
intent_p3 0.000000
qform_name Scanner Anat
qform_code 1
qto_xyz:1 -2.499968 -0.000000 0.012729 108.680000
qto_xyz:2 -0.001346 2.485991 -0.264286 -74.115219
qto_xyz:3 0.012657 0.264289 2.485959 -96.458961
qto_xyz:4 0.000000 0.000000 0.000000 1.000000
qform_xorient Right-to-Left
qform_yorient Posterior-to-Anterior
qform_zorient Inferior-to-Superior
sform_name Scanner Anat
sform_code 1
sto_xyz:1 -2.499968 0.000000 0.012735 108.680000
sto_xyz:2 -0.001346 2.485991 -0.264287 -74.115219
sto_xyz:3 0.012664 0.264289 2.485972 -96.458961
sto_xyz:4 0.000000 0.000000 0.000000 1.000000
sform_xorient Right-to-Left
sform_yorient Posterior-to-Anterior
sform_zorient Inferior-to-Superior
file_type NIFTI-1+
file_code 1
descrip TE=4.9;Time=171221.000
aux_file
Mag2:
sizeof_hdr 348
data_type INT16
dim0 3
dim1 88
dim2 88
dim3 51
dim4 1
dim5 1
dim6 1
dim7 1
vox_units mm
time_units s
datatype 4
nbyper 2
bitpix 16
pixdim0 0.000000
pixdim1 2.500000
pixdim2 2.500000
pixdim3 2.500000
pixdim4 0.731000
pixdim5 0.000000
pixdim6 0.000000
pixdim7 0.000000
vox_offset 352
cal_max 0.0000
cal_min 0.0000
scl_slope 1.000000
scl_inter 0.000000
phase_dim 2
freq_dim 1
slice_dim 3
slice_name Unknown
slice_code 0
slice_start 0
slice_end 0
slice_duration 0.000000
time_offset 0.000000
intent Unknown
intent_code 0
intent_name
intent_p1 0.000000
intent_p2 0.000000
intent_p3 0.000000
qform_name Scanner Anat
qform_code 1
qto_xyz:1 -2.499968 -0.000001 0.012711 108.680000
qto_xyz:2 -0.001345 2.485991 -0.264287 -74.115189
qto_xyz:3 0.012640 0.264290 2.485959 -96.459038
qto_xyz:4 0.000000 0.000000 0.000000 1.000000
qform_xorient Right-to-Left
qform_yorient Posterior-to-Anterior
qform_zorient Inferior-to-Superior
sform_name Scanner Anat
sform_code 1
sto_xyz:1 -2.499968 0.000000 0.012735 108.680000
sto_xyz:2 -0.001346 2.485991 -0.264288 -74.115189
sto_xyz:3 0.012664 0.264290 2.485971 -96.459038
sto_xyz:4 0.000000 0.000000 0.000000 1.000000
sform_xorient Right-to-Left
sform_yorient Posterior-to-Anterior
sform_zorient Inferior-to-Superior
file_type NIFTI-1+
file_code 1
descrip TE=7.1;Time=171407.000
aux_file
from sdcflows.
Thanks for this. I think we probably over-zealously combined the phasediff+magnitude1/2 and phase1/2+magnitude1/2 workflows. This should be fixable, and if you are able to share data, I can verify it. I think you could probably also fall back to fMRIPrep 20.2.7 (the long-term support release series).
from sdcflows.
Just sent you an email.
from sdcflows.
@katseitz I looked at your files and they are aligned, so the issue is just that their affines for some reason are not quite lined up. I had imagined that we would want to register the two images together, but that would introduce unnecessary resampling.
I think the thing to do will be for us to verify that the images are in register and then ignore the affine information when concatenating.
In the short term, you could use fslcpgeom to copy the header from phase1/magnitude1 to phase2/magnitude2:
$ fslcpgeom sub-t1143/ses-1/fmap/sub-t1143_ses-1_magnitude{1,2}.nii.gz
$ fslcpgeom sub-t1143/ses-1/fmap/sub-t1143_ses-1_phase{1,2}.nii.gz
from sdcflows.
Thanks, @effigies! Hmm... is this an oddity from the scanner? I am hoping it's not from my data management and preprocessing...
And just to make sure I'm understanding correctly -- in a future release, you all plan to verify that the images are in register and then ignore the affine information. In the mean time, we can run fmriprep after copying headers from phase1/magnitude1 to phase2/magnitude2? We can absolutely do this. I'm assuming once we do this, we can run the most recent version? Again, thank you so much for your help.
from sdcflows.
I imagine it's from the scanner, but it's rarely a bad idea to review your conversion scripts and possibly rerun to make sure you get the same results.
And just to make sure I'm understanding correctly -- in a future release, you all plan to verify that the images are in register and then ignore the affine information. In the mean time, we can run fmriprep after copying headers from phase1/magnitude1 to phase2/magnitude2?
Correct.
I'm assuming once we do this, we can run the most recent version?
Yes.
from sdcflows.
Amazing! Glad we have a path forward. Would it be possible to update this ticket when the version with the fix is released or should I just monitor for the next version?
from sdcflows.
Yes, we'll keep this open until it's fixed.
from sdcflows.
Related Issues (20)
- ``scipy.signal.cubic`` is now deprecated HOT 3
- `HCP101006/sub-101006/fmap/sub-101006_dir-LR_epi.json` has wrong sign in PE direction HOT 8
- Unable to `pkg_resources.resource_filename` to locate data files HOT 1
- Implement Jacobian attenuation in the target space
- Add function to selectively remove estimators from the registry
- Wrangler: discard `part-phase` from `_epi` HOT 1
- Revise ``InputMultiObject`` of the BSpline interface HOT 1
- SDCflows standalone example HOT 2
- Dangling symlinks prevents collecting unused fieldmaps HOT 1
- Make suffixes and datatypes configurable, if possible HOT 3
- Noticeable difference in scanner-computed fieldmap results since LTS
- Doc builds broken HOT 2
- Excessive SyN runtime
- ds004024 misalignment of BOLD and fieldmap
- docs-building jobs failing
- `init_3dQwarp_wf` expects input that is missing from inputnode HOT 3
- NodeExecutionError triggered when using `UniformGrid` and images with slightly different affines HOT 3
- inconsistent contrast in PEB/PEPOLAR
- Some cells of the notebook not rendering HOT 1
- [B0FieldIdentifier] repeated between subjects makes fmriprep crash HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from sdcflows.