OpenChemistry / tomviz

Cross platform, open source application for the processing, visualization, and analysis of 3D tomography data
https://tomviz.org/
BSD 3-Clause "New" or "Revised" License
317 stars 84 forks source link

CT reconstruction question #1770

Open FedorChelnokov opened 5 years ago

FedorChelnokov commented 5 years ago

Hello,

Actually I have a question and it is written in https://tomviz.org/docs/ that they can be asked here.

I have a number of projections from an X-ray scanner like this: image image Basically they contain projections of a Lego block rotated around the middle-vertical line on the pictures.

My main question is whether Tomviz can do tomographic reconstruction for such data?

And if yes, where I can find more info how to achieve this? For example, it looks like Tomviz expects that the rotation axis in the pictures shold be horizontal.

Ragards, Fedor

cryos commented 5 years ago

That is the general assumption right now, I wonder if we could simply rotate the image as a first pass, but that code can also probably be generalized to support other axes. This was primarily developed to support TEM sample holders - it would be good to look at improvements to support standard X-ray acquisition images too.

FedorChelnokov commented 5 years ago

I see. Another question. On my projections the pixel values indicate how much energy reached x-ray detector: light pixels correspond to the air. Tomviz apparently assumes that pixels contain summed attenuation coefficient for corresponsing rays (air shall be black and object - light). Is there a build-in tool in Tomviz to convert one representation into the other?

cryos commented 5 years ago

We have Data Transforms -> Invert Data that literally inverts all pixel values, that may help.

FedorChelnokov commented 5 years ago

I am afraid that the relationship between the energy and the summed attenuation coefficient is not the inversion.

cryos commented 4 years ago

I am not sure I understand what such a tool should do, and why you feel this assumption is in place. We don't specifically assume anything about the projections or volume. We have generalized support for horizontal and vertical tilt axes now, and have a working TomoPy prototype - maybe they would help?

ercius commented 4 years ago

If you need to modify the intensity values you could write a simple python script which takes the attenuation into account. For example, you can take the log of all the pixels in each image. I this is what you want to do right?