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

"OrientationRepresentation" rename #91

Closed
Lestropie opened this issue Apr 23, 2024 · 3 comments
Closed

"OrientationRepresentation" rename #91

Lestropie opened this issue Apr 23, 2024 · 3 comments

Comments

@Lestropie
Copy link
Collaborator

I've never liked the naming of this field, but never come up with a clear superior alternative.

"OrientationEncoding" might be the closest; I'm wary because in diffusion we talk about "diffusion sensitisation encoding", whereas what's happening here is rather "what is / are the basis function(s) by which anisotropic information on S2 is being encoded".

Open to suggestions.

@Lestropie
Copy link
Collaborator Author

  • One question would be whether "Orientation distribution function" can be considered to apply to delta functions in the case of polar angles / 3-vectors. Personally I believe it applies to rank-2 tensors.
  • Potential issue with leaning on "orientation" is that some models yield data that are of higher dimensionality again. Eg. A DWI PDF per voxel isn't really just "orientation".

@Lestropie
Copy link
Collaborator Author

Another factor that may have an influence here is whether this remains as a single metadata field, or whether it becomes just one field in a sub-dictionary, which is what I'm currently leaning towards. For those metadata fields that apply per parameter of a model, it may be beneficial to separate those fields that yield information about the anisotropic nature of what's encoded there from everything else.

So that would currently be:

  • The basis function(s) for which the coefficients are stored as image intensities
    (ie. DEC, spherical coordinates, 3-vectors, spherical harmonics, amplitudes, tensor, ...)
  • In the case of "amplitudes", the direction set against which those amplitudes are defined
  • Optionally for spherical coordinates / 3-vectors, the max number of orientations defined per voxel
    (possible to infer from the number of volumes, but could nevertheless store it there to be explicit)
  • Reference axes
  • SH basis
  • SH maximal degree
    (again possible to infer from number of volumes, but would be explicit here also)
  • Possibly, in order to disambiguate against storing bootstrap realisations, the image axis or axes along which those basis functions are defined
    (I can imagine eg. extending to the SHARD basis, or DSI defining a 3D PDF per voxel, where multiple NIfTI axes encode some kind of q-space dependence in each voxel)

Totally separating these away from things like "Description" and "Units" might be more clear.

If such grouping were to be done, then it would split metadata field naming of something like "orientation dependence" or "higher-dimensionality encoding" from what I've termed "basis functions" above.

@Lestropie
Copy link
Collaborator Author

#92 has both renamed to "OrientationEncoding" and turned into a dictionary to encapsulate all relevant information. Closing given I've made the change as described, but doing so doesn't mean it's set in stone, alternatives can still be proposed.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant