diff --git a/pom.xml b/pom.xml
index fd5bc9a..48b7583 100644
--- a/pom.xml
+++ b/pom.xml
@@ -1,87 +1,87 @@
4.0.0
net.imagej
pom-imagej
7.0.0
ch.epfl.biop
0.1.0-SNAPSHOT
plugins/PTS_Analyzer.jar
imagej.public
http://maven.imagej.net/content/groups/public
oburri
Olivier Burri
olivier.burri@epfl.ch
http://biop.epfl.ch
EPFL BioImaging And Optics Platform BIOP
http://epfl.ch
Image Analyst
Biotech Engineer
+1
https://c4science.ch/diffusion/767/ijp-pts.git
HEAD
https://c4science.ch/diffusion/767/ijp-pts.git
PTS_Analyzer
C:/Fiji/
net.imagej
ij
fiji
fiji-plugins
20101208
sc.fiji
imagescience
3.0.0
maven-jar-plugin
${main-class}
PTS_Analyzer
- Mavenized Improved fit largest circle plugin
+ PTS Analyzer plugin
diff --git a/src/PTS_Analyzer.java b/src/PTS_Analyzer.java
index d39f784..a846791 100644
--- a/src/PTS_Analyzer.java
+++ b/src/PTS_Analyzer.java
@@ -1,116 +1,116 @@
import ch.epfl.biop.pts.HerbieCenterDetector;
import ch.epfl.biop.pts.PTSAnalyzer;
import ch.epfl.biop.pts.PTSCenterDetector;
import ch.epfl.biop.pts.PTSCriteria;
import ch.epfl.biop.pts.PTSResult;
import ch.epfl.biop.pts.PTSSettings;
import ij.IJ;
import ij.ImageJ;
import ij.ImagePlus;
import ij.Prefs;
import ij.gui.GenericDialog;
import ij.measure.ResultsTable;
import ij.plugin.PlugIn;
/**
* PlugIn to find the largest circle or circles inside a mask.
* Macro recordable
* @author Olivier Burri
* @version 1.0
*/
-public class PTS_Analyzer implements PlugIn {
+public class PTS_Analyzer implements PlugIn {
@Override
public void run(String arg) {
ImagePlus imp = IJ.getImage();
// Pick up all the preferences for the dialog
boolean is_over_sample = Prefs.get("biop.pts.is_over_sample", true);
double p2p_var_pct = Prefs.get("biop.pts.p2p_var_pct", 50);
double convergence_limit = Prefs.get("biop.pts.convergence", 0.01);
double min_peaks = Prefs.get("biop.pts.min_peaks", 350);
double min_good_pct = Prefs.get("biop.pts.min_good_pct", 95);
GenericDialog gd = new GenericDialog("PTS Analysis Settings");
gd.addCheckbox("Oversample image", is_over_sample);
gd.addNumericField("Allowed Peak to Peak Variation [%]", p2p_var_pct, 3);
gd.addNumericField("Minimum_Number of Total Peaks", min_peaks, 3);
gd.addNumericField("Minimum_Percent of Good Peaks [%]", min_good_pct, 3);
gd.addNumericField("Convergence Limit", convergence_limit, 3);
gd.showDialog();
if(gd.wasCanceled()) {
return;
}
is_over_sample = gd.getNextBoolean();
p2p_var_pct = gd.getNextNumber();
min_peaks = gd.getNextNumber();
min_good_pct = gd.getNextNumber();
convergence_limit = gd.getNextNumber();
Prefs.set("biop.pts.is_over_sample", is_over_sample);
Prefs.set("biop.pts.p2p_var_pct", p2p_var_pct);
Prefs.set("biop.pts.convergence", convergence_limit);
Prefs.set("biop.pts.min_good_peaks", min_peaks);
Prefs.set("biop.pts.min_good_pct", min_good_pct);
// Whew, now we can begin
PTSCenterDetector cd = new HerbieCenterDetector();
PTSSettings set = new PTSSettings(is_over_sample, 20, p2p_var_pct, cd);
PTSCriteria crit = new PTSCriteria(convergence_limit, min_peaks, min_good_pct);
PTSResult r = PTSAnalyzer.run(imp, set, crit);
ResultsTable rt = ResultsTable.getResultsTable();
rt = r.appendToResultsTable(rt, imp.getTitle());
rt.show("Results");
}
/**
* Main method for debugging.
* @param args unused
*/
public static void main(String[] args) {
// set the plugins.dir property to make the plugin appear in the Plugins menu
Class> clazz = PTS_Analyzer.class;
String url = clazz.getResource("/" + clazz.getName().replace('.', '/') + ".class").toString();
String pluginsDir = url.substring(5, url.length() - clazz.getName().length() - 6);
System.setProperty("plugins.dir", pluginsDir);
// start ImageJ
new ImageJ();
String[] images = new String[4];
images[0] = "20160511_IN1_63x1.4_RG_Image1_RG.tif";
images[3] = "20160413_IN1_63x1.4_OB_Image1_Oli.tif";
images[2] = "20160413_IN1_40x1.3_OB_Image1_Oli.tif";
images[1] = "20160413_IN1_20x0.8_OB_Image1_Oli.tif";
ResultsTable rt = ResultsTable.getResultsTable();
for( int i=0; i