% ADJGAMMA - Adjusts image gamma. % % function g = adjgamma(im, g) % % Arguments: % im - image to be processed. % g - image gamma value. % Values in the range 0-1 enhance contrast of bright % regions, values > 1 enhance contrast in dark % regions. % Copyright (c) 2001 Peter Kovesi % School of Computer Science & Software Engineering % The University of Western Australia % http://www.csse.uwa.edu.au/ % % Permission is hereby granted, free of charge, to any person obtaining a copy % of this software and associated documentation files (the "Software"), to deal % in the Software without restriction, subject to the following conditions: % % The above copyright notice and this permission notice shall be included in % all copies or substantial portions of the Software. % % The Software is provided "as is", without warranty of any kind. % July 2001 function newim = adjgamma(im, g) if g <= 0 error('Gamma value must be > 0'); end if isa(im,'uint8'); newim = double(im); else newim = im; end % rescale range 0-1 newim = newim-min(min(newim)); newim = newim./max(max(newim)); newim = newim.^(1/g); % Apply gamma function