Удаление шума из сигнала F2F

11

(Этот вопрос относится к извлечению двоичных данных с карты с магнитной полосой из необработанного файла WAV )

Я извлекаю двоичную последовательность из магнитной полосы на кредитной карте.

введите описание изображения здесь

Как видите, сигнал явно ухудшается в одном месте. также есть небольшая деградация справа на изображении.

Простое использование IIR (то есть ) сглаживает его, но результирующий сигнал не является математически гладким; если я пару раз дифференцирую сигнал, шум возвращается с удвоенной силой:Xout=0.9Xoutlast+0.1Xin

введите описание изображения здесь

У меня вопрос: могу ли я удалить шум таким образом, чтобы производные выходили чистыми?

Если так, то как?

РЕДАКТИРОВАТЬ: Вот крупный план некоторых поврежденных волн:

введите описание изображения здесь

РЕДАКТИРОВАТЬ (2): несколько подходов, которые я рассматриваю:

  • Во-первых, я мог бы сделать тейлор-аппроксимацию сигнала по обе стороны от поврежденного сектора, и смешать аппроксимации вместе.
  • Во-вторых, я мог бы БПФ, удалить высокочастотные компоненты и обратного БПФ. Я собираюсь попробовать этот второй подход сейчас ...
Пи
источник
Вы используете дифференциатор для выделения высокочастотных функций в сигнале (то есть резких переходов). Артефакты, которые вы пытаетесь удалить, похожи в том, что они представляют собой резкие переходы, которые будут иметь аналогичные характеристики высоких частот. Их может быть трудно удалить с помощью линейного фильтра нижних частот. Другой подход (без каламбура) может быть более подходящим.
Джейсон Р
Извините, мой плохой за размещение вводящих в заблуждение скриншотов. Я включил крупные планы образцов поврежденных участков.
P i
Фильтр нижних частот должен работать. Проблема в том, что интересующие частоты меняются по мере того, как человек меняет скорость своего движения.
эндолит
Правильный. Однако эта базовая ставка не будет сильно меняться от одной волны к другой. Таким образом, я могу фильтровать по ходу движения (т. Е. Учитывая, что в определенной точке длина волны равна k, отфильтровать впереди сигнала примерно на 2 длины волны, взять следующий сигнал, промыть и повторить). В таком случае, что будет хорошим фильтром? Мне нужно сохранить производные ...
P i
1
Кажется, что ваш сигнал представлен серией очень характерных «вейвлетов», описывающих бинарные переходы. Я думаю, что вы должны извлечь один отличительный вейвлет и создать «коррелограмму», сопоставив вейвлет с необработанными данными. Позиции максимального сходства будут определены как сильные пики, в то время как недостатки формы сигнала станут лишь незначительным шумом. Этот метод широко используется в сейсмике. Не могли бы вы представить серию «время-значение» ваших необработанных данных в виде таблицы, чтобы я мог проиллюстрировать мою идею.
mbaitoff

Ответы:

1

Чтобы удалить высокочастотный «шум», не удаляя резких переходов, вам, возможно, придется попробовать какой-нибудь процесс нелинейной фильтрации.

Случайным примером может быть применение (перекрестное затухание) медианного фильтра только тогда, когда расстояние до ближайших N локальных максимумов (или минимумов, и выше некоторого порога шума) выходит за некоторый порог расстояния (где это расстояние, N и средняя ширина фильтра , откалиброваны на период предполагаемого «шума»).

hotpaw2
источник