Jump to content
    

Операция обратная к "скользящему среднему"

Дык, если задаться вопросом "что можно сделать если неизвестны фаза/начальные условия/длина итд?" то ответ тут однозначен - ничего. Именно это и имели ввиду местные телепаты. Объясняется этот факт наличием нулей в частотной характеристике однородного фильтра. Скомпенсировать их можно только полюсами, что в свою очередь требует полной когерентности последовательностей. Так что все фантазии на эту тему останутся фантазиями (реверанс в сторону AndrewN) и не более того.

Share this post


Link to post
Share on other sites

Скользящее среднее нелинейно искажает высокие частоты. Через фурье или свёртку недостоверно будет. В частоту Fs/2D попадут искажения (обрезки) частот, некратных Fs/2D. Если свернуть выход фильтра с обратной скользящему фильтру функцией, то частота Fs/2D будет плавать по фазе. А она ещё должна будет усилиться в 1.41 раза для восстановления амплитуды. И увеличения амплитуды "мусора".

Edited by GetSmart

Share this post


Link to post
Share on other sites

Посмотрите, где лежат полюсы вашего "обратного фильтра".

На единичной окружности.

Share this post


Link to post
Share on other sites

Скользящее среднее нелинейно искажает высокие частоты. Через фурье или свёртку недостоверно будет.

интегрирование - линейная операция, а скользяцее среднее - вообще КИХ фильтр с одинаковыми коэффициентами, на 0 некоторые частоты помножит, но ничего оно нелинейно не искажает.

Share this post


Link to post
Share on other sites

но ничего оно нелинейно не искажает.

Выше дописал. D задаёт интервал, на котором будут искажаться некратные интервалу частоты, причём и выше 1 и ниже. У меня еденичный импульс вылез в области Fs/2D. (PS на коротком интервале) Хотя вопрос встанет - как считать. Если при восстановлении сигнала требуется таки визуальное приближение к оригиналу как достоверность оценки, то плохо дело. А если оценкой будет результат вроде БПФ, то это другой разговор. Спектр по БПФ очень интересная вещь, к тому же двумерная. Может как-то на относительно коротких последовательностях (2..10 раз выше D) можно попытаться минимизировать искажение фазы. Но если сигнал в дальнейшем как-то узкополосно фильтруется, то смысла нет.

 

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

Edited by GetSmart

Share this post


Link to post
Share on other sites

Дык, если задаться вопросом "что можно сделать если неизвестны фаза/начальные условия/длина итд?" то ответ тут однозначен - ничего. Именно это и имели ввиду местные телепаты. Объясняется этот факт наличием нулей в частотной характеристике однородного фильтра. Скомпенсировать их можно только полюсами, что в свою очередь требует полной когерентности последовательностей. Так что все фантазии на эту тему останутся фантазиями (реверанс в сторону AndrewN) и не более того.

 

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

 

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

Share this post


Link to post
Share on other sites

fontp:

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

 

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

 

С этим никто не спорит. Речь, однако, о точном восстановлении не очень длинных последовательностей.

Share this post


Link to post
Share on other sites

С этим никто не спорит. Речь, однако, о точном восстановлении не очень длинных последовательностей.

 

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

А если получится исключить и вычислительный шум, организовав вычисления в целых числах, то формула будет работать точно всегда (пока хватит разрядности, для широкополосного сигнала разрядность результатов может расти походу рекурсии как при броуновском движении)

Share this post


Link to post
Share on other sites

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

 

PS

Ошибки округления скользящего среднего "на обратном пути" размножаются очень сильно по нарастающей в области ВЧ. А в стартовых значениях даже добавление шума (которого не было в исхонике) 10-20% от размаха сигнала не сильно искажает восстановление. ИМХО можно улучшать разрешение сигнала даже из округлённых значений скользящего среднего. Но с фильтрацией при восстановлении, вероятно, аналогичной предворительному поиску стартовых значений. Проблемы только будут с частотами кратными Fs/(2N+1). Но их фильтр давит без вариантов.

Edited by GetSmart

Share this post


Link to post
Share on other sites

Из чего это следует?

Если на выходе N элементов подряд имеют одинаковое значение, то они являются функцией N+N-1 входных элементов.

Да, согласен. Если дважды подряд повториться одинаковая последовательность отсчетов длиной N сумма тоже не будет изменяться. Вероятность мала, но есть.

 

Share this post


Link to post
Share on other sites

Да, согласен. Если дважды подряд повториться одинаковая последовательность отсчетов длиной N сумма тоже не будет изменяться. Вероятность мала, но есть.

Там для счастья не хватает 2N+1 неизвестный элемент исходника. И алгоритм скользящего без потерь, что легко делается.

 

Пока есть идея взять для стартового поиска элементы с выхода скользящего, как реально приближённое значение к оригиналу. По формуле получается, что известны зависимости между крайними элементами фильтра. Т.о. можно итеративно "раздвигать" их в нужную сторону, одновременно соблюдая постоянную составляющую (т.к. точно известно среднее арифметическое этой и соседних к ней точек). Мелкими шагами, к примеру по 1/20 от отклонения. Есть вероятность, что результат будет сходиться к оригиналу.

Share this post


Link to post
Share on other sites

Т.е. получается как с алиасом. Среднее по N точкам будет нормально передавать частоты с периодом >= 2N, далее - спады до нуля на частотах с периодом N, N/2, N/3 и т.д. Т.е. что-то правдоподобное можно выжать до первого нуля (период - N), т.е. до удвоенной частоты, а дальше будет каша с полной неопределенностью.

 

А, с другой стороны, ежели однократно узнать все N членов, то можно восстановить исходные отсчеты точно, т.е. все частоты до периода в 2 такта. Интересная ситуация.

Share this post


Link to post
Share on other sites

Т.е. получается как с алиасом. Среднее по N точкам будет нормально передавать частоты с периодом >= 2N, далее - спады до нуля на частотах с периодом N, N/2, N/3 и т.д. Т.е. что-то правдоподобное можно выжать до первого нуля (период - N), т.е. до удвоенной частоты, а дальше будет каша с полной неопределенностью.

Если считать, что сигнал был негармонический, то определённость более чем достаточная. Эффект алиасов имеет смысл именно к гармоническим сигналам. У негармонических должна быть мера оценки только приближение одномерного результата к исходнику. Что такое алиас применительно к одномерному негармоническому сигналу? Или если сигнал широкополосный и далее умножается/сворачивается с широкополосным сигналом совсем с другими характеристиками. Широкополосные аналоговые фильтры тоже не заточены на ограничения в гармоническом сигнале по сетке дискретизации. Но лучше сразу "договориться", что если источник информации о сигнале является одномерным, то вне зависимости от того, гармонический сигнал или нет, единственный достоверный критерий оценки (и восстановленного тоже) сигналов - их похожесть в одномерном виде. Причём даже спектральное сравнение корректно восстановленного сигнала будет совпадать с оригиналом. Появится вопрос "а был ли мальчик?". Или про суслика.

 

Отличия каждого соседнего элемента исходника в результате скользящего среднего, особенно без потерь, остаются. То есть воссоздание каждого элемента - возможно, с небольшим сглаживанием, чтобы обрезать (в т.ч. паразитную) Fs/2. А по НЧ/постоянке вся информация сохранилась.

Edited by GetSmart

Share this post


Link to post
Share on other sites

Интересный велосипед тут изобретают...

Автор проговорился, что он подозревает, что датчик осуществляет скользящее среднее, а он хочет узнать "правильный" сигнал.

Так вот. Давным-давно озабоченные спектроскописты используют теорему о свертке (Ну, все знают про Фурье-преобразование от свертки). Только нужно знать аппаратную функцию. Ее экспериментально получают с помощью априорных знаний или подают дельта-функцию. Так вот - предположение о скользящем среднем - это только предположение. Еще нужно правильно обрезать лишнее. Тоже вопрос.

Share this post


Link to post
Share on other sites

Guest TSerg

ТС проговорился, что "есть некие измерения при которых датчик своими конечными размерами усредняет показания по своему объёму", а это совсем не скользящее среднее.

Собственно, ничего нового в компенсации инерционности датчиков нет - этот прием достаточно часто используется, к примеру, в терморегулирующей аппаратуре для компенсации инерционности термопар.

Вопрос, как и всегда, в степени "похожести" восстановленного сигнала, да еще если канал с помехами.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...