documents:101029imagej_cui_lifconversion
                Differences
This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| documents:101029imagej_cui_lifconversion [2010/10/29 15:54] – added macro kota | documents:101029imagej_cui_lifconversion [2020/11/26 09:11] (current) – external edit 127.0.0.1 | ||
|---|---|---|---|
| Line 67: | Line 67: | ||
| </ | </ | ||
| + | ===== ImpProps.java ===== | ||
| + | |||
| + | Accessing Image Physical Properties. Compiled class should be copied to the imageJ plugin folder. [[http:// | ||
| + | |||
| + | <sxh java> | ||
| + | import ij.*; | ||
| + | import ij.measure.Calibration; | ||
| + | //import java.lang.Double; | ||
| + | /** | ||
| + |  * This simple class can be called from an ImageJ macro via the " | ||
| + |  * get and set the (string) properties of the active image (ImagePlus).  | ||
| + | * | ||
| + |  * call(" | ||
| + |  *	set property <key> to < | ||
| + |   | ||
| + | * | ||
| + |  * call(" | ||
| + |   | ||
| + | * | ||
| + |  * @see    ij.ImagePlus# | ||
| + |  * @see    ij.ImagePlus# | ||
| + | * | ||
| + | * @author Joachim Wesner | ||
| + | * @author Leica Microsystems CMS GmbH | ||
| + | * @author joachim.wesner@leica-microsystems.com | ||
| + | * @version 2008-3-15 | ||
| + |   | ||
| + | * @author Kota Miura | ||
| + | * cmci, embl | ||
| + |  * added methods for setting image dimension sizes and pixel scales.  | ||
| + | * this was done for setting these values in headless mode. | ||
| + | * @version 2010-10-28 | ||
| + |  * This class can be compiled with ImageJ' | ||
| + | */ | ||
| + | |||
| + | public class ImpProps { | ||
| + | |||
| + | //kota | ||
| + | public static String getProperties() { | ||
| + | 		ImagePlus imp = WindowManager.getCurrentImage(); | ||
| + | if (imp == null) | ||
| + | 			return ""; | ||
| + | 		Object prop = imp.getProperties(); | ||
| + | if (prop != null && prop instanceof String) | ||
| + | 			return (String)prop; | ||
| + | else | ||
| + | 			return ""; | ||
| + | } | ||
| + | |||
| + | public static String setProperty(String arg1, String arg2) { | ||
| + | 		ImagePlus imp = WindowManager.getCurrentImage(); | ||
| + | if (imp == null) | ||
| + | 			return ""; | ||
| + | 		imp.setProperty(arg1, | ||
| + | 		imp.updateAndDraw(); | ||
| + | return arg2; | ||
| + | } | ||
| + | |||
| + | public static String getProperty(String arg1) { | ||
| + | 		ImagePlus imp = WindowManager.getCurrentImage(); | ||
| + | if (imp == null) | ||
| + | 			return ""; | ||
| + | 		Object prop = imp.getProperty(arg1); | ||
| + | if (prop != null && prop instanceof String) | ||
| + | 			return (String)prop; | ||
| + | else | ||
| + | 			return ""; | ||
| + | } | ||
| + | |||
| + | //kota | ||
| + | 	public static int setCalibration(String unit, String spixelWidth, | ||
| + | 		double pixelWidth = java.lang.Double.parseDouble(spixelWidth); | ||
| + | 		double pixelHeight = java.lang.Double.parseDouble(spixelHeight); | ||
| + | 		double pixelDepth = java.lang.Double.parseDouble(spixelDepth); | ||
| + | 		ImagePlus imp = WindowManager.getCurrentImage(); | ||
| + | if (imp == null) | ||
| + | return -1; | ||
| + | 		Calibration cal = imp.getCalibration(); | ||
| + | 		cal.setUnit(unit); | ||
| + | cal.pixelWidth = pixelWidth; | ||
| + | 		cal.pixelHeight = pixelHeight; | ||
| + | cal.pixelDepth = pixelDepth; | ||
| + | 		imp.setCalibration(cal); | ||
| + | 		WindowManager.repaintImageWindows(); | ||
| + | return 1; | ||
| + | } | ||
| + | |||
| + | //kota | ||
| + | public static int setCalibration( | ||
| + | 		String schannels, String sslices,  | ||
| + | String sframes, String unit, | ||
| + | 				String spixelWidth, | ||
| + | String spixelDepth) { | ||
| + | 		int channels = java.lang.Integer.parseInt(schannels); | ||
| + | 		int slices  | ||
| + | 		int frames  | ||
| + | 		double pixelWidth  | ||
| + | 		double pixelHeight = java.lang.Double.parseDouble(spixelHeight); | ||
| + | 		double pixelDepth  | ||
| + | |||
| + | 		ImagePlus imp = WindowManager.getCurrentImage(); | ||
| + | if (imp == null) | ||
| + | return -1; | ||
| + | 		int stackSize = imp.getImageStackSize(); | ||
| + | if (channels*slices*frames==stackSize) | ||
| + |   | ||
| + |   | ||
| + |   | ||
| + |   | ||
| + | 		Calibration cal = imp.getCalibration(); | ||
| + | 		cal.setUnit(unit); | ||
| + | 		// | ||
| + | cal.pixelWidth = pixelWidth; | ||
| + | 		cal.pixelHeight = pixelHeight; | ||
| + | cal.pixelDepth = pixelDepth; | ||
| + | 		imp.setCalibration(cal); | ||
| + | 		WindowManager.repaintImageWindows(); | ||
| + | return 1; | ||
| + | } | ||
| + | } | ||
| + | </ | ||
| ===== bfconvert help ===== | ===== bfconvert help ===== | ||
| - | <quote> | + | <blockquote> | 
| To convert a file between formats, run: | To convert a file between formats, run: | ||
| bfconvert [-debug] [-stitch] [-separate] [-merge] [-expand] | bfconvert [-debug] [-stitch] [-separate] [-merge] [-expand] | ||
| Line 113: | Line 234: | ||
| Each file would have a single image plane. | Each file would have a single image plane. | ||
| - | </quote> | + | </blockquote> | 
| ===== LifOpenerCUI.ijm ===== | ===== LifOpenerCUI.ijm ===== | ||
| Line 322: | Line 443: | ||
| } | } | ||
| </ | </ | ||
| + | |||
| + | |||
documents/101029imagej_cui_lifconversion.1288367656.txt.gz · Last modified: 2016/05/24 12:46 (external edit)
                
                