Модификация метода наименьших квадратов Прони

Дипломная работа - Компьютеры, программирование

Другие дипломы по предмету Компьютеры, программирование

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

 

где Sbase(t) - отрезок с отсчетами предыстории, Sextr(t) - отрезок предыстории, расширенный на удвоенный интервал экстраполяции; 1 . F и F - соответственно операторы обратного и прямого Фурье-преобразования; - масштабирующий множитель, вычисляемый по критерию согласования уровней прогноза и предыстории на границах интервала предыстории. Описанные алгоритмы являются базовыми и в силу прозрачности их физической интерпретации допускают ряд модификаций и обобщение на многомерные случаи, что и позволяет говорить о классе АПГЭ.

 

Рис. 8 - Сверху - искаженный сигнал, снизу - восстановленный сигнал

 

Результаты по восстановлению искаженных сигналов в целом положительны. Сравнение с аналогичной программой MP3Doctor показало существенное улучшение качества реставрации дефектов аудио - файлов в виде резких щелчков.

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

2. Метод Прони

 

.1 Исходный подход Прони

 

Метод Прони [1,9] аппроксимирует последовательность комплексных данных xi моделью, состоящей из p затухающих комплексных экспонент :

 

,(2.1)

 

где Ak - амплитуда, fk - частота, jk - начальная фаза, ak - коэффициент затухания и T - период дискретизации сигнала.

Запишем выражение (2.1) в виде:

 

, n = 1, 2, … 2p

где

, (2.2)

.(2.3)

 

Для всех n составим систему уравнений:

 

(2.4)

Для решения этой системы введем дополнительные коэффициенты a0, a1,,a2,…, ap, такие, что a0 = 1 и

 

,(2.5)

 

для k = 1, 2,…, p.

Далее над системой уравнений (2.4) проделаем следующие действия:

-ю строку системы умножим на a0, 2-ю - на a1, 3-ю - на a2, и так до (p+1) строки. Сложив эти строки, получим первую строку новой системы уравнений.

-ю строку системы умножим на a0, 3-ю - на a1, 4-ю - на a2, и так до (p+1) строки. Сложив эти строки, получим вторую строку новой системы уравнений.

И так далее до p-ой строки, т.е. новая система уравнений будет выглядеть следующим образом:

 

 

Учитывая (2.5), заметим, что левая часть в каждой строке системы уравнений равна нулю, т.е. систему уравнений можно переписать:

(2.6)

 

или учитывая, что a0 = 1, получим систему линейных уравнений, где неизвестными будут a1, a2, a3,…, ap:

 

(2.7)

 

Решив эту систему, найденные значения a1, a2, a3,…, ap подставим в выражение (2.5), из которого найдем zk, т.е. необходимо решить следующее уравнение n-ого порядка:

 

,(2.8)

 

где a0 = 1.

Далее, взяв первые p строк системы уравнений (2.4) и подставив в нее корни уравнения (2.8) z1, z2,…, zp , получим еще одну систему линейных уравнений:

(2.9)

 

из которой найдем значения h1, h2,…, h p

Алгоритм поиска параметров модели Прони по классическому подходу состоит из четырех этапов:

этап: составляется и решается система уравнений (2.7), из которой находятся коэффициенты a1, a2, a3,…, ap;

этап: найденные значения a1, a2, a3,…, ap подставляем в уравнение (2.8), из которого находим z1, z2,…, zp;

этап: найденные значения z1, z2,…, zp подставляем в систему линейных уравнений (2.9), решая которую находим h1, h2,…, h p;

этап: учитывая выражения (2.2) и (2.3), найдем параметры модели:

 

(2.10)

 

Описанный алгоритм раскладывает N комплексных отсчетов сигнала на N/2 комплексных затухающих экспоненциальных компонент.

Недостатками являются:

большая погрешность вычисления при N превышающих 200 отсчетов, так как приходится решать уравнение (2.8) 100-го и выше порядка, а также системы из 100 и более линейных уравнений (2.7) и (2.9);

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

На рисунке 9 приведен исходный текст программы, реализующей метод Прони, написанной в среде программирования LabVIEW, а на рисунке 10 приведен пример ее работы.

 

Рис. 9 - Блок диаграмм программы, реализующей метод Прони

Рис. 10 - Программа, реализующая метод Прони

 

2.2 Пример вычисления спектра методом Прони

 

Задание сигнала

В качестве примера анализируемого сигнала возьмем четыре отсчета синусоиды, записанной следующим выражением:

 

,

 

где

- ам