# FluidImage documentation¶

FluidImage is a libre Python framework for scientific processing of large series of images. This package is very young but it is already mature enough to be used “in production” to

• pre-process images,
• compute Particle Image Velocimetry (PIV, i.e. displacements of pattern obtained by correlations of cropped images),
• analyze PIV fields.

We want to make FluidImage easy (useful documentation, easy installation, usable with scripts and GUI in Qt), reliable (with good unittests) and very efficient, in particular when the number of images to process becomes large. Thus we want FluidImage to be able to run efficiently and easily on a personal computer and on big clusters. The efficiency is achieved by using

• an asynchronous framework (and in the long term we want to be able to plug FluidImage to distributed computational systems like Dask, Spark or Storm),
• the available cores of the central processing units (CPU) and the available graphics processing units (GPU),
• good profiling and efficient and specialized algorithms,
• cutting-edge tools for fast computations with Python (in particular Pythran and Theano).

## Modules Reference¶

Here is presented the general organization of the package (see also Concepts, classes and organization of the package) and the documentation of the modules, classes and functions.

 fluidimage.topologies Topologies representing asynchronous computations ==================================================== fluidimage.data_objects Data objects =============== fluidimage.works Works - processing ===================== fluidimage.calcul Utilities for numerical computation ====================================== fluidimage.preproc Preprocessing of images ========================== fluidimage.calibration Calibrations =============== fluidimage.postproc Postprocessing ================= fluidimage.util Utilities ============ fluidimage.gui Graphical user interface ===========================