diff --git a/matlab/peak_detect.m b/matlab/peak_detect.m index 155d5bb..e3121ac 100644 --- a/matlab/peak_detect.m +++ b/matlab/peak_detect.m @@ -35,14 +35,14 @@ ks = 0.5; pa = 0.3; d_max = 30; -am = 0.1; +am = 0.02; as = 0.9; Ad = 20; Cm = 0; s = zeros(1, Nh); a = zeros(1, Nh); -Xm = -40*ones(1, Nh); +Xm = -120*ones(1, Nh); Xs = zeros(1, Nh); peak_count = zeros(1, Nh); @@ -84,8 +84,17 @@ for k=1:numFrames peak_count = gate_peak.*peak_count + gate_peak; peak_cand = peak_count > 0; % Update Xm at no-peak bins - Xm = (1-gate_upd) .* ((1-am)*Xm + am*X) + gate_upd.*Xm; + Xm = (1-gate_upd) .* ((1-am)*Xm + am*X) + gate_upd.*Xm*0.7; + last = Xm(1); + for n=2:Nh, + if gate_upd(n) == 0 + last = Xm(n); + else + Xm(n) = last; + end + end + % Filtering if 0 Nhf = 21;