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

📄 lans_gramschmidt.m

📁 模式识别工具包
💻 M
字号:
%	lans_gramschmidt- Compute orthogonal vectors from orthonormal space%%	[h]	= lans_gramschmidt(svec)%%	_____OUTPUTS____________________________________________________________%	h	D orthogonal vectors spanning R^D		(col vectors)%%	_____INPUTS_____________________________________________________________%	svec	seed vectors (MUST BE linearly independent)	(col vectors)%%	_____NOTES______________________________________________________________%	- equivalent but slower than matlab's qr function!%	- first q cols of h contains normalized version of svec (assumed QxD)%	- svec MUST be orthogonal, otherwise results varies!%	- orthogonal CORRECTION is performed for the seed vectors%%	_____SEE ALSO___________________________________________________________%	orth	qr	(MATLAB function)%%	(C) 2000.07.09 Kui-yu Chang%	http://lans.ece.utexas.edu/~kuiyu%	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 of the License, 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 program; if not, write to the Free Software%	Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307, USA%	or check%			http://www.gnu.org/function	[h]	= lans_gramschmidt(svec)%rseed	= 1;%rand('state',rseed);[D,N]	= size(svec);%_____	check for linear dependence in seed vectorsif N>=D|(rank(svec)<N)	error('Supplied seed colvectors are linearly dependent !!');end%_____	performs correction if svec are not orthogonalsvec	= orth(svec);[x,dum]	= lans_eigsort(cov(rand(D,D)));h	= lans_unitvec(svec);for i=N+1:D	xi	= x(:,i-N);	vsum	= zeros(D,1);	for j=1:i-1		vsum	= vsum+xi'*h(:,j)*h(:,j);	end	h(:,i)	= xi-vsum;	h(:,i)	= h(:,i)/norm(h(:,i));end

⌨️ 快捷键说明

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