Пороги для вейвлета 1D использование стратегия Birgé-Massart
[THR,NKEEP] = wdcbm(C,L,ALPHA,M)
wdcbm(C,L,ALPHA)
wdcbm(C,L,ALPHA,L(1))
[THR,NKEEP] = wdcbm(C,L,ALPHA,M) возвращает зависимые уровнем пороги THR и количества коэффициентов, которые будут сохранены NKEEP для шумоподавления или сжатия. THR получен, использовав содействующее правило выбора вейвлета на основе стратегии Birgé-Massart.
[C,L] является структурой разложения вейвлета сигнала быть denoised или сжатый на уровне j = length(L)-2. ALPHA и M должны быть вещественными числами, больше, чем 1.
THR является вектором длины j; THR(i) содержит порог для уровня i.
NKEEP является вектором длины j; NKEEP(i) содержит количество коэффициентов, которые будут сохранены на уровне i.
j, M и ALPHA задают стратегию:
На уровне j+1 (и более грубых уровнях), все сохранено.
Для уровня i от 1 до j, ni самые большие коэффициенты сохранены с ni = M / (j+2-i) ALPHA.
Обычно ALPHA = 1.5 для сжатия и ALPHA = 3 для шумоподавления.
Значением по умолчанию для M является M = L (1), количество самых грубых коэффициентов приближения, поскольку предыдущая формула ведет поскольку i = j+1 к nj+1 = M = L (1). Рекомендуемые значения для M от L (1) к 2*L (1).
wdcbm(C,L,ALPHA) эквивалентно wdcbm(C,L,ALPHA,L(1)).
% Load electrical signal and select a part of it.
load leleccum; indx = 2600:3100;
x = leleccum(indx);
% Perform a wavelet decomposition of the signal
% at level 5 using db3.
wname = 'db3'; lev = 5;
[c,l] = wavedec(x,lev,wname);
% Use wdcbm for selecting level dependent thresholds
% for signal compression using the adviced parameters.
alpha = 1.5; m = l(1);
[thr,nkeep] = wdcbm(c,l,alpha,m)
thr =
19.5569 17.1415 20.2599 42.8959 15.0049
nkeep =
1 2 3 4 7
% Use wdencmp for compressing the signal using the above
% thresholds with hard thresholding.
[xd,cxd,lxd,perf0,perfl2] = ...
wdencmp('lvd',c,l,wname,lev,thr,'h');
% Plot original and compressed signals.
subplot(211), plot(indx,x), title('Original signal');
subplot(212), plot(indx,xd), title('Compressed signal');
xlab1 = ['2-norm rec.: ',num2str(perfl2)];
xlab2 = [' % -- zero cfs: ',num2str(perf0), ' %'];
xlabel([xlab1 xlab2]);

Birgé, Л.; П. Мэссарт (1997), “От образцового выбора до адаптивной оценки”, в Д. Полларде (редактор), Festchrift для Ль. Ле Кама, Спрингера, стр 55–88.