Note: please read the License Information file for details about licensing and use. By using this software, you are agreeing to the license agreement.

ICS Plugins (ICS, ICCS, RICS, RICCS, and STICS)


This part of the website is incomplete. Please see the documentation in the downloads for more details.

Detrending Methods


The starting point of all of these methods is detrending and calculation of the correlation function. It is important to note that the correlation function will represent the average spatial correlation of everything that is not spatially uniform in the image series. As a result, I have developed multiple tools to eliminate unwanted spatial heterogeneity. The easiest form of detrending for ICS approaches is subtracting the average image from the stack. This works on the principle that the non-uniform objects in the image are immobile while uniform objects are mobile. This can be done with Detrend Tools>stack subtract moving average jru v2. Select "Subtract Static Average" to subtract the time average. Also select "Maintain Spatial Average". This adds back the original average intensity so that the correlation amplitude doesn't go to infinity.

Of course, the limitation of the above approach is that immobile objects are often not completely immobile. If this is the case, then it is wise to subtract a moving average rather than a static one. The plugin is the same as above, but "Subtract Static Average" should not be checked and "period" needs to be set to the value of the moving average period. Selection of the period needs to be done by trial and error, but in general, you want to set a value that is larger than the diffusion time of the mobile species that you are trying to do image correlation on. If for some reason you only want to output the moving average, simply uncheck the "Output Sub Stack" checkbox.

Note that for kymographs or "carpet" data, there is Detrend Tools>carpet sub avg jru v1 and Detrend Tools>carpet sub mov avg jru v1.

Another way to eliminate unwanted objects from an image is to remove a region from the image. Note that this can be very tricky. If the region of interest (ROI) is not filled with a value that closely matches the surrounding region, then the region itself will cause spatial correlation. In general, the rule of thumb is that you want the eliminated region to be much larger than the objects of interest and you want the difference between the filled value and the neighboring value to be much smaller than the intensity of the objects of interest. This can be done with Detrend Tools>roi outside fill avg jru v1. If you have bright objects outside your fill region, you may want to use median or min as the fill statistic rather than avg. "Fill Inside" allows you to fill the ROI rather than the region around it.

As you perform preprocessing for ICS applications, don't forget that your final image needs to be a power of 2 size (16, 32, 64, 128, 256, ...). If you are filling the outside of an image with the average, you can often crop the image to these dimensions or paste it into a new image with the same background value and a power of 2 size (Image>New...). Alternatively, it is sometimes possible to scale an image or stack to the appropriate dimensions. For noisy data this is not recommended because scaling introduces shot noise correlations between pixels. The best strategy is typically to collect the original data at power of 2 size.

Calculating the Correlation


For ICS and RICS, the next step is to calculate the correlation. This is done using ICS Tools>stack FFT ICS jru v1 or stack FFT ICCS jru v1. The ICCS analysis requires a two channel hyperstack or two single color stacks. It is important to visually inspect the resulting correlation function for assymetry or inconsistent size. For RICS data, this is often straightforward because of the tendancy for moving signals to be correlated along the x axis. In this case radially symetric signals are indicative of immobile objects.

Analyzing the Correlation


For ICS and ICCS, the analysis now proceeds to gaussian fitting. This is done with ICS Tools>fit ICS jru v1. After the first dialog, the second dialog continues to reappear after pressing OK, allowing for manual correction of misfit. Cancel completes the fitting and outputs parameters to the log window. Check "Test Chi Squared" to check the fit without minimization. It is important to note that the StDev units are pixels and that they represent the StDev of the objects in real space, not the StDev of the correlation function. For diffraction limited objects, the StDev is that of the microscope PSF.

RICS and RICCS fitting are accomplished in a similar manner with ICS Tools>fit RICS jru v1. Alternatively, you can just fit horizontal or vertical lines with fit RICS line jru v1.

STICS Flow Mapping Analysis


STICS fitting typically represents more complexity and challenges than ICS or RICS. Perhaps the simplest STICS analysis is flow mapping, also known as particle image velocimetry or optic flow, though these keywords don't necessarily imply correlation flow mapping. Please see Yi et. al., Nat. Cell Biol., 2011 for an example of this analysis. The image is subdivided into many regions and the shift vector of the correlation peak at a specific time shift is measured to obtain the average flow velocity for that region. In my software the shift vector is determined by polynomial interpolation of the maximum 9 x 9 pixel region. The tool for this analysis is ICS Tools>STICS map jru v2. The first option in the following dialog is the subregion size. This is the size of each correlation analysis. I recommend a minimum of 32 pixels. The step size defaults to 16 pixels. This allows for oversampling of the analysis so that a relatively dense field of vectors is observed with overlapping analysis regions. The next option is the temporal shift for the correlation. For fast moving objects, a value of 1 is sufficient but for slow moving objects the motion in a single frame may not be detectable. Large values risk losing objects due to movement out of focus or out of the analysis region. This value is usually adjusted manually to maximize sensitivity to flow. X Offset and Y Offset are used to correct for drift. There are three ways to visualize the results. The first is with vector lengths all the same and the color or intensity of the vector equal to the flow velocity. Here "Normalize Vector Lengths" must be selected. The output will be a floating point rendering of vectors with intensities equal to the velocity in microns/min. A lookup table can be selected (Image>Lookup Tables>...) to view the vectors as a color map. The second visualization method is with vector lengths proportional to the velocity (without "Normalize Vector Lengths"). Here the velocity multiplier is used to ensure that all vectors aren't shorter than is easily observable. The third visualization method is the raw velocity components. To view this, select "Output Velocities". A hyperstack image will be output with each pixel representing a correlation analysis region and the channels representing the x and y components of the velocity, respectively. The magnitude threshold can be used to threshold out low velocities, but is rarely used because the lookup table can be used to threshold out low velocity vectors after analysis if desired.

STICS Diffusion Analysis


In addition to flow mapping, STICS is also useful for determining diffusion coefficients and anomalous diffusion. In particular, the broadening of the STICS peak with increasing time shift is related to the probability distribution for molecular motion from a given position. Please see Zhou et. al., Cell, 2011 for an example of this analysis. To obtain the correlation map as a function of time shift, use ICS Tools>stack FFT STICS jru v1. If you have a power of 2 number of slices, select "Use 3D FFT" to quickly calculate the entire STICS time shift series with a 3D FFT. If not, leave the box unchecked. The dialog that follows is relatively straightforward. Depending on the number of time shifts that are calculated, the calculation can take some time, so it is wise to survey the STICS correlations with small frame shift values or large frame shift space values and then perform the entire analysis over the time shifts of interest when you know which time shifts are important. Averaging quadrants can improve signal to noise, but I like to leave this unchecked so I can verify whether or not directional motion is occuring. After creating the STICS time series, the easiest way to visualize diffusion (other than observing the spread of the spot) is by calculating the radial average using Image Tools>circular avg jru v1. Use "Show Mirror Image". You should then see a kymograph with gaussian peaks that decay away as they spread. You can then plot horizontal line profiles with Image Tools>plot line profiles jru v1 and export to your favorite plotting program. Alternatively, you can fit the gaussians in the kymograph with Carpet Tools>fit carpet stics jru v1. I recommend skipping the G(0) values to eliminate noise and other temporal effects. Squaring the standard deviations gives the variance which is equivalent to MSD(tau)/2 + var(psf). Here tau is the time shift and var(psf) is the spatial variance of the psf in the radial dimension. Since the zero time shift variance gives var(psf), subtract it from the others to get the MSD.