Table of Contents
Shortcuts

# hdrCore package

## Submodules

## hdrCore.image module

package hdrCoreconsists of the core classes for HDR imaging: (1) classes: class imageType

> class channel class Image class ColorSpace class Histogram

2. class: class metadata

3. processing functions and classes:

     def XYZ_to_sRGB(XYZ,apply_cctf_encoding=True): def sRGB_to_XYZ(RGB,apply_cctf_decoding=True): def Lab_to_XYZ(Lab) def XYZ_to_Lab(XYZ) def Lab_to_sRGB(Lab, apply_cctf_encoding=True, clip = False) def sRGB_to_Lab(RGB, apply_cctf_decoding=True) def Lch_to_sRGB(Lch,apply_cctf_encoding=True, clip=False) class Processing(object) class tmo_cctf(Processing) class exposure(Processing) class contrast(Processing) class clip(Processing) class ColorSpaceTransform(Processing) class resize(Processing) class Ycurve(Processing) class saturation(Processing) class lightnessMask(Processing) class geometry(Processing)

4. processing nodes that encapsulate processing objects in process-pipe:

     class ProcessNode(object)

5. process-pipe that defines the pipeline of processing:

     class ProcessPipe(object)

6. some utils functions:

     def filenamesplit(filename) def filterlistdir(path,extList) def ndarray2vector(nda) def NPlinearWeightMask(x,xMin,xMax,xTolerance) def croppRotated(h,w,alpha)

7. HDRdisplay model

class hdrCore.image.ColorSpace

  Bases: `object`

  Mapping to colour.models.RGB_COLOURSPACES

  static Lab()

    TODO - Documentation de la méthode Lab

  static Lch()

    TODO - Documentation de la méthode Lch

  static XYZ()

    TODO - Documentation de la méthode XYZ

  static build(name='sRGB')

    TODO - Documentation de la méthode build

    Args:
      name=’sRGB’: str

        TODO

  static sRGB()

    TODO - Documentation de la méthode sRGB

  static scRGB()

    TODO - Documentation de la méthode scRGB

class hdrCore.image.Histogram(histValue, edgeValue, name, channel, logSpace=False)

  Bases: `object`

  TODO - documentation de la classe image.Histogram

  description of class

  Attributes:
    name: str

      TODO

    channel: TODO

      TODO

    histValue: TODO

      TODO

    edgeValue: TODO

      TODO

    logSpace: TODO

      TODO

  static build(img, channel, nbBins=100, range=None, logSpace=None)

    Build an Histogram object from image.

    Args:
      img: Image

        Required : input image from witch hsitogram will be build

      channel: channel

        Required : image channel used to build histogram

      nbBins: int

        Optional : histogram number of bins

      range: (Float,Float)

        Optional : range of histogram, if None min max of channel

      logSpace: boolean

        Optional : compute in log space if True, if None guess from image

    Returns:
      Histogram

        Histogram of the image.

  normalise(norm=None)

    Normalise histogram according to norm=’probability’ | ‘dot’

    Args:
      norm: str

        Norm of the normalization

    Returns:
      TODO

        TODO

  plot(ax, color='r', shortName=True, title=True)

    Method to plot the histogram

    Args:
      ax: TODO

        TODO

      color: TODO

        TODO

      shortName: boolean

        TODO

      title: boolean

        TODO

  toNumpy()

    TODO - Documentation de la méthode toNumpy

    Returns:
      TODO

        TODO

class hdrCore.image.Image(path, name, colorData, type, linear, colorspace, scalingFactor=1.0)

  Bases: `object`

  class hdrCore.image.Image: the basic class that models HDR image and associated data

  Attributes:

    path (str): path to access image name (str): image filename colorData (numpy.ndarray): numpy array of pixels type (image.imageType): type of image linear (boolean): image encoding is linear colorSpace (colour.models.RGB_COLOURSPACES): colorspace scalingFactor (float): scaling factor to range[0..1] metadata (hdrCore.metadatametadata): metadata histogram(hdrCore.image.Histogram): image histogram

  Methods:

    isHDR: (boolean) returns True if image is HDR process: (hdrCore.image.Image) computes a processing and returns a new Image write: () write image and json metadata on disk (HDR image only) getChannel: () getDynamicRange: buildHistogram: plot: __repr__: (str) split: (list[[hdrCore.image.Image]]) split an image into sub-images

  Static methods:

    read: (hdrCore.image.Image) read an image from file toOne: /!not used in uHDR buildLchColorData:

  buildHistogram(channel)

    Build the histogram of the image

    Args:
      channel: TODO

        TODO

  static buildLchColorData(L, c, h, size, width, height)

    TODO - Documentation de la méthode buildLchColorData

    Args:
      L: TODO

        TODO

      c: TODO

        TODO

      h: TODO

        TODO

      size: TODO

        TODO

      width: TODO

        TODO

      height: TODO

        TODO

    Returns:
      TODO

        TODO

  getChannel(channel)

    To get channel : works only for sR|sG|sB, X|Y|Z and L|a|b

    Args:
      channel: TODO

        TODO

  getDynamicRange(percentile=None)

    Retrieve the dynamic range of image

    Args:
      percentile: float

        Optional : percentile if None: just remove zero values

    Returns:
      float

        The dynamic range of the image

  isHDR()

    isHDR: return True is image is HDR

    Args:

    Returns:
      (boolean)

        True if the image is an HDR image, False otherwise

  static merge(imgList)

    merge: merge 2D list of images into a single image (same size, same characteristics)

    Args:

      imgList (list[[hdrCore.image.Image]], Required): 2D list of images

    Returns:

      (hdrCore.image.Image)

  plot(ax, displayTitle=False, title=None, forceToneMapping=True, TMO=None)

    Method to plot the image.

    Args:
      ax: TODO

        TODO

      displayTitle: boolean

        Indicates if the name and colorSpace must be displayed above the image.

      title: str

        Title for the image. If None, the title will be the name of the image and its colorspace.

      forceToneMapping: boolean

        TODO

      TMO: TODO

        TODO

  process(process, **kwargs)

    compute a process according to the Processing object parameter.

    process, instance of Processing class, has a compute(image, **kwargs) method

    Args:

      process: Processing object (see processing.Processing)

      kwargs: optionnal parameters packed as dict

        parameters of the compute method of the Processing object

  static read(filename, thumb=False)

    Method to read image from its filename. blablabla TODO à compléter.

    Args:
      filename: str

        Filename of the file to read.

      thumb: boolean

        This flag indicates us if soft have to read the thumbnail or the original file for what the thumbnail will be created.

    Returns:
      image.Image

        the image object build from file.

    Example:

        >>> import uhdCore
        >>> img = Image.read(filename = "test.hdr", thumb = True)

    TODO - Exemple à modifier

  split(widthSegment, heightSegment)

    split: split an image widthSegment x heightSegment sub-images.

    Args:

      widthSegment (int, Required): number of horizonatal segments heightSegment (int required): number of vertical segments

    Returns

      list[[hdrCore.image.Image]] : list of sub-images

  static toOne(colorData)

    This method scale the image colorData in [0, 1] space

    Args:
      colorData: TODO

        TODO

    Returns:
      TODO

        TODO

  write(filename)

    Method to write the image in a file.

    Args:
      filename: str

        Filename of the file to read.

class hdrCore.image.channel(value)

  Bases: `enum.Enum`

  This class groups constant values and methods relative to a channel of an image together. This class is an easy definition of channel.

  Attributes :
    value: int

      Store the type of channel.

  colorSpace()

    Retrieve the channel as a string.

    Returns:
      str

        Colorspace type of the channel : ‘sRGB’, ‘XYZ’ or ‘Lab’.

  getValue()

    Retrieve the channel index.

    Returns:
      int

        Index of the channel.

  static toChannel(s)

    Convert a channel name as a constant value defined in this class.

    Args:
      s: str

        Name of the desired channel. This argument have to be in the list : ‘sR’, ‘sG’, ‘sB’, ‘X’, ‘Y’, ‘Z’, ‘L’, ‘a’ or ‘b’.

    Returns:
      int

        Index of the channel.

  L = 8
  Lab = 11
  X = 4
  XYZ = 7
  Y = 5
  Z = 6
  a = 9
  b = 10
  sB = 2
  sG = 1
  sR = 0
  sRGB = 3

class hdrCore.image.imageType(value)

  Bases: `enum.Enum`

  This class contains a list of constant values for different type of images.

  The constants are : SDR, RAW, HDR.

  ARW = 1
  HDR = 2
  SDR = 0

## hdrCore.metadata module

package hdrCore consists of the core classes for HDR imaging: (1) classes: class imageType

> class channel class Image class ColorSpace class Histogram

2. class: class metadata

3. processing functions and classes:

     def XYZ_to_sRGB(XYZ,apply_cctf_encoding=True): def sRGB_to_XYZ(RGB,apply_cctf_decoding=True): def Lab_to_XYZ(Lab) def XYZ_to_Lab(XYZ) def Lab_to_sRGB(Lab, apply_cctf_encoding=True, clip = False) def sRGB_to_Lab(RGB, apply_cctf_decoding=True) def Lch_to_sRGB(Lch,apply_cctf_encoding=True, clip=False) class Processing(object) class tmo_cctf(Processing) class exposure(Processing) class contrast(Processing) class clip(Processing) class ColorSpaceTransform(Processing) class resize(Processing) class Ycurve(Processing) class saturation(Processing) class lightnessMask(Processing) class geometry(Processing)

4. processing nodes that encapsulate processing objects in process-pipe:

     class ProcessNode(object)

5. process-pipe that defines the pipeline of processing:

     class ProcessPipe(object)

6. some utils functions:

     def filenamesplit(filename) def filterlistdir(path,extList) def ndarray2vector(nda) def NPlinearWeightMask(x,xMin,xMax,xTolerance) def croppRotated(h,w,alpha)

7. HDRdisplay model

class hdrCore.metadata.metadata(_image)

  Bases: `object`

  The metadatas of the image can be store in an object of this class. The informations which can be stored are : filename, path, a description, the exif data, the category, the processes to apply on the image.

  Atributes:
    metadata: TODO

      TODO

    image: TODO

      TODO

  static build(_image)

    Build metadata object from an image.

    Args:
      _image: TODO

        TODO

    Returns:
      TODO

        TODO

  static readExif(filename)

    Return exif (Dict) from image file

    Args:
      filename: str

        Name of the image file.

    Returns:
      TODO

        TODO

  recoverData(exif)

    TODO - Documentation de la méthode recoverData

    Args:
      exif: TODO

        TODO

  save()

    Save the metadata in a json file. The extension .json is added to the filename of the image.

  defaultColorSpaceName = 'sRGB'

## hdrCore.processing module

package hdrCore consists of the core classes for HDR imaging: (1) classes: class imageType

> class channel class Image class ColorSpace class Histogram

2. class: class metadata

3. processing functions and classes:

     def XYZ_to_sRGB(XYZ,apply_cctf_encoding=True): def sRGB_to_XYZ(RGB,apply_cctf_decoding=True): def Lab_to_XYZ(Lab) def XYZ_to_Lab(XYZ) def Lab_to_sRGB(Lab, apply_cctf_encoding=True, clip = False) def sRGB_to_Lab(RGB, apply_cctf_decoding=True) def Lch_to_sRGB(Lch,apply_cctf_encoding=True, clip=False) class Processing(object) class tmo_cctf(Processing) class exposure(Processing) class contrast(Processing) class clip(Processing) class ColorSpaceTransform(Processing) class resize(Processing) class Ycurve(Processing) class saturation(Processing) class lightnessMask(Processing) class geometry(Processing)

4. processing nodes that encapsulate processing objects in process-pipe:

     class ProcessNode(object)

5. process-pipe that defines the pipeline of processing:

     class ProcessPipe(object)

6. some utils functions:

     def filenamesplit(filename) def filterlistdir(path,extList) def ndarray2vector(nda) def NPlinearWeightMask(x,xMin,xMax,xTolerance) def croppRotated(h,w,alpha)

7. HDRdisplay model

class hdrCore.processing.ColorSpaceTransform

  Bases: `hdrCore.processing.Processing`

  TODO - Documentation de la colorspace transorm processing

  compute(img, **kwargs)

    Color space transform operator

    Args:
      img: hdrCore.image.Image

        Required : hdr image

      kwargs: dict

        Optionnal : parameters TODO

    Returns:
      TODO

        TODO

class hdrCore.processing.ProcessPipe

  Bases: `object`

  TODO - Documentation de la classe ProcessPipe

  Attributes:
    originalImage: TODO

      TODO

    __inputImage: TODO

      TODO

    __outputImage: TODO

      TODO

    processNodes: TODO

      TODO

    previewHDR: boolean

      TODO

    previewHDR_process: TODO

      TODO

  class ProcessNode(process, paramDict=None, name=None)

    Bases: `object`

    compute(img)
    condCompute(img)
    getParameters()
    setParameters(paramDict)
    toDict()
    id = 0
  append(process, paramDict=None, name=None)

    TODO - Documentation de la méthode append

    Args:
      process: TODO

        TODO

      paramDict: TODO

        TODO

      name: TODO

        TODO

    Returns:
      TODO

        TODO

  compute(progress=None)

    TODO - Documentation de la méthode compute

    Args:
      progress: TODO

        TODO

  export(dirName, size=None, to=None, progress=None)

    TODO - Documentation de la méthode export

    Args:

      dirName: TODO size: TODO to: TODO progress: TODO

    Returns:

      (hdrCore.image.Image)

  getImage(toneMap=True)

    TODO - Documentation de la méthode getImage

    Args:
      toneMap: TODO

        TODO

    Returns:
      TODO

        TODO

  getInputImage()

    TODO - Documentation de la méthode getInputImage

    Returns:
      TODO

        TODO

  getName()

    TODO - Documentation de la méthode getName

    Returns:
      TODO

        TODO

  getParameters(id)

    TODO - Documentation de la méthode getParameters

    Args:
      id: TODO

        TODO

    Returns:
      TODO

        TODO

  getProcessNodeByName(name)

    TODO - Documentation de la méthode getProcessNodeByName

    Args:
      name: TODO

        TODO

    Returns:
      TODO

        TODO

  setImage(img)
    set the input image to the process-pipeline:

      1. a copy of the image is set to ‘originalImage’

      2. if ProcessPipe.autoResize: the image is resized

      3. the (resize) is set to ‘__inputImage’

      4. a copy of the resized image is set to ‘__outputImage’ (for display)

      5. initialize processpipe using ‘img.metadata’

      6. for all processes in the pipe ‘requireUpdate’ is set to True

    Args:

      img (hdrCore.image.Image, Required) : input image

    Returns:

  setParameters(id, paramDicts)

    TODO - Documentation de la méthode setParameters

    Args:
      id: TODO

        TODO

      paramDicts: TODO

        TODO

  toDict()

    TODO - Documentation de la méthode toDict

    Returns:
      TODO

        TODO

  updateHDRuseCase(hdrmeta)

    TODO - Documentation de la méthode updateHDRuseCase

    Args:
      hdrmeta: TODO

        TODO

  updateProcessPipeMetadata()

    TODO - Documentation de la méthode updateProcessPipeMetadata

  autoResize = True
  maxSize = 1200
  maxWorking = 1200

class hdrCore.processing.Processing

  Bases: `object`

  TODO - Documentation de la classe Processing

  compute(image, **kwargs)

    TODO - Documentation de la méthode compute

    Args:
      image: TODO

        TODO

      kwargs: TODO

        TODO

    Returns:
      TODO

        TODO

class hdrCore.processing.Ycurve

  Bases: `hdrCore.processing.Processing`

  TODO - Documentation de la classe Ycurve

  compute(img, **kwargs)

    compute: compute Ycurve according to parameters.

    Args:

      img (hdrCore.image.Image, Required): image kwargs (dict,Optionnal): parameters gieven as dict

    Returns:
      (hdrCore.image.Image, Required): image

        result of Ycurve processing

class hdrCore.processing.clip

  Bases: `hdrCore.processing.Processing`

  TODO - Documentation de la classe clip

  compute(img, **kwargs)

    clip image color data

    Args:

      img (hdrCore.image.Image, Required): input image image kwargs(dict, Optionnal) : parameters

      > ‘min’, ‘max’ : float, float

    Returns:

      (hdrCore.image.Image): output image

class hdrCore.processing.colorEditor

  Bases: `hdrCore.processing.Processing`

  TODO - Documentation de la classe colorEditor

  compute(img, **kwargs)

    color editor operator

    Args:

      img (hdrCore.image.Image, Required): input image kwargs (dict, Optionnal): parameters

      > default value= { ‘selection’: {‘lightness’: (0,100),’chroma’: (0,100),’hue’:(0,360)},

      >   ‘tolerance’: 0.1, ‘edit’: {‘hue’:0.0,’exposure’:0.0,’contrast’:0.0,’saturation’:0.0}, ‘mask’: False}

    Returns:

      (hdrCore.image.Image): output image

class hdrCore.processing.contrast

  Bases: `hdrCore.processing.Processing`

  TODO - Documentation de la classe contrast

  compute(img, **kwargs)

    contrast operator.

    Args:

      img (hdrCore.image.Image, Required): input image kwargs (dict, Optionnal) : parameters

      > “contrast”: float

      > default value: { “contrast”: 0 }

    Returns:

      (hdrCore.image.Image, Required): output image

class hdrCore.processing.exposure

  Bases: `hdrCore.processing.Processing`

  TODO - Documentation de la classe exposure

  auto(img)

    TODO - Documentation de la méthode auto

    Args:
      img: TODO

        TODO

    Returns:
      TODO

        TODO

  compute(img, **kwargs)

    exposure operator.

    Args:

      img (hdrCore.image.Image, Required) : input image kwargs( dict, Optionnal) : parameters

      > ‘EV’: float

      > default value: {‘EV’: 0.0}

    Returns:

      (hdrCore.image.Image): output image

class hdrCore.processing.geometry

  Bases: `hdrCore.processing.Processing`

  TODO - Documentation de la classe geometry

  compute(img, **kwargs)

    geometry operator.

    Args:

      img (hdrCore.image.Image,Required): input image kwargs (dict,Optionnal) : parameters

      > ‘ratio’: (int,int) ‘up’: int ‘rotation’: float

      > default value = { ‘ratio’: (16,9), ‘up’: 0,’rotation’: 0.0}

    Returns:

      (hdrCore.image.Image,Required): input image

class hdrCore.processing.lightnessMask

  Bases: `hdrCore.processing.Processing`

  TODO - Documentation de la classe lightnessMask

  compute(img, **kwargs)

    Lightness Mask operator.

    Args:
      img: hdrCore.image.Image

        Required : hdr image

      kwargs: dict

        Optionnal : parameters TODO

    Returns:
      TODO

        TODO

class hdrCore.processing.resize

  Bases: `hdrCore.processing.Processing`

  TODO - Documentation de la classe Resize image processing

  compute(img, size=(None, None), anti_aliasing=False)

    Resize operator.

    Args:
      img: hdrCore.image.Image

        Required : hdr image

      size: TODO

        TODO

      anti_aliasing: boolean

        TODO

    Returns:
      TODO

        TODO

class hdrCore.processing.saturation

  Bases: `hdrCore.processing.Processing`

  TODO - Documentation de la classe saturation

  compute(img, **kwargs)

    saturation operator

    Args:

      img (hdrCore.image.Image,Required): input image kwargs (dict, Optionnal) : parameters

      > ‘saturation’: float ‘method’: str

      > > ‘method’ parameter must be gamma

      > default value: {‘saturation’: 0.0, ‘method’: ‘gamma’}

    Returns:

      (hdrCore.image.Image): output image

class hdrCore.processing.tmo_cctf

  Bases: `hdrCore.processing.Processing`

  TODO - Documentation de la classe tmo_cctf

  compute(img, **kwargs)

    CCTF tone mapping operator

    Args:
      img: hdrCore.image.Image

        Required : hdr image

      kwargs: dict

        Optionnal : parameters ‘function’ : ‘sRGB’ str

    Returns:
      TODO

        TODO

hdrCore.processing.Lab_to_XYZ(Lab)

  convert pixel array from Lab to XYZ colorspace.

  Args:

    Lab (numpy.ndarray, Required): array of pixels in Lab colorspace.

  Returns:

    (numpy.ndarray): array of pixels in XYZ colorspace.

hdrCore.processing.Lab_to_sRGB(Lab, apply_cctf_encoding=True, clip=False)

  convert pixel array from Lab to sRGB colorspace.

  Args:

    Lab (numpy.ndarray, Required): array of pixels in Lab colorspace. apply_cctf_encoding (boolean, Optionnal): True to encode with sRGB cctf encoding function. clip (boolean, Optionnal): False do not clip values beyond colorspace limits (RGB values < 0 or RGB values > 1).

  Returns:

    (numpy.ndarray): array of pixels in sRGB colorspace.

hdrCore.processing.Lch_to_sRGB(Lch, apply_cctf_encoding=True, clip=False)

  convert pixel array from Lch to sRGB colorspace.

  Args:

    Lch (numpy.ndarray, Required): array of pixels in Lab colorspace. apply_cctf_encoding (boolean, Optionnal): True to encode with sRGB cctf encoding function. clip (boolean, Optionnal): False do not clip values beyond colorspace limits (RGB values < 0 or RGB values > 1).

  Returns:

    (numpy.ndarray): array of pixels in sRGB colorspace.

hdrCore.processing.XYZ_to_Lab(XYZ)

  convert pixel array from Lab to Lab colorspace.

  Args:

    XYZ (numpy.ndarray, Required): array of pixels in Lab colorspace.

  Returns:

    (numpy.ndarray): array of pixels in Lab colorspace.

hdrCore.processing.XYZ_to_sRGB(XYZ, apply_cctf_encoding=True)

  convert pixel array from XYZ to sRGB colorspace.

  Args:

    XYZ (numpy.ndarray, Required): array of pixels in XYZ colorspace. apply_cctf_encoding (boolean, Optionnal): True to encode with sRGB cctf encoding function.

  Returns:

    (numpy.ndarray): array of pixels in sRGB colorspace.

hdrCore.processing.sRGB_to_Lab(RGB, apply_cctf_decoding=True)

  convert pixel array from sRGB to Lab colorspace.

  Args:

    RGB (numpy.ndarray, Required): array of pixels in RGB colorspace. apply_cctf_decoding (boolean, Optionnal): True to encode with sRGB cctf decoding function.

  Returns:

    (numpy.ndarray): array of pixels in sRGB colorspace.

hdrCore.processing.sRGB_to_XYZ(RGB, apply_cctf_decoding=True)

  convert pixel array from sRGB to XYZ colorspace.

  Args:

    RGB (numpy.ndarray, Required): array of pixels in sRGB colorspace. apply_cctf_decoding (boolean, Optionnal): True to encode with sRGB cctf decoding function.

  Returns:

    (numpy.ndarray): array of pixels in XYZ colorspace.

## hdrCore.quality module

package hdrCore consists of the core classes for HDR imaging: (1) classes: class imageType

> class channel class Image class ColorSpace class Histogram

2. class: class metadata

3. processing functions and classes:

     def XYZ_to_sRGB(XYZ,apply_cctf_encoding=True): def sRGB_to_XYZ(RGB,apply_cctf_decoding=True): def Lab_to_XYZ(Lab) def XYZ_to_Lab(XYZ) def Lab_to_sRGB(Lab, apply_cctf_encoding=True, clip = False) def sRGB_to_Lab(RGB, apply_cctf_decoding=True) def Lch_to_sRGB(Lch,apply_cctf_encoding=True, clip=False) class Processing(object) class tmo_cctf(Processing) class exposure(Processing) class contrast(Processing) class clip(Processing) class ColorSpaceTransform(Processing) class resize(Processing) class Ycurve(Processing) class saturation(Processing) class lightnessMask(Processing) class geometry(Processing)

4. processing nodes that encapsulate processing objects in process-pipe:

     class ProcessNode(object)

5. process-pipe that defines the pipeline of processing:

     class ProcessPipe(object)

6. some utils functions:

     def filenamesplit(filename) def filterlistdir(path,extList) def ndarray2vector(nda) def NPlinearWeightMask(x,xMin,xMax,xTolerance) def croppRotated(h,w,alpha)

7. HDRdisplay model

class hdrCore.quality.quality

  Bases: `object`

  TODO - Documentation de la classe quality

  Attributes:
    _image: TODO

      TODO

    imageNpath: TODO

      TODO

    user: TODO

      TODO

    score: TODO

      TODO

    artifact: TODO

      TODO

  toDict()

    Convert the object into a dict.

    Returns:
      TODO

        TODO

## hdrCore.utils module

package hdrCore consists of the core classes for HDR imaging: (1) classes: class imageType

> class channel class Image class ColorSpace class Histogram

2. class: class metadata

3. processing functions and classes:

     def XYZ_to_sRGB(XYZ,apply_cctf_encoding=True): def sRGB_to_XYZ(RGB,apply_cctf_decoding=True): def Lab_to_XYZ(Lab) def XYZ_to_Lab(XYZ) def Lab_to_sRGB(Lab, apply_cctf_encoding=True, clip = False) def sRGB_to_Lab(RGB, apply_cctf_decoding=True) def Lch_to_sRGB(Lch,apply_cctf_encoding=True, clip=False) class Processing(object) class tmo_cctf(Processing) class exposure(Processing) class contrast(Processing) class clip(Processing) class ColorSpaceTransform(Processing) class resize(Processing) class Ycurve(Processing) class saturation(Processing) class lightnessMask(Processing) class geometry(Processing)

4. processing nodes that encapsulate processing objects in process-pipe:

     class ProcessNode(object)

5. process-pipe that defines the pipeline of processing:

     class ProcessPipe(object)

6. some utils functions:

     def filenamesplit(filename) def filterlistdir(path,extList) def ndarray2vector(nda) def NPlinearWeightMask(x,xMin,xMax,xTolerance) def croppRotated(h,w,alpha)

7. HDRdisplay model

hdrCore.utils.NPlinearWeightMask(x, xMin, xMax, xTolerance)

  TODO - Documentation de la méthode NPlinearWeightMask

  Args:
    x: TODO

      TODO

    xMin: TODO

      TODO

    xMax: TODO

      TODO

    xTolerance: TODO

      TODO

  Returns:
    TODO

      TODO

hdrCore.utils.croppRotated(h, w, alpha)

  TODO - Documentation de la méthode croppRotated

  Args:
    h: TODO

      TODO

    w: TODO

      TODO

    alpha: TODO

      TODO

  Returns:
    TODO

      TODO

hdrCore.utils.filenamesplit(filename)

  retrieve path, name and extension from a filename.

  Args:

    filename (str,Required): filename

  Returns:

    (str,str,str): (path,name,ext)

  Example:

    filenamesplit(“./dir0/dir1/name.ext”) returns (“./dir0/dir1/”,”name”,”ext”)

hdrCore.utils.filterlistdir(path, extList)

  return the files in path that end by one of the string in extList

  Args:

    path (str, Required): path to directory extList (tuple of str, Required)

  Returns:

    ([str])or (tuple of str) or (str): list, tuple or single str

  Example:

    filterlistdir(‘./images/’, (‘.jpg’, ‘.JPG’, ‘.png’))

hdrCore.utils.ndarray2vector(nda)

  transform 2D array of color data to vector

  Args:

    nda (numpy.ndarray, Required): numpy array (2D of scalar or vector)

  Returns:

    (numpy.ndarray, Required): numpy array (1D of scalar or vector)

## Module contents