User Tools

Site Tools


Downloads (-2016)
Downloads (2016-)
RSS aggregates

EMBL BioImage Data Analysis



—- Contact
CMCI Alumni
EMBL Heidelberg
EMBL Intranet

Popularity Ranking

Timeline of @cmci_

cmci_ avatar

RT @christlet: After imaging on a LEGO light-sheet with a LEGO pump, you can visualize the data in a LEGO viewer #LEGOallthethings https://…
About 3 hours, 16 mins ago by: Kota Miura (@cmci_)

cmci_ avatar

RT @jnuneziglesias: STARmap is amazing! But: Groundbreaking paper ✅ Open access ❌ Uses Ilastik ✅ Cites Ilastik ❌ Uses UMAP ✅ Cites UMAP ❌…
About 6 hours, 18 mins ago by: Kota Miura (@cmci_)

cmci_ avatar

RT @dwaithe: @sossick @BioImagingUK @NEUBIAS_COST @RoyalMicroSoc We did discuss this topic at the last #IAFIGRMS meeting but focused on cos…
About 2 days, 17 hours ago by: Kota Miura (@cmci_)

cmci_ avatar

RT @HenriquesLab: Coming back to Portugal in a couple of weeks to teach at my original research institute @IGCiencia. We'll be giving the #…
About 3 days, 1 hour ago by: Kota Miura (@cmci_)

cmci_ avatar

RT @bxv_cell: CDeep3M - Plug-and-Play cloud based deep learning for image segmentation of light, electron and X-ray microscopy
About 3 days, 1 hour ago by: Kota Miura (@cmci_)

cmci_ avatar

RT @robustgar: New post: Small n correlations + p values = disaster
About 3 days, 1 hour ago by: Kota Miura (@cmci_)

Photobleaching Correction -3D time series

There are several IJ tools available for 2D time series bleaching correction, but seems not with 3D:

2D-t tools:

    • Phair's double normalization method. Dependent on ratio, similar to the above, but can specify reference area (if my understanding is correct).
    • proposes two ways,
      1. conceptually similar to above two: estimate the correction ratio. But this is done by fitting exponential decay curve and use decay parameter.
        1. <jsm> I_c(t) = I(t) / exp^{-\tau t}</jsm>
      2. use “enhance contrast”. framewise Histogram streching.

Among these, exponential decay method is theoretically clean (but in practice, timeseries are not teoretical…).

Anycase, there should be 3D-t bleach correction tool (and I need it NOW). I might make some quick solution using two methods, one using division of first frame and the other with exponential fitting.

By the way, bleaching corrected images cannot basically be used for intensity quantification (FRAP, on the other hands, correct bleaching after measuring the raw image). If you are analyzing shapes or positions, no problem for quantification.

here is the “ratio” version:

macro "Bleach Corection 3D-t by ratio"{
	run("Duplicate...", "title=bleach_corrected duplicate");
	getDimensions(width, height, channels, slices, frames);
	if (frames == 1) {
		uslices = getNumber("how many z slices/timepoint?", 1);
		if ((slices%uslices) !=0) exit("that slice number dows not match with the current stack");
		frames = slices / uslices;
	tIntA = newArray(frames);
	for(i=0; i<frames; i++){
		startf = (i*slices)+1;
		endf = (i+1)*slices;
		op ="start="+startf+" stop="+endf+" projection=[Sum Slices]";
		run("Z Project...", op);
		getRawStatistics(nPixels, mean);
		if (i==0) tIntA[i] = mean;
		else tIntA[i] = mean/tIntA[0];
	setBatchMode("exit and display");
	tIntA[0] =1;
	for(i=0; i<frames; i++){
		for(j=0; j<slices; j++){
			curframe = i*slices + j+1;
			//print("frame"+curframe + " factor" + tIntA[i]);
			op = "value="+tIntA[i]+" slice";
			run("Divide...", op);
		print("time point:"+i+1 + "  factor" + tIntA[i]);

Before Correction (each row is a time point, with 8 z-slices)
 Before each row is a time point Average intensity along stack slices. 5 peaks corresponds to 5 time points. Before

After Correction
After After

blogtng/2010-05-04/photobleaching_correction_3d_time_series.txt · Last modified: 2016/05/24 05:46 (external edit)