diff --git a/Correlescence_v_0.0.4.jar b/Correlescence_v_0.0.4.jar index 2699c15..111041f 100644 Binary files a/Correlescence_v_0.0.4.jar and b/Correlescence_v_0.0.4.jar differ diff --git a/bin/Correlescence/Corr1DSTICS.class b/bin/Correlescence/Corr1DSTICS.class index 853aaa9..0db6ace 100644 Binary files a/bin/Correlescence/Corr1DSTICS.class and b/bin/Correlescence/Corr1DSTICS.class differ diff --git a/bin/Correlescence/Corr2DSTICS.class b/bin/Correlescence/Corr2DSTICS.class index a2fe2e2..a950a5b 100644 Binary files a/bin/Correlescence/Corr2DSTICS.class and b/bin/Correlescence/Corr2DSTICS.class differ diff --git a/bin/Correlescence/Correlescence2D.class b/bin/Correlescence/Correlescence2D.class index 11cf476..833fdb6 100644 Binary files a/bin/Correlescence/Correlescence2D.class and b/bin/Correlescence/Correlescence2D.class differ diff --git a/src/Correlescence/Corr1DSTICS.java b/src/Correlescence/Corr1DSTICS.java index 88abf2a..25faf01 100644 --- a/src/Correlescence/Corr1DSTICS.java +++ b/src/Correlescence/Corr1DSTICS.java @@ -4,6 +4,7 @@ import ij.ImagePlus; import ij.Prefs; import ij.gui.GenericDialog; +import ij.measure.Calibration; import ij.plugin.PlugIn; public class Corr1DSTICS implements PlugIn { @@ -30,6 +31,7 @@ public void run(String arg) int nStackSize; int imHeight; String sTitle; + ImagePlus finalImp; imp = IJ.getImage(); imHeight= imp.getHeight(); @@ -72,7 +74,11 @@ else if (imp.getType() != ImagePlus.GRAY8 && imp.getType() != ImagePlus.GRAY16 & else sTitle=sTitle+"_1Dxt_fft"; - new ImagePlus(sTitle,x1D.xCorrSpaceTime(imp.getProcessor(), nMaxUserDelay1D,nCalcMethod,nNormMethod)).show(); + finalImp = new ImagePlus(sTitle,x1D.xCorrSpaceTime(imp.getProcessor(), nMaxUserDelay1D,nCalcMethod,nNormMethod)); + Calibration cal = finalImp.getCalibration(); + cal.xOrigin=Math.round(imp.getWidth()*0.5)-1; + cal.yOrigin=0; + finalImp.show(); //x1D.xCorrSpaceTimeFFT(); } diff --git a/src/Correlescence/Corr2DSTICS.java b/src/Correlescence/Corr2DSTICS.java index 3dcddfe..bfb5e21 100644 --- a/src/Correlescence/Corr2DSTICS.java +++ b/src/Correlescence/Corr2DSTICS.java @@ -96,6 +96,7 @@ else if (imp.getType() != ImagePlus.GRAY8 && imp.getType() != ImagePlus.GRAY16 & sTitle=imp.getTitle(); IJ.showStatus("2D STICS calculation done."); finalImp=new ImagePlus(sTitle+"_2D_STICS", stSTICS); + //calibration Calibration cal = finalImp.getCalibration(); cal.xOrigin=Math.round(origW*0.5); cal.yOrigin=Math.round(origH*0.5); diff --git a/src/Correlescence/Correlescence2D.java b/src/Correlescence/Correlescence2D.java index e2b382a..0799df9 100644 --- a/src/Correlescence/Correlescence2D.java +++ b/src/Correlescence/Correlescence2D.java @@ -48,6 +48,7 @@ public void run(String arg) { int [] xymax; String sTitle; String sImTitle; + String sInTitle; ImageStack crosscorrstack; int [][] xydrifttable; boolean bAutoCorr =false; @@ -78,6 +79,7 @@ else if (imp.getType() != ImagePlus.GRAY8 && imp.getType() != ImagePlus.GRAY16 & IJ.log("Only one image in stack, limiting choice to autocorrelation"); bAutoCorr=true; } + sInTitle = imp.getTitle(); if(!x2Dialog(bAutoCorr)) return; @@ -101,7 +103,7 @@ else if (imp.getType() != ImagePlus.GRAY8 && imp.getType() != ImagePlus.GRAY16 & if(sChoice.equals("consecutive images")) { sImTitle =sImTitle +sChoice; - sImTitle = sImTitle+"_delay_"+Integer.toString(nImNumber); + sImTitle = sImTitle+"_delay_"+Integer.toString(nImNumber)+"_"+sInTitle; if (bDrift) { xydrifttable[0][0]=0; @@ -162,8 +164,9 @@ else if (imp.getType() != ImagePlus.GRAY8 && imp.getType() != ImagePlus.GRAY16 & //current image in stack and all others if(sChoice.equals("current image in stack and all others")) { - sImTitle =sImTitle +"vs_current_image"; + i=imp.getCurrentSlice(); + sImTitle =sImTitle +"vs_frame"+Integer.toString(i)+"_"+sInTitle; ip1=getFloatversion(imp); //subtract average intensity value ip1.subtract(ImageStatistics.getStatistics(ip1,Measurements.MEAN,null).mean); @@ -205,7 +208,7 @@ else if (imp.getType() != ImagePlus.GRAY8 && imp.getType() != ImagePlus.GRAY16 & //autocorrelation if(sChoice.equals("autocorrelation")) { - sImTitle =sImTitle +"autocorrelation_"; + sImTitle =sImTitle +"autocorrelation_"+sInTitle; //i=imp.getCurrentSlice(); //ip1=getFloatversion(imp); @@ -223,7 +226,8 @@ else if (imp.getType() != ImagePlus.GRAY8 && imp.getType() != ImagePlus.GRAY16 & {ip = x2D.calcFFTCorrelationImage(ip2, ip2);} sTitle = String.format("corr_%d_x_%d", j,j); - xymax = getmaxpositions(ip); + xymax = getmaxpositionscenterlimit(ip); + //xymax = getmaxpositions(ip); ptable.incrementCounter(); ptable.addLabel(sTitle); @@ -299,7 +303,7 @@ public boolean x2Dialog(boolean bAutoOn) else { x2DDial.addRadioButtonGroup("Calculate 2D cross correlation between:", items, 3, 1, Prefs.get("Correlescence.2Dcorr", "consecutive images"));} - x2DDial.addNumericField("for consecutive, distance between images", Prefs.get("Correlescence.2Ddist", 1), 0, 4, " "); + x2DDial.addNumericField("for consecutive, interval between images", Prefs.get("Correlescence.2Ddist", 1), 0, 4, "frames (or slices) "); x2DDial.addChoice("Calculation method:", itemsC, Prefs.get("Correlescence.2Dcorrmethod", "FFT cross-correlation (fast)")); x2DDial.addCheckbox("Correct drift (max of corr)?", Prefs.get("Correlescence.2Ddrift", false));