(by Kichanov Sergey)
One fine day you have joined the neutron radiographic community through measurements of your unique and wonderful object by means of a neutron tomographic method. You have obtained sets of radiographic images, open beam and dark field patterns and are focused with the question: “What should I do with all this?”
Here, I want to show some easy steps in processing neutron tomographic data and present a short review of freeware which can be used for this. My tips are not strict rules for action, but, to my opinion, settle the starting point for newbies in the field of neutron tomography. ….Oh, yes, I remember a time when I was collecting information about the software algorithms, bit by bit, with many unnecessary data filtering…
So, let's start:
First, we need some software for visualization our imaging data and performing simple operations: denoising, summing, background corrections etc. A leader in my private rating is ImageJ. Easy in use, numberless extensions by plugins plus a great and helpful community distinguish this software.
Do you have some “exotic” image formats? Do not worry – install additional plugin. Do you want to prepare useful scripts? Don't worry – powerful script writing system, like Python, Ruby, Java code support are waiting for you. There are millions of possibilities. It is fast and furious. To my opinion, ImageJ has no competitors.
You can download ImageJ from https://imagej.nih.gov/ij/download.html
Alternatively, download FIJI, an ImageJ version already bundeling a large number of plugins FIJI: http://fiji.sc, using the nice slogan: “Fiji is just ImageJ”.
Ok, now you can load your set of projection data (File ⇒ Import ⇒ Image Sequence),, i.e. ImageJ now contains a stack of images. You can push the "play" button to watch the movie "How my object rotates in the neutron beam", a funny comedy.
Seriously, you can perform many operations as a batch operation:
- denoising (Process ⇒ Noise ⇒ Despeckle),
- filtering (Process ⇒ Filters ⇒ "As you like filter") and
However, in our case, it is useful to perform open beam and dark field corrections. Just load the "open beam" and the "dark field" files to ImageJ and perform normalization:
(Read more: http://www.sciencedirect.com/science/article/pii/S1110016815000952 or other literary sources.)
The normalization can be performed via "Process ⇒ Image Calculator".
Too many steps? "Plugins ⇒ Macros ⇒ Record" and after only one passage (i.e. for a single projection) you obtain a script for a subsequent automatic evaluation.
Finishing the normalization procedure, we can pass ...
Second, to the tomographic reconstruction procedure.
In simple words, we want to convert our angular projections to planar slices perpendicular to the rotation axes OR to a 3D model of neutron attention coefficients mapping.
Here, I recommended use H-PITRE (download: https://webint.ts.infn.it/en/research/exp/beats2/h-pitre-beta-version.html), a high-level software. Really! This software use the CUDA technology. Therefore, you should use a NVIDIA graphic card (Please, download a recent driver for you card!). Download and install CUDA libraries. It requires about 1.2 GByte of hard drive space. Nevertheless, CUDA is working.
Now, the tomographic reconstruction of big data is available on your PC!
If you have no NVIDIA card or others causing, you can use PITRE (download: https://webint.ts.infn.it/en/research/exp/beats2/pitre.html). Install only the IDL Virtual Machine.
Ok, load you angular images into H-PITRE. Don’t forget rename your file names to the required names for PITRE: "tomo_***.tif". Check parameters, input correct center of rotation. I calculate rotation center in ImageJ: add first and last projection and searching for center of this hybrid image.
After start process, you should take a cup of tea (the cup of coffee would work too) and wait. In finish, we should obtain a directory with slices images. That is all.
I recommend paying attention on other tomography reconstruction software:
- TomoPy: http://tomopy.readthedocs.io/en/latest/. It is a powerful software package and includes the great algorithms from initial data loading to outstanding tomography reconstruction cases: GRIDREC, SIRT, ART and others. It demands Python or Matlab. However, version for Windows do not work. In Linux OS (I try it in Ubunta) it is able to work. For users friendly with the programming.
- The ASTRA Toolbox: http://www.astra-toolbox.com. The CUDA support. But only reconstruction algorithms. I have not known how to load my own imaging data. May be someone will pass this way to the end…
Third, the 3D model presentation and calculation something.
In my opinion, the software for 3D visualization and analysis is presented in freeware segment very poor.
The first useful software is …# drumroll#... ImageJ. Get the 3D viewer plugin https://imagej.nih.gov/ij/plugins/3d-viewer/ and load your slices inside. Then rotation, zooming, moviemaking are possible.
For ImageJ there are great number plugins for 3D model treatment: Local Thickness, 3D particle calculator and etc. You can find everything your heart desires.
Keep your attention to Drishti: http://anusf.anu.edu.au/Vizlab/drishti/ However, I have no experience to work with software.
Of course, for more professional 3D data treatment you can buy commercial software: FEI Avizo® or Volume Graphics VGStudio®. But they are expensive.
Ok, above I described briefly some software for neutron imaging and tomography. If you uses other soft or you have own code or scripts, please, share them. If you want. But it is well known:
If you have an apple and I have an apple and we exchange apples then you and I will still each have one apple. But if you have an idea and I have an idea and we exchange these ideas, then each of us will have two ideas.
George Bernard Shaw