Warning: Can't synchronize with repository "(default)" (/home/git/ome.git does not appear to be a Git repository.). Look in the Trac log for more information.
Notice: In order to edit this ticket you need to be either: a Product Owner, The owner or the reporter of the ticket, or, in case of a Task not yet assigned, a team_member"

Task #10773 (closed)

Opened 11 years ago

Closed 10 years ago

Last modified 10 years ago

Bug: ND2 dimensionality

Reported by: omero-qa Owned by: mlinkert
Priority: minor Milestone: 5.0.3
Component: Bio-Formats Version: 4.4.8
Keywords: ND2Reader Cc: enno.oldewurtel@…, kc.su@…, Richard.Mort@…, s.i.g.carvalhal@…, Tiao_Xie@…
Resources: n.a. Referenced By: https://trello.com/c/ArelsNBe/51-bug-nd2-bio-formats
References: n.a. Remaining Time: n.a.
Sprint: n.a.

Description

https://www.openmicroscopy.org/qa2/qa2/qa/feedback/5042/

Comment: Both nd2 files have the same configuration with 8 multipoints (diff xy points) and 3 lambda channels.

4.4.6 loci_tools only reads the first 7 xy points of "8xyPoints_3channels_00_30m001_latelyOnly7xyIdentified.nd2",
while 4.4.2 loci_tools identifies all 8 xy points.

For "8xyPoints_3channels_00_30m235_all8xyIdentified.nd2" all 8 multipoints are read out for both loci_tools version.

For both files the multipoints are either identified as z-planes (version 4.4.6) or timepoints (version 4.4.2)

% showinf -nopix -omexml -novalid 5042/8xyPoints_3channels_00_30m235_all8xyIdentified.nd2
Checking file format [Nikon ND2]
Initializing reader
ND2Reader initializing /Users/rleigh/Desktop/5042/8xyPoints_3channels_00_30m235_all8xyIdentified.nd2
NativeND2Reader initializing /Users/rleigh/Desktop/5042/8xyPoints_3channels_00_30m235_all8xyIdentified.nd2
Searching for blocks
Parsing block 'ND2 FILE SIG' 0%
Parsing block 'ImageMetadat' 0%
Parsing block 'ImageCalibra' 0%
Parsing block 'ImageMetadat' 0%
Parsing block 'ImageCalibra' 0%
Parsing block 'ImageMetadat' 0%
Parsing block 'ImageAttribu' 0%
Parsing block 'ImageDataSeq' 0%
Parsing block 'ImageDataSeq' 13%
Parsing block 'ImageDataSeq' 25%
Parsing block 'ImageDataSeq' 37%
Parsing block 'ImageDataSeq' 50%
Parsing block 'ImageDataSeq' 62%
Parsing block 'ImageDataSeq' 74%
Parsing block 'ImageDataSeq' 87%
Parsing block 'ImageMetadat' 99%
Parsing block 'ImageEventsL' 99%
Parsing block 'ImageTextInf' 99%
Exception in thread "main" java.lang.NumberFormatException: For input string: "078915,03,2013002111101112134020"
	at sun.misc.FloatingDecimal.readJavaFormatString(FloatingDecimal.java:1222)
	at java.lang.Double.valueOf(Double.java:475)
	at java.lang.Double.<init>(Double.java:567)
	at loci.formats.in.ND2Handler.parseKeyAndValue(ND2Handler.java:637)
	at loci.formats.in.NativeND2Reader.initFile(NativeND2Reader.java:523)
	at loci.formats.FormatReader.setId(FormatReader.java:1333)
	at loci.formats.DelegateReader.setId(DelegateReader.java:267)
	at loci.formats.ImageReader.setId(ImageReader.java:757)
	at loci.formats.ReaderWrapper.setId(ReaderWrapper.java:564)
	at loci.formats.tools.ImageInfo.testRead(ImageInfo.java:1013)
	at loci.formats.tools.ImageInfo.main(ImageInfo.java:1058)

% showinf -nopix -omexml -novalid 5042/8xyPoints_3channels_00_30m001_latelyOnly7xyIdentified.nd2
Checking file format [Nikon ND2]
Initializing reader
ND2Reader initializing /Users/rleigh/Desktop/5042/8xyPoints_3channels_00_30m001_latelyOnly7xyIdentified.nd2
NativeND2Reader initializing /Users/rleigh/Desktop/5042/8xyPoints_3channels_00_30m001_latelyOnly7xyIdentified.nd2
Searching for blocks
Parsing block 'ND2 FILE SIG' 0%
Parsing block 'ImageMetadat' 0%
Parsing block 'ImageCalibra' 0%
Parsing block 'ImageMetadat' 0%
Parsing block 'ImageCalibra' 0%
Parsing block 'ImageMetadat' 0%
Parsing block 'ImageAttribu' 0%
Parsing block 'ImageDataSeq' 0%
Parsing block 'ImageDataSeq' 13%
Parsing block 'ImageDataSeq' 25%
Parsing block 'ImageDataSeq' 37%
Parsing block 'ImageDataSeq' 50%
Parsing block 'ImageDataSeq' 62%
Parsing block 'ImageDataSeq' 74%
Parsing block 'ImageDataSeq' 87%
Parsing block 'ImageMetadat' 99%
Parsing block 'ImageEventsL' 99%
Parsing block 'ImageTextInf' 99%
Exception in thread "main" java.lang.NumberFormatException: For input string: "078914,03,2013200112101112134020"
	at sun.misc.FloatingDecimal.readJavaFormatString(FloatingDecimal.java:1222)
	at java.lang.Double.valueOf(Double.java:475)
	at java.lang.Double.<init>(Double.java:567)
	at loci.formats.in.ND2Handler.parseKeyAndValue(ND2Handler.java:637)
	at loci.formats.in.NativeND2Reader.initFile(NativeND2Reader.java:523)
	at loci.formats.FormatReader.setId(FormatReader.java:1333)
	at loci.formats.DelegateReader.setId(DelegateReader.java:267)
	at loci.formats.ImageReader.setId(ImageReader.java:757)
	at loci.formats.ReaderWrapper.setId(ReaderWrapper.java:564)
	at loci.formats.tools.ImageInfo.testRead(ImageInfo.java:1013)
	at loci.formats.tools.ImageInfo.main(ImageInfo.java:1058)

Change History (15)

comment:1 Changed 11 years ago by rleigh

  • Component changed from from QA to Bio-Formats

comment:2 Changed 11 years ago by rleigh

Note that the NumberFormatException? is a regression from 4.4.6, in addition to the original issue reported by the submitter.

comment:3 Changed 11 years ago by mlinkert

  • Milestone changed from Unscheduled to OMERO-4.4.8
  • Owner changed from mlinkert-x to mlinkert
  • Summary changed from Bug: ND2 NumberFormatException and dimensionality to Bug: ND2 dimensionality

Exception was fixed with https://github.com/openmicroscopy/bioformats/pull/478; no longer a regression from 4.4.6.

comment:4 Changed 11 years ago by rleigh

The NumberFormatException? is gone with #478. However, there's still a regression in the detection of the image dimensions/total plane count. Here only 21 planes/7 Z/T are being picked up rather than 24/8. We are also likely chosing Z or T when neither are appropriate. Should the "multipoint" be a separate stage position, in which case these should be separate images?

8xyPoints_3channels_00_30m001_latelyOnly7xyIdentified.nd2

  • 4.4.7-pre:
            Image count = 21
            RGB = false (1)
            Interleaved = false
            Indexed = false (false color)
            Width = 960
            Height = 720
            SizeZ = 7
            SizeT = 1
            SizeC = 3
    
  • v4.4.2:
            Image count = 24
            RGB = false (1)
            Interleaved = false
            Indexed = false (false color)
            Width = 960
            Height = 720
            SizeZ = 1
            SizeT = 8
            SizeC = 3
    

8xyPoints_3channels_00_30m235_all8xyIdentified.nd2

  • 4.4.7-pre:
            Image count = 24
            RGB = false (1)
            Interleaved = false
            Indexed = false (false color)
            Width = 960
            Height = 720
            SizeZ = 8
            SizeT = 1
            SizeC = 3
    
  • v4.4.2:
            Image count = 24
            RGB = false (1)
            Interleaved = false
            Indexed = false (false color)
            Width = 960
            Height = 720
            SizeZ = 1
            SizeT = 8
            SizeC = 3
    
Last edited 11 years ago by rleigh (previous) (diff)

comment:5 Changed 11 years ago by mlinkert

I guess I meant that it's not a regression from 4.4.6. We're not going to have time to put this in 4.4.7, so it will have to wait until at least next week.

comment:6 Changed 11 years ago by rleigh

That sounds fine.

comment:7 Changed 11 years ago by mlinkert

  • Cc kc.su@… added

See QA 7303 for another example.

comment:8 Changed 11 years ago by mlinkert

Another example is the latest addition to nd2/richard/.

comment:9 Changed 11 years ago by mlinkert

  • Cc Richard.Mort@… added
  • Version set to 4.4.8

comment:10 Changed 10 years ago by mlinkert

  • Cc s.i.g.carvalhal@… added
  • Milestone changed from OMERO-4.4.x to 5.0.0-beta3

See also the .nd2 file in /ome/team/pwalczysko/from Sara/Ex9 ALADIN WT KO KI 31_07_2013/, which should contain multiple stage positions, timepoints, and Z sections. Also for this file, the field index may be incorrect, as the planes are out of order.

comment:11 Changed 10 years ago by mlinkert

  • Cc Tiao_Xie@… added

See also the dataset in nd2/tiao, which should have 10 T x 2 C.

comment:12 Changed 10 years ago by mlinkert

  • Milestone changed from 5.1.0 to 5.0.3

Moving up to 5.0.3 so that this is resolved sooner.

comment:13 Changed 10 years ago by jamoore

comment:14 Changed 10 years ago by mlinkert

  • Resolution set to fixed
  • Status changed from new to closed

comment:15 Changed 10 years ago by Melissa Linkert <melissa@…>

(In [6fc4b0e51d5e3ca8c575544524bcf25eae929d1f/bioformats.git] on branch develop) ND2: set SizeT to the number of offsets if there is no dimension metadata

See #10773.

Note: See TracTickets for help on using tickets. You may also have a look at Agilo extensions to the ticket.

1.3.13-PRO © 2008-2011 Agilo Software all rights reserved (this page was served in: 0.70481 sec.)

We're Hiring!