Copy the FourierAnalysis/ folder in the .../ImageJ/Plugin/ folder
II. Use
II.0. Data acquisition
The data analysis is much faster if the movie features square images with power of 2 sizes. It is highly recommanded to use this
configuration. The algorithms are more efficient if the typical motion between 2 frames is (much) smaller than 1 pixel. This
should be the criterion to decide the frame rate at which the movie is recorded. If the exposure time can be several time smaller than the time between 2 frames, it is best.
II.1. DDM
Refer to Wilson et al. Phys. Rev. Lett. 106 018101 (2011) for theoretical background/
II.1.a. Computing the DICF
Load the movie file in ImageJ. Launch DDM_Classical_5. Parameters are:
Maximum_lag_time: the maximum lag time for which the differential intermediate correlation function (DICF) is computed. Default
is length_of_the_movie/5.
Number_of_Points_per_decade: The DICF is computed for logarithmically distributed lag times. This is the number of lag times in a decade for which the DICF is computed. Default is 20.
Averaging_every_n_frames: 1 + Number of frames skipped when running the temporal average. SET TO 1.
The Plugin then propose a name for the output file, in which the DICF will be saved for all wave number, and runs. Wait until completion.
II.1.b. Fitting the DICF
The fitting stage allows to extract diffusion coefficient, fraction of swimmers, mean and std of the swimming speed.
Run the CorrFctFit_PartSwimmerFit_SecDiffLM plugin. Select the file you just created as input. Guesstimate of the parameters are
required to start the fitting procedure. They need to be realistic but not accurate.
- Guess_D: Diffusion coefficient
- Guess_mean v: mean swimming speed
- Guess_std dev v: std dev of the swimming speed (take it smaller than the mean...)
- Guess_fractionSwimm: fraction of swimmers
Run and save the output file.
The output file contains the fit of the parameters, for the formula indicated in the first line, for each wave number (q)
separately. Chances are that the fits are innaccurate for very small and very large wave numbers, because the DCIF is not
entirely decorrelated and noise level is reached, respectively. Descard them. Fitting parameters should be constant in the
intermediate range of wave numbers, or your suspension does not contain swimming bacteria.
You may want to modify the CorrFctFit_PartSwimmerFit_SecDiffLM file to fit the DCIF to other types of motion. Feel free to
contact us if you need help to do this.
II.2. PhiDM
Refer to Colin et al. J. Royal Soc. Interface 11 0486 (2014) for theoretical background.
Open the movie in ImageJ. Launch PhiDM_Version4_1. Parameters are:
- Min width of the q-plane fit: smallest max wave number for which the phase of I(q,t)I*(q,t+tau) is fitted (qMin)
- Max width of the q-plane fit: largest max wave number for which the phase of I(q,t)I*(q,t+tau) is fitted (qMax)
- Increment in width of the q-plane fit: Increment of q
- Output of the phase as a 32-bit film ? Check if you want to visualise the phase in the wave number plane (! requires lots of memory)
- Background substraction (temporal avg) ? Check if you want to subtract the steady background (recommanded)
Select the name of the output file and let the analysis run.
The output file contains the cummulated displacement in x and y fitted for q=qMin - qMax, and then the average and standard
deviation, as a function of time
II.2. Local PhiDM (PIV)
Refer to Colin et al. Nat. Commun. (2019) for theoretical background.
Open the movie in ImageJ. Launch PhiDM_LocalVersion_Filter_MultiCore. Parameters are
- Size_of_the_sub-regions: size of the sub movie on which the local displacement is set
- Size_of_the_Filter: size in px of the Gaussian filter to limit the region
- Spacement of_the_sub-regions: Spacement of the points at which the local velocity is computed.
- Background_substraction_(temporal_avg)?: See PhiDM
- Standart_displacement_calculation?: If checked standard parameters for displacement calculation are used
- If_not_specify_qmax: Same as qMax of PhiDM
- Print_trajectories?: Make a 32-bit Stack containing the map of the cummulative displacement as a function of time
- Compute Correlators?: Check if you want some correlations be calculated
- Number_of_lag_time_per_decade in output file: Related to above
- Output of the velocity?: Check if you want a 32-bit Stack containing the map of instantaneous velocity as a function of time
- Interval duration for velocity Computations: Number of frames used to compute the velocity out of the cummulative displacement
- Magnification_factor_for_arrows: For display of the velocities as an arrow fied
- Save Velocities?: Check if you want the velocities saved in a text file
- number_free_threads: Number of virtual cores which will be keep free during the computation.
Assign file names if relevant and let run.
Map outputs are named Traj_X_[movieName], Traj_Y_[movieName], V_X_[movieName], V_Y_[movieName] for the local cummulative