This repository contains code to correct for shifts and chromatic aberrations between wide field microscopy channels. The implementation is based on a paper by Michal Kozubek, although any bugs or misconceptions are likely to be mine.
Typically these functions are used on calibration beads to set up a mapping between a reference channel (pick the best one) and the other channels.
These files are slightly out of context here as they are part of a bigger toolbox (DOTTER) which also contains a GUI.
To use these files with MATLAB, it might be a good idea to add the corresponding folder to the path, i.e.
addpath('~/where/i/keep/df_cc/')
Note, there is no code to extract dots from images here, and for any
practical usage, the input should be fitted coordinates. For exploring these
functions, a good starting point might be df_cc_demo1.m
.
df_cc
-- Cluster dots to find correspondences, and find correction. Uses the following functions:df_cc_cluster
-- find correspondences between points.df_cc_create
-- find the transformation between two or more channels.df_cc_view
-- metrics about the correction results.
Note: the .cc
files used to store data are just normal .mat
files
that can be loaded with the -mat
switch to load
.
df_cc_apply_dots
-- transform dots to match a reference channels
df_cc_apply_image
-- correct a single imagedf_cc_apply_image_folder
-- correct all images in a folder
df_cc_demo1
-- demo using a constant shift / dot correction.df_cc_ut
-- some unit tests
These files are used by the other scripts:
df_cc_eudist
euclidean distancedf_cc_poly2mat
-- create matrix for finding coefficients.
df_cc_apply_m
-- CorrectM.dots
in a DOTTER.NM
file.df_cc_apply_n
-- Correct allN.userDots
in a DOTTER.NM
file.
- Use a polynomial also in the axial direction?
- Add some more demos and demo images.