if (meta.getPlateCount() > 1 || (meta.getPlateCount() == 1 && meta.getWellCount(0) > 1)) for (int i=1; i<meta.getImageCount(); i++) { if (!meta.getPixelsSizeX(i).equals(meta.getPixelsSizeX(0))) { equalDimensions = false; if (!meta.getPixelsSizeY(i).equals(meta.getPixelsSizeY(0))) { equalDimensions = false; if (!meta.getPixelsSizeZ(i).equals(meta.getPixelsSizeZ(0))) { equalDimensions = false; if (!meta.getPixelsSizeC(i).equals(meta.getPixelsSizeC(0))) { equalDimensions = false; if (!meta.getPixelsSizeT(i).equals(meta.getPixelsSizeT(0))) { equalDimensions = false; if (!meta.getPixelsType(i).equals(meta.getPixelsType(0))) { equalDimensions = false; final Length firstZ = meta.getPlanePositionZ(0, meta.getPlaneCount(0) - 1); coord.x = meta.getPlanePositionX(i, meta.getPlaneCount(i) - 1); coord.y = meta.getPlanePositionY(i, meta.getPlaneCount(i) - 1); final Length zPos = meta.getPlanePositionZ(i, meta.getPlaneCount(i) - 1);
throws EnumerationException metadata.setImageID("Image:" + series, series); metadata.setPixelsID("Pixels: " + series, series); metadata.setPixelsBigEndian( byteOrder == ByteOrder.BIG_ENDIAN? true : false, series); metadata.setPixelsDimensionOrder(DimensionOrder.XYZCT, series); metadata.setPixelsType(ome.xml.model.enums.PixelType.fromString( pixels.getPixelsType().getValue()), series); metadata.setPixelsSizeX(new PositiveInteger(sizeX), series); metadata.setPixelsSizeY(new PositiveInteger(sizeY), series); metadata.setPixelsSizeZ(new PositiveInteger(1), series); metadata.setPixelsSizeC(new PositiveInteger(1), series); int totalPlanes = pixels.getSizeZ() * pixels.getSizeC() * pixels.getSizeT(); metadata.setPixelsSizeT(new PositiveInteger(totalPlanes), series); metadata.setChannelID("Channel:" + series, series, 0); metadata.setChannelSamplesPerPixel(new PositiveInteger(1), series, 0); if (log.isDebugEnabled())
private void setupResolutions(IMetadata meta) { if (!(meta instanceof OMEPyramidStore)) { return; } for (int series=0; series<meta.getImageCount(); series++) { int width = meta.getPixelsSizeX(series).getValue(); int height = meta.getPixelsSizeY(series).getValue(); for (int i=1; i<pyramidResolutions; i++) { int scale = (int) Math.pow(pyramidScale, i); ((OMEPyramidStore) meta).setResolutionSizeX( new PositiveInteger(width / scale), series, i); ((OMEPyramidStore) meta).setResolutionSizeY( new PositiveInteger(height / scale), series, i); } } }
OMEXMLMetadataRoot root = (OMEXMLMetadataRoot) store.getRoot(); if (root.sizeOfROIList()>0){ while (root.sizeOfROIList() > 0) { store.setRoot(root); store.createRoot(); else if (store.getImageCount() > 1) { for (int series=0; series<store.getImageCount(); series++) { String type = store.getPixelsType(series).toString(); int pixelType = FormatTools.pixelTypeFromString(type); if (pixelType == ptype) { String imageName = store.getImageName(series); if (title.indexOf(imageName) >= 0) { matchingSeries.add(series); for (int i=0; i<matchingSeries.size(); i++) { int index = matchingSeries.get(i); String name = store.getImageName(index); boolean valid = true; for (int j=0; j<matchingSeries.size(); j++) { if (i != j) { String compName = store.getImageName(matchingSeries.get(j)); if (compName.indexOf(name) >= 0) { valid = false; store.setRoot(root);
Pixels exportPixels = new Pixels(root.getImage(series).getPixels()); exportImage.setPixels(exportPixels); OMEXMLMetadataRoot newRoot = (OMEXMLMetadataRoot) meta.getRoot(); while (newRoot.sizeOfImageList() > 0) { newRoot.removeImage(newRoot.getImage(0)); meta.setRoot(newRoot); meta.setPixelsSizeX(new PositiveInteger(width), 0); meta.setPixelsSizeY(new PositiveInteger(height), 0); meta.setPixelsSizeC(new PositiveInteger(1), 0); meta.setPixelsSizeZ(new PositiveInteger(1), 0); meta.setPixelsSizeT(new PositiveInteger(1), 0); meta.setPixelsSizeX(new PositiveInteger(width), 0); meta.setPixelsSizeY(new PositiveInteger(height), 0); meta.setPixelsSizeC(new PositiveInteger(1), 0); meta.setPixelsSizeZ(new PositiveInteger(1), 0); meta.setPixelsSizeT(new PositiveInteger(1), 0);
for (int image=0; image<src.getImageCount(); image++) { Length physicalSizeX = src.getPixelsPhysicalSizeX(image); if (physicalSizeX != null && physicalSizeX.value() != null) { physicalSizeX = FormatTools.getPhysicalSize(physicalSizeX.value().doubleValue(), physicalSizeX.unit().getSymbol()); dest.setPixelsPhysicalSizeX(physicalSizeX, image); Length physicalSizeY = src.getPixelsPhysicalSizeY(image); if (physicalSizeY != null && physicalSizeY.value() != null) { physicalSizeY = FormatTools.getPhysicalSize(physicalSizeY.value().doubleValue(), physicalSizeY.unit().getSymbol()); dest.setPixelsPhysicalSizeY(physicalSizeY, image); Length physicalSizeZ = src.getPixelsPhysicalSizeZ(image); if (physicalSizeZ != null && physicalSizeZ.value() != null) { physicalSizeZ = FormatTools.getPhysicalSize(physicalSizeZ.value().doubleValue(), physicalSizeZ.unit().getSymbol());
@Test public void testGetPlaneCount() throws IOException, FormatException { writer.setMetadataRetrieve(metadata); writer.setSeries(0); assertEquals(WriterUtilities.SIZE_T * WriterUtilities.SIZE_Z * WriterUtilities.SIZE_C, writer.getPlaneCount()); metadata.setPixelsSizeC(new PositiveInteger(4), 0); metadata.setPixelsType(PixelType.INT16, 0); writer.setMetadataRetrieve(metadata); assertEquals(WriterUtilities.SIZE_T * WriterUtilities.SIZE_Z * 4, writer.getPlaneCount()); }
for (int i = 0; i < meta.getImageCount(); i++) { meta.setPixelsBinDataBigEndian(Boolean.TRUE, i, 0); metaService.verifyMinimumPopulated(meta, i); return meta.getImageCount() > 0;
@Test public void testGetTileSizeX() throws IOException, FormatException { writer.setMetadataRetrieve(metadata); assertEquals(0, writer.getTileSizeX()); writer.close(); writer = new TiffWriter(); metadata.setPixelsSizeX(new PositiveInteger(100), 0); writer.setMetadataRetrieve(metadata); assertEquals(0, writer.getTileSizeX()); }
@Test public void testGetTileSizeY() throws IOException, FormatException { writer.setMetadataRetrieve(metadata); assertEquals(0, writer.getTileSizeY()); writer.close(); writer = new TiffWriter(); metadata.setPixelsSizeY(new PositiveInteger(100), 0); writer.setMetadataRetrieve(metadata); assertEquals(0, writer.getTileSizeY()); }
@Test public void testSetBigTiffAutomatic() throws IOException, FormatException { //Test that no exception is thrown when bigTiff is set automatically due to size metadata.setPixelsSizeT(new PositiveInteger(1000), 0); writer.setMetadataRetrieve(metadata); ((TiffWriterMock)writer).createOutputBuffer(true); long length = 4294967296L; ((TiffWriterMock)writer).setBufferLength(length); writer.setId("test.tiff"); writer.saveBytes(0, buf, ifd); }
OMEXMLMetadataRoot root = (OMEXMLMetadataRoot) store.getRoot(); if (root.sizeOfROIList()>0){ while (root.sizeOfROIList() > 0) { store.setRoot(root); store.createRoot(); else if (store.getImageCount() > 1) { for (int series=0; series<store.getImageCount(); series++) { String type = store.getPixelsType(series).toString(); int pixelType = FormatTools.pixelTypeFromString(type); if (pixelType == ptype) { String imageName = store.getImageName(series); if (title.indexOf(imageName) >= 0) { matchingSeries.add(series); for (int i=0; i<matchingSeries.size(); i++) { int index = matchingSeries.get(i); String name = store.getImageName(index); boolean valid = true; for (int j=0; j<matchingSeries.size(); j++) { if (i != j) { String compName = store.getImageName(matchingSeries.get(j)); if (compName.indexOf(name) >= 0) { valid = false; store.setRoot(root);
for (int image=0; image<src.getImageCount(); image++) { Length physicalSizeX = src.getPixelsPhysicalSizeX(image); if (physicalSizeX != null && physicalSizeX.value() != null) { physicalSizeX = FormatTools.getPhysicalSize(physicalSizeX.value().doubleValue(), physicalSizeX.unit().getSymbol()); dest.setPixelsPhysicalSizeX(physicalSizeX, image); Length physicalSizeY = src.getPixelsPhysicalSizeY(image); if (physicalSizeY != null && physicalSizeY.value() != null) { physicalSizeY = FormatTools.getPhysicalSize(physicalSizeY.value().doubleValue(), physicalSizeY.unit().getSymbol()); dest.setPixelsPhysicalSizeY(physicalSizeY, image); Length physicalSizeZ = src.getPixelsPhysicalSizeZ(image); if (physicalSizeZ != null && physicalSizeZ.value() != null) { physicalSizeZ = FormatTools.getPhysicalSize(physicalSizeZ.value().doubleValue(), physicalSizeZ.unit().getSymbol());
@Test public void testGetPlaneCount() throws IOException, FormatException { writer.setMetadataRetrieve(metadata); writer.setSeries(0); assertEquals(WriterUtilities.SIZE_T * WriterUtilities.SIZE_Z * WriterUtilities.SIZE_C, writer.getPlaneCount()); metadata.setPixelsSizeC(new PositiveInteger(4), 0); metadata.setPixelsType(PixelType.INT16, 0); writer.setMetadataRetrieve(metadata); assertEquals(WriterUtilities.SIZE_T * WriterUtilities.SIZE_Z * 4, writer.getPlaneCount()); }
/** * Set metadata for writing a single Image/series. Does not set subresolution data. */ private void populateImage(IMetadata meta, int p, int width, int height, int planes, boolean bigEndian) { meta.setImageID("Image:" + p, p); meta.setPixelsID("Pixels:" + p, p); meta.setPixelsDimensionOrder(DimensionOrder.XYZCT, p); meta.setPixelsSizeX(new PositiveInteger(width), p); meta.setPixelsSizeY(new PositiveInteger(height), p); meta.setPixelsSizeZ(new PositiveInteger(planes), p); meta.setPixelsSizeC(new PositiveInteger(1), p); meta.setPixelsSizeT(new PositiveInteger(1), p); meta.setPixelsType(PixelType.UINT8, p); meta.setPixelsBigEndian(bigEndian, p); meta.setChannelID("Channel:" + p + ":0", p, 0); meta.setChannelSamplesPerPixel(new PositiveInteger(1), p, 0); }
if (meta.getPlateCount() > 1 || (meta.getPlateCount() == 1 && meta.getWellCount(0) > 1)) for (int i=1; i<meta.getImageCount(); i++) { if (!meta.getPixelsSizeX(i).equals(meta.getPixelsSizeX(0))) { equalDimensions = false; if (!meta.getPixelsSizeY(i).equals(meta.getPixelsSizeY(0))) { equalDimensions = false; if (!meta.getPixelsSizeZ(i).equals(meta.getPixelsSizeZ(0))) { equalDimensions = false; if (!meta.getPixelsSizeC(i).equals(meta.getPixelsSizeC(0))) { equalDimensions = false; if (!meta.getPixelsSizeT(i).equals(meta.getPixelsSizeT(0))) { equalDimensions = false; if (!meta.getPixelsType(i).equals(meta.getPixelsType(0))) { equalDimensions = false; final Length firstZ = meta.getPlanePositionZ(0, meta.getPlaneCount(0) - 1); coord.x = meta.getPlanePositionX(i, meta.getPlaneCount(i) - 1); coord.y = meta.getPlanePositionY(i, meta.getPlaneCount(i) - 1); final Length zPos = meta.getPlanePositionZ(i, meta.getPlaneCount(i) - 1);
OMEXMLService service = sf.getInstance(OMEXMLService.class); IMetadata metadata = service.createOMEXMLMetadata(); metadata.setImageID("Image:0", 0); metadata.setPixelsID("Pixels:0", 0); metadata.setPixelsBinDataBigEndian(true, 0, 0); metadata.setPixelsDimensionOrder(DimensionOrder.XYZCT, 0); metadata.setPixelsType( ome.xml.model.enums.PixelType.fromString(PIXEL_TYPE), 0); metadata.setPixelsSizeX(new PositiveInteger(SIZE_X), 0); metadata.setPixelsSizeY(new PositiveInteger(SIZE_Y), 0); metadata.setPixelsSizeZ(new PositiveInteger(1), 0); metadata.setPixelsSizeC(new PositiveInteger(1), 0); metadata.setPixelsSizeT(new PositiveInteger(SIZE_Z * SIZE_C * SIZE_T), 0); metadata.setChannelID("Channel:0", 0, 0); metadata.setChannelSamplesPerPixel(new PositiveInteger(1), 0, 0); writer = new TiffWriter(); writer.setMetadataRetrieve(metadata);
public static IMetadata createMetadata() throws DependencyException, ServiceException { ServiceFactory sf = new ServiceFactory(); OMEXMLService service = sf.getInstance(OMEXMLService.class); IMetadata metadata = service.createOMEXMLMetadata(); metadata.setPixelsDimensionOrder(DimensionOrder.XYZCT, 0); metadata.setPixelsSizeX(new PositiveInteger(SIZE_X), 0); metadata.setPixelsSizeY(new PositiveInteger(SIZE_Y), 0); metadata.setPixelsSizeT(new PositiveInteger(SIZE_T), 0); metadata.setPixelsSizeZ(new PositiveInteger(SIZE_Z), 0); metadata.setPixelsSizeC(new PositiveInteger(SIZE_C), 0); metadata.setPixelsType(PixelType.UINT8, 0); metadata.setPixelsBinDataBigEndian(true, 0, 0); metadata.setImageID("Image:1", 0); metadata.setPixelsID("Pixels:1", 0); metadata.setChannelID("Channel:1", 0, 0); metadata.setChannelSamplesPerPixel(new PositiveInteger(1), 0, 0); return metadata; } }