LLNL / LEAP

comprehensive library of 3D transmission Computed Tomography (CT) algorithms with Python API and fully integrated with PyTorch
https://leapct.readthedocs.io
MIT License
74 stars 8 forks source link

geometric calibration can find centerRow ? #18

Closed hyaihjq closed 4 months ago

hyaihjq commented 5 months ago

the result of find_centerCol is error in truth data.

kylechampley commented 5 months ago

Currently LEAP has no algorithm to estimate centerRow. Image quality usually degrades weakly with centerRow errors and thus it is a hard parameter to estimate. In the past I have implemented algorithms to estimate this, but have never been too impressed with their accuracy. Usually this parameter is estimated with a calibration scan, like a stack of metal balls. Anyway, if you know of a good algorithm to estimate centerRow, please let us know about it.

For you second question, I will need more detail. Could you send me a copy of the output from: leapct.print_parameters() and post an image of one of the projections.

kylechampley commented 4 months ago

I've tested the find_centerCol algorithm with multiple real CT data sets and it seems to be working great for me.

Note that it only works for parallel-, fan-, and cone-beam CT geometry types (i.e., everything but modular-beam) and the projections cannot be truncated on the right or left sides. If you have any bad edge detectors, these must be cropped out before running this algorithm. I also added more comments to this algorithm to help you run it successfully. These can be viewed here: https://leapct.readthedocs.io/en/latest/

I am going to close this issue because I have not heard back in a long time and I think I resolved the issue, but feel free to open a new issue if you want.