code: def RGB_color_picker(obj):
      """Build a color representation from the string representation of an object
  
      This allows to quickly get a color from some data, with the
      additional benefit that the color will be the same as long as the
      (string representation of the) data is the same::
  
          >>> from colour import RGB_color_picker, Color
  
      Same inputs produce the same result::
  
          >>> RGB_color_picker("Something") == RGB_color_picker("Something")
          True
  
      ... but different inputs produce different colors::
  
          >>> RGB_color_picker("Something") != RGB_color_picker("Something else")
          True
  
      In any case, we still get a ``Color`` object::
  
          >>> isinstance(RGB_color_picker("Something"), Color)
          True
  
      """
  
      # Turn the input into a by 3-dividable string. SHA-384 is good because it
      # divides into 3 components of the same size, which will be used to
      # represent the RGB values of the color.
      digest = hashlib.sha384(str(obj).encode("utf-8")).hexdigest()
  
      # Split the digest into 3 sub-strings of equivalent size.
      subsize = int(len(digest) / 3)
      splitted_digest = [
          digest[i * subsize : (i + 1) * subsize] for i in range(3)
      ]
  
      # Convert those hexadecimal sub-strings into integer and scale them down
      # to the 0..1 range.
      max_value = float(int("f" * subsize, 16))
      components = (
          int(d, 16)
          / max_value  # Make a number from a list with hex digits  ## Scale it down to [0.0, 1.0]
          for d in splitted_digest
      )
  
      return Color(rgb2hex(components))
  
imports: from __future__ import with_statement, print_function
  import hashlib
  import re
  import sys
label_desc: Use image node_id 15 for calling a global function with example usage: RGB_color_picker(obj) and returns: Color