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

📄 bss_proj.m

📁 一种bss盲源信号分离的工具包 可以用于盲信号的提取
💻 M
字号:
function [PY_x coeff]=bss_proj(x,Y)

% compute the orthogonal projection of x on the subspace spanned by the row(s) of Y.
%
% Usage: PY_x         = proj(x,Y)
%        [PY_x coeff] = proj(x,Y)
%
% Input:
%   - x: row vector of length T,
%   - Y: vector or matrix of length T.
%
% Ouput:
%   - PY_x: row vector of length T containing the orthogonal projection of
%   x onto the range of the rows of Y.
%   - coeff : column vector with as many rows as Y containing the
%   coefficients such that PY_x = coeff.'*Y
%
% Developers:  - Cedric Fevotte (cf269@cam.ac.uk) - Emmanuel Vincent
% (vincent@ircam.fr) - Remi Gribonval (remi.gribonval@irisa.fr)

% Gram matrix of Y
G=Y*Y';

%same as coeff=inv(conj(G))*conj(Y*x');
coeff=conj(G)\conj(Y*x');
%if the Gram matrix G is not invertible then coeff=pinv(conj(G))*conj(Y*x')
%should work, but in general it is much slower than the default code

PY_x=  coeff.'*Y;

% Same as PY_x= x*pinv(Y)*Y;

⌨️ 快捷键说明

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