class_docstr: Reads a variety of image formats using the bio-formats library.
  
  This reader is Java-based.
class_docstr_tok: ["Reads","a","variety","of","image","formats","using","the","bio-formats","library",".","This","reader","is","Java-based","."]
docstr: Should return a dictionary with the following keys:
  Key names are in cellprofiler_core.constants.image
  MD_SIZE_S - int reflecting the number of series
  MD_SIZE_X - list of X dimension sizes, one element per series.
  MD_SIZE_Y - list of Y dimension sizes, one element per series.
  MD_SIZE_Z - list of Z dimension sizes, one element per series.
  MD_SIZE_C - list of C dimension sizes, one element per series.
  MD_SIZE_T - list of T dimension sizes, one element per series.
  MD_SERIES_NAME - list of series names, one element per series.
docstr_tok: ["Should","return","a","dictionary","with","the","following","keys",":","Key","names","are","in","cellprofiler_core.constants.image","MD_SIZE_S","-","int","reflecting","the","number","of","series","MD_SIZE_X","-","list","of","X","dimension","sizes",",","one","element","per","series",".","MD_SIZE_Y","-","list","of","Y","dimension","sizes",",","one","element","per","series",".","MD_SIZE_Z","-","list","of","Z","dimension","sizes",",","one","element","per","series",".","MD_SIZE_C","-","list","of","C","dimension","sizes",",","one","element","per","series",".","MD_SIZE_T","-","list","of","T","dimension","sizes",",","one","element","per","series",".","MD_SERIES_NAME","-","list","of","series","names",",","one","element","per","series","."]
code: def get_series_metadata(self):
      """Should return a dictionary with the following keys:
      Key names are in cellprofiler_core.constants.image
      MD_SIZE_S - int reflecting the number of series
      MD_SIZE_X - list of X dimension sizes, one element per series.
      MD_SIZE_Y - list of Y dimension sizes, one element per series.
      MD_SIZE_Z - list of Z dimension sizes, one element per series.
      MD_SIZE_C - list of C dimension sizes, one element per series.
      MD_SIZE_T - list of T dimension sizes, one element per series.
      MD_SERIES_NAME - list of series names, one element per series.
      """
      meta_dict = collections.defaultdict(list)
      self._ensure_file_open()
      reader = self.get_reader()
      series_count = reader.getSeriesCount()
      meta_dict[MD_SIZE_S] = series_count
      for i in range(series_count):
          reader.setSeries(i)
          meta_dict[MD_SIZE_C].append(reader.getSizeC())
          meta_dict[MD_SIZE_Z].append(reader.getSizeZ())
          meta_dict[MD_SIZE_T].append(reader.getSizeT())
          meta_dict[MD_SIZE_Y].append(reader.getSizeY())
          meta_dict[MD_SIZE_X].append(reader.getSizeX())
      return meta_dict
  
file_path: CellProfiler/src/subpackages/core/cellprofiler_core/readers/bioformats_reader.py
imports: import collections
  import itertools
  import logging
  import numpy
  import scyjava
  from ..utilities.image import is_file_url
  from ..utilities.java import jimport
  from ..constants.image import MD_SIZE_S, MD_SIZE_C, MD_SIZE_Z, MD_SIZE_T, MD_SIZE_Y, MD_SIZE_X, BIOFORMATS_IMAGE_EXTENSIONS
  from ..reader import Reader
label_desc: Use image node_id 8 for calling the BioformatsReader obj's underlying member method code with example usage: obj.get_series_metadata() and returns: meta_dict