Вейвлет многомерный деноизирующий
[X_DEN,NPC,NESTCOV,DEC_DEN,PCA_Params,DEN_Params] = ...
wmulden(X,LEVEL,WNAME,NPC_APP,NPC_FIN,TPTR,SORH)
[...] = wmulden(X,LEVEL,WNAME,'mode',EXTMODE,NPC_APP,...)
[...] = wmulden(DEC,NPC_APP)
[...] = wmulden(X,LEVEL,WNAME,'mode',EXTMODE,NPC_APP)
[DEC,PCA_Params] = wmulden('estimate',DEC,NPC_APP,NPC_FIN)
[X_DEN,NPC,DEC_DEN,PCA_Params] = wmulden('execute',DEC,PC_Params)
[X_DEN,NPC,NESTCOV,DEC_DEN,PCA_Params,DEN_Params] = ... или
wmulden(X,LEVEL,WNAME,NPC_APP,NPC_FIN,TPTR,SORH)
[...] = wmulden(X,LEVEL,WNAME,'mode',EXTMODE,NPC_APP,...) возвращает деноизированную версию X_DEN входной матрицы X. Стратегия объединяет одномерное вейвлет-деноизирование в основе, где оцененная матрица ковариации шума диагональна, с нецентрированным анализом основных компонентов (PCA) на аппроксимациях в вейвлет-области или с конечным PCA.
Входная матрица X содержит P сигналы длиной N хранятся в столбцах, где N > P.
Вейвлет-декомпозиция выполняется с использованием уровня декомпозиции. LEVEL и вейвлет WNAME.
EXTMODE является расширенным режимом для DWT (см. dwtmode).
Если декомпозиция DEC полученные с использованием mdwtdec доступен, можно использовать
[...] = wmulden(DEC,NPC_APP) вместо
[...] = wmulden(X,LEVEL,WNAME,'mode',EXTMODE,NPC_APP).
Методы выбора входных данных NPC_APP и NPC_FIN определить способ выбора главных компонентов для аппроксимаций на уровне LEVEL в вейвлет-области и для окончательного PCA после вейвлет-реконструкции, соответственно.
Если NPC_APP (или NPC_FIN) - целое число, оно содержит количество сохраненных главных компонентов для аппроксимаций на уровне LEVEL (или для окончательного PCA после вейвлет-реконструкции).
NPC_XXX должно быть таким, чтобы 0 < =NPC_XXX <= P
NPC_APP или NPC_FIN = 'kais' или 'heur' автоматически выбирает количество сохраненных главных компонентов с помощью правила Кайзера или эвристического правила.
Правило Кайзера сохраняет компоненты, связанные с собственными значениями, большими, чем среднее значение всех собственных значений.
Эвристическое правило сохраняет компоненты, связанные с собственными значениями, больше 0,05 суммы всех собственных значений.
NPC_APP или NPC_FIN = 'none' эквивалентно NPC_APP или NPC_FIN = P.
Значения по умолчанию для параметров denoising TPTR и SORH:
TPTR = 'sqtwolog' и SORH = 's'
Допустимые значения для TPTR являются
'rigsure', 'heursure', 'sqtwolog', 'minimaxi', 'penalhi', 'penalme', 'penallo'
Допустимые значения для SORH:
's' (soft) or 'h' (hard)
X_DEN является деноизированной версией входной матрицы X.
NPC - вектор выбранных чисел сохраненных главных компонентов.
NESTCOV - оценочная ковариационная матрица шума, полученная с использованием оценщика минимального ковариационного определителя (MCD).
DEC_DEN - вейвлет-декомпозиция X_DEN.
PCA_Params является структурой, которая:
PCA_Params.NEST = {pc_NEST,var_NEST,NESTCOV}
PCA_Params.APP = {pc_APP,var_APP,npc_APP}
PCA_Params.FIN = {pc_FIN,var_FIN,npc_FIN}
где:
pc_XXX является Pоколо-P матрица основных компонентов.
Столбцы хранятся в порядке убывания отклонений.
var_XXX - вектор отклонений основного компонента.
NESTCOV - оценка ковариационной матрицы для детализации на уровне 1.
DEN_Params является структурой, которая:
DEN_Params.thrVAL - вектор длины LEVEL который содержит пороговые значения для каждого уровня.
DEN_Params.thrMETH - символьный вектор, содержащий имя метода обличения (TPTR).
DEN_Params.thrTYPE - символьная переменная, содержащая тип пороговой величины (SORH).
[DEC,PCA_Params] = wmulden('estimate',DEC,NPC_APP,NPC_FIN) возвращает вейвлет-декомпозицию DEC и оценки основных компонентов PCA_Params.
[X_DEN,NPC,DEC_DEN,PCA_Params] = wmulden( использует оценки основных компонентов 'execute',DEC,PC_Params)PCA_Params ранее вычисленный.
Входное значение DEC может быть заменен на X, LEVEL, и WNAME.
% Load a multivariate signal x together with
% the original signals (x_orig) and true noise
% covariance matrix (covar).
load ex4mwden
% Set the denoising method parameters.
level = 5;
wname = 'sym4';
tptr = 'sqtwolog';
sorh = 's';
% Set the PCA parameters to select the number of
% retained principal components automatically by
% Kaiser's rule.
npc_app = 'kais';
npc_fin = 'kais';
% Perform multivariate denoising.
[x_den, npc, nestco] = wmulden(x, level, wname, npc_app, ...
npc_fin, tptr, sorh);
% Display the original and denoised signals.
kp = 0;
for i = 1:4
subplot(4,3,kp+1), plot(x_orig(:,i));
title(['Original signal ',num2str(i)])
subplot(4,3,kp+2), plot(x(:,i));
title(['Observed signal ',num2str(i)])
subplot(4,3,kp+3), plot(x_den(:,i));
title(['Denoised signal ',num2str(i)])
kp = kp + 3;
end

% The results are good: the first function, which is
% irregular, is correctly recovered while the second
% function, more regular, is well denoised.
% The second output argument gives the numbers
% of retained principal components for PCA for
% approximations and for final PCA.
npc
npc =
2 2
% The third output argument contains the estimated
% noise covariance matrix using the MCD based
% on the matrix of finest details.
nestco
nestco =
1.0784 0.8333 0.6878 0.8141
0.8333 1.0025 0.5275 0.6814
0.6878 0.5275 1.0501 0.7734
0.8141 0.6814 0.7734 1.0967
% The estimation is satisfactory since the values are close
% to the true values given by covar.
covar
covar =
1.0000 0.8000 0.6000 0.7000
0.8000 1.0000 0.5000 0.6000
0.6000 0.5000 1.0000 0.7000
0.7000 0.6000 0.7000 1.0000
Многомерная деноизирующая процедура является обобщением одномерной стратегии. Он объединяет одномерное вейвлет-деноизирование в основе, где оцененная матрица ковариации шума является диагональной, и нецентрированный анализ основных компонентов (PCA) на аппроксимациях в вейвлет-области или с конечным PCA.
Надежная оценка ковариационной матрицы шума, задаваемая определителем минимальной ковариации на основе матрицы наиболее точных деталей.
Амингхафари, М.; Чезе, Н.; Погги, Дж-М. (2006), «Многофакторное снятие шума с использованием вейвлетов и анализа основных компонентов», Computational Statistics & Data Analysis, 50, pp. 2381-2398.
Руссью, П.; Ван Дриссен, К. (1999), «Быстрый алгоритм оценки минимальной ковариации», Technometrics, 41, pp. 212-223.