• 大小: 3KB
    文件类型: .m
    金币: 1
    下载: 0 次
    发布日期: 2021-05-14
  • 语言: Matlab
  • 标签: 归一化  多通道  LMS  

资源简介

归一化多通道LMS自适应盲辨识算法

资源截图

代码片段和文件信息

function [ht1npm] = NMCFLMS(x ro lambda M L tol hr h_hat)  

% NMCFLMS: Normalized Multi-Channel Frequency-Domain LMS 
%          Adaptive Algorithm for Blind Channel Identification
%
% ------
% USAGE: [h en] = NMCFLMS(x mu lambda M L tol hr hn)
%
%        x      : multi-channel outputs (microphone signals);
%        mu     : step size;
%        lambda : a forgetting factor;
%        M      : the number of channels;
%        L      : the number of taps of the largest channel 
%                 impulse response;
%        tol    : convergence toleration error;
%        hr     : the real channel impulse responses;
%        hn     : initial estimate of the channel impulse responses;
%        h      : estimated channel impulse responses;
%        en     : the norm of the projection error vector.
%
% %
% ------
% Author:  Mohammad Ariful Haque
%          DSP Lab BUET
% Last updated 4/12/2010
%

[rows cols] = size(x);
hr = hr/norm(hr(:)); 
MBlocks = fix(rows - L)/L;
L2  = 2*L;
ulambda = 1 - lambda;
hf1 = fft(h_hatL2);
Cx = zeros(L2 M);

for m = 1:MBlocks
    hf0 = hf1;
    Cx  = [Cx(L+1:L2 :); x((m-1)*L+1:m*L:)];
    Dx  = fft(Cx);
    Dxc = conj(Dx);

    Pxm = Dx.*Dxc;

    if (m == 1)
        Px = Pxm;
        %Px = sum(sum(Pxm))/L2*on

评论

共有 条评论