Skip to content
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

Add 3D-REPI #49

Open
paquiteau opened this issue Nov 15, 2023 · 2 comments · May be fixed by #137
Open

Add 3D-REPI #49

paquiteau opened this issue Nov 15, 2023 · 2 comments · May be fixed by #137
Assignees
Labels
feature request New feature or request good first issue Good for newcomers trajectories Issues concerning Non cartesian trajectories

Comments

@paquiteau
Copy link
Member

Another non-cartesian trajectory that has some nice properties

An example:
image

https://www.ncbi.nlm.nih.gov/pmc/articles/PMC8616809/

@paquiteau paquiteau added feature request New feature or request good first issue Good for newcomers trajectories Issues concerning Non cartesian trajectories labels Nov 15, 2023
@paquiteau paquiteau changed the title Add 3D-REPI/ Segmented TURBINE Add 3D-REPI Nov 15, 2023
@Daval-G Daval-G self-assigned this Nov 18, 2023
@Daval-G
Copy link
Collaborator

Daval-G commented Jun 5, 2024

Both 3D-REPI and TURBINE (from issue #50) are quite simple to implement except for one question: How should we handle split readouts ? EPI-like trajectories are characterized by blips/short transition between each line composing a single long shot. For example, the blue lines above are acquired over only one TR, but transitions between each line/spiral is not shown and could have an arbitrary duration depending on the sequence. To me it leads to two possible propositions:

  1. In the trajectory initialization, we request a bunch of additional parameters for each EPI-like trajectory about how many points should be used for the transition, and we deduce the slew rate to apply in transition.
  2. The EPI-like trajectories only provides lines/spirals separately but ordered implicitely as "interleaves", and we also provide a utilitary function for the user to transform those interleaves into single shots, as it would typically be used for GRE-like acquisitions. It could also be used on other trajectories that are naturally interleaved.

I prefer the second solution, it makes trajectory initialization much lighter and invite to the development of different blip/transition strategies. WDYT ?
In both cases, we will provide additional gradient manipulation techniques to create transitions, but also prewind & rewind gradients.

@paquiteau
Copy link
Member Author

I like the 2nd proposal a lot! Those considerations are only relevant when using the trajectories on the scanner, so providing the idealized trajectory (as it would be used in NUFFT operator initialization) and the way to make it hardware-compatible by having proper blips is probably the best way to go (and generalize well as you mention).

I look forward to seeing your implementations!

@Daval-G Daval-G linked a pull request Jun 23, 2024 that will close this issue
@paquiteau paquiteau linked a pull request Jul 25, 2024 that will close this issue
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature request New feature or request good first issue Good for newcomers trajectories Issues concerning Non cartesian trajectories
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants