[ome-users] bio-formats error on tf8 file import

Kai Schleicher kai.schleicher at unibas.ch
Thu Feb 4 15:12:18 GMT 2016


Hi Melissa,

Thanks so much, this works for me!

As a Hex editor I used HxD portable for windows.

Cheers,
Kai

-----Original Message-----
From: Melissa Linkert [mailto:melissa.linkert at gmail.com] On Behalf Of Melissa Linkert
Sent: Mittwoch, 3. Februar 2016 22:28
To: Kai Schleicher
Cc: ome-users at lists.openmicroscopy.org.uk
Subject: Re: [ome-users] bio-formats error on tf8 file import

Hi Kai,

> I have now uploaded two relevant files into "/incoming/KS-tf8":
>
> 29.01.2016_time lapse10_0_Marker_1_01
> - opening this file results in the error log as I have posted it on the list.
>
> 29.01.2016_time lapse10_0_Marker_4_07
> - opening this file results in only a single image without limited/incorrect metadata.
>
> Both files stem from the same dataset/experiment.

Thank you for uploading the problematic files.  These are indeed truncated in such a way that it will be difficult to make them work just by changing Bio-Formats.  However, with a small change to each of the files you should be able to recover the images.

Both files have the offset to the first TIFF IFD (i.e. the basic image
metadata) recorded incorrectly.  The ..._Marker_1_01 has an invalid offset (thus the error message), while ..._Marker_4_01 references the last image's metadata instead of the first image's metadata.

To recover the images, you will need a hex editor that supports files larger than 4GB; I use bless on Linux (http://home.gna.org/bless/index.html), but am not sure what the best option is on Windows.

Open each file in the hex editor, and change bytes 8-15 (where byte 0 is the first byte in the file) to "90 fc 0a 00 00 00 00 00".  Take care to directly overwrite, and not add or remove anything else.  Once saved, each file should open in ImageJ and show approximately 9954 images.

If you have any trouble getting that to work, please let us know.

Regards,
-Melissa

On Tue, Feb 02, 2016 at 08:21:42PM -0600, Melissa Linkert wrote:
> Hi Kai,
> 
> > We have a user acquiring rather large datasets on it (multichannel + z-stack + time laps, about 7 GB per image), which worked fine in the past.
> > 
> > However, opening the tf8-files from his last acquisition fails with an error (see below).
> > 
> > The acquisition itself finished without error, but it is likely that the C drive of the acquisition machine was low on space at the end of the experiment.
> > 
> > Due to restrictions in the acquisition software (FEI Live Acquisition software) the data has to be recorded to the C drive.
> > 
> > Is there still something that could be done in order to save the data?
> 
> Thank you for reporting this problem.  Would you be willing to upload 
> the file that doesn't open?  That would greatly help us to either fix 
> this in Bio-Formats (if it's a bug) or find a way to recover the data 
> (if the file is corrupt).
> 
> I have sent FTP server credentials privately, as it sounds like the 
> file is too large to be uploaded via our QA system.
> 
> Regards,
> -Melissa
> 
> On Mon, Feb 01, 2016 at 12:56:39PM +0000, Kai Schleicher wrote:
> > Hi,
> > 
> > The output on one of our microscopes is a tf8.
> > 
> > We have a user acquiring rather large datasets on it (multichannel + z-stack + time laps, about 7 GB per image), which worked fine in the past.
> > 
> > However, opening the tf8-files from his last acquisition fails with an error (see below).
> > 
> > The acquisition itself finished without error, but it is likely that the C drive of the acquisition machine was low on space at the end of the experiment.
> > 
> > Due to restrictions in the acquisition software (FEI Live Acquisition software) the data has to be recorded to the C drive.
> > 
> > Is there still something that could be done in order to save the data?
> > 
> > Thanks and cheers,
> > Kai
> > 
> > loci.formats.FormatException: loci.common.ReflectException: Cannot execute method: getNumPages
> >                at loci.formats.in.TiffJAIReader.initFile(TiffJAIReader.java:149)
> >                at loci.formats.FormatReader.setId(FormatReader.java:1426)
> >                at loci.formats.DelegateReader.setId(DelegateReader.java:298)
> >                at loci.plugins.in.ImportProcess.initializeFile(ImportProcess.java:505)
> >                at loci.plugins.in.ImportProcess.execute(ImportProcess.java:143)
> >                at loci.plugins.in.Importer.showDialogs(Importer.java:140)
> >                at loci.plugins.in.Importer.run(Importer.java:76)
> >                at loci.plugins.LociImporter.run(LociImporter.java:78)
> >                at ij.IJ.runUserPlugIn(IJ.java:212)
> >                at ij.IJ.runPlugIn(IJ.java:176)
> >                at ij.Executer.runCommand(Executer.java:136)
> >                at ij.Executer.run(Executer.java:65)
> >                at ij.IJ.run(IJ.java:292)
> >                at ij.IJ.run(IJ.java:267)
> >                at ij.macro.Functions.doRun(Functions.java:603)
> >                at ij.macro.Functions.doFunction(Functions.java:96)
> >                at ij.macro.Interpreter.doStatement(Interpreter.java:230)
> >                at ij.macro.Interpreter.doStatements(Interpreter.java:218)
> >                at ij.macro.Interpreter.run(Interpreter.java:115)
> >                at ij.macro.Interpreter.run(Interpreter.java:85)
> >                at ij.macro.MacroRunner.run(MacroRunner.java:139)
> >                at java.lang.Thread.run(Thread.java:662)
> > Caused by: loci.common.ReflectException: Cannot execute method: getNumPages
> >                at loci.common.ReflectedUniverse.exec(ReflectedUniverse.java:316)
> >                at loci.formats.in.TiffJAIReader.initFile(TiffJAIReader.java:146)
> >                ... 21 more
> > Caused by: java.lang.reflect.InvocationTargetException
> >                at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
> >                at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
> >                at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
> >                at java.lang.reflect.Method.invoke(Method.java:597)
> >                at loci.common.ReflectedUniverse.exec(ReflectedUniverse.java:311)
> >                ... 22 more
> > Caused by: java.io.IOException: Bad magic number, should be 42.
> >                at com.sun.media.jai.codecimpl.CodecUtils.toIOException(CodecUtils.java:76)
> >                at com.sun.media.jai.codecimpl.TIFFImageDecoder.getNumPages(TIFFImageDecoder.java:98)
> >                ... 27 more
> > Caused by: java.lang.IllegalArgumentException: Bad magic number, should be 42.
> >                at com.sun.media.jai.codec.TIFFDirectory.getNumDirectories(TIFFDirectory.java:601)
> >                at com.sun.media.jai.codecimpl.TIFFImageDecoder.getNumPages(TIFFImageDecoder.java:96)
> >                ... 27 more
> > 
> > 
> > 
> > 
> > --
> > Kai Schleicher, PhD | Research Associate in Advanced Light 
> > Microscopy | Biozentrum, University of Basel | Klingelbergstrasse 
> > 50/70 | CH-4056 Basel
> > Phone: +41 61 267 22 50 | 
> > kai.schleicher at unibas.ch<mailto:kai.schleicher at unibas.ch> | 
> > www.biozentrum.unibas.ch<http://www.biozentrum.unibas.ch/> | 
> > www.microscopynetwork.unibas.ch<http://www.microscopynetwork.unibas.
> > ch/>
> > 
> 
> > _______________________________________________
> > ome-users mailing list
> > ome-users at lists.openmicroscopy.org.uk
> > http://lists.openmicroscopy.org.uk/mailman/listinfo/ome-users
> 


More information about the ome-users mailing list