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

7 Ansichten (letzte 30 Tage)
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

Antworten (2)

Matt J
Matt J am 22 Jan. 2022
Bearbeitet: Matt J am 22 Jan. 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 Kommentare
Dynamic
Dynamic am 23 Jan. 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 am 23 Jan. 2022
You can use squeeze() or reshape() to reshape the result from Nx1xN to NxN

Melden Sie sich an, um zu kommentieren.


yanqi liu
yanqi liu am 24 Jan. 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