Source code for bob.ip.gabor.auxiliar

from ._library import Jet
import bob.io.base
import numpy

def _name(i, count):
  digits = len(str(count))
  name = "Jet_%0" + str(digits) + "d"
  return name%(i+1)


[docs]def save_jets(jets, hdf5): """save_jets(jets, hdf5) -> None Saves the given list of Gabor jets to the given HDF5 file, which needs to be open for writing. **Parameters**: ``hdf5`` : :py:class:`bob.io.base.HDF5File` An HDF5 file open for writing ``jets`` : [:py:class:`bob.ip.gabor.Jet`] The list of Gabor jets to write to file """ count = len(jets) hdf5.set("NumberOfJets", count) for i in range(len(jets)): hdf5.create_group(_name(i, count)) hdf5.cd(_name(i, count)) jets[i].save(hdf5) hdf5.cd("..")
[docs]def load_jets(hdf5): """load_jets(hdf5) -> jets Loads a list of Gabor jets from the given HDF5 file, which needs to be open for reading. **Parameters**: ``hdf5`` : :py:class:`bob.io.base.HDF5File` An HDF5 file open for reading **Returns**: ``jets`` : [:py:class:`bob.ip.gabor.Jet`] The list of Gabor jets read from file """ count = hdf5.read("NumberOfJets") jets = [] for i in range(count): old_name = _name(i, 100) name = old_name if hdf5.has_group(old_name) else _name(i, count) hdf5.cd(name) jets.append(Jet(hdf5)) hdf5.cd("..") return jets