/** Returns an 8-bit version of this image as a ByteProcessor. 16-bit and 32-bit * pixel data are scaled from min-max to 0-255 if 'scale' is true. */ public ByteProcessor convertToByteProcessor(boolean scale) { ByteProcessor bp; if (this instanceof ByteProcessor) bp = (ByteProcessor)this.duplicate(); else bp = (ByteProcessor)this.convertToByte(scale); return bp; }
/** Returns a 16-bit version of this image as a ShortProcessor. 32-bit * pixel data are scaled from min-max to 0-255 if 'scale' is true. */ public ShortProcessor convertToShortProcessor(boolean scale) { ShortProcessor sp; if (this instanceof ShortProcessor) sp = (ShortProcessor)this.duplicate(); else sp = (ShortProcessor)this.convertToShort(scale); return sp; }
/** Returns a 32-bit float version of this image as a FloatProcessor. For byte and short images, converts using a calibration function if a calibration table has been set using setCalibrationTable(). */ public FloatProcessor convertToFloatProcessor() { FloatProcessor fp; if (this instanceof FloatProcessor) fp = (FloatProcessor)this.duplicate(); else fp = (FloatProcessor)this.convertToFloat(); return fp; }
/** Returns an RGB version of this image as a ColorProcessor. */ public ColorProcessor convertToColorProcessor() { ColorProcessor cp; if (this instanceof ColorProcessor) cp = (ColorProcessor)this.duplicate(); else cp = (ColorProcessor)this.convertToRGB(); return cp; }
/** Returns a 16-bit version of this image as a ShortProcessor. 32-bit * pixel data are scaled from min-max to 0-255 if 'scale' is true. */ public ShortProcessor convertToShortProcessor(boolean scale) { ShortProcessor sp; if (this instanceof ShortProcessor) sp = (ShortProcessor)this.duplicate(); else sp = (ShortProcessor)this.convertToShort(scale); return sp; }
public ImageProcessor dilation(ImageProcessor image) { ImageProcessor result = image.duplicate(); this.inPlaceDilation(result); return result; }
public ImageProcessor erosion(ImageProcessor image) { ImageProcessor result = image.duplicate(); this.inPlaceErosion(result); return result; }
ImagePlus getVirtualStackImage() { ImagePlus imp = virtualStack.createImagePlus(); imp.setProcessor("", virtualStack.getProcessor().duplicate()); return imp; }
public ImageProcessor opening(ImageProcessor image) { ImageProcessor result = image.duplicate(); this.inPlaceErosion(result); this.reverse().inPlaceDilation(result); return result; } }
public ImagePlus call(){ final ImageProcessor ip = originalImage.getProcessor().duplicate(); final RankFilters filter = new RankFilters(); filter.rank(ip, radius, RankFilters.MEAN); return new ImagePlus (availableFeatures[MEAN]+ "_" + radius, ip); } };
public ImagePlus call(){ final ImageProcessor ip = originalImage.getProcessor().duplicate(); final RankFilters filter = new RankFilters(); filter.rank(ip, radius, RankFilters.MEDIAN); return new ImagePlus (availableFeatures[MEDIAN]+ "_" + radius, ip); } };
public void makeMask(ImageProcessor ip, Rectangle r) { mask = ip.getMask(); if (mask==null) { mask = new ByteProcessor(r.width, r.height); mask.invert(); } else { // duplicate mask (needed because getMask caches masks) mask = mask.duplicate(); } mask.invert(); }
public void makeMask(ImageProcessor ip, Rectangle r) { mask = ip.getMask(); if (mask==null) { mask = new ByteProcessor(r.width, r.height); mask.invert(); } else { // duplicate mask (needed because getMask caches masks) mask = mask.duplicate(); } mask.invert(); }
/** * Add mean filter to current stack * @param radius radius to use */ public void addMean(float radius) { final ImageProcessor ip = originalImage.getProcessor().duplicate(); final RankFilters filter = new RankFilters(); filter.rank(ip, radius, RankFilters.MEAN); wholeStack.addSlice(availableFeatures[MEAN]+ "_" + radius, ip); }
public ImagePlus call(){ final ImageProcessor ip = originalImage.getProcessor().duplicate(); final RankFilters filter = new RankFilters(); filter.rank(ip, radius, RankFilters.MIN); return new ImagePlus (availableFeatures[MINIMUM]+ "_" + radius, ip); } };
public ImagePlus call(){ final ImageProcessor ip = originalImage.getProcessor().duplicate(); final RankFilters filter = new RankFilters(); filter.rank(ip, radius, RankFilters.MAX); return new ImagePlus (availableFeatures[MAXIMUM]+ "_" + radius, ip); } };
@Override final protected void init() { ipOriginal = imp.getProcessor(); if ( imp.getType() == ImagePlus.GRAY32 ) fp = ( FloatProcessor )ipOriginal.duplicate(); else fp = ( FloatProcessor )ipOriginal.convertToFloat(); imp.setProcessor( fp ); std = new BlockStatistics( fp ); }
void doFHTInverseTransform() { FHT fht = new FHT(imp.getProcessor().duplicate()); fht.inverseTransform(); fht.resetMinAndMax(); String name = WindowManager.getUniqueName(imp.getTitle().substring(7)); new ImagePlus(name, fht).show(); }
/** * bag class for getting the result of the loaded classifier */ private static class LoadedClassifier { private AbstractClassifier newClassifier = null; private Instances newHeader = null; }
public FHT(ImageProcessor ip, boolean isFrequencyDomain) { super(ip.getWidth(), ip.getHeight(), (float[])((ip instanceof FloatProcessor)?ip.duplicate().getPixels():ip.convertToFloat().getPixels()), null); this.isFrequencyDomain = isFrequencyDomain; maxN = getWidth(); resetRoi(); }