fluidimage.reconstruct.tomo.mlos#

MLOS (Multiplicative Line of Sight)#

Reference:

C. Atkinson and J. Soria, “An efficient simultaneous reconstruction
technique for tomographic particle image velocimetry,” Exp Fluids, vol. 47,
no. 4–5, p. 553, Oct. 2009.
class fluidimage.reconstruct.tomo.mlos.TomoMLOSBase(cls_calib, cls_array, *cams, **kwargs)[source]#

Bases: object

MLOS can be summarized in the following steps:

  1. Project the world coordinates to pixel coordinates.

  2. Interpolate intensity of the neighbouring pixels.

  3. Project back the interpolated intesities onto world coordinates and apply them multiplicatively.

reconstruct(pix: dict, image: ndarray, threshold: float, chunks: tuple, save: bool)[source]#

Performs MLOS reconstruction parallely using Dask. The reconstruction is done in memory when save=False and in the filesystem when save=True.

verify_projection(cam='cam0', skip=1)[source]#

Graphically verify the projection performed by phys2pix method.

class fluidimage.reconstruct.tomo.mlos.TomoMLOSRbf(cls_calib, cls_array, *cams, **kwargs)[source]#

Bases: TomoMLOSBase

Interpolation is calculated using a radial basis function (RBF) interpolation with a gaussian kernel.

class fluidimage.reconstruct.tomo.mlos.TomoMLOSNeighbour(cls_calib, cls_array, *cams, **kwargs)[source]#

Bases: TomoMLOSBase

Interpolation is calculated using a nearest neighbour interpolation.

class fluidimage.reconstruct.tomo.mlos.TomoMLOSCV(*cams, **kwargs)[source]#

Bases: TomoMLOSNeighbour

phys2pix(cam_name: str)[source]#

Tranform the ‘physical’ world coordinates to ‘pixel’ coordinates.

reconstruct(pix: dict, image: ndarray, threshold=None, chunks=None, save=False)[source]#

Estimate the maximum size of chunk which can fit in the memory and execute the parent method.

Classes

TomoMLOSBase(cls_calib, cls_array, *cams, ...)

MLOS can be summarized in the following steps:

TomoMLOSCV(*cams, **kwargs)

TomoMLOSNeighbour(cls_calib, cls_array, ...)

Interpolation is calculated using a nearest neighbour interpolation.

TomoMLOSRbf(cls_calib, cls_array, *cams, ...)

Interpolation is calculated using a radial basis function (RBF) interpolation with a gaussian kernel.