Giter VIP home page Giter VIP logo

Comments (9)

effigies avatar effigies commented on September 17, 2024

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.

katseitz avatar katseitz commented on September 17, 2024

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.

effigies avatar effigies commented on September 17, 2024

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.

katseitz avatar katseitz commented on September 17, 2024

Just sent you an email.

from sdcflows.

effigies avatar effigies commented on September 17, 2024

@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.

katseitz avatar katseitz commented on September 17, 2024

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.

effigies avatar effigies commented on September 17, 2024

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.

katseitz avatar katseitz commented on September 17, 2024

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.

effigies avatar effigies commented on September 17, 2024

Yes, we'll keep this open until it's fixed.

from sdcflows.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.