RGB 到 HLS/HSV 的转换
$$H:=\begin{cases}0,&{if\;MAX=MIN\Leftrightarrow R=G=B}\\60^\circ\cdot(0+{\frac{G-B}{MAX-MIN}}),&{if\;MAX=R}\\60^\circ\cdot(2+{\frac{B-R}{MAX-MIN}}),&{if\;MAX=G}\\60^\circ\cdot(4+{\frac{R-G}{MAX-MIN}}),&{if\;MAX=B}\end{cases}$$
$$if\;H\lt 0^\circ\;then\;H := H + 360^\circ $$
$$S_{HSV}:=\begin{cases}0,&{if\;MAX=0\Leftrightarrow R=G=B=0}\\{\frac{MAX-MIN}{MAX}},&otherwise\end{cases}$$
$$S_{HSL}:=\begin{cases}0,&{if\;MAX=0\Leftrightarrow R=G=B=0}\\0,&{if\;MIN=1\Leftrightarrow R=G=B=1}\\{\frac{MAX-MIN}{1-|MAX+MIN-1|}}={\frac{2MAX-2L}{1-|2L-1|}}={\frac{MAX-L}{min(L,1-L)}}\;,&otherwise\end{cases}$$
$$V:=MAX$$
$$L:={\frac{MAX+MIX}{2}}$$