Measuring channel crosstalk using 2D histogram fitting

Dear colocalization and signal-processing experts,

for one of my projects I need to determine the crosstalk/bleedthrough between two fluorescent channels. The experimental setup necessitates that we acquire at suboptimal conditions where one channel has a significant bleedthrough to the other channel (Ch1 -> Ch2) but not the inverse (Ch2 -> Ch1).

To do some simple channel unmixing, we’d like to measure the intensity correlation of the two channels in images that contain only one of the fluorophores (Ch1). I know that Coloc2 does this calculation by linear regression on a 2D histogram, but I’m looking for an easy way to determine a possible non-linear relationship between the two channel intensities (since I’m not sure that we are working in the linear range of our dual-cam setup).

I had a quick look at the Histogram2D and AutoThresholdRegression classes of Coloc2 to see if I could re-use some of their (linear) regression logic, but the code seems to be pretty baked in to the specific use case of colocalization measurement.

I also checked out the Spectral Unmixing plugin, but it does linear unmixing, where I would like to be able to define a non-linear function.

Is there any other library available for non-linear fitting of a 2D intensity histogram? Anything available in ImageJ-Ops already?

/cc @etadobson, @chalkie666

As far as I know there us only the Spearman rank correlation coefficient, and amuse kendal tau (what ever that actually is)

The bleed through should be very linear with respect to the papers signal in the other channel.

What makes you think your cameras might be behaving non linear? They are often the most linear part of the whole system.???



Like @chalkie666 said… spearman’s and kendall tau are more ‘friendly’ in capturing a wider range of associations beyond linear.

Ok. I am still no expert here… still learning a lot (especially from @chalkie666) - but you can look at our recent publication: Wang et al (2017). (I also invited Shulei into this discussion.) Shulei’s R code for his new metric - maximum truncated Kendall tau correlation coefficient (MTKT) - is openly available on github here - so you could incorporate it for now into a KNIME workflow.

I did start work to include MTKT in Coloc 2 (check this branch - you can at least take a look at the code there) - though we decided to go directly into Ops. The statistical framework is being developed now (on this branch - BlockShuffle class class and PValue op), and I’m working on a MTKT op as we speak! I hope to have this well underway by the December hackathon…

I hope this is somewhat helpful. somewhat?!!! :slight_smile: