Clusters pixel colors by dividing color space up into specified bins, then taking the average color of all the pixels within that bin.
Usage
colorClustersHist(
pixel_matrix,
bins = 3,
color_space = c("Lab", "sRGB", "Luv", "HSV"),
ref_white = "D65"
)
Arguments
- pixel_matrix
2D matrix of pixels to classify (rows = pixels, columns = channels).
- bins
Number of bins for each channel OR a vector of length 3 with bins for each channel.
bins = 3
will result in 3^3 = 27 bins;bins = c(2, 2, 3)
will result in 223 = 12 bins (2 red, 2 green, 3 blue if you're in RGB color space), etc.- color_space
Color space in which to cluster colors, passed to
[grDevices]{convertColor}
. One of "sRGB", "Lab", or "Luv". Default is "Lab", a perceptually uniform (for humans) color space.- ref_white
Reference white for converting to different color spaces. D65 (the default) corresponds to standard daylight.
Value
A list with the following elements:
pixel_assignments
: A vector of color center assignments for each pixel.centers
: A matrix of color centers.sizes
: The number of pixels assigned to each cluster.
Details
Called by colorClusters()
. See that documentation for
examples.