Comments (6)
@benoitberanger can you share this anonymized dataset with my institutional email?
from dcm2niix.
OK, thanks for the samples and all your insights. I am closing this. Note that while XNAT shows the ROI as an overlay scale bar, we certainly do not want to keep this in the output image. I do think all ROIs should be treated as derived.
from dcm2niix.
At the moment, in random order, what I found is :
- BidsGuess cannot handle multiple subjects : I tried with 3 exams from 3 participants (so 3 PatientID + PatientName idfferent) and they were all labeled as
sub-1
acq-
field is great to identify quickly the most basic sequence type. Fast visual check with this : love it.run-
contains the SeriesNumber : excellent idea to avoid naming collisions, but not sure it's ideal since it does not start at 1 for each sequence group...
Some specific details :
- mp2rage : the T1map and UNIT1 are in derived dir, they shoud be in ant, with inv-1 field stripped
- DWI ColFA : this dicom serie is always tricky and usually discarded. Here it has been flagged as sub-1_acq-_dir-RL_run-12_dwi.nii
from dcm2niix.
What seems to work :
- FLASH 3D with mag and phase correctly labeled as MEGRE
- 3D FLAIR with SPACE sequence : ok
- HASTE spited on 3 series used as 3-plan localiser : correctly discarded
- DWI with Siemens product sequence : ok
- field map withe 2 echos + 1 pre-substracted phase : ok
- BOLD with Siemens product sequence, flagged as bold and gave task-rest field : ok
from dcm2niix.
@benoitberanger thanks for the sample dataset - I have used this to improve the bids guess feature. A couple of comments:
- The bids guess feature is not designed to replace higher level wrappers that assign subject names, sessions, set intendedFor, etc. The idea is to provide a robust guess for the identity that can help semi-automated tools like your niix2bids and ezBIDS, and identify situations where the configuration files for configuration-file based tools like heudiconv and dcm2bids can flag suspected errors.
- The use of the run flag to encode series number was devised in collaboration with the neurodesk team (@steffenbollman and @astewartau) and @Remi-Gau as a way to encode the temporal order (e.g. if there is an issue with task instructions or excessive headmovement in the first run of an fMRI, the MR technologist might rerun), and avoid name clashes. Again, it is easy to remove if the wrapper thinks it is unnecessary.
- I really do not know how to handle the ROI image that is appended to your series 3 and 21. Perhaps such images should be treated as derived and easily discarded. I have never seen these before, and I hate discarding items I do not understand. Do I have your blessing to share those anonymized series with a QSM expert (@astewartau) to understand how to proceed. I feel strongly we want to discard your examples, but am unsure if this is always the case.
- Your series 13 with protocol name
ep2d_diff_b2000_1.7iso_ref_PA
is tricky. In this context, it was clearly acquired for TOPUP correction of the AP DWI scan. However, it was only acquired with isotropic images (b=0). This is unusual, as Siemens does automatic adjustments on scans that are constrained by the maximum b-value in the series. Therefore, to control for an AP series with b=2000, it would be advisable to have at least one b=2000 image in the PA series (e.g. the biobank protocol is a nice example of this rationale). From the dcm2niix perspective, it is unclear if this is a DWI scan (where b=0 bvec and bval files should be generated) or if it should be treated as pepolar spin-echo sequence for undistorting a gradient echo fMRI run (where the bvec/bval file should not be generated). While the intention might be different, a b=0 dwi series and a pepolar series could have identical sequence details.
from dcm2niix.
- The bids guess feature is not designed to replace higher level wrappers that assign subject names, sessions, set intendedFor, etc. The idea is to provide a robust guess for the identity that can help semi-automated tools like your niix2bids and ezBIDS, and identify situations where the configuration files for configuration-file based tools like heudiconv and dcm2bids can flag suspected errors.
Understood ! I just read again the doc :
"The BidsGuess feature is intended for wrapper developers only and should not be used in isolation of a wrapper"
Clearly I did not read the doc thoroughly.
- The use of the run flag to encode series number was devised in collaboration with the neurodesk team (@steffenbollman and @astewartau) and @Remi-Gau as a way to encode the temporal order (e.g. if there is an issue with task instructions or excessive headmovement in the first run of an fMRI, the MR technologist might rerun), and avoid name clashes. Again, it is easy to remove if the wrapper thinks it is unnecessary.
Yes it makes sense to me now that I keep in mind BidsGuess must not be used as direct BIDS converter.
- I really do not know how to handle the ROI image that is appended to your series 3 and 21. Perhaps such images should be treated as derived and easily discarded. I have never seen these before, and I hate discarding items I do not understand. Do I have your blessing to share those anonymized series with a QSM expert (@astewartau) to understand how to proceed. I feel strongly we want to discard your examples, but am unsure if this is always the case.
I just checked in our archive (we use XNAT). XNAT is able to recognize and interpret this DICOM, we can clearly see the scale :
I can also see the "ROI nifti" is NOT in the archive, probably because the conversion did not work properly.
Please do share the anonymized series with experts.
- Your series 13 with protocol name
ep2d_diff_b2000_1.7iso_ref_PA
is tricky. In this context, it was clearly acquired for TOPUP correction of the AP DWI scan. However, it was only acquired with isotropic images (b=0). This is unusual, as Siemens does automatic adjustments on scans that are constrained by the maximum b-value in the series. Therefore, to control for an AP series with b=2000, it would be advisable to have at least one b=2000 image in the PA series (e.g. the biobank protocol is a nice example of this rationale). From the dcm2niix perspective, it is unclear if this is a DWI scan (where b=0 bvec and bval files should be generated) or if it should be treated as pepolar spin-echo sequence for undistorting a gradient echo fMRI run (where the bvec/bval file should not be generated). While the intention might be different, a b=0 dwi series and a pepolar series could have identical sequence details.
Yeah this one is tricky. I don't have a clean solution either. In niix2bids, this serie is labeled as NON_BIDS because DWI images MUST have bval+bvec files. I could put it as SE-EPI in 'fmap' dir, but it would require to extract the b0 from other series to create the pair of PEpolar images. It's painful.
I din't know the sequence is adjusted differently if there is a mix of non-zero bvalues compared to only zero bvalue. From our experience, TOPUP works nicely on this DWI dataset.
from dcm2niix.
Related Issues (20)
- Filename oddity in 20240202 for Philips DWI HOT 10
- GE UHP/7T Diffusion SliceTiming HOT 5
- Possible incorrect SliceTiming HOT 16
- Siemens conversion problems (Magnetom Altea) HOT 2
- error dcm2niix using dcm2bids HOT 1
- PET json information HOT 12
- Inquiry on DICOM to NIfTi HOT 4
- Siemens 2D epi TR is incorrect HOT 2
- dcm2niix is incorrectly attempting to use a JPEG:Lossless transfer syntax that was set inside an Original Attributes Sequence HOT 1
- GE AcquisitionDuration HOT 6
- Incorrect Slice/Vol Order After Site Updated Philips Software (Ingenia version 11.1) HOT 11
- Return status bug (incorrectly reported error) v1.0.20240202 HOT 12
- How does dcm2niix determine SBREF dicom files? HOT 3
- [Question] Image dimensions from the tags HOT 2
- -x flag not working on PAR file HOT 3
- Siemens XA60 conversion of diffusion data HOT 1
- multi-echo data not recognised
- Incorrect output files name for a duel echo image. HOT 1
- The whole image is inverted in the result of the dcm2nii.gz conversion HOT 3
- RepetitionTime is sometimes incorrectly calculated HOT 9
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 dcm2niix.