Хвост скиппи деконволва - PullRequest
0 голосов
/ 09 января 2019

У меня есть набор данных, который я хотел бы деконволвировать. Мои предположения

  • Сигнал f (t) = 0 до начала наблюдения, то есть для t <0 </em>
  • Фильтр, который я использую, является причинно-следственным, то есть h (t) = 0 для t <0 </em> (например, функция экспоненциального распределения)

Я прочитал этот пост, проверил предложенное решение, и оно работает. Моя проблема в том, что моя функция фильтра имеет достаточно длинный хвост, а частота дискретизации довольно грубая. Мой сигнал не успевает понизиться до нуля за время наблюдения, как показано во всех примерах игрушек. Кажется, что функция scipy.signal.deconvolve восстанавливает только ту часть исходного сигнала, в которой свернутый сигнал и функция фильтра полностью перекрываются. Для моих целей это слишком расточительно. Можно ли использовать scipy.signal.deconvolve или другой инструмент для деконволюции всего набора данных, а не только полностью перекрывающейся части. Я понимаю, что, возможно, деконволюция сигнала в самом конце хвоста имеет большую ошибку, чем посередине. Идеальным решением было бы предложить значение деконволюционной функции для всей продолжительности наблюдения, а также сообщить об ожидаемой ошибке деконволюции как функции времени. Любой совет приветствуется

...