Slicing a 3D image volume perpendicular to vessel centerline
5 views (last 30 days)
Show older comments
Dear MATLAB EXPERTS,
I am stuck at re-slicing an image volume perpendicular to a curved vessel centreline in MATLAB. Because of my insufficient knowledge in MATLAB, I am not able to code the function myself. I gave a clear description of the problem below and would appreciate any further detail to how this may be done or if there are any available code:
Below I gave a description in mathematical terms of what I have, at the same time, some guidelines of how can this be achieved, which I have put together by asking other experts:
I have:
1) 3D points that define the curved centerline.
2) Vectors that define plane orientation perpendicular to centerline at each point along the centerline, consisting of:
A tangent to the centerline and two normals perpendicular to each other and to the tangent - these follow the parallel transport frame along the centerline.
Guidelines that I have put together:
1. Build a 2D regular grid with the required resolution (meshgrid).
2. Add the third coordinate for Z-axis (set to 0).
3. Rotate the 2D grid into the required orientation and position - by multiplying the coordinates by 3x3 rotation matrix - this must be perfomed for each point along the centerline.
4. Sample your volume at the grid points using MATLAB interp3 function onto planes(grids at specific orientation) at each point along the centerline.
5. Construct a new 3D image volume by stacking the obtained planes/grids on top of each other, where the tangent to the centerline at each point aligns with the z-direction of this new volume and the two normal vectors align with x and y directions.
Thanks a lot in advnace for your time.
Aziz
0 Comments
Answers (0)
See Also
Products
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!