NOTICE! This is a static HTML version of a legacy Fiji BugZilla bug.

The Fiji project now uses GitHub Issues for issue tracking.

Please file all new issues there.

Bug 928 - Java Exception when opening a large (1.5 Gb) TIFF with SCIFIO option turned on
Java Exception when opening a large (1.5 Gb) TIFF with SCIFIO option turned on
Status: NEW
Product: ImageJ
Classification: Unclassified
Component: SCIFIO
unspecified
Macintosh Mac OS
: P5 enhancement
Assigned To: ImageJ Bugs Mailing List
Depends on:
Blocks:
 
Reported: 2014-09-03 20:04 CDT by Taylor
Modified: 2015-04-06 15:49 CDT
1 user (show)

See Also:


Attachments
Location of TIFFs (439 bytes, text/plain)
2014-09-03 20:04 CDT, Taylor

Description Taylor 2014-09-03 20:04:27 CDT
Created attachment 214
Location of TIFFs

I received a Java exception when trying to open a large 16-bit RGB TIFF (approx. 1.5 Gb) with the Fiji ImageJ2 SCIFIO option turned on.  The image was generated as an orthophoto TIFF using Agisoft Photoscan Pro (agisoft.ru), a proprietary photogrammetry program.  The location of the large TIFF and a smaller TIFF is in the attachment.

I received the following Java exception for the large file when opening it using SCIFIO:

"Lo(Fiji Is Just) ImageJ 2.0.0-rc-14/1.49g; Java 1.6.0_65 [64-bit]; Mac OS X 10.9.4; 2402MB of 6889MB (34%)
 
java.lang.ArrayIndexOutOfBoundsException: 2
        at io.scif.util.FormatTools.checkTileSize(FormatTools.java:649)
        at io.scif.util.FormatTools.checkPlaneForWriting(FormatTools.java:626)
        at io.scif.util.FormatTools.checkPlaneForReading(FormatTools.java:611)
        at io.scif.formats.MinimalTIFFFormat$Reader.openPlane(MinimalTIFFFormat.java:607)
        at io.scif.formats.MinimalTIFFFormat$Reader.openPlane(MinimalTIFFFormat.java:534)
        at io.scif.AbstractReader.openPlane(AbstractReader.java:167)
        at io.scif.filters.ChannelFiller.openPlane(ChannelFiller.java:170)
        at io.scif.filters.ChannelFiller.openPlane(ChannelFiller.java:151)
        at io.scif.filters.PlaneSeparator.openPlane(PlaneSeparator.java:297)
        at io.scif.filters.PlaneSeparator.openPlane(PlaneSeparator.java:208)
        at io.scif.filters.AbstractReaderFilter.openPlane(AbstractReaderFilter.java:225)
        at io.scif.filters.AbstractReaderFilter.openPlane(AbstractReaderFilter.java:191)
        at io.scif.img.ImgOpener.read(ImgOpener.java:808)
        at io.scif.img.ImgOpener.read(ImgOpener.java:793)
        at io.scif.img.ImgOpener.read(ImgOpener.java:775)
        at io.scif.img.ImgOpener.readPlanes(ImgOpener.java:761)
        at io.scif.img.ImgOpener.openImgs(ImgOpener.java:362)
        at io.scif.img.ImgOpener.openImgs(ImgOpener.java:257)
        at io.scif.img.ImgOpener.openImgs(ImgOpener.java:145)
        at net.imagej.DefaultDatasetService.open(DefaultDatasetService.java:266)
        at net.imagej.DefaultDatasetService.open(DefaultDatasetService.java:250)
        at net.imagej.io.DatasetIOPlugin.open(DatasetIOPlugin.java:78)
        at net.imagej.io.DatasetIOPlugin.open(DatasetIOPlugin.java:50)
        at net.imagej.legacy.plugin.DefaultLegacyOpener.open(DefaultLegacyOpener.java:136)
        at net.imagej.legacy.DefaultLegacyHooks.interceptFileOpen(DefaultLegacyHooks.java:327)
        at net.imagej.legacy.DefaultLegacyHooks.interceptRunPlugIn(DefaultLegacyHooks.java:150)
        at ij.IJ.runPlugIn(IJ.java)
        at ij.Executer.runCommand(Executer.java:131)
        at ij.Executer.run(Executer.java:64)
        at java.lang.Thread.run(Thread.java:695)"

I've updated ImageJ using Fiji.  Based on the header, this doesn't appear to be a memory allocation problem.