utils¶
freeart.utils¶
Python utils for freeart.
freeart.utils.reconstrutils: some utils linked to the reconstruction¶
group some functions used for reconstruction
- 
freeart.utils.reconstrutils.decreaseMatSize(mat)[source]¶
- will decrease the matrice size if possible where one dimension has only one element 
- 
freeart.utils.reconstrutils.increaseMatSize(mat, firstPos)[source]¶
- Simple function which will add a dimension to the current matrice - Parameters: - mat – the matrice for which we want to remove a dimension
- firstPos – if true remove the first position else remove the last
 
- 
freeart.utils.reconstrutils.savePhantom(data, fileName, overwrite=False)[source]¶
- will create an edf file to store the given data - Parameters: - data – the data to save
- fileName – the localisation to know where to save the data
 
- 
freeart.utils.reconstrutils.LoadEdf_2D(fName, frame=0)[source]¶
- Load data from the given edf file - Parameters: - fName – the name of the file
- frame – if multiple frame file, will use theis parameter to load a specific frame
 
- 
freeart.utils.reconstrutils.makeFreeARTFluoSinogram(phantom, absMat, selfAbsMat, numAngle, detSetup, oversampling, beamCalcMeth, outRayPtCalcMeth, minAngle=0.0, maxAngle=6.283185307179586, subdivisionValue=3, turnOffSolidAngle=False, I0=1.0, voxelSize=1.0)[source]¶
- Generate the fluorescence sinogram - Parameters: - phantom – The initial phantom (density * probability of emission of photon…)
- absMat – absorption of the incoming. Aka \({\mu}_{E_0}{\rho}x\)
 - Returns: - sinogram (numpy array of float64 )
- angles list of angles of projection
 - Warning - all angle values must be given in rad 
- 
freeart.utils.reconstrutils.convertToFisxMaterial(materialName, material)[source]¶
- convert a material defined in a dictionnary (from tomoGUI for example. Used to be saved and loaded ) in a fisx Material. Won’t do the registration - Parameters: - materialName – the name to attribute to the fisx material
- material – the material defined in a dictionary
 - Returns: - the fisx material - initial material structure looks like : materialName = “My_mat” material = {‘Comment’:”No comment”, ‘CompoundList’:[‘Cr’, ‘Fe’, ‘Ni’], ‘CompoundFraction’:[18.37, 69.28, 12.35], ‘Density’:1.0, ‘Thickness’:1.0}- Final structure is a fisx Material : steel = {“Cr”:18.37, “Fe”:69.28, # calculated by subtracting the sum of all other elements “Ni”:12.35 }- material = Material(“My_mat”, 1.0, 1.0) material.setComposition(steel) 
freeart.utils.genph: phantom generator¶
- 
class freeart.utils.genph.PhantomGenerator[source]¶
- Bases: - object- Class for generating different Phantoms - 
get3DPhantomSheppLogan(n)[source]¶
- Parameters: - n – The width (and height) of the phantom to generate - Returns: - A numpy array of dimension n*n fit with the sheppLogan phantom 
 
- 
freeart.utils.benchmark: tool for benchmarking¶
Benchmark file.
- 
freeart.utils.benchmark.benchmark_tx_projection(oversamplings, widthsToTest, nbAngle)[source]¶
- Create a graph for benchmarking the transmission forward projector - Parameters: - oversamplings – the list of oversamplings to test
- widthsToTest – the list of phantom width to test
- nbAngle – the number of projection to test
 
- 
freeart.utils.benchmark.benchmark_tx_reconstruction(oversamplings, widthsToTest, nbAngle, nbIter)[source]¶
- Create a graph for benchmarking the transmission reconstructor - Parameters: - oversamplings – the list of oversamplings to test
- widthsToTest – the list of phantom width to test
- nbAngle – the number of projection to test
- nbIter – the number of iteration to test (one iteration launch nbAngle back projection)
 
- 
freeart.utils.benchmark.benchmark_fluo_projection(oversamplings, widthsToTest, nbAngle, outgoingraypointsmethods)[source]¶
- Benchmark the fluo projection - Parameters: - oversamplings – the list of oversamplings to test
- widthsToTest – the list of phantom width to test
- nbAngle – the number of projection to test
- outgoingraypointsmethods – the list of outgoingrayalgorithm to test
 
- 
freeart.utils.benchmark.benchmark_fluo_reconstruction(oversamplings, widthsToTest, nbAngle, outgoingraypointsmethods, nbIter)[source]¶
- benchmark the fluo reconstruction - Parameters: - oversamplings – the list of oversamplings to test
- widthsToTest – the list of phantom width to test
- nbAngle – the number of projection to test
- outgoingraypointsmethods – the list of outgoingrayalgorithm to test
- nbIter – the number of iteration to test (one iteration launch nbAngle back projection)