diff --git a/ndbioimage/readers/cziread.py b/ndbioimage/readers/cziread.py index f4f3702..8381da0 100644 --- a/ndbioimage/readers/cziread.py +++ b/ndbioimage/readers/cziread.py @@ -73,9 +73,9 @@ class Reader(AbstractReader, ABC): for detector in instrument.find("Detectors"): 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: - detector_type = model.detector.Type.OTHER + detector_type = model.Detector_Type.OTHER ome.instruments[0].detectors.append( model.Detector( @@ -123,8 +123,8 @@ class Reader(AbstractReader, ABC): objective_settings = image.find("ObjectiveSettings") scenes = image.find("Dimensions").find("S").find("Scenes") center_position = [float(pos) for pos in text(scenes[0].find("CenterPosition")).split(',')] - um = model.simple_types.UnitsLength.MICROMETER - nm = model.simple_types.UnitsLength.NANOMETER + um = model.UnitsLength.MICROMETER + nm = model.UnitsLength.NANOMETER ome.images.append( model.Image( @@ -163,9 +163,9 @@ class Reader(AbstractReader, ABC): laser_scan_info = channel.find("LaserScanInfo") detector = detector_settings.find("Detector") try: - binning = model.simple_types.Binning(text(detector_settings.find("Binning"))) + binning = model.Binning(text(detector_settings.find("Binning"))) except ValueError: - binning = model.simple_types.Binning.OTHER + binning = model.Binning.OTHER light_sources_settings = channel.find("LightSourcesSettings") # no space in ome for multiple lightsources simultaneously @@ -182,7 +182,7 @@ class Reader(AbstractReader, ABC): id=f"Channel:0:{idx}", name=channel.attrib["Name"], 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"].replace(" ", ""), binning=binning), @@ -239,9 +239,9 @@ class Reader(AbstractReader, ABC): for detector in instrument.find("Detectors"): 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: - detector_type = model.detector.Type.OTHER + detector_type = model.Detector_Type.OTHER ome.instruments[0].detectors.append( model.Detector( @@ -306,8 +306,8 @@ class Reader(AbstractReader, ABC): objective_settings = image.find("ObjectiveSettings") scenes = image.find("Dimensions").find("S").find("Scenes") positions = scenes[0].find("Positions")[0] - um = model.simple_types.UnitsLength.MICROMETER - nm = model.simple_types.UnitsLength.NANOMETER + um = model.UnitsLength.MICROMETER + nm = model.UnitsLength.NANOMETER ome.images.append( model.Image( @@ -351,9 +351,9 @@ class Reader(AbstractReader, ABC): laser_scan_info = channel.find("LaserScanInfo") detector = detector_settings.find("Detector") try: - binning = model.simple_types.Binning(text(detector_settings.find("Binning"))) + binning = model.Binning(text(detector_settings.find("Binning"))) except ValueError: - binning = model.simple_types.Binning.OTHER + binning = model.Binning.OTHER filterset = text(channels_ts[key].find("BeamSplitters")[0].find("Filter")) 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}", name=channel.attrib["Name"], 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), emission_wavelength=text(channel.find("EmissionWavelength")), excitation_wavelength=light_source_settings.wavelength, diff --git a/ndbioimage/readers/fijiread.py b/ndbioimage/readers/fijiread.py index bfc4df3..1a5d2e5 100644 --- a/ndbioimage/readers/fijiread.py +++ b/ndbioimage/readers/fijiread.py @@ -45,7 +45,7 @@ class Reader(AbstractReader, ABC): size_y, size_x = self.reader.pages[0].shape size_c, size_z = 1, 1 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.instruments.append(model.Instrument()) ome.images.append( diff --git a/ndbioimage/readers/ndread.py b/ndbioimage/readers/ndread.py index 802b09e..5a826a0 100644 --- a/ndbioimage/readers/ndread.py +++ b/ndbioimage/readers/ndread.py @@ -19,12 +19,12 @@ class Reader(AbstractReader, ABC): 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) try: - pixel_type = model.simple_types.PixelType(self.array.dtype.name) + pixel_type = model.PixelType(self.array.dtype.name) except ValueError: if self.array.dtype.name.startswith('int'): - pixel_type = model.simple_types.PixelType('int32') + pixel_type = model.PixelType('int32') else: - pixel_type = model.simple_types.PixelType('float') + pixel_type = model.PixelType('float') ome = model.OME() ome.instruments.append(model.Instrument()) diff --git a/ndbioimage/readers/seqread.py b/ndbioimage/readers/seqread.py index ab98746..cebdf7e 100644 --- a/ndbioimage/readers/seqread.py +++ b/ndbioimage/readers/seqread.py @@ -4,7 +4,7 @@ import re from pathlib import Path from functools import cached_property 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 datetime import datetime from abc import ABC @@ -25,7 +25,7 @@ class Plane(model.Plane): def __init__(self, t0, file, **kwargs): super().__init__(**kwargs) 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__['file'] = file @@ -57,7 +57,7 @@ class Reader(AbstractReader, ABC): id="Objective:0", manufacturer="Zeiss", model=objective_str, nominal_magnification=float(re.findall(r"(\d+)x", 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"] ome.instruments[0].objectives.append( model.Objective( diff --git a/pyproject.toml b/pyproject.toml index 6870ddb..d4063e7 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -17,7 +17,7 @@ pandas = "*" tifffile = "*" czifile = "*" tiffwrite = "*" -ome-types = "*" +ome-types = "^0.4" pint = "*" tqdm = "*" lxml = "*"