navigate.model.metadata_sources.metadata.XMLMetadata
- class navigate.model.metadata_sources.metadata.XMLMetadata
Bases:
Metadata
XML Metadata
This is a base class for dealing with metadata that is stored as an XML, e.g. in OME-TIFF or BigDataViewer. There are multiple methods for storing XML. In OME-TIFF, the XML is stored in the header of the first OME-TIFF file in a directory. In BigDataViewer, it is stored in a separate XML. Both have proprietary XML formats. To address this, we store their metadata in a nested dictionary, defined by {file_type}_xml_dict() (e.g. ome_tiff_xml_dict()) (see to_xml()). We then parse this nested dictionary into an XML file. Similarly, we can parse from an XML file to a nested dictionary and map these values back to our internal representation of metadata values (TODO: Not implemented. Will use xml_tools.parse_xml() for the first bit.)
- __init__() → None
Metadata class
Store and convert internal representation of metadata (configuration, experiment, etc.) to alternative file types.
Note
Concept and some of the code borrowed from python-microscopy (https://github.com/python-microscopy/python-microscopy/).
Methods
__init__
()Metadata class
Set from configuration experiment
set_from_dict
(metadata_config)Set from a dictionary
Set shape from configuration experiment
Set stack order from configuration experiment
to_xml
(file_type[, root])Convert stored metadata to XML
write_xml
(file_name, file_type[, root])Write to XML file.
Attributes
Return configuration dictionary
Return per stack
Return shape as XYCZT.
Return voxel size
- set_from_configuration_experiment() → None
Set from configuration experiment
- set_from_dict(metadata_config: dict) → None
Set from a dictionary
- Parameters:
metadata_config (dict) – dictionary of metadata: “c”, “z”, “t”, “p”, “is_dynamic”, “per_stack”
- set_shape_from_configuration_experiment() → None
Set shape from configuration experiment
- set_stack_order_from_configuration_experiment() → None
Set stack order from configuration experiment
- to_xml(file_type: str, root: Optional[str] = None, **kw) → str
Convert stored metadata to XML
- Parameters:
file_type (str) – File type
root (Optional[str]) – Root, by default None
**kw – Keyword arguments
- Returns:
XML string
- Return type:
str
- write_xml(file_name: str, file_type: str, root: Optional[str] = None, **kw) → None
Write to XML file. Assumes we do not include the XML header in our nested metadata dictionary.
- Parameters:
file_name (str) – File name
file_type (str) – File type
root (Optional[str]) – Root, by default None
- active_microscope
Active microscope
- Type:
str
- property configuration: Optional[DictProxy]
Return configuration dictionary
- Returns:
configuration – Configuration dictionary
- Return type:
Optional[DictProxy]
- dc
Step size between channels, should always be 1
- Type:
int
- dt
Time displacement (s)
- Type:
float
- dx
Pixel size in x (um) float: Pixel size in y (um) float: Pixel size in z (um)
- Type:
float
- dy
Pixel size in x (um) float: Pixel size in y (um) float: Pixel size in z (um)
- Type:
float
- dz
Pixel size in x (um) float: Pixel size in y (um) float: Pixel size in z (um)
- Type:
float
- property per_stack: bool
Return per stack
- Returns:
True if per stack, False otherwise
- Return type:
bool
- positions
Number of positions
- Type:
int
- property shape: tuple
Return shape as XYCZT.
- Returns:
Shape as XYCZT
- Return type:
tuple
- shape_c
Shape of the data in x int: Shape of the data in y int: Shape of the data in z int: Shape of the data in t int: Shape of the data in c
- Type:
int
- shape_t
Shape of the data in x int: Shape of the data in y int: Shape of the data in z int: Shape of the data in t int: Shape of the data in c
- Type:
int
- shape_x
Shape of the data in x int: Shape of the data in y int: Shape of the data in z int: Shape of the data in t int: Shape of the data in c
- Type:
int
- shape_y
Shape of the data in x int: Shape of the data in y int: Shape of the data in z int: Shape of the data in t int: Shape of the data in c
- Type:
int
- shape_z
Shape of the data in x int: Shape of the data in y int: Shape of the data in z int: Shape of the data in t int: Shape of the data in c
- Type:
int
- property voxel_size: tuple
Return voxel size
- Returns:
Voxel size
- Return type:
tuple