Mercurial > hg > octave-nkf
annotate scripts/image/imshow.m @ 17744:d63878346099
maint: Update copyright notices for release.
author | John W. Eaton <jwe@octave.org> |
---|---|
date | Wed, 23 Oct 2013 22:09:27 -0400 |
parents | 64ad713b3a64 |
children | 887df64e54e4 |
rev | line source |
---|---|
17744
d63878346099
maint: Update copyright notices for release.
John W. Eaton <jwe@octave.org>
parents:
17734
diff
changeset
|
1 ## Copyright (C) 1994-2013 John W. Eaton |
11587
c792872f8942
all script files: untabify and strip trailing whitespace
John W. Eaton <jwe@octave.org>
parents:
11523
diff
changeset
|
2 ## |
2313 | 3 ## This file is part of Octave. |
4 ## | |
5 ## Octave is free software; you can redistribute it and/or modify it | |
6 ## under the terms of the GNU General Public License as published by | |
7016 | 7 ## the Free Software Foundation; either version 3 of the License, or (at |
8 ## your option) any later version. | |
2313 | 9 ## |
10 ## Octave is distributed in the hope that it will be useful, but | |
11 ## WITHOUT ANY WARRANTY; without even the implied warranty of | |
12 ## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | |
13 ## General Public License for more details. | |
14 ## | |
15 ## You should have received a copy of the GNU General Public License | |
7016 | 16 ## along with Octave; see the file COPYING. If not, see |
17 ## <http://www.gnu.org/licenses/>. | |
1024 | 18 |
3381 | 19 ## -*- texinfo -*- |
10793
be55736a0783
Grammarcheck the documentation from m-files.
Rik <octave@nomad.inbox5.com>
parents:
10648
diff
changeset
|
20 ## @deftypefn {Function File} {} imshow (@var{im}) |
5934 | 21 ## @deftypefnx {Function File} {} imshow (@var{im}, @var{limits}) |
22 ## @deftypefnx {Function File} {} imshow (@var{im}, @var{map}) | |
7074 | 23 ## @deftypefnx {Function File} {} imshow (@var{rgb}, @dots{}) |
5934 | 24 ## @deftypefnx {Function File} {} imshow (@var{filename}) |
6309 | 25 ## @deftypefnx {Function File} {} imshow (@dots{}, @var{string_param1}, @var{value1}, @dots{}) |
14001
5f0bb45e615c
doc: Update documentation for functions returning a graphics handle h (Bug #34761)
Rik <octave@nomad.inbox5.com>
parents:
13738
diff
changeset
|
26 ## @deftypefnx {Function File} {@var{h} =} imshow (@dots{}) |
6368 | 27 ## Display the image @var{im}, where @var{im} can be a 2-dimensional |
14897
8e2a6fc55787
doc: Use 'grayscale' rather than 'gray-scale' in documentation.
Rik <rik@octave.org>
parents:
14366
diff
changeset
|
28 ## (grayscale image) or a 3-dimensional (RGB image) matrix. |
5934 | 29 ## |
30 ## If @var{limits} is a 2-element vector @code{[@var{low}, @var{high}]}, | |
31 ## the image is shown using a display range between @var{low} and | |
32 ## @var{high}. If an empty matrix is passed for @var{limits}, the | |
33 ## display range is computed as the range between the minimal and the | |
34 ## maximal value in the image. | |
3426 | 35 ## |
5934 | 36 ## If @var{map} is a valid color map, the image will be shown as an indexed |
37 ## image using the supplied color map. | |
38 ## | |
39 ## If a file name is given instead of an image, the file will be read and | |
40 ## shown. | |
3426 | 41 ## |
5934 | 42 ## If given, the parameter @var{string_param1} has value |
9051
1bf0ce0930be
Grammar check TexInfo in all .m files
Rik <rdrider0-list@yahoo.com>
parents:
8920
diff
changeset
|
43 ## @var{value1}. @var{string_param1} can be any of the following: |
14366
b76f0740940e
doc: Periodic grammar check of documentation.
Rik <octave@nomad.inbox5.com>
parents:
14237
diff
changeset
|
44 ## |
11595
5ec6aa05638d
Prevent doubled quotes around @table items in Info.
Rik <octave@nomad.inbox5.com>
parents:
11587
diff
changeset
|
45 ## @table @asis |
17281
bc924baa2c4e
doc: Add new @qcode macro for code samples which are quoted.
Rik <rik@octave.org>
parents:
14897
diff
changeset
|
46 ## @item @qcode{"displayrange"} |
5934 | 47 ## @var{value1} is the display range as described above. |
17734
64ad713b3a64
imshow.m: Add support for "xdata" and "ydata" options, make option parser case insensitive
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
17281
diff
changeset
|
48 ## |
64ad713b3a64
imshow.m: Add support for "xdata" and "ydata" options, make option parser case insensitive
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
17281
diff
changeset
|
49 ## @item "xdata" |
64ad713b3a64
imshow.m: Add support for "xdata" and "ydata" options, make option parser case insensitive
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
17281
diff
changeset
|
50 ## If @var{value1} is a two element vector, it must contain horizontal axis |
64ad713b3a64
imshow.m: Add support for "xdata" and "ydata" options, make option parser case insensitive
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
17281
diff
changeset
|
51 ## limits in the form [xmin xmax]; Otherwise @var{value1} must be a |
64ad713b3a64
imshow.m: Add support for "xdata" and "ydata" options, make option parser case insensitive
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
17281
diff
changeset
|
52 ## vector and only the first and last elements will be used for xmin and |
64ad713b3a64
imshow.m: Add support for "xdata" and "ydata" options, make option parser case insensitive
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
17281
diff
changeset
|
53 ## xmax respectively. |
64ad713b3a64
imshow.m: Add support for "xdata" and "ydata" options, make option parser case insensitive
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
17281
diff
changeset
|
54 ## |
64ad713b3a64
imshow.m: Add support for "xdata" and "ydata" options, make option parser case insensitive
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
17281
diff
changeset
|
55 ## @item "ydata" |
64ad713b3a64
imshow.m: Add support for "xdata" and "ydata" options, make option parser case insensitive
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
17281
diff
changeset
|
56 ## If @var{value1} is a two element vector, it must contain vertical axis |
64ad713b3a64
imshow.m: Add support for "xdata" and "ydata" options, make option parser case insensitive
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
17281
diff
changeset
|
57 ## limits in the form [ymin ymax]; Otherwise @var{value1} must be a |
64ad713b3a64
imshow.m: Add support for "xdata" and "ydata" options, make option parser case insensitive
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
17281
diff
changeset
|
58 ## vector and only the first and last elements will be used for ymin and |
64ad713b3a64
imshow.m: Add support for "xdata" and "ydata" options, make option parser case insensitive
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
17281
diff
changeset
|
59 ## ymax respectively. |
64ad713b3a64
imshow.m: Add support for "xdata" and "ydata" options, make option parser case insensitive
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
17281
diff
changeset
|
60 ## |
5934 | 61 ## @end table |
14001
5f0bb45e615c
doc: Update documentation for functions returning a graphics handle h (Bug #34761)
Rik <octave@nomad.inbox5.com>
parents:
13738
diff
changeset
|
62 ## |
5f0bb45e615c
doc: Update documentation for functions returning a graphics handle h (Bug #34761)
Rik <octave@nomad.inbox5.com>
parents:
13738
diff
changeset
|
63 ## The optional return value @var{h} is a graphics handle to the image. |
5642 | 64 ## @seealso{image, imagesc, colormap, gray2ind, rgb2ind} |
3373 | 65 ## @end deftypefn |
904 | 66 |
7074 | 67 ## Author: Stefan van der Walt <stefan@sun.ac.za> |
5934 | 68 ## Author: Soren Hauberg <hauberg at gmail dot com> |
2312 | 69 ## Adapted-By: jwe |
559 | 70 |
7074 | 71 function h = imshow (im, varargin) |
559 | 72 |
5934 | 73 if (nargin == 0) |
74 print_usage (); | |
5318 | 75 endif |
76 | |
7328 | 77 display_range = NA; |
7074 | 78 true_color = false; |
79 indexed = false; | |
17734
64ad713b3a64
imshow.m: Add support for "xdata" and "ydata" options, make option parser case insensitive
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
17281
diff
changeset
|
80 xdata = ydata = []; |
7074 | 81 |
5935 | 82 ## Get the image. |
5934 | 83 if (ischar (im)) |
7931
de26beacb20f
imread.m: simplify; loadimage.m: deprecate
John W. Eaton <jwe@octave.org>
parents:
7930
diff
changeset
|
84 [im, map] = imread (im); |
7074 | 85 indexed = true; |
86 colormap (map); | |
87 endif | |
88 | |
10286
8cf666139297
imshow for logical matrices
John W. Eaton <jwe@octave.org>
parents:
9273
diff
changeset
|
89 nd = ndims (im); |
8cf666139297
imshow for logical matrices
John W. Eaton <jwe@octave.org>
parents:
9273
diff
changeset
|
90 |
8cf666139297
imshow for logical matrices
John W. Eaton <jwe@octave.org>
parents:
9273
diff
changeset
|
91 if (! ((isnumeric (im) || islogical (im)) && (nd == 2 || nd == 3))) |
11472
1740012184f9
Use uppercase for variable names in error() strings to match Info documentation. Only m-files done.
Rik <octave@nomad.inbox5.com>
parents:
11324
diff
changeset
|
92 error ("imshow: IM must be an image or the filename of an image"); |
5318 | 93 endif |
7074 | 94 |
10286
8cf666139297
imshow for logical matrices
John W. Eaton <jwe@octave.org>
parents:
9273
diff
changeset
|
95 if (nd == 2) |
7074 | 96 if (! indexed) |
97 colormap (gray ()); | |
98 endif | |
99 elseif (size (im, 3) == 3) | |
100 if (ismember (class (im), {"uint8", "uint16", "double", "single"})) | |
101 true_color = true; | |
102 else | |
103 error ("imshow: color image must be uint8, uint16, double, or single"); | |
104 endif | |
105 else | |
106 error ("imshow: expecting MxN or MxNx3 matrix for image"); | |
5318 | 107 endif |
108 | |
7074 | 109 narg = 1; |
110 while (narg <= numel (varargin)) | |
111 arg = varargin{narg++}; | |
112 if (isnumeric (arg)) | |
7331 | 113 if (numel (arg) == 2 || isempty (arg)) |
10433
2c01d24459fb
Detabify scripts in 'scripts/image/'
Soren Hauberg <hauberg@gmail.com>
parents:
10286
diff
changeset
|
114 display_range = arg; |
7074 | 115 elseif (columns (arg) == 3) |
10433
2c01d24459fb
Detabify scripts in 'scripts/image/'
Soren Hauberg <hauberg@gmail.com>
parents:
10286
diff
changeset
|
116 indexed = true; |
2c01d24459fb
Detabify scripts in 'scripts/image/'
Soren Hauberg <hauberg@gmail.com>
parents:
10286
diff
changeset
|
117 colormap (arg); |
7074 | 118 elseif (! isempty (arg)) |
10433
2c01d24459fb
Detabify scripts in 'scripts/image/'
Soren Hauberg <hauberg@gmail.com>
parents:
10286
diff
changeset
|
119 error ("imshow: argument number %d is invalid", narg+1); |
7074 | 120 endif |
121 elseif (ischar (arg)) | |
17734
64ad713b3a64
imshow.m: Add support for "xdata" and "ydata" options, make option parser case insensitive
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
17281
diff
changeset
|
122 switch (tolower (arg)) |
10433
2c01d24459fb
Detabify scripts in 'scripts/image/'
Soren Hauberg <hauberg@gmail.com>
parents:
10286
diff
changeset
|
123 case "displayrange"; |
2c01d24459fb
Detabify scripts in 'scripts/image/'
Soren Hauberg <hauberg@gmail.com>
parents:
10286
diff
changeset
|
124 display_range = varargin{narg++}; |
17734
64ad713b3a64
imshow.m: Add support for "xdata" and "ydata" options, make option parser case insensitive
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
17281
diff
changeset
|
125 case "xdata"; |
64ad713b3a64
imshow.m: Add support for "xdata" and "ydata" options, make option parser case insensitive
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
17281
diff
changeset
|
126 xdata = varargin{narg++}; |
64ad713b3a64
imshow.m: Add support for "xdata" and "ydata" options, make option parser case insensitive
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
17281
diff
changeset
|
127 if (! isvector (xdata)) |
64ad713b3a64
imshow.m: Add support for "xdata" and "ydata" options, make option parser case insensitive
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
17281
diff
changeset
|
128 error ("imshow: xdata must be a vector") |
64ad713b3a64
imshow.m: Add support for "xdata" and "ydata" options, make option parser case insensitive
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
17281
diff
changeset
|
129 endif |
64ad713b3a64
imshow.m: Add support for "xdata" and "ydata" options, make option parser case insensitive
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
17281
diff
changeset
|
130 xdata = [xdata(1) xdata(end)]; |
64ad713b3a64
imshow.m: Add support for "xdata" and "ydata" options, make option parser case insensitive
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
17281
diff
changeset
|
131 case "ydata"; |
64ad713b3a64
imshow.m: Add support for "xdata" and "ydata" options, make option parser case insensitive
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
17281
diff
changeset
|
132 ydata = varargin{narg++}; |
64ad713b3a64
imshow.m: Add support for "xdata" and "ydata" options, make option parser case insensitive
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
17281
diff
changeset
|
133 if (isvector (xdata)) |
64ad713b3a64
imshow.m: Add support for "xdata" and "ydata" options, make option parser case insensitive
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
17281
diff
changeset
|
134 error ("imshow: expect a vector for ydata") |
64ad713b3a64
imshow.m: Add support for "xdata" and "ydata" options, make option parser case insensitive
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
17281
diff
changeset
|
135 endif |
64ad713b3a64
imshow.m: Add support for "xdata" and "ydata" options, make option parser case insensitive
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
17281
diff
changeset
|
136 ydata = [ydata(1) ydata(end)]; |
10433
2c01d24459fb
Detabify scripts in 'scripts/image/'
Soren Hauberg <hauberg@gmail.com>
parents:
10286
diff
changeset
|
137 case {"truesize", "initialmagnification"} |
2c01d24459fb
Detabify scripts in 'scripts/image/'
Soren Hauberg <hauberg@gmail.com>
parents:
10286
diff
changeset
|
138 warning ("image: zoom argument ignored -- use GUI features"); |
2c01d24459fb
Detabify scripts in 'scripts/image/'
Soren Hauberg <hauberg@gmail.com>
parents:
10286
diff
changeset
|
139 otherwise |
2c01d24459fb
Detabify scripts in 'scripts/image/'
Soren Hauberg <hauberg@gmail.com>
parents:
10286
diff
changeset
|
140 warning ("imshow: unrecognized property %s", arg); |
2c01d24459fb
Detabify scripts in 'scripts/image/'
Soren Hauberg <hauberg@gmail.com>
parents:
10286
diff
changeset
|
141 narg++; |
7074 | 142 endswitch |
143 else | |
144 error ("imshow: argument number %d is invalid", narg+1); | |
145 endif | |
146 endwhile | |
147 | |
13738
7ee61e56eaed
Periodic merge of stable to default
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
13705
diff
changeset
|
148 ## Check for complex images. |
7ee61e56eaed
Periodic merge of stable to default
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
13705
diff
changeset
|
149 if (iscomplex (im)) |
7ee61e56eaed
Periodic merge of stable to default
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
13705
diff
changeset
|
150 warning ("imshow: only showing real part of complex image"); |
7ee61e56eaed
Periodic merge of stable to default
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
13705
diff
changeset
|
151 im = real (im); |
7ee61e56eaed
Periodic merge of stable to default
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
13705
diff
changeset
|
152 endif |
7ee61e56eaed
Periodic merge of stable to default
Jordi Gutiérrez Hermoso <jordigh@octave.org>
parents:
13705
diff
changeset
|
153 |
8117 | 154 ## Set default display range if display_range not set yet. |
7328 | 155 if (isempty (display_range)) |
7074 | 156 display_range = [min(im(:)), max(im(:))]; |
8117 | 157 elseif (isna (display_range)) |
7074 | 158 t = class (im); |
159 switch (t) | |
160 case {"double", "single", "logical"} | |
10433
2c01d24459fb
Detabify scripts in 'scripts/image/'
Soren Hauberg <hauberg@gmail.com>
parents:
10286
diff
changeset
|
161 display_range = [0, 1]; |
7074 | 162 case {"int8", "int16", "int32", "uint8", "uint16", "uint32"} |
11597
a066673566da
set clim to [0,1] so that scaled cdatamapping works as intended.
Jordi Gutiérrez Hermoso <jordigh@gmail.com>
parents:
11595
diff
changeset
|
163 display_range = [intmin(t), intmax(t)]; |
7074 | 164 otherwise |
10433
2c01d24459fb
Detabify scripts in 'scripts/image/'
Soren Hauberg <hauberg@gmail.com>
parents:
10286
diff
changeset
|
165 error ("imshow: invalid data type for image"); |
7074 | 166 endswitch |
167 endif | |
5934 | 168 |
6219 | 169 nans = isnan (im(:)); |
170 if (any (nans)) | |
171 warning ("Octave:imshow-NaN", | |
10433
2c01d24459fb
Detabify scripts in 'scripts/image/'
Soren Hauberg <hauberg@gmail.com>
parents:
10286
diff
changeset
|
172 "imshow: pixels with NaN or NA values are set to minimum pixel value"); |
6219 | 173 im(nans) = display_range(1); |
174 endif | |
175 | |
7074 | 176 ## This is for compatibility. |
7930
1f6eb3de1c4e
__img__.m, imshow.m, __go_draw_axes__.m: improve handling of truecolor images
John W. Eaton <jwe@octave.org>
parents:
7511
diff
changeset
|
177 if (! (indexed || (true_color && isinteger (im))) || islogical (im)) |
7074 | 178 im = double (im); |
179 endif | |
180 | |
11597
a066673566da
set clim to [0,1] so that scaled cdatamapping works as intended.
Jordi Gutiérrez Hermoso <jordigh@gmail.com>
parents:
11595
diff
changeset
|
181 ## Clamp the image to the range boundaries |
7315 | 182 if (! (true_color || indexed || islogical (im))) |
7328 | 183 low = display_range(1); |
184 high = display_range(2); | |
11597
a066673566da
set clim to [0,1] so that scaled cdatamapping works as intended.
Jordi Gutiérrez Hermoso <jordigh@gmail.com>
parents:
11595
diff
changeset
|
185 im(im < low) = low; |
a066673566da
set clim to [0,1] so that scaled cdatamapping works as intended.
Jordi Gutiérrez Hermoso <jordigh@gmail.com>
parents:
11595
diff
changeset
|
186 im(im > high) = high; |
4836 | 187 endif |
6368 | 188 |
9269
06518194dba0
fix displaying indexed images
Jaroslav Hajek <highegg@gmail.com>
parents:
9245
diff
changeset
|
189 if (true_color || indexed) |
17734
64ad713b3a64
imshow.m: Add support for "xdata" and "ydata" options, make option parser case insensitive
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
17281
diff
changeset
|
190 tmp = image (xdata, ydata, im); |
5934 | 191 else |
17734
64ad713b3a64
imshow.m: Add support for "xdata" and "ydata" options, make option parser case insensitive
Pantxo Diribarne <pantxo.diribarne@gmail.com>
parents:
17281
diff
changeset
|
192 tmp = image (xdata, ydata, im); |
10648
bc4eb29e0cb4
Scale image point color according to colormap. Bug #29926.
Rik <octave@nomad.inbox5.com>
parents:
10433
diff
changeset
|
193 set (tmp, "cdatamapping", "scaled"); |
11597
a066673566da
set clim to [0,1] so that scaled cdatamapping works as intended.
Jordi Gutiérrez Hermoso <jordigh@gmail.com>
parents:
11595
diff
changeset
|
194 ## The backend is responsible for scaling to clim if necessary. |
a066673566da
set clim to [0,1] so that scaled cdatamapping works as intended.
Jordi Gutiérrez Hermoso <jordigh@gmail.com>
parents:
11595
diff
changeset
|
195 set (gca (), "clim", display_range); |
5934 | 196 endif |
11324 | 197 set (gca (), "visible", "off", "ydir", "reverse"); |
7511
f028e7aa77a7
imshow.m: use axis ("image")
John W. Eaton <jwe@octave.org>
parents:
7331
diff
changeset
|
198 axis ("image"); |
7074 | 199 |
200 if (nargout > 0) | |
201 h = tmp; | |
202 endif | |
203 | |
559 | 204 endfunction |
4836 | 205 |
14237
11949c9795a0
Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents:
14138
diff
changeset
|
206 |
11949c9795a0
Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents:
14138
diff
changeset
|
207 %!demo |
11949c9795a0
Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents:
14138
diff
changeset
|
208 %! clf; |
11949c9795a0
Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents:
14138
diff
changeset
|
209 %! imshow ("default.img"); |
4836 | 210 |
211 %!demo | |
14237
11949c9795a0
Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents:
14138
diff
changeset
|
212 %! clf; |
11949c9795a0
Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents:
14138
diff
changeset
|
213 %! imshow ("default.img"); |
11949c9795a0
Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents:
14138
diff
changeset
|
214 %! colormap (autumn (64)); |
7074 | 215 |
216 %!demo | |
14237
11949c9795a0
Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents:
14138
diff
changeset
|
217 %! clf; |
11949c9795a0
Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents:
14138
diff
changeset
|
218 %! [I, M] = imread ("default.img"); |
11949c9795a0
Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents:
14138
diff
changeset
|
219 %! imshow (I, M); |
4836 | 220 |
221 %!demo | |
14237
11949c9795a0
Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents:
14138
diff
changeset
|
222 %! clf; |
11949c9795a0
Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents:
14138
diff
changeset
|
223 %! [I, M] = imread ("default.img"); |
11949c9795a0
Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents:
14138
diff
changeset
|
224 %! [R, G, B] = ind2rgb (I, M); |
11949c9795a0
Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents:
14138
diff
changeset
|
225 %! imshow (cat (3, R, G*0.5, B*0.8)); |
5318 | 226 |
227 %!demo | |
14237
11949c9795a0
Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents:
14138
diff
changeset
|
228 %! clf; |
11949c9795a0
Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents:
14138
diff
changeset
|
229 %! imshow (rand (100, 100)); |
5318 | 230 |
231 %!demo | |
14237
11949c9795a0
Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents:
14138
diff
changeset
|
232 %! clf; |
11949c9795a0
Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents:
14138
diff
changeset
|
233 %! imshow (rand (100, 100, 3)); |
7074 | 234 |
235 %!demo | |
14237
11949c9795a0
Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents:
14138
diff
changeset
|
236 %! clf; |
11949c9795a0
Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents:
14138
diff
changeset
|
237 %! imshow (100*rand (100, 100, 3)); |
7074 | 238 |
239 %!demo | |
14237
11949c9795a0
Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents:
14138
diff
changeset
|
240 %! clf; |
11949c9795a0
Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents:
14138
diff
changeset
|
241 %! imshow (rand (100, 100)); |
11949c9795a0
Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents:
14138
diff
changeset
|
242 %! colormap (jet (64)); |
7074 | 243 |
14237
11949c9795a0
Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents:
14138
diff
changeset
|
244 %% Test input validation |
11949c9795a0
Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents:
14138
diff
changeset
|
245 %!error imshow () |
11949c9795a0
Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents:
14138
diff
changeset
|
246 %!error <IM must be an image> imshow ({"cell"}) |
11949c9795a0
Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents:
14138
diff
changeset
|
247 %!error <expecting MxN or MxNx3 matrix> imshow (ones (4,4,4)) |
11949c9795a0
Revamp %!demos in m-files to use Octave coding conventions on spacing, etc.
Rik <octave@nomad.inbox5.com>
parents:
14138
diff
changeset
|
248 |