реклама на сайте
подробности

 
 
> Об алгоритме (забытом ?) online вычисления корреляции.
on_river
сообщение Oct 12 2017, 08:24
Сообщение #1





Группа: Новичок
Сообщений: 2
Регистрация: 12-10-17
Пользователь №: 99 720



Об алгоритме (забытом ?) online вычисления корреляции.
Плохо - когда не знаешь, а еще и забудешь.

1. Рассматривается поток отсчетов сигнала, последовательно поступающий в регистр (вектор) размерности N.
Вычислитель, при поступлении каждого нового отсчета вычисляет вектор значений размерности N
автокорреляционной функции.

2. Известно, вычисление в "лоб" требует выполнения O(n^2) операций, а с привлечением БПФ - O(n*log(n)).

3. Если к пункту 2 кто-либо добавит: "Известен и алгоритм с O(n), вот ссылка ...", буду очень благодарен - вопрос закрыт.


Искренне, с уважением, Владимир.

P.S.

Скажите мне, что я изобрел "колесо" :-).
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
blackfin
сообщение Oct 12 2017, 09:05
Сообщение #2


Гуру
******

Группа: Свой
Сообщений: 3 106
Регистрация: 18-04-05
Пользователь №: 4 261



Цитата(on_river @ Oct 12 2017, 11:24) *
3. Если к пункту 2 кто-либо добавит: "Известен и алгоритм с O(n), вот ссылка ...", буду очень благодарен - вопрос закрыт.

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

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

Например, при вычислении "скользящего среднего" все значения одной из функций под интегралом равны единице. Это позволяет вычислить одно значение интеграла корреляции в момент прихода N-го семпла с помощью одного сложения и одного вычитания.

Точно так же, если одна из функций под знаком интеграла корреляции комплексная экспонента, то "Алгоритм Герцеля" позволяет вычислить одно значение интеграла корреляции в момент прихода N-го семпла с помощью пяти сложений и трех умножений.

Если же одна из функций четна или нечетна относительно времени, то можно сократить вдвое число умножений.

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

Вычисляют одно значение корреляционной функции для всех N значений входного сигнала в момент прихода N-го семпла.
Это значение затем сравнивают с порогом по критерию МП.
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 11th August 2025 - 20:49
Рейтинг@Mail.ru


Страница сгенерированна за 0.01394 секунд с 7
ELECTRONIX ©2004-2016