File: handle_image.html

package info (click to toggle)
freemat 4.0-3
  • links: PTS, VCS
  • area: main
  • in suites: squeeze
  • size: 174,756 kB
  • ctags: 67,023
  • sloc: cpp: 351,059; ansic: 255,892; sh: 40,590; makefile: 4,387; perl: 4,058; asm: 3,313; pascal: 2,718; fortran: 1,722; ada: 1,681; ml: 1,360; cs: 879; csh: 795; python: 430; sed: 162; lisp: 160; awk: 5
file content (93 lines) | stat: -rw-r--r-- 2,532 bytes parent folder | download | duplicates (2)
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
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">

<HTML>
<HEAD>
<TITLE>IMAGE Image Display Function
</TITLE>
</HEAD>
<BODY>
<H2>IMAGE Image Display Function
</H2>
<P>
Section: <A HREF=sec_handle.html> Handle-Based Graphics </A>
<H3>Usage</H3>
The <code>image</code> command has the following general syntax
<PRE>
  handle = image(x,y,C,properties...)
</PRE>
<P>
where <code>x</code> is a two vector containing the <code>x</code> coordinates
of the first and last pixels along a column, and <code>y</code> is a
two vector containing the <code>y</code> coordinates of the first and
last pixels along a row.  The matrix <code>C</code> constitutes the
image data.  It must either be a scalar matrix, in which case
the image is colormapped using the  <code>colormap</code> for the current
figure.  If the matrix is <code>M x N x 3</code>, then <code>C</code> is intepreted
as RGB data, and the image is not colormapped.  The <code>properties</code>
argument is a set of <code>property/value</code> pairs that affect the
final image.  You can also omit the <code>x</code> and <code>y</code>, 
<PRE>
  handle = image(C, properties...)
</PRE>
<P>
in which case they default to <code>x = [1,size(C,2)]</code> and 
<code>y = [1,size(C,1)]</code>.  Finally, you can use the <code>image</code> function
with only formal arguments
<PRE>
  handle = image(properties...)
</PRE>
<P>

To support legacy FreeMat code, you can also use the following
form of <code>image</code>
<PRE>
  image(C, zoomfactor)
</PRE>
<P>
which is equivalent to <code>image(C)</code> with the axes removed so that
the image takes up the full figure window, and the size of the
figure window adjusted to achieve the desired zoom factor using the
<code>zoom</code> command.
<H3>Example</H3>
In this example, we create an image that is <code>512 x 512</code> pixels
square, and set the background to a noise pattern.  We set the central
<code>128 x 256</code> pixels to be white.
<PRE>
--&gt; x = rand(512);
--&gt; x((-64:63)+256,(-128:127)+256) = 1.0;
--&gt; figure

ans = 
 1 

--&gt; image(x)
--&gt; colormap(gray)
</PRE>
<P>

The resulting image looks like:
<P>
<DIV ALIGN="CENTER">
<IMG SRC="image1.png">
</DIV>
<P>
Here is an example of an RGB image 
<PRE>
--&gt; t = linspace(0,1);
--&gt; red = t'*t;
--&gt; green = t'*(t.^2);
--&gt; blue = t'*(0*t+1);
--&gt; A(:,:,1) = red; 
--&gt; A(:,:,2) = green; 
--&gt; A(:,:,3) = blue;
--&gt; image(A);
</PRE>
<P>
The resulting image looks like:
<P>
<DIV ALIGN="CENTER">
<IMG SRC="image2.png">
</DIV>
<P>
</BODY>
</HTML>