-
Notifications
You must be signed in to change notification settings - Fork 228
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Additional fields for the json #127
Comments
Thanks, I will try to add 0008 1010 (StationName) and 0018 0022 (ScanOptions) to the next release. The others are available in the latest code. In my experience, the current code provides information on your software stepping, e.g. on our machine |
Please check out and test the latest source code for both dcm2niix and dcm_qa. You should see new JSON elements, e.g.
|
Interesting re SoftwareVersions. Is the value of that tag based solely on the value of 0018,1020? Because on our VE11B and now VE11C scanners, 0018,1020 is just "syngo MR E11" -- i.e., no info on software stepping is included. I also took a look at data from the Connectom scanner, which was officially "VD11D", yet 0018,1020 is just "syno MR D11". So, it is puzzling to me how you got the software stepping detail in your example. (Did Siemens add that detail into 0018,1020 for VD13, but then leave it out of VE11?) |
Sorry, I didn't think of these earlier, but here are a couple other pieces of information from the custom Siemens fields that would be very handy to have readily extracted as part of the json: ReceiveCoilName: sCoilSelectMeas.aRxCoilSelectData[0].asList[*].sCoilElementID.tCoilID |
Looking forward! |
Ok, one more piece of information that we use within the HCP Pipelines is (0019,1018). We call that "ReadoutSampleSpacing" in our internal XML database, but Eddie Auerbach originally described it to me as: I like "RealDwellTime" since that is more specific and closer to the MR physics. Siemens returns this as nanoseconds in (0019,1018), so I guess it would need to be converted to seconds, since the json's appear to specify all times in seconds. Thanks for your consideration and responsiveness on these additional tags! |
As an additional plug for including "RealDwellTime" it provides a handle on the readout bandwidth, which isn't currently included. :) |
I will peter out soon, but ImageComments (0020 4000) would be really handy to include as well, since custom sequences frequently embed some useful information there! |
@mharms and @chrisfilo why don't you compile and check the latest version. Note that travis and AppVeyor will report errors as the new BIDS files do not match the reference BIDS files in dcm_qa. Once you confirm the new changes we can update dcm_qa. The new version generates many new attributes
My only concern is that many of these new functions require peaking into the text portion of the CSA header, which I feel a bit uncomfortable about. If you comment out I refer to 0019,1018 as DwellTime, but if you and @chrisfilo agree we can make it RealDwellTime |
@mharms - shouldn't this be RealDwellTime according to your latest proposal? |
This is fabulous! Thanks for being so responsive! The only suggestion you didn't include was (0051,100f). Was there a reason, or did that one just get lost in the shuffle? (It is really handy and important to know which coil blocks were activated...) As far as naming, I'm fine with "DwellTime". "CoilID" is short and sweet, but there is already "ReceiveCoilName" in the BIDS spec, so would that be a more appropriate tag for the the coil ID? [I'm not sure how naming issues are best adjudicated. I did notice that the pre-compiled "19-Aug-2017" release has an "AccelFactorPE" tag, so did you just rename that to "ParallelReductionFactorInPlane" with the latest changes? I actually would favor AccelFactorPE for conciseness, and then use AccelFactorSlice (for MB factor) for symmetry...]. If only extracting AccelFactorSlice (MultibandAccelerationFactor in the BIDS spec) wasn't such a pain... The location of that in the DICOMs from the CMRR SMS sequences has changed over the years (and I could relay that info to you if you wanted to add it). Not sure where it is in the Siemens product sequence, although I'm sure we could find it if you wanted to add that. |
The new code renames elements to |
Again, awesome! Creative solution to computing the multi-band factor. I'll let Chris adjudicate between |
I'll just mention the following and you can decide if you want to include this. The BIDS spec includes a generic We will additionally probably be including the value of "FmriExternalInfo" as well as part of that |
@mharms please see new code
Once @mharms signs off on these changes and @chrisfilo verifies the BIDS description, we should be able to generate a new release. |
To maintain backward compatibility I would vote for keeping However, |
Thanks @chrisfilo for your clarification. Latest update uses |
|
Couple of issues that came up in my review so far:
|
|
Just to clarify re (4), for anyone following this thread, based on my reading of the current code, the tag in the json called FWIW, I don't know if the |
* tag 'v1.0.20170923': (43 commits) Increment version for new release Update dcm_qa submodule. Update dcm_qa submodule. Kludge for GEIIS violations https://www.nitrc.org/forum/message.php?msg_id=22370 Fix file permissions Use ReconMatrixPE variable and update some inline comments @xjqian & @mharms tags BaseResolution, PhaseResolution, VendorReportedEchoSpacing, DerivedVendorReportedEchoSpacing rordenlab#130 mharms suggestions for rordenlab#130 Partial fix for rordenlab#132 Fix for rordenlab#131 (comment) bandwidthPerPixelCorrected from Dr. Junqian (Gordon) Xu rordenlab#130 Add PhaseOversampling to BIDS BIDS Interpolation2D, RectangularFOV, improve ReadoutTime rordenlab#130 TotalReadoutTime iPAT vs partial Fourier: rordenlab#130 Move AsciiCsa to end of BIDS Eliminate AppVeyor compiler warnings Remove EchoTrainDuration and EPIFactor: rordenlab#127 BIDS cleanup Reorder items in BIDS as suggested by Michael Harms Report Partial Fourier in BIDS json ...
Hi,
After looking through the BIDS spec, and just considering what can be useful, I was wondering if you would consider adding the following to the BIDS sidecar:
0008 0080: InstitutionName
0008 1010: StationName
0018 0022: ScanOptions
0018 1000: DeviceSerialNumber
0018 1020: SoftwareVersion
On Siemens at least, 0018 1020 is not sufficient to fully distinguish software versions (e.g., doesn't distinguish between VE11B vs VE11C). So, it would be cool, if a SoftwareVersion tag got added, if it could be the concatenation of the 0018 1020 and the sProtConsistencyInfo.tMeasuredBaselineString entry on Siemens scanners.
cheers,
-MH
The text was updated successfully, but these errors were encountered: