How to reconstruct 3D volume from 2D projections that are generated by same 3D volumetric?

8 visualizaciones (últimos 30 días)
Hi I have small assigment to sumit as soon as possible. I can do it using different implemented that have already develop someone. However, I have to implement a simple code without usig them. First of all I need be create 1000 projection from a vulume using image object in various directions and store them with the angles that used for each projection than have to add Gaussian noise to each projection with an amplitude so small that no features can be seen in the single images. Now using these projection of images I need to reconstruct 3D volume. (To reconstruct the initial volume, use these angles and pictures to do a weighted back projection.)
Please help me. Thanks

Respuestas (2)

Matt J
Matt J el 22 de En. de 2022
Editada: Matt J el 22 de En. de 2022
I fyou mean you need to implement your own forward projector, a simple (and not terribly fast) implementation would be with imrotate(),
for i=1:numel(theta)
proj(:,i)=sum( imrotate(volume,theta),2 );
end
  2 comentarios
Dynamic
Dynamic el 23 de En. de 2022
@Matt J Thanks for your suggestion. However, proj(:,:,i) provide an N*1*N matrix where I only need N*N 2D image. Can you suggest to me how can I project 2D images?
Thanks
Matt J
Matt J el 23 de En. de 2022
You can use squeeze() or reshape() to reshape the result from Nx1xN to NxN

Iniciar sesión para comentar.


yanqi liu
yanqi liu el 24 de En. de 2022
yes,sir,what is target,make 3d matrix display as 3d object?such as

Community Treasure Hunt

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

Start Hunting!

Translated by