void setMeasurements() { String arg = ""; if (interp.nextToken()=='(') { interp.getLeftParen(); if (interp.nextToken() != ')') arg = getString().toLowerCase(Locale.US); interp.getRightParen(); } props.clear(); ImagePlus imp = getImage(); int measurements = ALL_STATS + SLICE; if (arg.contains("limit")) measurements += LIMIT; ImageStatistics stats = imp.getStatistics(measurements); ResultsTable rt = new ResultsTable(); Analyzer analyzer = new Analyzer(imp, measurements, rt); analyzer.saveResults(stats, imp.getRoi()); for (int i=0; i<=rt.getLastColumn(); i++) { if (rt.columnExists(i)) { String name = rt.getColumnHeading(i); String value = ""+rt.getValueAsDouble(i, 0); props.setProperty(name, value); } } }
int getColumnCount(ImagePlus imp, int measurements) { ImageStatistics stats = imp.getStatistics(measurements); ResultsTable rt = new ResultsTable(); rt.showRowNumbers(true); Analyzer analyzer = new Analyzer(imp, measurements, rt); analyzer.saveResults(stats, null); int count = 0; for (int i=0; i<=rt.getLastColumn(); i++) { float[] col = rt.getColumn(i); String head = rt.getColumnHeading(i); if (head!=null && col!=null) count++; } return count; }
void setMeasurements() { String arg = ""; if (interp.nextToken()=='(') { interp.getLeftParen(); if (interp.nextToken() != ')') arg = getString().toLowerCase(Locale.US); interp.getRightParen(); } props.clear(); ImagePlus imp = getImage(); int measurements = ALL_STATS + SLICE; if (arg.contains("limit")) measurements += LIMIT; ImageStatistics stats = imp.getStatistics(measurements); ResultsTable rt = new ResultsTable(); Analyzer analyzer = new Analyzer(imp, measurements, rt); analyzer.saveResults(stats, imp.getRoi()); for (int i=0; i<=rt.getLastColumn(); i++) { if (rt.columnExists(i)) { String name = rt.getColumnHeading(i); String value = ""+rt.getValueAsDouble(i, 0); props.setProperty(name, value); } } }
int getColumnCount(ImagePlus imp, int measurements) { ImageStatistics stats = imp.getStatistics(measurements); ResultsTable rt = new ResultsTable(); rt.showRowNumbers(true); Analyzer analyzer = new Analyzer(imp, measurements, rt); analyzer.saveResults(stats, null); int count = 0; for (int i=0; i<=rt.getLastColumn(); i++) { float[] col = rt.getColumn(i); String head = rt.getColumnHeading(i); if (head!=null && col!=null) count++; } return count; }
/** Saves statistics for one particle in a results table. This is a method subclasses can override. */ protected void saveResults(ImageStatistics stats, Roi roi) { analyzer.saveResults(stats, roi); if (maxCircularity>1.0 && rt.columnExists("Circ.") && rt.getValue("Circ.", rt.size()-1)==1.0) { double perimeter = roi.getLength(); double circularity = perimeter==0.0?0.0:4.0*Math.PI*(stats.pixelCount/(perimeter*perimeter)); rt.addValue("Circ.", circularity); } if (recordStarts) { rt.addValue("XStart", stats.xstart); rt.addValue("YStart", stats.ystart); } if (showResultsWindow && showResults) rt.addResults(); }
/** Saves statistics for one particle in a results table. This is a method subclasses can override. */ protected void saveResults(ImageStatistics stats, Roi roi) { analyzer.saveResults(stats, roi); if (maxCircularity>1.0 && rt.columnExists("Circ.") && rt.getValue("Circ.", rt.size()-1)==1.0) { double perimeter = roi.getLength(); double circularity = perimeter==0.0?0.0:4.0*Math.PI*(stats.pixelCount/(perimeter*perimeter)); rt.addValue("Circ.", circularity); } if (recordStarts) { rt.addValue("XStart", stats.xstart); rt.addValue("YStart", stats.ystart); } if (showResultsWindow && showResults) rt.addResults(); }
void measureAngle(Roi roi) { if (rt.size()>0) { if (!IJ.isResultsWindow()) reset(); int index = rt.getColumnIndex("Angle"); if (index<0 || !rt.columnExists(index)) { clearSummary(); rt.update(measurements, imp, roi); } } ImageProcessor ip = imp.getProcessor(); ip.setRoi(roi.getPolygon()); ImageStatistics stats = new ImageStatistics(); saveResults(stats, roi); }
void measureAngle(Roi roi) { if (rt.size()>0) { if (!IJ.isResultsWindow()) reset(); int index = rt.getColumnIndex("Angle"); if (index<0 || !rt.columnExists(index)) { clearSummary(); rt.update(measurements, imp, roi); } } ImageProcessor ip = imp.getProcessor(); ip.setRoi(roi.getPolygon()); ImageStatistics stats = new ImageStatistics(); saveResults(stats, roi); }
if (!IJ.isResultsWindow() && IJ.getInstance()!=null) reset(); saveResults(stats, roi);
if (!IJ.isResultsWindow() && IJ.getInstance()!=null) reset(); saveResults(stats, roi);
ImageProcessor ip = new ByteProcessor(1, 1); ImageStatistics stats = new ByteStatistics(ip, measurements, null); analyzer.saveResults(stats, roi);
ip.setRoi(roi); ImageStatistics stats = ImageStatistics.getStatistics(ip, measurements, cal); analyzer.saveResults(stats, roi); if (showResults) analyzer.displayResults();
ImageProcessor ip = new ByteProcessor(1, 1); ImageStatistics stats = new ByteStatistics(ip, measurements, null); analyzer.saveResults(stats, roi);
ip.setRoi(roi); ImageStatistics stats = ImageStatistics.getStatistics(ip, measurements, cal); analyzer.saveResults(stats, roi); values[i-1] = (float)stats.mean;
ip.setRoi(roi); ImageStatistics stats = ImageStatistics.getStatistics(ip, measurements, cal); analyzer.saveResults(stats, roi); values[i-1] = (float)stats.mean;
else stats = ImageStatistics.getStatistics(ip, measurements, cal); analyzer.saveResults(stats, roi); values[i-1] = (float)stats.mean;
else stats = ImageStatistics.getStatistics(ip, measurements, cal); analyzer.saveResults(stats, roi); values[i-1] = (float)stats.mean;
saveResults(stats, point); displayResults();
saveResults(stats, point); displayResults();
ip2 = convertToOriginalDepth(imp2, ip2); } else { saveResults(new ImageStatistics(), roi); return; saveResults(stats, roi); if (globalCal!=null && localCal!=null) { imp2.setGlobalCalibration(globalCal);