class_docstr: Three-dimensional color lookup table.
  
  Transforms 3-channel pixels using the values of the channels as coordinates
  in the 3D lookup table and interpolating the nearest elements.
  
  This method allows you to apply almost any color transformation
  in constant time by using pre-calculated decimated tables.
  
  .. versionadded:: 5.2.0
  
  :param size: Size of the table. One int or tuple of (int, int, int).
               Minimal size in any dimension is 2, maximum is 65.
  :param table: Flat lookup table. A list of ``channels * size**3``
                float elements or a list of ``size**3`` channels-sized
                tuples with floats. Channels are changed first,
                then first dimension, then second, then third.
                Value 0.0 corresponds lowest value of output, 1.0 highest.
  :param channels: Number of channels in the table. Could be 3 or 4.
                   Default is 3.
  :param target_mode: A mode for the result image. Should have not less
                      than ``channels`` channels. Default is ``None``,
                      which means that mode wouldn't be changed.
class_docstr_tok: ["Three-dimensional","color","lookup","table",".","Transforms","3-channel","pixels","using","the","values","of","the","channels","as","coordinates","in","the","3D","lookup","table","and","interpolating","the","nearest","elements",".","This","method","allows","you","to","apply","almost","any","color","transformation","in","constant","time","by","using","pre-calculated","decimated","tables",".","..","versionadded",":",":","5.2.0",":","param","size",":","Size","of","the","table",".","One","int","or","tuple","of","(","int",",","int",",","int",")",".","Minimal","size","in","any","dimension","is","2",",","maximum","is","65.",":","param","table",":","Flat","lookup","table",".","A","list","of","``","channels","*","size","*","*","3","``","float","elements","or","a","list","of","``","size","*","*","3","``","channels-sized","tuples","with","floats",".","Channels","are","changed","first",",","then","first","dimension",",","then","second",",","then","third",".","Value","0.0","corresponds","lowest","value","of","output",",","1.0","highest",".",":","param","channels",":","Number","of","channels","in","the","table",".","Could","be","3","or","4",".","Default","is","3.",":","param","target_mode",":","A","mode","for","the","result","image",".","Should","have","not","less","than","``","channels","``","channels",".","Default","is","``","None","``",",","which","means","that","mode","would","n't","be","changed","."]
code: def __repr__(self):
      r = [
          "{} from {}".format(
              self.__class__.__name__, self.table.__class__.__name__
          ),
          "size={:d}x{:d}x{:d}".format(*self.size),
          "channels={:d}".format(self.channels),
      ]
      if self.mode:
          r.append("target_mode={}".format(self.mode))
      return "<{}>".format(" ".join(r))
  
imports: from __future__ import division
  import functools
label_desc: Use image node_id 5 for calling the Color3DLUT obj's underlying member method code with example usage: obj.__repr__() and returns: str