Skip to content

Adding a pulse field #20

@kekeke21

Description

@kekeke21

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:

  1. timestamp in ns since StudyTime in acquisition header
  2. channel number of the transmitter
  3. sample time in ns
  4. calibration

Pulse data specifies below with dimensions of coils and samples:

  1. pulse amplitute in voltage as float
  2. 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.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions