Comments (5)
Seems like ImageType Attribute can be used to differentiate between raw and derived data. Raw scans have the value ORIGINAL
, and the Derived sequences have the value DERIVED
.
For example,
Modality | Image Type Attribute |
---|---|
AAHead_Scout_64ch-head-coil_MPR_cor | ['DERIVED', 'PRIMARY', 'MPR', 'ND', 'NORM'] |
T2w_FLAIR | ['ORIGINAL', 'PRIMARY', 'M', 'NORM', 'DIS2D'] |
asl_3d_MedAir | ['ORIGINAL', 'PRIMARY', 'ASL', 'NONE', 'ND', 'NORM', 'MOSAIC'] |
Perfusion_Weighted | ['DERIVED', 'PRIMARY', 'ASL', 'ND', 'NORM', 'SUB', 'TTEST', 'MOSAIC'] |
MoCoSeries | ['ORIGINAL', 'PRIMARY', 'M', 'ND', 'NORM', 'MOCO', 'MOSAIC'] |
It is interesting how MocoSeries is not annotated as DERIVED. But we can use the string 'MOCO' to detect it.
Relevant Discussion: nipy/heudiconv#266
from mrqa.
fantastic - great find. we can inject a filter for this.
We need to have a modular and easy way to maintain various list of filters, based on various attributes (dicom tags, file names etc) some to be ignored (directly at the MRdataset
) and some to be not reported at the report level. Let's gather requirements
(soft terminology) and make a plan for how to implement it first before delving into it.
also, we need to document it well, which reminds me, we need a new page in mrQA docs explaining how users should read our report. For the most part our HTML report is very self explanatory, but some users need a bit more with navigation into the different sections, and their interpretation etc, and a list of what is being ignored while generating the report for the sake of completeness
from mrqa.
Be warned Siemens enhanced DICOMs only use specification defined values in the ImageType field (0008,0008). Therefore, I would expect terms like MOCO would appear in the ImageTypeText field (0021,1175). For this reason, data from a Siemens XA scanner will vary the verbosity of 0008,0008 when exporting to classic versus enhanced DICOM.
For examples, see XA30 classic and enhanced images.
I think derived
is in the eye of the beholder for reconstructed MR data.
from mrqa.
thanks for the warnings and details Chris, appreciate it, although we didn't need even more complexity to worry about :).
is the Enhanced DICOM the only format available from the XA30 versions going forward? what libraries do you recommend for reading Enhanced DICOMs? I hope the pydicom
or dcmstack
or one of your libraries does the job for us, so we can focus on mrQA :)
from mrqa.
We are using ImageType Attribute to detect Moco series and derived sequences in dicom_utils
from mrqa.
Related Issues (20)
- ENH : Filepaths to each non-compliant subject and session
- Use 'acq' and 'task' as a suffix for modality name HOT 3
- incremental mode of operation HOT 5
- ENH: Report should include more information about non-compliant values HOT 2
- How to identify sequences in the same session? HOT 2
- A special vertical audit: ensure multiple runs of the same sequences are compliant
- Add to documentation for mrqa_monitor : What if subjects are deleted?
- Produce compliant subset
- Exclude MoCo Series from compliance evaluations HOT 5
- Real-time mrQA
- Provide a timeline
- Differentiating between sessions with and without C02
- Different number of sequences for Subjects across Sessions on different dates
- Checking field maps in each session
- Monitoring Log : delta updates since last compliance check
- include coil info parameter HOT 3
- Do all sessions/subjects have all the sequences?
- No DICOMs found HOT 4
- No DICOMs found (Bruker 7T Preclinical) HOT 5
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 mrqa.