teager.m

来自「基于matlab的面向对象的信号处理类库。主要应用于音频、语音信号的一些处理。内」· M 代码 · 共 26 行

M
26
字号
function t = teager(x,n)% function t = teager(x,n)% The Teager-Kaiser energy operator n'th order approximation. Omission of n% sets n=0if nargin == 1    n = 0;endif n == 0    if isobject(x)        t = x.s(2:end-1).^2 - x.s(1:end-2).*x.s(3:end);        tim = x.time;        tim = set(tim, 'num', tim.num-2, 'begin', tim.begin+(1./tim.fs));        t = signal(t,tim);    else        t = diff(x(2:end)).^2 - diff(diff(x)).*x(2:end-1);    endelseif 2*floor(n/2) == n    xd = deriv(x,1,n);    xdd = deriv(xd,1,n);    t = xd.s((1+n/2):end-n/2).^2 - xdd.*x.s((1+n):end-n);%    t = xd.s^2 - xdd.*x.s;else    error('Odd orders other than n=1 not currently supported');end

⌨️ 快捷键说明

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