- bump ome-types to 0.4

This commit is contained in:
Wim Pomp
2023-08-18 18:30:15 +02:00
parent bb1a710463
commit 3dbed27078
5 changed files with 22 additions and 22 deletions

View File

@@ -73,9 +73,9 @@ class Reader(AbstractReader, ABC):
for detector in instrument.find("Detectors"): for detector in instrument.find("Detectors"):
try: try:
detector_type = model.detector.Type(text(detector.find("Type")).upper() or "") detector_type = model.Detector_Type(text(detector.find("Type")).upper() or "")
except ValueError: except ValueError:
detector_type = model.detector.Type.OTHER detector_type = model.Detector_Type.OTHER
ome.instruments[0].detectors.append( ome.instruments[0].detectors.append(
model.Detector( model.Detector(
@@ -123,8 +123,8 @@ class Reader(AbstractReader, ABC):
objective_settings = image.find("ObjectiveSettings") objective_settings = image.find("ObjectiveSettings")
scenes = image.find("Dimensions").find("S").find("Scenes") scenes = image.find("Dimensions").find("S").find("Scenes")
center_position = [float(pos) for pos in text(scenes[0].find("CenterPosition")).split(',')] center_position = [float(pos) for pos in text(scenes[0].find("CenterPosition")).split(',')]
um = model.simple_types.UnitsLength.MICROMETER um = model.UnitsLength.MICROMETER
nm = model.simple_types.UnitsLength.NANOMETER nm = model.UnitsLength.NANOMETER
ome.images.append( ome.images.append(
model.Image( model.Image(
@@ -163,9 +163,9 @@ class Reader(AbstractReader, ABC):
laser_scan_info = channel.find("LaserScanInfo") laser_scan_info = channel.find("LaserScanInfo")
detector = detector_settings.find("Detector") detector = detector_settings.find("Detector")
try: try:
binning = model.simple_types.Binning(text(detector_settings.find("Binning"))) binning = model.Binning(text(detector_settings.find("Binning")))
except ValueError: except ValueError:
binning = model.simple_types.Binning.OTHER binning = model.Binning.OTHER
light_sources_settings = channel.find("LightSourcesSettings") light_sources_settings = channel.find("LightSourcesSettings")
# no space in ome for multiple lightsources simultaneously # no space in ome for multiple lightsources simultaneously
@@ -182,7 +182,7 @@ class Reader(AbstractReader, ABC):
id=f"Channel:0:{idx}", id=f"Channel:0:{idx}",
name=channel.attrib["Name"], name=channel.attrib["Name"],
acquisition_mode=text(channel.find("AcquisitionMode")), acquisition_mode=text(channel.find("AcquisitionMode")),
color=model.simple_types.Color(text(channels_ds[channel.attrib["Id"]].find("Color"))), color=model.Color(text(channels_ds[channel.attrib["Id"]].find("Color"))),
detector_settings=model.DetectorSettings( detector_settings=model.DetectorSettings(
id=detector.attrib["Id"].replace(" ", ""), id=detector.attrib["Id"].replace(" ", ""),
binning=binning), binning=binning),
@@ -239,9 +239,9 @@ class Reader(AbstractReader, ABC):
for detector in instrument.find("Detectors"): for detector in instrument.find("Detectors"):
try: try:
detector_type = model.detector.Type(text(detector.find("Type")).upper() or "") detector_type = model.Detector_Type(text(detector.find("Type")).upper() or "")
except ValueError: except ValueError:
detector_type = model.detector.Type.OTHER detector_type = model.Detector_Type.OTHER
ome.instruments[0].detectors.append( ome.instruments[0].detectors.append(
model.Detector( model.Detector(
@@ -306,8 +306,8 @@ class Reader(AbstractReader, ABC):
objective_settings = image.find("ObjectiveSettings") objective_settings = image.find("ObjectiveSettings")
scenes = image.find("Dimensions").find("S").find("Scenes") scenes = image.find("Dimensions").find("S").find("Scenes")
positions = scenes[0].find("Positions")[0] positions = scenes[0].find("Positions")[0]
um = model.simple_types.UnitsLength.MICROMETER um = model.UnitsLength.MICROMETER
nm = model.simple_types.UnitsLength.NANOMETER nm = model.UnitsLength.NANOMETER
ome.images.append( ome.images.append(
model.Image( model.Image(
@@ -351,9 +351,9 @@ class Reader(AbstractReader, ABC):
laser_scan_info = channel.find("LaserScanInfo") laser_scan_info = channel.find("LaserScanInfo")
detector = detector_settings.find("Detector") detector = detector_settings.find("Detector")
try: try:
binning = model.simple_types.Binning(text(detector_settings.find("Binning"))) binning = model.Binning(text(detector_settings.find("Binning")))
except ValueError: except ValueError:
binning = model.simple_types.Binning.OTHER binning = model.Binning.OTHER
filterset = text(channels_ts[key].find("BeamSplitters")[0].find("Filter")) filterset = text(channels_ts[key].find("BeamSplitters")[0].find("Filter"))
filterset_idx = [filterset.model for filterset in ome.instruments[0].filter_sets].index(filterset) filterset_idx = [filterset.model for filterset in ome.instruments[0].filter_sets].index(filterset)
@@ -375,7 +375,7 @@ class Reader(AbstractReader, ABC):
id=f"Channel:0:{idx}", id=f"Channel:0:{idx}",
name=channel.attrib["Name"], name=channel.attrib["Name"],
acquisition_mode=text(channel.find("AcquisitionMode")), acquisition_mode=text(channel.find("AcquisitionMode")),
color=model.simple_types.Color(text(channels_ds[channel.attrib["Id"]].find("Color"))), color=model.Color(text(channels_ds[channel.attrib["Id"]].find("Color"))),
detector_settings=model.DetectorSettings(id=detector.attrib["Id"], binning=binning), detector_settings=model.DetectorSettings(id=detector.attrib["Id"], binning=binning),
emission_wavelength=text(channel.find("EmissionWavelength")), emission_wavelength=text(channel.find("EmissionWavelength")),
excitation_wavelength=light_source_settings.wavelength, excitation_wavelength=light_source_settings.wavelength,

View File

@@ -45,7 +45,7 @@ class Reader(AbstractReader, ABC):
size_y, size_x = self.reader.pages[0].shape size_y, size_x = self.reader.pages[0].shape
size_c, size_z = 1, 1 size_c, size_z = 1, 1
size_t = int(np.floor((self.reader.filehandle.size - self.reader.pages[0].dataoffsets[0]) / self.count)) size_t = int(np.floor((self.reader.filehandle.size - self.reader.pages[0].dataoffsets[0]) / self.count))
pixel_type = model.simple_types.PixelType(self.reader.pages[0].dtype.name) pixel_type = model.PixelType(self.reader.pages[0].dtype.name)
ome = model.OME() ome = model.OME()
ome.instruments.append(model.Instrument()) ome.instruments.append(model.Instrument())
ome.images.append( ome.images.append(

View File

@@ -19,12 +19,12 @@ class Reader(AbstractReader, ABC):
return size_x, size_y, size_c, size_z, size_t return size_x, size_y, size_c, size_z, size_t
size_x, size_y, size_c, size_z, size_t = shape(*self.array.shape) size_x, size_y, size_c, size_z, size_t = shape(*self.array.shape)
try: try:
pixel_type = model.simple_types.PixelType(self.array.dtype.name) pixel_type = model.PixelType(self.array.dtype.name)
except ValueError: except ValueError:
if self.array.dtype.name.startswith('int'): if self.array.dtype.name.startswith('int'):
pixel_type = model.simple_types.PixelType('int32') pixel_type = model.PixelType('int32')
else: else:
pixel_type = model.simple_types.PixelType('float') pixel_type = model.PixelType('float')
ome = model.OME() ome = model.OME()
ome.instruments.append(model.Instrument()) ome.instruments.append(model.Instrument())

View File

@@ -4,7 +4,7 @@ import re
from pathlib import Path from pathlib import Path
from functools import cached_property from functools import cached_property
from ome_types import model from ome_types import model
from ome_types._base_type import quantity_property from ome_types.units import _quantity_property
from itertools import product from itertools import product
from datetime import datetime from datetime import datetime
from abc import ABC from abc import ABC
@@ -25,7 +25,7 @@ class Plane(model.Plane):
def __init__(self, t0, file, **kwargs): def __init__(self, t0, file, **kwargs):
super().__init__(**kwargs) super().__init__(**kwargs)
setattr(self.__class__, 'delta_t', lazy_property(self.get_delta_t, 'delta_t', 't0', 'file')) setattr(self.__class__, 'delta_t', lazy_property(self.get_delta_t, 'delta_t', 't0', 'file'))
setattr(self.__class__, 'delta_t_quantity', quantity_property('delta_t')) setattr(self.__class__, 'delta_t_quantity', _quantity_property('delta_t'))
self.__dict__['t0'] = t0 self.__dict__['t0'] = t0
self.__dict__['file'] = file self.__dict__['file'] = file
@@ -57,7 +57,7 @@ class Reader(AbstractReader, ABC):
id="Objective:0", manufacturer="Zeiss", model=objective_str, id="Objective:0", manufacturer="Zeiss", model=objective_str,
nominal_magnification=float(re.findall(r"(\d+)x", objective_str)[0]), nominal_magnification=float(re.findall(r"(\d+)x", objective_str)[0]),
lens_na=float(re.findall(r"/(\d\.\d+)", objective_str)[0]), lens_na=float(re.findall(r"/(\d\.\d+)", objective_str)[0]),
immersion=model.objective.Immersion.OIL if 'oil' in objective_str.lower() else None)) immersion=model.Objective_Immersion.OIL if 'oil' in objective_str.lower() else None))
tubelens_str = metadata["Info"]["ZeissOptovar-Label"] tubelens_str = metadata["Info"]["ZeissOptovar-Label"]
ome.instruments[0].objectives.append( ome.instruments[0].objectives.append(
model.Objective( model.Objective(

View File

@@ -17,7 +17,7 @@ pandas = "*"
tifffile = "*" tifffile = "*"
czifile = "*" czifile = "*"
tiffwrite = "*" tiffwrite = "*"
ome-types = "*" ome-types = "^0.4"
pint = "*" pint = "*"
tqdm = "*" tqdm = "*"
lxml = "*" lxml = "*"