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

📄 gabmul.m

📁 linear time-frequency toolbox
💻 M
字号:
function h=gabmul(f,c,p3,p4,p5)%GABMUL  Gabor multiplier.%   Usage:  h=gabmul(f,c,a);%           h=gabmul(f,c,g,a);%           h=gabmul(f,c,ga,gs,a);%%   Input parameters:%         f     : Input signal%         c     : symbol of Gabor multiplier%         g     : analysis/synthesis window%         ga    : analysis window%         gs    : synthesis window%         a     : Length of time shift.%   Output parameters:%         h     : Output signal%%   GABMUL(f,c,g,a) will filter f by a Gabor multiplier determined by%   the symbol c over the rectangular time-frequency lattice determined by %   a and M, where M is deduced from the size of c.%   The window g will be used for both analysis and synthesis.%%   GABMUL(f,c,a) will do the same using an optimally concentrated, tight%   Gaussian as window function.%%   GABMUL(f,c,gs,ga,a) will do the same using the window ga for%   analysis and gs for synthesis.%%   SEE ALSO: DGT, IDGT, CANDUAL, CANTIGHT, GMEIGS, CANTIGHT%%   EXAMPLES: EXAMP_GABMULerror(nargchk(3,5,nargin));M=size(c,1);N=size(c,2);if nargin==3  a=p3;  L=a*N;  ga=cantight(a,M,L);  gs=ga;end;if nargin==4;  ga=p3;  gs=p3;  a=p4;  L=a*N;end;if nargin==5;    ga=p3;  gs=p4;  a=p5;  L=a*N;end;[nga mga] = size(ga);if nga ~= 1 && mga~= 1    error('Window ga should be a vector')end  nga = length(ga);[ngs mgs] = size(gs);if ngs ~= 1 && mgs~= 1    error('Window gs should be a vector')end  ngs = length(ga);[nf mf] = size(f);if nf ~= 1 && mf~= 1    error('Signal f should be a vector')end  assert_squarelat(a,M,'GABMUL',0);[coef,Ls]=dgt(f,ga,a,M);h=idgt(coef.*c,gs,a,Ls);

⌨️ 快捷键说明

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