How to visualize fiber orientation tensors

Hi people,
Let's say I have a huge amount of fiber orientation tensors showing the probability of fiber alignment in the specified principal direction within a part. Since the fiber orientation tensor in the first principal direction is the most useful result to view in my analysis, I am trying to find a way to visualize the tensors using a user-defined geometry (e.g. cylinders).
Many thanks in advance for any help!

댓글 수: 5

Can you clarify what information you have? Do you have a length-3 vector describing the orientation of the fiber at each of several points in the lattice? If so, I think that quiver3() would work for you.
doc quiver3
If you could clarify what information you currently have, it would be much easier to offer a solution.
MrBlub
MrBlub 2013년 7월 17일
편집: MrBlub 2013년 7월 17일
Matt Kindig, thank you very much for your reply!
It's not that easy I'm afraid. Here is what I got:
1. I can export 3x3 matrices with fiber orientation values for a specific point on my CAD-part. For instance I can create a table like the following:
Point(x,y,z) Tensor (3x3 matrice)
0,0,0 0.78 0.1 0.05, 0.19 0.2 0.01, 0.03 0.4 0.02
...
where one line represents one fiber-orientation-state to be visualized.
2. MatLab first needs to calculate the eigenvectors and eigenvalues of tensor (each line in the table).
3. Having the eigenvectors and eigenvalues calculated, I want MatLab to visualize the orientation at each point(x,y,z) in the table using an 3D-ellipsoid.
4. Besides that it would be also of great benefit for me to automatically generate a picture (like the one above), showing a cylinder aligned in the first principial direction (main direction of the ellipsoid) for each point(x,y,z) in the table.
Hope this helps! Thank you very much for any hint on that!
Matt Kindig
Matt Kindig 2013년 7월 17일
편집: Matt Kindig 2013년 7월 17일
Hi MrBlub,
Ok, these steps all seem fairly straightforward. One at a time:
1. I assume the export is in the form of a text file? If so, extracting the relevant data from the text file should be pretty easy--I'd use textscan() or regexp() to extract the point and tensor data.
2. Eigenvectors/values can be found using eig(). For 3x3 matrices, this should be plenty fast.
3. I'm not sure how the 3D ellipsoid is defined. I assume that the major/minor axes of the ellipsoid are aligned with two of the eigenvectors, but how is the volume defined? Rendering the ellipsoid might be the hardest point of this workflow.
EDIT: I just searched the File Exchange, and found this function that might help: http://www.mathworks.com/matlabcentral/fileexchange/27462-diffusion-tensor-field-dti-visualization
4. The cylinder rendering can be generated manually, or you can use one of several functions on the File Exchange (such as http://www.mathworks.com/matlabcentral/fileexchange/12285-3d-quiver-with-volumized-arrows) that renders vectors (like in quiver3) with cylinders (for the arrow shaft) and cones (for the head). You can set the head size to zero to render cylinders only.
Does this help?
Matt
Matt Kindig
Matt Kindig 2013년 7월 24일
Do you want the projection numerically or visually? That is, do you want the coordinates of the outline of the projected ellipsoid onto the plane, or do you want to visualize the projection?
@Matt Kindig, Hi, I need exact what you said. But I need plot the tensor in xy coordinate by visualizing microscopic image of composite components.

댓글을 달려면 로그인하십시오.

 채택된 답변

Alex Taylor
Alex Taylor 2013년 7월 24일

0 개 추천

You might also want to take a look at this additional File Exchange submission for DTI visualization if you want a different flavor of visualization:

추가 답변 (0개)

질문:

2013년 5월 31일

댓글:

2022년 4월 27일

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by