code: def apply_palette(img, palette, options):
  
      '''Apply the pallete to the given image. The first step is to set all
  background pixels to the background color; then, nearest-neighbor
  matching is used to map each foreground color to the closest one in
  the palette.
  
      '''
  
      if not options.quiet:
          print('  applying palette...')
  
      bg_color = palette[0]
  
      fg_mask = get_fg_mask(bg_color, img, options)
  
      orig_shape = img.shape
  
      pixels = img.reshape((-1, 3))
      fg_mask = fg_mask.flatten()
  
      num_pixels = pixels.shape[0]
  
      labels = np.zeros(num_pixels, dtype=np.uint8)
  
      labels[fg_mask], _ = vq(pixels[fg_mask], palette)
  
      return labels.reshape(orig_shape[:-1]f apply_palette(img, palette, options):
  
      '''Apply the pallete to the given image. The first step is to set all
  background pixels to the background color; then, nearest-neighbor
  matching is used to map each foreground color to the closest one in
  the palette.
  
      '''
  
      if not options.quiet:
          print('  applying palette...')
  
      bg_color = palette[0]
  
      fg_mask = get_fg_mask(bg_color, img, options)
  
      orig_shape = img.shape
  
      pixels = img.reshape((-1, 3))
      fg_mask = fg_mask.flatten()
  
      num_pixels = pixels.shape[0]
  
      labels = np.zeros(num_pixels, dtype=np.uint8)
  
      labels[fg_mask], _ = vq(pixels[fg_mask], palette)
  
      return labels.reshape(orig_shape[:-1])
docs: Apply the pallete to the given image. The first step is to set all
  background pixels to the background color; then, nearest-neighbor
  matching is used to map each foreground color to the closest one in
  the palette.