Skip to content

Instantly share code, notes, and snippets.

@ctrueden
Last active December 21, 2015 02:19
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save ctrueden/6234396 to your computer and use it in GitHub Desktop.
Save ctrueden/6234396 to your computer and use it in GitHub Desktop.
Unfortunately, writing an ImgPlus to OME-TIFF format with scifio-0.7.1 does not go off without a hitch.
imgPlus = io.scif.img.SCIFIOImgPlus@3d31f2b4
numDimensions = 2
dim #0 = 512
axis #0 = X
dim #1 = 512
axis #1 = Y
Exception in thread "main" java.lang.NullPointerException
at io.scif.util.FormatTools.checkPlaneParameters(FormatTools.java:492)
at io.scif.AbstractWriter.checkParams(AbstractWriter.java:333)
at io.scif.formats.TIFFFormat$Writer.savePlane(TIFFFormat.java:1207)
at io.scif.formats.TIFFFormat$Writer.savePlane(TIFFFormat.java:1268)
at io.scif.AbstractWriter.savePlane(AbstractWriter.java:110)
at io.scif.img.ImgSaver.writePlanes(ImgSaver.java:512)
at io.scif.img.ImgSaver.saveImg(ImgSaver.java:371)
at io.scif.img.ImgSaver.saveImg(ImgSaver.java:124)
at io.scif.img.ImgSaver.saveImg(ImgSaver.java:105)
at WriteAnImgPlus.writeImg(WriteAnImgPlus.java:34)
at WriteAnImgPlus.main(WriteAnImgPlus.java:13)
import io.scif.SCIFIO;
import io.scif.img.ImgIOException;
import io.scif.img.ImgOpener;
import io.scif.img.ImgOptions;
import io.scif.img.ImgOptions.ImgMode;
import io.scif.img.ImgSaver;
import net.imglib2.exception.IncompatibleTypeException;
import net.imglib2.meta.ImgPlus;
public class WriteAnImgPlus {
public static void main(final String... args) throws Exception {
writeImg();
}
private static void writeImg() throws ImgIOException,
IncompatibleTypeException
{
final SCIFIO scifio = new SCIFIO();
final ImgOpener opener = new ImgOpener(scifio.getContext());
// NB: ImgSaver only supports PlanarImg for now!
final ImgOptions options = new ImgOptions().setImgModes(ImgMode.PLANAR);
final ImgPlus<?> imgPlus = opener.openImg("stack&sizeZ=10.fake", options);
System.out.println("imgPlus = " + imgPlus);
System.out.println("numDimensions = " + imgPlus.numDimensions());
for (int d=0; d<imgPlus.numDimensions(); d++) {
System.out.println("dim #" + d + " = " + imgPlus.dimension(d));
System.out.println("axis #" + d + " = " + imgPlus.axis(d).type());
}
final ImgSaver saver = new ImgSaver(scifio.getContext());
saver.saveImg("stack.ome.tif", (ImgPlus) imgPlus);
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment