Mercurial > octave-nkf
view scripts/image/ind2gray.m @ 917:b843a65fa977
[project @ 1994-11-11 02:00:28 by jwe]
author | jwe |
---|---|
date | Fri, 11 Nov 1994 02:06:42 +0000 |
parents | 3470f1e25a79 |
children | 56520a75b5b3 |
line wrap: on
line source
function Y = ind2gray(X,map) # Convert an octave indexed image to a gray scale intensity image. # # Y = ind2gray(X) converts an indexed image to a gray scale intensity # image. The current colormap is used to determine the intensities. # The intensity values lie between 0 and 1 inclusive. # # Y = ind2gray(X,map) uses the specified colormap instead of the current # one in the conversion process. # # SEE ALSO: gray2ind, rgb2ntsc, image, colormap if (nargin == 1) map = colormap; endif # Convert colormap to intensity values. yiq = rgb2ntsc(map); y = yiq(:,1); # We need Fortran indexing capability, but be sure to save the user's # preference. pref = do_fortran_indexing; unwind_protect do_fortran_indexing = "true"; # Replace indices in the input matrix with indexed values in the output # matrix. [rows, cols] = size(X); Y = y(X(:)); Y = reshape(Y,rows,cols); unwind_protect_cleanup do_fortran_indexing = pref; end_unwind_protect endfunction