Вычислительный фильтр, оценивающий вводимую информацию, с использованием алгоритма адаптивной фильтрации.
Библиотека:
Фильтрация / адаптивная фильтрация
Описание:
Блок - адаптивный алгоритм (фильтр) RLS используется для вычисления коэффициентов КИХ-фильтра, с помощью рекурсивного метода наименьших квадратов.
Соответственно, в матричной форме RLS фильтр выражается как:
где означает получение экспоненциального взвешенного фактора.
Переменные описаны ниже:
Переменная
|
Описание
|
n
|
Текущая итерация алгоритма
|
u(n)
|
Буферизированный ввод образцовых сигналов (примеров) на n-м шаге (входное воздействие)
|
P(n)
|
Обратная корреляционная матрица на n-м шаге n-м шаге
|
k(n)
|
Вектор шума на n-м шаге n-м шаге
|
|
Вектор коэффициентов фильтра – служит для оценки на n-м шаге (вектор оценки)
|
y(n)
|
Выход фильтра на n-м шаге
|
e(n)
|
Оценка ошибки на n-м шаге
|
d(n)
|
Желаемый отклик (результат, реакция) на n-м шаге
|
|
Экпоненциальный запоминаемый весовой фактор
|
Иконка блока имеет каналы ярлыка, которым соответствуют соответствующие входы и выходы. Примечание: сигналы на входах портов In и Err должны быть скалярами. Сигнал на выходе порта Out – скаляр, в то время как сигнал на выходе порта Taps – вектор.
Порты блока
|
Соответствующие переменные
|
In
|
u, скалярный вход, который будет внутри буферизованный в вектор u(n)
|
Err
|
y(n), фильтрованный скалярный выход
|
Out
|
e(n), оценка ошибки - скаляр
|
Taps
|
, вектор оценки коэффициентов
|
Необязательный входной порт Adapt добавляется, когда адаптивный вход отмечен флажком (выбран) в диалоговом окне. Когда задействован этот порт, происходит непрерывная адаптация коэффициентов фильтра, пока на входе Adapt ненулевое значение. Когда на входе порта Adapt появляется нуль, адаптивный алгоритм прекращает свою работу, а полученные коэффициенты фильтра сохраняются и не изменяются до тех пор (применяются для оценки), пока на входе порта Adapt снова появится не нулевое значение.
Выполнение алгоритма в блоке оптимизировано посредством применения симметричной обратной (инвертированной) корреляционной матрицы P(n). Это уменьшает общее количество вычислений посредством двух факторов.
Параметр (длина КИХ фильтра) устанавливает длину фильтра, который применяется для оценки в алгоритме RLS. Запоминаемый весовой фактор, соответствующий
в уравнении, и показывает (определяет) как быстро фильтр забывает прошлую типовую информацию. Установка
определяет бесконечную память; обычно
.
Параметр Initial value of filter taps (начальные значения коэффициентов фильтра) устанавливает начальные значения переменных
- задаётся в виде вектора, или же задаётся в виде скалярной величины, которая применяется ко всем элементам вектора. Начальное значение P(n) равно
, где
- устанавливает начальный входной оценочный параметр.
Пример: rlsdemo - демонстрация шумоподавляющей системы, построение которой основано на использовании блока RLS.
Диалоговое окно:
Текст в диалоговом окне:
Алгоритм RLS (экпоненциально взвешенный рекуррентный алгоритм наименьших квадратов) для адаптивной фильтрации сигнала с использованием КИХ-фильтра. Если установлен флаг Adapt input и значение на входе порта Adapt равно нулю, то происходит остановка алгоритма адаптации коэффициентов фильтра.
FIR filter length – длина КИХ-фильтра;
Memory weighting factor – экспоненциальный весовой фактор; значение лежит в интервале [0; 1]. Значение 1 определяет бесконечную память;
Initial value of filter taps – начальная инициализация коэффициентов КИХ-фильтра;
Initial input variance estimate - начальное значение 1/P(n);
Adapt input – флаг, использование адаптивного алгоритма.
|