module

CrImage::Util::Quantization

Advanced color quantization algorithms for palette generation. Implements median cut and octree quantization for better color reduction.

Class methods

generate_palette(src : Image, max_colors : Int32 = 256, algorithm : QuantizationAlgorithm = QuantizationAlgorithm::MedianCut) : Color::Palette

Generates an optimal color palette from an image using the specified algorithm.

Parameters:

  • src : The source image
  • max_colors : Maximum number of colors in palette (2-256)
  • algorithm : Quantization algorithm to use (default: MedianCut)

Returns: A Color::Palette with optimal colors

Example:

img = CrImage::PNG.read("photo.png")
palette = CrImage::Util::Quantization.generate_palette(img, 16)
dithered = img.dither(palette)
Source