In HSV, the hue is defined as
H = atan2( sqrt(3)*(G-B), 2R-G-B )
(link). In each of the six sectors (R-Y, Y-G ...), there are equally many hues. Additionally, there are six hues at the boundary between the regions. So, 6 + 6 * huesRY
.
In the red-yellow sector, R > G > B, so both arguments to atan2 are positive.
count sqrt(3) * (G-B) / (2R-G-B)
=count (G-B) / (2R-G-B)
=count (G-B) / ((G-B) + (2R-2G))
since we can apply any linear transformation to the sets of [x,y] and not change the count of its ratios, x / (x+2y) == x / y
=count (G-B) / (R-G)
if we subtract the same value from all R,G,B, the ratio does not change, so assume B=0
=count G / (R-G)
=count G / R
so, there are six times as many hues as there are ratios between two positive integers that are both below 2^8 (assuming 8 bits per channel), and six more. There are as many ratios as there are pairs of coprime positive integers. The number of positive integers below n
that are coprime with n
is called the Euler's totient function. OEIS lists its partial sums. There are exactly 19948 pairs of coprime positive integers below 256.
6 * 19948 + 6 = 119 694
There are exactly 119 694 different hues in the HSV model that correspond to a color in the 8-bit RGB model. Note that they are not spaced evenly.
If 8 bits per channel are used in the HSV model, then there are less colors than in the RGB model with 8 bits per channel simply because some HSV triples map to the same color while every RGB triple defines a different color.