Hi,
Given the limitation of DTI at fibres crossing, I would like instead to get the 3 first maxima of the ODF (vectors and lambdas) and use these 3 maxima into the function tensor2metric, instead of using dwi2tensor.

So far I used
dwi2response dhollander …
dwi2fod msmt_csd …

I am missing few steps to retrieve the 3 first maxima from the ODF

To be clear, the only similarity between the eigenvalues of the tensor model, and the peak orientations and amplitudes of an ODF, is that they are both vectors in 3D space. The terms “eigenvectors” and “eigenvalues” however have very specific mathematical definitions, and these do not apply to ODF maxima.

There are two different ways to try to access the information you’re looking for:

sh2peaks attempts to locate the maxima of the ODF, and will write the results to a 3-vector “peaks” image: 4D image with 3xN volumes, where N is the number of maxima to extract, and each triplet of volumes is the XYZ components of a vector, with orientation and length specifying the location of the maxima.

fod2fixel performs FOD segmentation, and writes the results in the fixel directory format. By default the directions it provides will be the mean direction of each fixel rather than the orientation of the maximum, though this can be modified using the -dirpeak option. Command-line option -peak provides a fixel data file containing the maximal amplitude of the ODF within each fixel.