LLNL / LEAP

comprehensive library of 3D transmission Computed Tomography (CT) algorithms with Python and C++ APIs, a PyQt GUI, and fully integrated with PyTorch
https://leapct.readthedocs.io
MIT License
119 stars 12 forks source link

How do I use the function in detector_deblur.py #137

Open Y7NINE opened 4 days ago

Y7NINE commented 4 days ago

Hi,

I recently discovered a new gadget in the leap kit demo under demo_leapctype/d15_detector_deblur.py, and I’ve been exploring its potential with my own data. I’m really fascinated by the functionality, but I’m finding it a bit challenging to fully grasp the effects demonstrated in the provided examples.

To better understand, I’ve stored the intermediate post-processing results. From left to right, I’ve saved the original post-processed image and the error result. However, I’m unsure how to analyze these results to assess the enhancement effect effectively.

Could you kindly guide me or point me toward any relevant literature or resources that could help me deepen my understanding?

Thank you so much for your time and support! image

Y7NINE commented 4 days ago

image Are these fixed or do they need to be changed depending on the data I'm using? Can I use them directly on my own data

kylechampley commented 3 days ago

Flat panel x-ray detectors have point spread functions with very long tails. In some cases, these long tails can cause cupping and streaking artifacts in reconstructed images that are similar in appearance to scatter and beam hardening artifacts. This is the motivation for providing these routines in LEAP.

The PSF depends on the detector you are using and the x-ray spectra. Higher energy x-rays produce wider PSFs with longer tails. Determining the PSF of your detector can either be done using Monte Carlo modeling or it can be done empirically. Check out PySABER for routines to determine the PSF empirically.