@Override public void setResolution(int no) { reader.setResolution(no); }
@Override public void setResolution(int no) { reader.setResolution(no); }
@Override public void setResolution(int resolution) { super.setResolution(resolution); if (nativeReaderInitialized) nativeReader.setResolution(resolution); if (legacyReaderInitialized) legacyReader.setResolution(resolution); }
@Override public void setResolution(int resolution) { super.setResolution(resolution); if (nativeReaderInitialized) nativeReader.setResolution(resolution); if (legacyReaderInitialized) legacyReader.setResolution(resolution); }
@Override public void setResolution(int no) { getReader().setResolution(no); }
@Override public void setResolution(int no) { getReader().setResolution(no); }
public void setResolutionLevel(int resolutionLevel) { // Ensure the reader has been initialized reader(); // The highest resolution level (100%) is actually the first series bfReader.setResolution(Math.abs( resolutionLevel - (getResolutionLevels() - 1))); }
@Override public void setSeries(int no) { FormatTools.assertId(getCurrentFile(), true, 2); int n = reader.getCoreMetadataList().size(); if (n > 1 || noStitch) { reader.setSeries(no); } setCoreIndex(seriesToCoreIndex(no)); reader.setResolution(0); }
@Override public void setResolution(int no) { FormatTools.assertId(getCurrentFile(), true, 2); coreIndex = (coreIndex - getResolution()) + no; reader.setResolution(no); reader.setCoreIndex(coreIndex); }
@Override public void setResolution(int no) { FormatTools.assertId(getCurrentFile(), true, 2); coreIndex = (coreIndex - getResolution()) + no; reader.setResolution(no); reader.setCoreIndex(coreIndex); }
@Override public void setSeries(int no) { FormatTools.assertId(getCurrentFile(), true, 2); int n = reader.getCoreMetadataList().size(); if (n > 1 || noStitch) { reader.setSeries(no); } setCoreIndex(seriesToCoreIndex(no)); reader.setResolution(0); }
private byte[] getTile(IFormatReader reader, int resolution, int no, int x, int y, int w, int h) throws FormatException, IOException { if (resolution < reader.getResolutionCount()) { reader.setResolution(resolution); return reader.openBytes(no, x, y, w, h); } reader.setResolution(0); IImageScaler scaler = new SimpleImageScaler(); int scale = (int) Math.pow(pyramidScale, resolution); byte[] tile = reader.openBytes(no, x * scale, y * scale, w * scale, h * scale); int type = reader.getPixelType(); return scaler.downsample(tile, w * scale, h * scale, scale, FormatTools.getBytesPerPixel(type), reader.isLittleEndian(), FormatTools.isFloatingPoint(type), reader.getRGBChannelCount(), reader.isInterleaved()); }
@Test public void testSubResolutionCount() { int seriesCount = reader.getSeriesCount(); assertTrue(seriesCount > 0); for (int series=0; series<seriesCount; series++) { reader.setSeries(series); int resolutionCount = reader.getResolutionCount(); assertTrue(resolutionCount > 0); for (int resolution=0; resolution<resolutionCount; resolution++) { reader.setResolution(resolution); assertTrue(reader.getSizeX() > 0); assertTrue(reader.getSizeY() > 0); } } }
resolutionReader.setResolution(r);
reader.setSeries(series); if (flat == false) reader.setResolution(resolution); initPreMinMaxValues();
private boolean checkPixels(IFormatReader reader) throws FormatException, IOException { int index = 1; for (int s=0; s<reader.getSeriesCount(); s++) { reader.setSeries(s); for (int r=0; r<reader.getResolutionCount(); r++) { reader.setResolution(r); for (int p=0; p<reader.getImageCount(); p++) { byte[] plane = reader.openBytes(p); for (byte pixel : plane) { if ((pixel & 0xff) != index) { return false; } } index++; } } } return true; }
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); }
resolutionReader.setResolution(r);
@Test public void testSinglePyramidMultiplePlanes() throws FormatException, IOException { writePyramid(files[5].getAbsolutePath(), new int[] {16}, new int[] {16}, 3, 0, false, true); IFormatReader reader = getReader(5); try { assertEquals(reader.getSeriesCount(), 1); assertEquals(reader.getResolutionCount(), RESOLUTION_COUNT); assertEquals(reader.getSizeX(), 16); assertEquals(reader.getSizeY(), 16); for (int i=0; i<RESOLUTION_COUNT; i++) { reader.setResolution(i); assertEquals(reader.getSizeZ(), 3); } assertTrue(checkPixels(reader)); } finally { reader.close(); } }