OME-TIF generation and Omero Import
Posted: Sat Jan 15, 2011 7:30 pm
Until Omero does support metaXpress as a valid format, I would like to create a workaround. In order to get my metaXpress raw 16 bit tiff data imported into Omero I thought I would convert my tiff files into OME-TIFF modifying the Exif.Image.ImageDescription fields that hold the OME XML data accordingly and then import those files into Omero.
I have tried the following:
Whatever I try, I cannot make it work. I have also tried to write the OME-XML data directly into the metaXpress files, I have used the imgcnv tool from http://www.bioimage.ucsb.edu/BioImage%20Convert to convert the files, and or write the OME header to the files.
The OME information is always ignored.
So clearly I am doing something wrong.
An example:
this is the original OME field after export from OmeroInsight which I assume will at least give a a valid OME-Tiff file with a valid minimum OME-XML field in Exif.Image.Image.Description:
I have used an XML formatter to clear things up here, since the original is a single line of code.
So all I have here is the image block which itself contains the information about the pixel data. From one of the example files from the Omero website (tubhiswt_C1.ome.tif) I have extracted the XMl data and used it as an example to get this xml data:
So I have the Instrument block that has its own ID and I connect that Instrument block inside of Image using the chosen IDs in two logical channels.
In the example file tubhiswt_C1.ome.tif these two logical channels show up and the meta-data is inside them.
My questions:
Why do the two channels not show up when I use this XML data in my OME-TIFF file?
What is the correct syntax?
What is correct syntax to directly write to the Omero fields under Acquisition where I would like to place my meta-data, or do I have to use Logical channels?
Any help would be greatly appreciated.
Cheers Juergen
I have tried the following:
- import a raw 16bit tif files straight out of metaXpress into Omero
- exportted that file to OME-TIFF using the OmeroInsight export to OME-TIff function
- take the Exif.Image.ImageDescription field and modify it
- import back into Omero
Whatever I try, I cannot make it work. I have also tried to write the OME-XML data directly into the metaXpress files, I have used the imgcnv tool from http://www.bioimage.ucsb.edu/BioImage%20Convert to convert the files, and or write the OME header to the files.
The OME information is always ignored.
So clearly I am doing something wrong.
An example:
this is the original OME field after export from OmeroInsight which I assume will at least give a a valid OME-Tiff file with a valid minimum OME-XML field in Exif.Image.Image.Description:
- Code: Select all
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Warning: this comment is an OME-XML metadata block, which contains crucial dimensional parameters and other important metadata. Please edit cautiously (if at all), and back up the original data before doing so. For more information, see the OME-TIFF web site: http://ome-xml.org/wiki/OmeTiff. -->
<OME xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" UUID="urn:uuid:7066938f-2105-40a9-bb8b-34da53158d94" xsi:schemaLocation="http://www.openmicroscopy.org/Schemas/OME/2010-06 http://www.openmicroscopy.org/Schemas/OME/2010-06/ome.xsd" xmlns="http://www.openmicroscopy.org/Schemas/OME/2010-06">
<Image ID="urn:lsid:export.openmicroscopy.org:Image:7a72efb0-60c5-4e84-97e7-e575c1bb31e1_520:1674" Name="/home/helmerj/rails/metaxpress/transfer-script/input/20100825_rbilly_A01_w1E3AF3878-C79B-4C1C-B5C7-E98DA18167AF.tif">
<AcquiredDate>
2010-08-25T04:42:53
</AcquiredDate>
<Description/>
<Pixels DimensionOrder="XYZCT" ID="urn:lsid:export.openmicroscopy.org:Pixels:7a72efb0-60c5-4e84-97e7-e575c1bb31e1_520:1675" PhysicalSizeX="0.0" PhysicalSizeY="0.0" PhysicalSizeZ="0.0" SizeC="1" SizeT="1" SizeX="1000" SizeY="1000" SizeZ="1" Type="uint16">
<Channel Color="-16776961" ID="urn:lsid:export.openmicroscopy.org:Channel:7a72efb0-60c5-4e84-97e7-e575c1bb31e1_520:1676" SamplesPerPixel="1">
<LightPath/>
</Channel>
<TiffData FirstC="0" FirstT="0" FirstZ="0" IFD="0" PlaneCount="1">
<UUID FileName="__omero_export__3094290677181521664.ome.tiff">
urn:uuid:7066938f-2105-40a9-bb8b-34da53158d94
</UUID>
</TiffData>
<Plane DeltaT="0.0" ExposureTime="0.0" TheC="0" TheT="0" TheZ="0"/>
</Pixels>
</Image>
</OME>
I have used an XML formatter to clear things up here, since the original is a single line of code.
So all I have here is the image block which itself contains the information about the pixel data. From one of the example files from the Omero website (tubhiswt_C1.ome.tif) I have extracted the XMl data and used it as an example to get this xml data:
- Code: Select all
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<!-- Warning: this comment is an OME-XML metadata block, which contains crucial dimensional parameters and other important metadata. Please edit cautiously (if at all), and back up the original data before doing so. For more information, see the OME-TIFF web site: http://ome-xml.org/wiki/OmeTiff. -->
<OME xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" UUID="urn:uuid:7066938f-2105-40a9-bb8b-34da53158d94" xsi:schemaLocation="http://www.openmicroscopy.org/Schemas/OME/2010-06 http://www.openmicroscopy.org/Schemas/OME/2010-06/ome.xsd" xmlns="http://www.openmicroscopy.org/Schemas/OME/2010-06">
<Instrument ID="urn:lsid:export.openmicroscopy.org:Instrument:OWS1">
<Microscope Manufacturer="Nikon" Model="Eclipse TE300" SerialNumber="U629762" Type="Inverted"/>
<LightSource ID="urn:lsid:export.openmicroscopy.org:LightSource:OWS1" Manufacturer="Spectral Physics" Model="Tsunami 5W" SerialNumber="2123">
<Laser Type="SolidState" LaserMedium="TiSapphire"/>
</LightSource>
<Detector ID="urn:lsid:export.openmicroscopy.org:Detector:OWS1" Type="PMT" Manufacturer="Hamamatzu" Model="H7422"/>
<Detector ID="urn:lsid:export.openmicroscopy.org:Detector:OWS2" Type="Photodiode" Manufacturer="Bio-Rad" Model="1024TLD"/>
<Objective ID="urn:lsid:export.openmicroscopy.org:Objective:OWS2" Manufacturer="Nikon" Model="S Fluor" SerialNumber="044989">
<Correction>
PlanApo
</Correction>
<Immersion>
Oil
</Immersion>
<LensNA>
1.40
</LensNA>
<NominalMagnification>
100
</NominalMagnification>
<CalibratedMagnification>
100.0
</CalibratedMagnification>
<WorkingDistance>
0.13
</WorkingDistance>
</Objective>
</Instrument>
<Image ID="urn:lsid:export.openmicroscopy.org:Image:7a72efb0-60c5-4e84-97e7-e575c1bb31e1_520:1674" Name="/home/helmerj/rails/metaxpress/transfer-script/input/20100825_rbilly_A01_w1E3AF3878-C79B-4C1C-B5C7-E98DA18167AF.tif">
<AcquiredDate>
2010-08-25T04:42:53
</AcquiredDate>
<Description/>
<LogicalChannel ID="urn:lsid:export.openmicroscopy.org:LogicalChannel:OWS348-1">
<LightSourceRef ID="urn:lsid:export.openmicroscopy.org:LightSource:OWS1"/>
<DetectorRef ID="urn:lsid:export.openmicroscopy.org:Detector:OWS1"/>
<ChannelComponent Pixels="urn:lsid:export.openmicroscopy.org:Pixels:OWS348" Index="1"/>
</LogicalChannel>
<LogicalChannel ID="urn:lsid:export.openmicroscopy.org:LogicalChannel:OWS348-2">
<LightSourceRef ID="urn:lsid:export.openmicroscopy.org:LightSource:OWS1"/>
<DetectorRef ID="urn:lsid:export.openmicroscopy.org:Detector:OWS2"/>
<ChannelComponent Pixels="urn:lsid:export.openmicroscopy.org:Pixels:OWS348" Index="0"/>
</LogicalChannel>
<Pixels DimensionOrder="XYZCT" ID="urn:lsid:export.openmicroscopy.org:Pixels:7a72efb0-60c5-4e84-97e7-e575c1bb31e1_520:1675" PhysicalSizeX="0.0" PhysicalSizeY="0.0" PhysicalSizeZ="0.0" SizeC="1" SizeT="1" SizeX="1000" SizeY="1000" SizeZ="1" Type="uint16">
<Channel Color="-16776961" ID="urn:lsid:export.openmicroscopy.org:Channel:7a72efb0-60c5-4e84-97e7-e575c1bb31e1_520:1676" SamplesPerPixel="1">
<LightPath/>
</Channel>
<TiffData FirstC="0" FirstT="0" FirstZ="0" IFD="0" PlaneCount="1">
<UUID FileName="__omero_export__3094290677181521664.ome.tiff">
urn:uuid:7066938f-2105-40a9-bb8b-34da53158d94
</UUID>
</TiffData>
<Plane DeltaT="0.0" ExposureTime="0.0" TheC="0" TheT="0" TheZ="0"/>
</Pixels>
</Image>
</OME>
So I have the Instrument block that has its own ID and I connect that Instrument block inside of Image using the chosen IDs in two logical channels.
In the example file tubhiswt_C1.ome.tif these two logical channels show up and the meta-data is inside them.
My questions:
Why do the two channels not show up when I use this XML data in my OME-TIFF file?
What is the correct syntax?
What is correct syntax to directly write to the Omero fields under Acquisition where I would like to place my meta-data, or do I have to use Logical channels?
Any help would be greatly appreciated.
Cheers Juergen