3D volume image reconstruction
19 views (last 30 days)
I have stacks of 2D images. Every slice has its thickness,0.7mm. how to reconstruct 3D Volume image?
What I want is like this
The 3D volume data have its height,width,length in x,y,z axes.
I don't know to do set the thickness of every slice and combine them without spacing in z axis. I have combined 2D stacks images into 3D images 512x512x630 512X512 pixel 630 frames
anyone can help? thanks
Ahmet Cecen on 30 Jul 2014
How you would handle this problem depends on what you would like to achieve as the end result. Keep in mind, the "z axis" as you call in a 3D array is not actually the z-axis, so you don't need to worry about spacing in terms of indexing. Just stack every slice on top of each other with a for loop with a (:,:,i) indexing and obtain your 3D matrix. The actual question is what will you do after you have the 3D matrix? Depending on that there are several ways to proceed.
If for whatever reason, you need your voxels (3D pixels) to be cubic, so that x,y,z is scaled equally, a particularly lazy solution would be to use the function "imresize". You said your resolution in z direction is 0.7 mm, I would hazard a guess that your resolution within each slice is much higher. You want every element A(i,j,k) of the 3D image to have same length, so you would have to resize the image at each layer to the same resolution. (Afterwards stack the images).
Anywho, no more speculation. Your question is very broad for me to give any further details or specific code snippets. If you share details about the data, how it was obtained, what cleaning it went through, and what you want to do with the 3D matrix (feed it to a simulation? or just 3D visualization?) I should be able to help further.