⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 normalise.m

📁 MATLAB Functions for Multiple View Geometry
💻 M
字号:
% NORMALISE - Normalises image values to 0-1, or to desired mean and variance%% Usage:%             n = normalise(im)%% Offsets and rescales image so that the minimum value is 0% and the maximum value is 1.  Result is returned in n.  If the image is% colour the image is converted to HSV and the value/intensity component% is normalised to 0-1 before being converted back to RGB.%%%             n = normalise(im, reqmean, reqvar)%% Arguments:  im      - A grey-level input image.%             reqmean - The required mean value of the image.%             reqvar  - The required variance of the image.%% Offsets and rescales image so that it has mean reqmean and variance% reqvar.  Colour images cannot be normalised in this manner.% Copyright (c) 1996-2005 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.% January 2005 - modified to allow desired mean and variancefunction n = normalise(im, reqmean, reqvar)    if ~(nargin == 1 | nargin == 3)       error('No of arguments must be 1 or 3');    end        if nargin == 1   % Normalise 0 - 1	if ndims(im) == 3         % Assume colour image 	    hsv = rgb2hsv(im);	    v = hsv(:,:,3);	    v = v - min(v(:));    % Just normalise value component	    v = v/max(v(:));	    hsv(:,:,3) = v;	    n = hsv2rgb(hsv);	else                      % Assume greyscale 	    if ~isa(im,'double'), im = double(im); end	    n = im - min(im(:));	    n = n/max(n(:));	end	    else  % Normalise to desired mean and variance		if ndims(im) == 3         % colour image?	    error('cannot normalise colour image to desired mean and variance');	end	if ~isa(im,'double'), im = double(im); end		im = im - mean(im(:));    	im = im/std(im(:));      % Zero mean, unit std dev	n = reqmean + im*sqrt(reqvar);    end    

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -