Ticket #388 (closed defect: fixed)
Opened 2009-05-04T18:20:30-05:00
Last modified 2009-05-04T19:22:44-05:00
Flex file metadata extraction
Reported by: | gbonamy | Owned by: | melissa |
---|---|---|---|
Priority: | major | Milestone: | |
Component: | bio-formats | Severity: | serious |
Keywords: | FLEX | Cc: | |
Blocked By: | Blocking: |
Description
I have found the reason why the metadata is not correctly extracted from the FLEX file.
In: loci.formats.in.FlexReader.java Line: 372-376
else if (currentQName.equals("LightSourceCombinationRef")) {
if (!channelNames.contains(value) && lightSourceIDs.contains(value)) {
channelNames.add(value);
}
}
This referes to the light source combination. Currently the Opera supports only 1 or 2 light source combination. The light source combination simply indicates which lasers are on for the given exposures (currently max# of exposure=2). For each light source combination there will be a filtercombination. In each filter combination, there might be up to 4 Cameras activated. Hence in order to know how many Channels there are, one need to iterate over the filter combination and count oh many time a slider name camera is present.
Following XML extract might be helpful:
<FilterCombinations>
<FilterCombination ID="F_Sample_1">
<SliderRef ID="Camera1" Filter="535/50" /> <SliderRef ID="Camera2" Filter="690/50" /> <SliderRef ID="Primary_Dichro" Filter="488" /> <SliderRef ID="Detect_Dichro" Filter="580" />
</FilterCombination>
</FilterCombinations>
Alternativelly, another method is to count in the Array section how many Name tye there are (ex "Exp1Cam1", "Exp2Cam2 etc.) The following portion of the Header is useful: <Arrays>
<Array Type="Image" Name="Exp1Cam1" Width="608" Height="456"
BitsPerPixel="16" CompressionType="" CompressionRate="" Factor="1.000000" />
<Array Type="Image" Name="Exp1Cam3" Width="608" Height="456"
BitsPerPixel="16" CompressionType="" CompressionRate="" Factor="1.000000" />
Here is an exert of the XML header.
Change History
comment:1 Changed 2009-05-04T19:22:44-05:00 by gbonamy
- Status changed from new to closed
- Resolution set to fixed
This bug was fixed.