@Override public int getSizeC() { return reader.getSizeC(); }
public int getSizeC() { return reader.getSizeC(); }
@Override public int getSizeC() { return reader.getSizeC(); }
@Override public int getSizeC() { return getReader().getSizeC(); }
@Override public int getSizeC() { return getReader().getSizeC(); }
/** Helper utility for constructing lengths array, used by main. */ private static final int[] getLengths(IFormatReader r) { return new int[] {r.getSizeZ(), r.getSizeC(), r.getSizeT()}; }
@Override public int getSizeC() { FormatTools.assertId(getCurrentFile(), true, 2); return noStitch ? reader.getSizeC() : core.get(getCoreIndex()).sizeC; }
/** Helper utility for constructing lengths array, used by main. */ private static final int[] getLengths(IFormatReader r) { return new int[] {r.getSizeZ(), r.getSizeC(), r.getSizeT()}; }
@Override public int getSizeC() { FormatTools.assertId(getCurrentFile(), true, 2); return noStitch ? reader.getSizeC() : core.get(getCoreIndex()).sizeC; }
public void displayDataBrowser(ImagePlus imp) { IFormatReader r = process.getReader(); int[] subC; String[] subCTypes; Modulo moduloC = r.getModuloC(); if (moduloC.length() > 1) { subC = new int[] {r.getSizeC() / moduloC.length(), moduloC.length()}; subCTypes = new String[] {moduloC.parentType, moduloC.type}; } else { subC = new int[] {r.getSizeC()}; subCTypes = new String[] {FormatTools.CHANNEL}; } new DataBrowser(imp, null, subCTypes, subC, xmlWindow); }
public void displayDataBrowser(ImagePlus imp) { IFormatReader r = process.getReader(); int[] subC; String[] subCTypes; Modulo moduloC = r.getModuloC(); if (moduloC.length() > 1) { subC = new int[] {r.getSizeC() / moduloC.length(), moduloC.length()}; subCTypes = new String[] {moduloC.parentType, moduloC.type}; } else { subC = new int[] {r.getSizeC()}; subCTypes = new String[] {FormatTools.CHANNEL}; } new DataBrowser(imp, null, subCTypes, subC, xmlWindow); }
public static long getMaxNonzero(IFormatReader reader) { final int siz = reader.getBitsPerPixel() / 8 * reader.getRGBChannelCount() * reader.getSizeX() * reader.getSizeY(); final byte[] buffer = new byte[siz]; final int nC = reader.getSizeC() == reader.getRGBChannelCount() ? 1 : reader.getSizeC(); final int nT = reader.getSizeT(); int z = reader.getSizeZ() - 1; for (;z>=0;z--) for (int c = 0; c < nC; c++ ) for (int t = 0; t < nT; t++) { try { reader.openBytes( reader.getIndex( z, c, t ), buffer ); } catch ( FormatException | IOException e ) { e.printStackTrace(); } if (isNonzero( buffer )) return z; } return 0l; }
public void initPreMinMaxValues() throws FormatException, IOException { // get a priori min/max values preGlobalMin = preGlobalMax = null; preKnownMin = preKnownMax = null; prePlaneMin = prePlaneMax = null; preIsMinMaxPop = false; if (minmax) { int sizeC = reader.getSizeC(); preGlobalMin = new Double[sizeC]; preGlobalMax = new Double[sizeC]; preKnownMin = new Double[sizeC]; preKnownMax = new Double[sizeC]; for (int c=0; c<sizeC; c++) { preGlobalMin[c] = minMaxCalc.getChannelGlobalMinimum(c); preGlobalMax[c] = minMaxCalc.getChannelGlobalMaximum(c); preKnownMin[c] = minMaxCalc.getChannelKnownMinimum(c); preKnownMax[c] = minMaxCalc.getChannelKnownMaximum(c); } prePlaneMin = minMaxCalc.getPlaneMinimum(0); prePlaneMax = minMaxCalc.getPlaneMaximum(0); preIsMinMaxPop = minMaxCalc.isMinMaxPopulated(); } }
private void assertSeries(int series) { reader.setSeries(series); sizeX = reader.getSizeX(); sizeY = reader.getSizeY(); sizeZ = reader.getSizeZ(); sizeC = reader.getSizeC(); sizeT = reader.getSizeT(); imageCount = reader.getImageCount(); bpp = FormatTools.getBytesPerPixel(reader.getPixelType()); planeSize = sizeX * sizeY * bpp; topHalfSize = (sizeY / 2) * sizeX * bpp; bottomHalfSize = (sizeY - (sizeY / 2)) * sizeX * bpp; topLeftQuarterSize = (sizeY / 2) * (sizeX / 2) * bpp; topRightQuarterSize = (sizeY / 2) * (sizeX - (sizeX / 2)) * bpp; bottomLeftQuarterSize = (sizeY - (sizeY / 2)) * (sizeX / 2) * bpp; bottomRightQuarterSize = (sizeY - (sizeY / 2)) * (sizeX - (sizeX / 2)) * bpp; if (!bigImage) { bigImage = sizeX * sizeY > 9000000; } }
@Test public void setId() throws Exception { srcReader = new ImageReader(); checkReader = new ImageReader(); srcReader.setId(src); checkReader.setId(check); assertEquals(srcReader.getSeriesCount(), checkReader.getSeriesCount()); for (int s=0; s<srcReader.getSeriesCount(); s++) { srcReader.setSeries(s); checkReader.setSeries(s); assertEquals(srcReader.getSizeX(), checkReader.getSizeX()); assertEquals(srcReader.getSizeY(), checkReader.getSizeY()); assertEquals(srcReader.getSizeC(), checkReader.getSizeC()); assertEquals(srcReader.getSizeZ(), checkReader.getSizeZ()); assertEquals(srcReader.getSizeT(), checkReader.getSizeT()); assertEquals(srcReader.getPixelType(), checkReader.getPixelType()); assertEquals(srcReader.isRGB(), checkReader.isRGB()); assertEquals(srcReader.getDimensionOrder(), checkReader.getDimensionOrder()); // it's OK if the endian setting is different, so don't check that } }
public static void populatePixelsOnly(MetadataStore store, IFormatReader r) { int oldSeries = r.getSeries(); for (int i=0; i<r.getSeriesCount(); i++) { r.setSeries(i); String pixelType = FormatTools.getPixelTypeString(r.getPixelType()); populatePixelsOnly(store, i, r.isLittleEndian(), r.getDimensionOrder(), pixelType, r.getSizeX(), r.getSizeY(), r.getSizeZ(), r.getSizeC(), r.getSizeT(), r.getRGBChannelCount()); if (store instanceof IPyramidStore) { for (int res=1; res<r.getResolutionCount(); res++) { r.setResolution(res); ((IPyramidStore) store).setResolutionSizeX( new PositiveInteger(r.getSizeX()), i, res); ((IPyramidStore) store).setResolutionSizeY( new PositiveInteger(r.getSizeY()), i, res); } r.setResolution(0); } } r.setSeries(oldSeries); }
public static void populatePixelsOnly(MetadataStore store, IFormatReader r) { int oldSeries = r.getSeries(); for (int i=0; i<r.getSeriesCount(); i++) { r.setSeries(i); String pixelType = FormatTools.getPixelTypeString(r.getPixelType()); populatePixelsOnly(store, i, r.isLittleEndian(), r.getDimensionOrder(), pixelType, r.getSizeX(), r.getSizeY(), r.getSizeZ(), r.getSizeC(), r.getSizeT(), r.getRGBChannelCount()); if (store instanceof IPyramidStore) { for (int res=1; res<r.getResolutionCount(); res++) { r.setResolution(res); ((IPyramidStore) store).setResolutionSizeX( new PositiveInteger(r.getSizeX()), i, res); ((IPyramidStore) store).setResolutionSizeY( new PositiveInteger(r.getSizeY()), i, res); } r.setResolution(0); } } r.setSeries(oldSeries); }
@Test(dataProvider = "wrappers") public void testCoreMetadata(IFormatReader reader) { assertNotNull(reader.getCurrentFile()); List<CoreMetadata> coreList = reader.getCoreMetadataList(); assertEquals(coreList.size(), reader.getSeriesCount()); for (int i=0; i<reader.getSeriesCount(); i++) { CoreMetadata core = coreList.get(i); reader.setSeries(i); assertEquals(core.sizeX, reader.getSizeX()); assertEquals(core.sizeY, reader.getSizeY()); assertEquals(core.sizeZ, reader.getSizeZ()); assertEquals(core.sizeC, reader.getSizeC()); assertEquals(core.sizeT, reader.getSizeT()); assertEquals(core.pixelType, reader.getPixelType()); assertEquals(core.imageCount, reader.getImageCount()); assertEquals(core.dimensionOrder, reader.getDimensionOrder()); assertEquals(core.littleEndian, reader.isLittleEndian()); assertEquals(core.rgb, reader.isRGB()); assertEquals(core.interleaved, reader.isInterleaved()); assertEquals(core.indexed, reader.isIndexed()); } } }