The color of each pixel in an image is specified by a combination of three values: red, green, and blue. These values typically take 256 levels, leading to 256^3 ~ 17 million possible colors.
In this GUI you can set a threshold value for each channel (R/G/B). If the color is above the threshold, it takes the maximum value (255); if not, it takes the minimum value (0). This "all or nothing" approach means that each color channel has only two possible levels, resulting in only 2^3 = 8 colors.
Hence, each of the 17 million possible colors is "rounded" to one of: red, green, blue, cyan, yellow, magenta, black, and white.
The result is an effect reminiscent of Andy Warhol's iconic celebrity paintings.
Thanks for that, Mohammad. Dumb copy-paste error on my part. I've submitted a corrected version.
Great App. However, I have found one bug here. When you change the threshold value of G and B channel, the changed value is always reflected to the R channel instead of being reflected to the corresponding channels.
Fixed bug where changes to G and B channel were reflected in R channel instead.
Updated file to include as an App for R2012b.