Zooming out on the DRR
YassinAbdelrahman opened this issue · 1 comments
Hi,
I have recently started using the minimal example to load a CT scan and generate an X-ray projection. I have adjusted parameters so it looks like the following picture:
However, I am looking for something that is zoomed out quite a bit more, something that looks like this:
This is the code I am using:
from deepdrr import geo, Volume, MobileCArm
from deepdrr.projector import Projector # separate import for CUDA init
from deepdrr.utils import image_utils
ct = Volume.from_nifti('Output Volume_3.nii.gz')
ct.supine()
carm = MobileCArm(isocenter=ct.center_in_world,alpha=0, beta=0, degrees=True)
# Initialize the Projector object (allocates GPU memory)
with Projector(ct, carm=carm, step=0.1,photon_count=10000,neglog=True,intensity_upper_bound=3) as projector:
# Move the C-arm to the desired pose.
carm.move_to(isocenter_in_world=ct.center_in_world + geo.v(0, 0, -500))
# Run projection
image = projector()
Could anyone help me accomplish this? I am quite new to CT image processing so any help would be appreciated!
Thank you,
Yassin
Hi Yassin,
This kind of image would not be possible to acquire with a MobileCArm, so you'll have to specify the projection matrix yourself, using a very large detector and placing it just behind the CT. Szeliski's Computer Vision Ch2 is a good reference, or there are numerous articles online.
Note, if the image is not cone-beam X-ray, then DeepDRR may not be well-suited to this type of projection.
Best,
Benjamin