Этот пример показывает, как применить адаптивные фильтры к удалению шума с помощью адаптивной шумовой отмены. Пример использует пользовательский интерфейс (UI), который может быть запущен путем ввода команды adaptiveNoiseCancellationExampleApp
. Для получения дополнительной информации см. 'Архитектуру В качестве примера' ниже.
В адаптивной шумовой отмене измеренный сигнал d (n) содержит два сигнала: - неизвестный сигнал интереса v (n) - интерференционный сигнал u (n) цель состоит в том, чтобы удалить интерференционный сигнал из измеренного сигнала при помощи ссылочного сигнала x (n), который высоко коррелируется с интерференционным сигналом. Примером, рассмотренным здесь, является применение адаптивных фильтров к эмбриональной электрокардиографии, в которой материнский сигнал heartbeat адаптивно удален из эмбрионального сигнала датчика heartbeat. Этот пример адаптируется от Widrow, и др., "Адаптивная шумовая отмена: Принципы и приложения", Proc. IEEE®, издание 63, № 12, стр 1692-1716, декабрь 1975.
В этом примере мы моделируем формы электрокардиограммы и для родительского элемента и для зародыша. Мы используем 4 000 Гц, выбирающих уровень. Сердечный ритм для этого сигнала является приблизительно 89 ударами в минуту, и пиковое напряжение сигнала является 3,5 милливольтами.
Сердце зародыша бьется заметно быстрее, чем тот из его родительского элемента с уровнями в пределах от 120 - 160 ударов в минуту. Амплитуда эмбриональной электрокардиограммы также намного более слаба, чем та из материнской электрокардиограммы. Пример создает соответствие сигнала электрокардиограммы сердечному ритму 139 ударов в минуту и пиковому напряжению 0,25 милливольт для симуляции эмбрионального heartbeat.
Материнский сигнал электрокардиограммы получен из груди родительского элемента. Цель адаптивного шумового компенсатора в этой задаче состоит в том, чтобы адаптивно удалить материнский сигнал heartbeat из эмбрионального сигнала электрокардиограммы. Компенсатору нужен ссылочный сигнал, сгенерированный от материнской электрокардиограммы, чтобы выполнить эту задачу. Точно так же, как эмбриональный сигнал электрокардиограммы материнский сигнал электрокардиограммы будет содержать некоторый аддитивный широкополосный шум.
Измеренный эмбриональный сигнал электрокардиограммы от живота родительского элемента обычно во власти материнского сигнала heartbeat, который распространяет от грудной полости до живота. Мы опишем этот путь к распространению как линейный КИХ-фильтр с 10 рандомизированными коэффициентами. Кроме того, мы добавим небольшое количество некоррелированого Гауссова шума, чтобы моделировать любые источники широкополосного шума в рамках измерения.
Адаптивный шумовой компенсатор может использовать большую часть любой адаптивной процедуры, чтобы выполнить ее задачу. Для простоты мы будем использовать least-mean-square (LMS) адаптивный фильтр с 15 коэффициентами и размером шага 0,00007. С этими настройками адаптивный шумовой компенсатор сходится обоснованно много позже нескольких секунд адаптации - конечно, разумный период, чтобы ожидать, учитывая это конкретное диагностическое приложение.
Выходной сигнал y (n) адаптивного фильтра содержит предполагаемый материнский сигнал heartbeat, который не является окончательным сигналом интереса. То, что остается в сигнале ошибки e (n) после того, как система сходилась, является оценкой эмбрионального сигнала heartbeat наряду с остаточным шумом измерения. Используя сигнал ошибки, можно оценить сердечный ритм зародыша.
Команда adaptiveNoiseCancellationExampleApp запускает пользовательский интерфейс, разработанный, чтобы взаимодействовать с симуляцией. Это также запускает осциллограф времени, чтобы просмотреть измеренного эмбрионального heartbeat, а также измеренного материнского heartbeat и извлеченного эмбрионального heartbeat.
Используя MATLAB Coder, можно сгенерировать файл MEX для основного алгоритма обработки путем выполнения команды HelperANCCodeGeneration. Можно использовать сгенерированный файл MEX путем выполнения команды adaptiveNoiseCancellationExampleApp (TRUE).