-
Notifications
You must be signed in to change notification settings - Fork 5
Description
This is a series of modification proposals for MRD format as we discuss on weekly meetings. The proposal is still an idea under discussion and can change in future meetings.
TLDR:
We suggest having a separate field for pulse sequence. This field allows sequence programmers to embed a train of sequence used to acquire the data. Similar to acquisition field, pulse sequence is only turned on during pulsing, hence the pulse sequence class object is constructed for each pulse with flags.
Schema
It consists of pulse header and pulse data.
Pulse header specifies:
- timestamp in ns since StudyTime in acquisition header
- channel number of the transmitter
- sample time in ns
- calibration
Pulse data specifies below with dimensions of coils and samples:
- pulse amplitute in voltage as float
- phase in radiance as float
The purpose of the field is to 1) store sequence information used to acquire the data in the same file, and 2) use mrd file as a medium to share pulse sequence with others. We already have a Pulseq which is intended to store the pulse shapes efficiently as .seq file and run it on MRI scanners regardless of specific vendors. However, their format is too simple to design any non-standard complicated sequence with random sampling, spiral, etc. Ideally we can write a converter between MRD format and .seq file to ensure compatibility.