УДК 004.94 Дата подачи статьи: 16.10.17
DOI: 10.15827/0236-235X.030.4.765-769 2017. Т. 30. № 4. С. 765-769
РАЗРАБОТКА И ПРОГРАММНАЯ РЕАЛИЗАЦИЯ АЛГОРИТМОВ НЕПРЕРЫВНОГО ВЕЙВЛЕТ-ПРЕОБРАЗОВАНИЯ ВРЕМЕННЫХ РЯДОВ С РЕГУЛЯРНОЙ ДИСКРЕТИЗАЦИЕЙ
А.А. Столбова, ассистент, [email protected] (Самарский национальный исследовательский университет им. академика С.П. Королева, Московское шоссе, 34, г. Самара, 443086, Россия)
Одним из активно развивающихся направлений анализа данных является вейвлет-преобразование, которое применяется для анализа медицинских данных, обработки изображений и в других областях.
В статье рассматриваются способы вычисления коэффициентов непрерывного вейвлет-преобразования случайных процессов с регулярной дискретизацией. При классическом подходе вычисление некоторых коэффициентов может оказаться избыточным из-за того, что ряд значений вейвлетов равны нулю. Для устранения избыточности предлагается использовать характеристики вейвлетов во временной области, что позволяет получить ширину окна вейвлета, зависящую от заданного масштаба.
Таблица с полученными значениями характеристик для основных вейвлетов, таких как Гаусса 1-8-го порядков, БОО-вейвлета и вейвлета Морле, приведена в статье. На их основе предложен алгоритм вычисления значений вейвлетов, который позволяет уменьшить число отсчетов используемого вейвлета: для каждого заданного масштаба определяется число ненулевых значений вейвлета и вычисляются их значения. Таким образом, в результате получаем массив всех значений вейвлетов, необходимых для преобразования.
Для оценки коэффициентов непрерывного вейвлет-преобразования предложен алгоритм, основанный на сокращении повторных вычислений вейвлетов. Сокращение вычислений достигается за счет учета инвариантности вейвлетов относительно сдвига. Таким образом, вычислив один раз ненулевые значения вейвлетов для всех масштабов и сохранив их, достаточно обращаться по номеру к значению, соответствующему номеру сдвига. Разработанные алгоритмы реализованы в виде комплекса программ. Показано, что предложенный алгоритм работает быстрее классического и без значительной потери точности вычислений.
Ключевые слова: непрерывное вейвлет-преобразование, радиус вейвлета, норма вейвлета.
При анализе процессов различной природы применяется частотный анализ. Одним из его наиболее распространенных методов является преобразование Фурье. Этот метод подходит для анализа стационарных процессов, но при анализе нестационарных процессов он ограничен. В таком случае для анализа применяются частотно -временные методы, к которым относятся о конное 1—еоб-разование Фурье, преобразование Габора, гфеоб-разование Вигнера-Виля, а также дискретеое и непрерывное вейвлет-преобразования.
В рамках данной работы рассматривается непрерывное вейвлет-преобразование, коэффициенты которого определяются по следующей формуле:
ТС (а,К) = | м К | Л, (1)
Ыа - а )
где x(t) - случайный процесс; - выбранный базовый вейвлет; a Ф 0 - параметр масштаба; Ь > 0 -параметр сдвига [1-3].
Принимая во внимание то, что исследуемые данные являются дискретными, формула (1) преобразуется в следующие выражения:
- в случае с интегрированием методом прямоугольников:
W (a, b)
At N^2 "TL хьV Va k=o
(2)
- в случае с интегрированием методом трапеций:
At
W ( a, b) = -= -Ja
(to - b
■— --
+ Z xk v
h - b
XN
tN-1 - b
(3)
где N - число отсчетов исходного процесса.
При таком классическом подходе в вычислениях учитываются все отсчеты вейвлетов, что является избыточным. В работе [4] предложен алгоритм вейвлет-анализа временных рядов.
Данный недостаток можно устранить, используя характеристики вейвлетов.
Характеристики вейвлетов. Центр и эффективный радиус являются одними из характеристик вейвлетов во временной области [5-7]:
1 ^ 2 ^¡ПТ 11 к(1) - центр,
Ы1 -
е = Г¥ 1 (' -(0)2 к(' )12 Я - радиус,
т -
где Ы|2 = 1 |т(1 )| & - норма вейвлета.
V
Таблица 1
Характеристики базовых вейвлетов во временной области
Table 1
Time characteristics of mother wavelets
Вейвлет v(0 <S> M2 At
1 (Wave) -1 exp (- 0 0,08862 1,2247
2 (Mhat) (t2 - 1)exp (-!) 0 1,3293 1,0801
3 3 + 3i ) exp ^ L j 0 3,3234 1,0488
4 (t4 - 6t + 3)expjj 0 11,6317 1,0351
5 (-t5 + 10t3 - 15t)exp 0 52,3428 1,0274
6 (t6 - 15t4 + 45t2 -15)exp 0 287,8853 1,0225
7 (-i7 + 21t5 - 105t3 + 105t)expyj 0 1871,2543 1,0191
8 (t8 - 28t6 + 210t4 - 420t2 +105)expj 0 14034,4073 1,0165
DOG ( t ( t exp 1--] - 0,5 exp 1--] 1 22 1 8 0 0,41668 1,4409
Морле exp (-ikt ) exp^- j 0 а/>/2
В работах [8, 9] рассмотрены наиболее часто используемые вейвлеты. В таблице 1 приведены данные характеристики вейвлетов Гаусса 1-8-го порядков, DOG-вейвлета и вейвлета Морле.
Используя данные характеристики, можно вычислить ширину окна вейвлета, необходимую для оценки коэффициентов вейлет-преобразования: wt = 8аД^ где а - параметр масштаба вейвлета.
Ширина вейвлета Гаусса 8-го порядка в зависимости от параметра масштаба показана на рисунке 1.
Алгоритм вычисления вейвлетов. Для вычисления значений вейвлетов с различным набором масштабов предлагается следующий алгоритм, основанный на знании описанных характеристик.
1. Определить число отсчетов вейвлета, попадающих в ширину wt для текущего значения мас-
штаба a{. n. = ent
At„
■0,5
где ent[] - операция
взятия целой части; Ato - интервал дискретизации вейвлета.
2. Вычислить значения вейвлета:
1
к Дt,
\
, где к = -ent
n. и.
ent — . •.ent —
_ 2 _ _ 2 _
•4°, \ а<
3. Повторить пункты 1 и 2 для каждого /-го масштаба.
Блок-схема данного алгоритма приведена на рисунке 2.
Алгоритм оценки коэффициентов вейвлет-преобразования временных рядов с регулярной дискретизацией. При вычислении коэффициентов
-4 1
f8(t)
• "-wt
•wt
а)
-10
I 0 I.
10
f8(t)
"-wt
wt
б;
Рис. 1. Ширина вейвлета Гаусса 8-го порядка: а) a=0,5; б) a=1
Fig. 1. 8th Gaussian wavelet width: а) a=0,5; б) a=1
.
Начало
о
Нет
Д^
+ 0,5
Нет
k :=- [n¡/2]
<^k <[ Да
'¡/гГ>
1 ( 1 Vi,к := -т=И —01 ^a¡ ^ a¡ J
k:=k+1
С
Конец
J
Рис. 2. Блок-схема алгоритма вычисления вейвлетов Fig. 2. A control-flow chart for calculating wavelets
преобразования численными методами данная формула представляет собой сумму произведений отсчета анализируемого процесса и масштабированного вейвлета. С учетом инвариантности вейвлетов относительно сдвига предлагается следующий алгоритм для оценки коэффициентов вейвлет-преобразования.
1. Загрузить исходный процесс со значениями числом отсчетов N и интервалом дискретизации А/:
Xo Xi Xk-1 Xk Xk+1 xn-1
2. Получить массив масштабов: 1
а = 7-\ ,
' (®тш +' -Аю)
где I = 0, ..., N0 - 1; Ютт - минимальная частота; Аю - интервал дискретизации частоты;
ao a1 ai-i ai ai+i
3. Рассчитать значения вейвлетов для всех масштабов а при сдвиге Ь = 0 по алгоритму, рассмотренному выше. В результате получается таблица значений масштабированных вейвлетов:
wave0
Wavei-1
Wavei
Wavei+1
4. В зависимости от номера сдвига j и масштаба I сформировать индексы перемножаемых отсчета сигнала и масштабированного вейвлета из таблицы
n
7 - JK
где ni - число отсчетов /-го
вейвлета; K - шаг сдвига.
\m = s - num, num < 0,
\m = s + num, num > 0.
5. Рассчитать значения коэффициентов вейвлет-преобразования, используя выражение (2) или (3):
ДtV y wave , num < 0,
/ . У s im' '
Wv=\
ДtV y wave , num > 0.
m is
6. Повторить пункты 4 и 5 для всех значений I и /.
На рисунке 3 представлена блок-схема алгоритма формирования индексов и вычисления коэффициента вейвлет-преобразования
С
3
num:=
L 2 _
Да
m:=s+num
Wj := WJ +Дt ys+numwaves
s:=s+1
с
Нет
_______s -num s<n
Да
m:=s-num
W¡J := W'J +&y,wave',-mm
s:= s+1
Конец
3
Рис. 3. Блок-схема алгоритма формирования индексов и вычисления коэффициента вейвлет-преобразования
Fig. 3. A control-flow chart for generating indices and calculating a wavelet transform coefficient
w
s
Модуль получения исходного сигнала
Генератор случайного _процесса_
Генератор модельного процесса
Дискретизатор
Модуль вычисления спектральных характеристик
Вычислитель преобразования Фурье
Вычислитель оконного преобразования Фурье
Вычислитель вейвлет-преобразования
С регулярной дискретизацией
С нерегулярной дискретизацией
Генератор потока
интервалов дискретизации
Модуль вычисления погрешностей
Модуль построения вейвлетов
Модуль имитационного моделирования
Рис. 4. Структурная схема комплекса программ Fig. 4. The program complex structural chart
Программный комплекс. Программный комплекс [10] был разработан на основе алгоритмов, рассмотренных в данной работе, и реализован на языке C# на платформе .NET. Структурная схема комплекса представлена на рисунке 4. Модуль получения исходного сигнала предназначен для генерации сигналов: детерминированных и случайных, равномерно и неравномерно дискретизированных, стационарных и нестационарных. Предложенные алгоритмы реализованы в модуле построения вейвлетов и вычислителе вейвлет-преобразования с регулярной дискретизацией. Модуль вычисления погрешностей предназначен для оценки погрешности расчета вейвлет-коэффициентов с помощью предложенных алгоритмов вейвлет-преобразова-ния.
Экспериментальные исследования. Продемонстрируем работу алгоритмов с помощью разработанного комплекса программ. В качестве экспериментального сигнала используются синусоида с частотой 2 рад/c и вейвлет Гаусса 8-го порядка.
Для оценки ошибки вычисления каждого вейвлет-коэффициента определим приведенную погрешность полученных результатов:
W.. - W..
g а =
(W. )
V »/ m
где W - точное значение коэффици-
ента; Ф - оценка коэффициента.
Для сравнения скейлограмм вейвлет-преобразо-вания введем следующую величину:
5„ =
X ( $ - $ )
X $2
где $ - оценка скейлограммы.
В таблице 2 приведены результаты сравнения алгоритмов оценки коэффициентов вейвлет-преобразования. Анализ графиков приведенной погрешности вычисления у, показанных на рисунке 5, каждого вейвлет-коэффициента показывает идентичность результатов, полученных с помощью разных алгоритмов.
Таблица 2
Сравнение алгоритмов
Table 2
Comparison of algorithms
Параметр Классический Оптимальный
t, мс 2 563 110
8ск 0 0,0053
В статье были приведены значения основных характеристик во временной области ряда базовых вейвлетов. Разработан алгоритм вычисления вейвлетов, а также оценки коэффициентов непрерывного вейвлет-преобразования. Показано, что предложенный алгоритм обладает лучшим быстродействием без значительной потери точности вычислений за счет сокращения числа умножений при вычислении коэффициентов.
' -1
i=0
Литература
1. Прохоров С.А., Столбова А.А. Вейвлет-преобразование нерегулярных процессов без восстановления пропущенных отсчетов // Перспективные информационные технологии (ПИТ 2017): тр. Междунар. науч.-технич. конф. Самара, 2017. С. 154-156.
2. Mallat S.A. Wavelet tour of signal processing. The sparse way. Elsivier, 2009, 805 p.
3. Чуи Ч. Введение в вейвлеты; [пер. с англ.]. М.: Мир, 2001. 412 с.
4. Витязев В.В. Анализ неравномерных временных рядов. СПб: Изд-во СПб. ун-та, 2001. 68 с.
5. Астафьева Н.М. Вейвлет-анализ: основы теории и при-
меры применения // Успехи физических наук. 1996. Т. 166. № 11. С. 1145-1170.
6. Cohen L. Time-frequency analysis: theory and applications. Prentice-Hall, NJ, 1995, 315 р.
7. Короновский А.А., Храмов А.Е. Непрерывный вейвлет-ный анализ и его приложения. М.: Физматлит, 2003. 176 с.
8. Добеши И. Десять лекций по вейвлетам; [пер. с англ.]. Ижевск, 2001. 464 с.
9. Дьяконов В.П. Вейвлеты. От теории к практике. М.: СОЛОН-Р, 2002. 448 с.
10. Прохоров С.А., Столбова А.А. Программный комплекс для проведения вейвлет-анализа: свид. о гос. регистр. прогр. для ЭВМ. № 2015617561; заявл. 06.04.2015; опубл. 20.08.2015.
Software & Systems Received 16.10.17
DOI: 10.15827/0236-235X.030.4.765-769 2017, vol. 30, no. 4, pp. 765-769
ALGORITHMS OF REGULAR TIME SERIES CONTINUOUS WAVELET TRANSFORMATION: DEVELOPMENT AND SOFTWARE IMPLEMENTATION
A.A. Stolbova 1, Assistant, [email protected]
1 Samara National Research University, Moskovskoe Highway 34, Samara, 443086, Russian Federation
Abstract. One of the actively developing directions of data analysis is wavelet transformation. It is used for analyzing medical data, image processing and other purposes.
This paper considers methods of calculating coefficients of continuous wavelet transformation of even time series. In the classical approach, calculation of some coefficients is redundant because the value of some wavelets is zero. To remove redundancy, the authors propose using wavelet characteristics in the time domain, which allows obtaining a wavelet window width, wich depends on the given scale.
The paper gives the obtained characteristics values of mother wavelets, such as Gaussian wavelets of the 1 st to the 8th order, the DOG wavelet and the Morlet wavelet. The proposed algorithm for calculating wavelet values is based on these characteristics. The algorithm allows reducing the number of readings of the used wavelet. For each given scale, there is a determined number of nonzero wavelet values and their calculated values. As a result, we get an array of all wavelet values, which are necessary for transformation.
The paper proposes an algorithm for evaluating the coefficients of continuous wavelet transformation. It is based on decreasing repeated calculations of wavelets. The reduction of computations is due to taking into account wavelet invariance regarding a shift. Thus, if we calculate all nonzero wavelet values for all scale once and store it, then it is enough we to refer to the wavelet value by number in array corresponding to the shift. The developed algorithms are implemented as a software package. The paper shows that the proposed algorithm works faster than the classical one without significant loss of calculation accuracy.
Keywords: continuous wavelet transformation, radius of the wavelet, norm of the wavelet.
References
1. Prokhorov S.A., Stolbova A.A. Wavelet transformation of even processes without reconstructing ignored samples. Perspektivnye informatsionnye tekhnologii (PIT 2017): tr. Mezhdunar. nauch.-tekhnich. konf. [Proc. Int. Sci. and Tech. Conf. Advanced Information Technologies (PIT 2017)]. Samara, 2017, pp. 154-156 (in Russ.).
2. Mallat S.A. Wavelet Tour of Signal Processing. The Sparse Way. Elsivier Publ., 2009, 805 p.
3. Chui Ch.K. An Introduction to Wavelets. Academic Press, NY, 1992, 266 p. (Russ. ed.: Moscow, Mir Publ., 2001, 412 p.).
4. Vityazev V.V. Analiz neravnomernykh vremennykh ryadov [Analysis of Uneven Time Series]. St. Petersburg, St. Petersburg Univ. Publ., 2001, 68 p.
5. Astafeva N.M. Wavelet analysis: basic theory and some applications. Uspekhifizicheskikh nauk [Physics-Uspekhi]. 1996, vol. 166, no. 11, pp. 1145-1170 (in Russ.).
6. Cohen L. Time-Frequency Analysis: Theory and Applications. Prentice-Hall Publ., NJ, 1995, 315 p.
7. Koronovsky A.A., Khramov A.E. Nepreryvny veyvletny analiz i ego prilozheniya [Continuous Wavelet Analysis and its Applications]. Moscow, Fizmatlit Publ., 2003, 176 p.
8. Daubechies I. Ten Lectures on Wavelets. PA, USA, 1992, 357 p. (Russ. ed.: Izhevsk, 2001, 464 p.).
9. Dyakonov V.P. Veyvlety. Ot teorii kpraktike [Wavelets. From theory to practice]. Moscow, SOLON-R Publ., 2002, 448 p.
10. Prokhorov S.A., Stolbova A.A. Programmny kompleks dlya provedeniya veyvlet-analiza [A software complex for wavelet analysis]. State registration certificate of a computer program. no. 2015617561, 2015 (in Russ.).