aboutsummaryrefslogtreecommitdiffstats
path: root/meowpp/colors/!readme.asciidoc
blob: 28b097ae5026dda6eca9e8c016e47598f8419d0b (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78


一些 *color space* 以及這些space的 *transformate function* 都放在這資料夾下

[NOTE]
目前transformation function的準確率還很低, 有待以後加強

===== Color3_Space.h

`class Color3_Space<T>` *Channel Number = 3* 的 Color Space 的共通 *Base class*

===== RGB_Space.h

Channel分別是

* Red
* Green
* Blue

.Classes
* `meow::RGBi_Space` 用 'int' 存資料, 每個channel數值合法範圍是 *0~255*
* `meow::RGBf_Space` 用 'double' 存資料, 每個channel數值合法範圍是 *0.0~1.0*

.Functions
* `meow::colorTransformation(in, *out)` for
** RGBi_Space <--> RGBf_Space

===== YUV_Space.h

Channel分別是

* Y 明度
* U 色度
* V 濃度

.Classes
* `meow::YUVf_Space` 用 'double' 存資料, 每個channel數值合法範圍是 *0~1.0*

.Functions
* `meow::colorTransformation(in, *out)` for
** YUVf_Space <--> RGBi_Space
** YUVf_Space <--> RGBf_Space

===== HSL_Space.h

Channel分別是

* H 色調
* S 飽和度
* L 亮度

.Classes
* `meow::HSLf_Space` 用 'double' 存資料, 每個channel數值合法範圍是 *0~1.0*

.Functions
* `meow::colorTransformation(in, *out)` for
** HSLf_Space <--> RGBi_Space
** HSLf_Space <--> RGBf_Space
** HSLf_Space <--> YUVf_Space

===== HSV_Space.h

Channel分別是

* H 色調
* S 飽和度
* V 亮度

.Classes
* `meow::HSVf_Space` 用 'double' 存資料, 每個channel數值合法範圍是 *0~1.0*

.Functions
* `meow::colorTransformation(in, *out)` for
** HSVf_Space <--> RGBi_Space
** HSVf_Space <--> RGBf_Space
** HSVf_Space <--> YUVf_Space
** HSVf_Space <--> HSLf_Space