📄 pdfgauss.html
字号:
<html><head> <meta HTTP-EQUIV="Content-Type" CONTENT="text/html;charset=ISO-8859-1"> <title>pdfgauss.m</title><link rel="stylesheet" type="text/css" href="../../m-syntax.css"></head><body><code><span class=defun_kw>function</span> <span class=defun_out>y </span>= <span class=defun_name>pdfgauss</span>(<span class=defun_in>X, arg1, arg2 </span>)<br><span class=h1>% PDFGAUSS Evaluates multivariate Gaussian distribution.</span><br><span class=help>%</span><br><span class=help>% <span class=help_field>Synopsis:</span></span><br><span class=help>% y = pdfgauss(X, Mean, Cov)</span><br><span class=help>% y = pdfgauss(X, model )</span><br><span class=help>%</span><br><span class=help>% <span class=help_field>Description:</span></span><br><span class=help>% y = pdfgauss(X, Mean, Cov) evaluates a multi-variate Gaussian </span><br><span class=help>% probability density function(s) for given input column vectors in X.</span><br><span class=help>% Mean [dim x ncomp] and Cov [dim x dim x ncomp] describe a set of </span><br><span class=help>% ncomp Gaussian distributions to be evaluted such that</span><br><span class=help>%</span><br><span class=help>% y(i,j) = exp(-0.5(mahalan(X(:,j),Mean(:,i),Cov(:,:,i) )))/norm_const</span><br><span class=help>%</span><br><span class=help>% where i=1:ncomp and j=1:size(X,2). If the Gaussians are</span><br><span class=help>% uni-variate then the covariaves can be given as a vector</span><br><span class=help>% Cov = [Cov_1, Cov_2, ..., Cov_comp].</span><br><span class=help>%</span><br><span class=help>% y = pdfgauss( X, model ) takes Gaussian parameters from structure</span><br><span class=help>% fields model.Mean and model.Cov.</span><br><span class=help>%</span><br><span class=help>% <span class=help_field>Input:</span></span><br><span class=help>% X [dim x num_data] Input matrix of column vectors.</span><br><span class=help>% Mean [dim x ncomp] Means of Gaussians.</span><br><span class=help>% Cov [dim x dim x ncomp] Covarince matrices.</span><br><span class=help>%</span><br><span class=help>% <span class=help_field>Output:</span></span><br><span class=help>% y [ncomp x num_data] Values of probability density function.</span><br><span class=help>%</span><br><span class=help>% <span class=help_field>Example:</span></span><br><span class=help>% </span><br><span class=help>% Univariate case</span><br><span class=help>% x = linspace(-5,5,100);</span><br><span class=help>% y = pdfgauss(x,0,1);</span><br><span class=help>% figure; plot(x,y)</span><br><span class=help>%</span><br><span class=help>% Multivariate case</span><br><span class=help>% [Ax,Ay] = meshgrid(linspace(-5,5,100), linspace(-5,5,100));</span><br><span class=help>% y = pdfgauss([Ax(:)';Ay(:)'],[0;0],[1 0.5; 0.5 1]);</span><br><span class=help>% figure; surf( Ax, Ay, reshape(y,100,100)); shading interp;</span><br><span class=help>%</span><br><span class=help>% See also </span><br><span class=help>% GSAMP, PDFGMM.</span><br><span class=help>%</span><br><hr><span class=help1>% <span class=help1_field>About:</span> Statistical Pattern Recognition Toolbox</span><br><span class=help1>% (C) 1999-2003, Written by Vojtech Franc and Vaclav Hlavac</span><br><span class=help1>% <a href="http://www.cvut.cz">Czech Technical University Prague</a></span><br><span class=help1>% <a href="http://www.feld.cvut.cz">Faculty of Electrical Engineering</a></span><br><span class=help1>% <a href="http://cmp.felk.cvut.cz">Center for Machine Perception</a></span><br><br><span class=help1>% <span class=help1_field>Modifications:</span></span><br><span class=help1>% 28-apr-2004, VF</span><br><br><hr><span class=comment>% process input arguments</span><br><span class=keyword>if</span> <span class=stack>nargin</span> < 3,<br> arg1 = c2s(arg1);<br> Mean = arg1.Mean;<br> Cov = arg1.Cov;<br><span class=keyword>else</span><br> Mean = arg1;<br> Cov = arg2;<br><span class=keyword>end</span><br><br><span class=comment>% get dimensions</span><br>[dim,num_data] = size(X);<br>ncomp = size(Mean,2);<br><br><span class=comment>% univariate variances can be given as a vector</span><br><span class=keyword>if</span> size(Cov,1) ~= size(Cov,2), Cov = reshape(Cov,1,1,ncomp); <span class=keyword>end</span><br><br><span class=comment>% alloc memory</span><br>y = zeros(ncomp,num_data);<br><br><span class=comment>% evaluate pdf for each component</span><br><span class=keyword>for</span> i=1:ncomp,<br> dist = mahalan(X,Mean(:,i),Cov(:,:,i));<br> y(i,:) = exp(-0.5*dist)/sqrt((2*pi)^dim*det(Cov(:,:,i)));<br><span class=keyword>end</span><br><br><span class=jump>return</span>;<br></code>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -