File: Color-Conversion.html

package info (click to toggle)
octave 6.2.0-1
  • links: PTS, VCS
  • area: main
  • in suites: bullseye
  • size: 124,192 kB
  • sloc: cpp: 322,665; ansic: 68,088; fortran: 20,980; objc: 8,121; sh: 7,719; yacc: 4,266; lex: 4,123; perl: 1,530; java: 1,366; awk: 1,257; makefile: 424; xml: 147
file content (142 lines) | stat: -rw-r--r-- 6,163 bytes parent folder | download
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
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<!-- Created by GNU Texinfo 6.7, http://www.gnu.org/software/texinfo/ -->
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>Color Conversion (GNU Octave (version 6.2.0))</title>

<meta name="description" content="Color Conversion (GNU Octave (version 6.2.0))">
<meta name="keywords" content="Color Conversion (GNU Octave (version 6.2.0))">
<meta name="resource-type" content="document">
<meta name="distribution" content="global">
<meta name="Generator" content="makeinfo">
<link href="index.html" rel="start" title="Top">
<link href="Concept-Index.html" rel="index" title="Concept Index">
<link href="index.html#SEC_Contents" rel="contents" title="Table of Contents">
<link href="Image-Processing.html" rel="up" title="Image Processing">
<link href="Audio-Processing.html" rel="next" title="Audio Processing">
<link href="Plotting-on-top-of-Images.html" rel="prev" title="Plotting on top of Images">
<style type="text/css">
<!--
a.summary-letter {text-decoration: none}
blockquote.indentedblock {margin-right: 0em}
div.display {margin-left: 3.2em}
div.example {margin-left: 3.2em}
div.lisp {margin-left: 3.2em}
kbd {font-style: oblique}
pre.display {font-family: inherit}
pre.format {font-family: inherit}
pre.menu-comment {font-family: serif}
pre.menu-preformatted {font-family: serif}
span.nolinebreak {white-space: nowrap}
span.roman {font-family: initial; font-weight: normal}
span.sansserif {font-family: sans-serif; font-weight: normal}
ul.no-bullet {list-style: none}
-->
</style>
<link rel="stylesheet" type="text/css" href="octave.css">


</head>

<body lang="en">
<span id="Color-Conversion"></span><div class="header">
<p>
Previous: <a href="Plotting-on-top-of-Images.html" accesskey="p" rel="prev">Plotting on top of Images</a>, Up: <a href="Image-Processing.html" accesskey="u" rel="up">Image Processing</a> &nbsp; [<a href="index.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="Concept-Index.html" title="Index" rel="index">Index</a>]</p>
</div>
<hr>
<span id="Color-Conversion-1"></span><h3 class="section">32.5 Color Conversion</h3>

<p>Octave supports conversion from the RGB color system to the HSV color system
and vice versa.  It is also possible to convert from a color RGB image to a
grayscale image.
</p>
<span id="XREFrgb2hsv"></span><dl>
<dt id="index-rgb2hsv">: <em><var>hsv_map</var> =</em> <strong>rgb2hsv</strong> <em>(<var>rgb_map</var>)</em></dt>
<dt id="index-rgb2hsv-1">: <em><var>hsv_img</var> =</em> <strong>rgb2hsv</strong> <em>(<var>rgb_img</var>)</em></dt>
<dd><p>Transform a colormap or image from RGB to HSV color space.
</p>
<p>A color in the RGB space consists of red, green, and blue intensities.
</p>
<p>A color in HSV space is represented by hue, saturation and value
(brightness) levels in a cylindrical coordinate system.  Hue is the
azimuth and describes the dominant color.  Saturation is the radial
distance and gives the amount of hue mixed into the color.  Value is
the height and is the amount of light in the color.
</p>
<p>Output class and size will be the same as input.
</p>

<p><strong>See also:</strong> <a href="#XREFhsv2rgb">hsv2rgb</a>, <a href="Representing-Images.html#XREFrgb2ind">rgb2ind</a>, <a href="#XREFrgb2gray">rgb2gray</a>.
</p></dd></dl>


<span id="XREFhsv2rgb"></span><dl>
<dt id="index-hsv2rgb">: <em><var>rgb_map</var> =</em> <strong>hsv2rgb</strong> <em>(<var>hsv_map</var>)</em></dt>
<dt id="index-hsv2rgb-1">: <em><var>rgb_img</var> =</em> <strong>hsv2rgb</strong> <em>(<var>hsv_img</var>)</em></dt>
<dd><p>Transform a colormap or image from HSV to RGB color space.
</p>
<p>A color in HSV space is represented by hue, saturation and value
(brightness) levels in a cylindrical coordinate system.  Hue is the
azimuth and describes the dominant color.  Saturation is the radial
distance and gives the amount of hue mixed into the color.  Value is
the height and is the amount of light in the color.
</p>
<p>The input can be both a colormap or RGB image.  In the case of floating
point input, values are expected to be on the [0 1] range.  In the case
of hue (azimuth), since the value corresponds to an angle,
<code>mod (h, 1)</code> is used.
</p>
<div class="example">
<pre class="example">&gt;&gt; hsv2rgb ([0.5 1 1])
&rArr; ans = 0 1 1

&gt;&gt; hsv2rgb ([2.5 1 1])
&rArr; ans = 0 1 1

&gt;&gt; hsv2rgb ([3.5 1 1])
&rArr; ans = 0 1 1
</pre></div>

<p>Output class and size will be the same as input.
</p>

<p><strong>See also:</strong> <a href="#XREFrgb2hsv">rgb2hsv</a>, <a href="Representing-Images.html#XREFind2rgb">ind2rgb</a>.
</p></dd></dl>


<span id="XREFrgb2gray"></span><dl>
<dt id="index-rgb2gray">: <em><var>I</var> =</em> <strong>rgb2gray</strong> <em>(<var>rgb_img</var>)</em></dt>
<dt id="index-rgb2gray-1">: <em><var>gray_map</var> =</em> <strong>rgb2gray</strong> <em>(<var>rgb_map</var>)</em></dt>
<dd><p>Transform an image or colormap from red-green-blue (RGB) color space to
a grayscale intensity image.
</p>
<p>The input may be of class uint8, int8, uint16, int16, single, or double.
The output is of the same class as the input.
</p>
<p>Implementation Note:
The grayscale intensity is calculated as
</p>
<div class="example">
<pre class="example"><var>I</var> = 0.298936*<var>R</var> + 0.587043*<var>G</var> + 0.114021*<var>B</var>
</pre></div>

<p>which corresponds to the luminance channel when RGB is translated to
YIQ as documented in <a href="https://en.wikipedia.org/wiki/YIQ">https://en.wikipedia.org/wiki/YIQ</a>.
</p>
<p><strong>See also:</strong> <a href="#XREFrgb2hsv">rgb2hsv</a>, <a href="Representing-Images.html#XREFrgb2ind">rgb2ind</a>.
</p></dd></dl>




<hr>
<div class="header">
<p>
Previous: <a href="Plotting-on-top-of-Images.html" accesskey="p" rel="prev">Plotting on top of Images</a>, Up: <a href="Image-Processing.html" accesskey="u" rel="up">Image Processing</a> &nbsp; [<a href="index.html#SEC_Contents" title="Table of contents" rel="contents">Contents</a>][<a href="Concept-Index.html" title="Index" rel="index">Index</a>]</p>
</div>



</body>
</html>