Rotate 3D image stack about a specific point within a given image plane

2 visualizaciones (últimos 30 días)
MATLAB community,
I have tried to search through numerous other posts but the solution I'm searching for has proven elusive to me. I have a data set (1024x1024x99 double). A rotation point is located in one of the planes. The point is 603,504 in the plane 45.
I'm attempting to rotate the 99 planes around this particular point in one axis (e.g - one rotation - not 2!). The output I'm looking for can be visualized by holding a pen to the computer screen and imagining the pen is the 99 planes of images. I want the output dataset to look as though the pen has been angled to the right or left.
It is essential that geometric accuracy is maintained throughout the transformation or as best it can be. I have looked through the functions imwarp, imrotate3, and affine3d and have the image processing toolbox. Mathematically, I can compute this for each individual point within the plane (x_p-radius*sin(theta), etc), but this is computationally heavy since there are over 100 million total points to transform. A solution doesn't have to be extremely fast, but it shouldn't take an hour.
Any responses will be appreciated and I am grateful for this community of expert level programmers. I hope to be there one day...

Respuestas (0)

Categorías

Más información sobre Geometric Transformation and Image Registration en Help Center y File Exchange.

Productos


Versión

R2019a

Community Treasure Hunt

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

Start Hunting!

Translated by