Гладкая первая производная шумного входного сигнала

Я прикрепил изображения входного сигнала (показан синим), который на самом деле является непрерывным входным потоком, тренд которого мне неизвестен, и сигнала, сглаженного с помощью фильтра скользящего среднего с интервалом 5 (показан красным).

Необработанный входной сигнал и сглаженный входной сигнал

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

Первая производная необработанного входного сигнала и сглаженного входного сигнала

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

Моя цель — рассчитать отношение этого сигнала к его первой производной. Однако очевидно, что первая производная зашумлена и не дает хороших результатов. Я понимаю, что должен изменить фильтр со скользящего среднего на более надежный.
Я искал фильтр Савицкого-Голея, но я прочитал на другом сайте, что он более эффективен в сохранении формы сигнала, чем в уменьшении шума. http://terpconnect.umd.edu/~toh/spectrum/Smoothing.html< /а>

Следующим моим предположением был бы фильтр Калмана, но ему нужна оценка начального состояния, которую я не могу знать для этого типа сигнала.

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


person Anne Shirley    schedule 08.03.2016    source источник
comment
Если вы знаете физику своих сигналов, вы можете подогнать функцию аналитической модели (экспоненту?) к вашим необработанным данным, а затем выполнить все операции с этой плавно подобранной функцией.   -  person Archie    schedule 08.03.2016
comment
Это моя проблема. Я не знаю модель этой функции. Это может быть квадратичным, кубическим, экспоненциальным, глядя на эти данные. Поскольку это непрерывный поток ввода, у меня не будет всех данных для подгонки. Выполнение подгонки каждый раз, когда я получаю входные данные, может оказаться дорогостоящим в вычислительном отношении, особенно на борту БПЛА.   -  person Anne Shirley    schedule 09.03.2016


Ответы (1)


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

Да, между скользящей средней, Савицкого-Голея и Калмана есть различия, но они незначительны. Основное преимущество Savitzky-Golay — использование адаптивного размера окна.

Глядя на ваши данные, кажется, что вы должны использовать гораздо больший размер окна, что приводит к более низкой частоте среза. Но тогда я не знаю, всегда ли ваши наборы данных выглядят так.

Еще один совет: пока ваши фильтры эффективно линейны, не имеет значения, применяете ли вы сначала фильтр, а затем вычисляете производную или вычисляете производную от исходного сигнала, а затем применяете фильтрацию.

person Frank Puffer    schedule 08.03.2016
comment
Мой идеальный набор данных будет выглядеть так. Хотя это лишь небольшая часть, и со временем тенденция может отличаться от кажущейся квадратичной тенденции в настоящее время. Кроме того, мне нужны как гладкие входные данные, так и их производные для моих расчетов. Было бы целесообразно сгладить необработанный вход с помощью фильтра скользящего среднего, а затем вычислить производную сглаженного сигнала и дополнительно сгладить эту производную с помощью фильтра Савицкого-Голея? - person Anne Shirley; 08.03.2016
comment
Да, в этом случае вы, вероятно, захотите большего сглаживания в производной. Я не думаю, что конкретные типы фильтров будут иметь существенное значение, но если они уже реализованы, просто попробуйте. - person Frank Puffer; 08.03.2016
comment
Конечно, большое спасибо! Я дам вам знать, если мои результаты улучшатся. - person Anne Shirley; 09.03.2016