wthresh

Мягкая или трудная пороговая обработка

Синтаксис

Описание

пример

Y = wthresh(X,sorh,T) возвращает мягкую или трудную пороговую обработку, обозначенную sorh, из вектора или матрицы XT пороговое значение.

Примеры

свернуть все

Сгенерируйте сигнал и установите порог.

y = linspace(-1,1,100);
thr = 0.4;

Выполните трудную и мягкую пороговую обработку.

ythard = wthresh(y,'h',thr);
ytsoft = wthresh(y,'s',thr);

Постройте результаты и сравните с исходным сигналом.

subplot(1,3,1)
plot(y,y)
ylim([-1 1])
title('Original Signal')
subplot(1,3,2)
plot(y,ythard)
ylim([-1 1])
title('Hard Threshold')
subplot(1,3,3)
plot(y,ytsoft)
ylim([-1 1])
title('Soft Threshold')

Figure contains 3 axes objects. Axes object 1 with title Original Signal contains an object of type line. Axes object 2 with title Hard Threshold contains an object of type line. Axes object 3 with title Soft Threshold contains an object of type line.

Входные параметры

свернуть все

Входные данные к порогу в виде вектора или матрицы с действительным знаком.

Типы данных: double

Тип пороговой обработки, чтобы выполнить:

  • 's' — Мягкая пороговая обработка

  • 'h' — Трудная пороговая обработка

Пороговое значение в виде положительного вещественного числа.

Выходные аргументы

свернуть все

Данные Thresholded, возвращенные как вектор или матрица с действительным знаком. Y имеет те же размерности как X.

Алгоритмы

Если sorh 's'Y мягкая пороговая обработка X: Y=sign(X)·(|X|T)+ где

(x)+={xеслиx00в противном случае

Мягкая пороговая обработка является уменьшением вейвлета.

Если sorh 'h'Y трудная пороговая обработка X: Y=X·1(|X|>T) где

1(|X|>T)={1если|X|>T0в противном случае

Трудная пороговая обработка более груба, чем мягкая пороговая обработка.

Расширенные возможности

Генерация кода C/C++
Генерация кода C и C++ с помощью MATLAB® Coder™.

Смотрите также

Функции

Приложения

Представлено до R2006a