X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=octave_packages%2Fimage-1.0.15%2Fim2uint8.m;fp=octave_packages%2Fimage-1.0.15%2Fim2uint8.m;h=f751dcfc079ab4e486c5105e63c6f3208b311499;hb=c880e8788dfc484bf23ce13fa2787f2c6bca4863;hp=0000000000000000000000000000000000000000;hpb=1705066eceaaea976f010f669ce8e972f3734b05;p=CreaPhase.git diff --git a/octave_packages/image-1.0.15/im2uint8.m b/octave_packages/image-1.0.15/im2uint8.m new file mode 100644 index 0000000..f751dcf --- /dev/null +++ b/octave_packages/image-1.0.15/im2uint8.m @@ -0,0 +1,47 @@ +## Copyright (C) 2007 Søren Hauberg +## +## This program is free software; you can redistribute it and/or modify +## it under the terms of the GNU General Public License as published by +## the Free Software Foundation; either version 2, or (at your option) +## any later version. +## +## This program is distributed in the hope that it will be useful, but +## WITHOUT ANY WARRANTY; without even the implied warranty of +## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +## General Public License for more details. +## +## You should have received a copy of the GNU General Public License +## along with this file. If not, see . + +## -*- texinfo -*- +## @deftypefn {Function File} @var{im2} = im2uint8(@var{im1}) +## Converts the input image to an image of class uint8. +## +## If the input image is of class uint8 the output is unchanged. +## If the input is of class double the result will be multiplied +## by 255 and converted to uint8, and if the input is of class uint16 the +## image will be divided by 257 and converted to uint8. +## @seealso{im2bw, im2uint16, im2double} +## @end deftypefn + +function im2 = im2uint8(im1) + ## Input checking + if (nargin < 1) + print_usage(); + endif + if (!isgray(im1) && !isrgb(im1)) + error("im2uint8: input must be an image"); + endif + + ## Take action depending on the class of the data + switch (class(im1)) + case "double" + im2 = uint8(255*im1); + case "uint8" + im2 = im1; + case "uint16" + im2 = uint8(im1/257); + otherwise + error("im2uint8: unsupported image class"); + endswitch +endfunction