Научная статья на тему 'Аппроксимация одно-, дву- и трехмерных дуг кривых параметрическими сплайнами'

Аппроксимация одно-, дву- и трехмерных дуг кривых параметрическими сплайнами Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
497
86
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
КОНТУР / ЭКСПЕРИМЕНТАЛЬНЫЕ ДАННЫЕ / АППРОКСИМАЦИЯ / ПАРАМЕТРИЧЕСКИЙ СПЛАЙН / КЛАССИФИКАЦИЯ / CIRCUIT / EXPERIMENTAL DATA / APPROXIMATION / PARAMETRIC SPLINE / CLASSIFICATION

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Вишневский В.В., Калмыков В.Г., Романенко Т.Н.

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

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

We discuss the algorithm for calculating the coefficients of the parametric spline for approximating sequences of experimental data. We showed the generalizations, which allow using this algorithm for one-, twoand three-dimensional cases of the experimental data submission.

Текст научной работы на тему «Аппроксимация одно-, дву- и трехмерных дуг кривых параметрическими сплайнами»

УДК 004.896

В.В. ВИШНЕВСКИЙ*, В.Г. КАЛМЫКОВ*, Т.Н. РОМАНЕНКО*

АППРОКСИМАЦИЯ ОДНО-, ДВУ- И ТРЕХМЕРНЫХ ДУГ КРИВЫХ ПАРАМЕТРИЧЕСКИМИ СПЛАЙНАМИ

Институт проблем математических машин и систем НАН Украины, Киев, Украина

Анотаця. Обговорюеться алгоритм обчислення коефщгентгв параметричного сплайну, що апрок-симуе посл1довност1 експериментальних даних. Наведенi узагальнення, як дозволяють використо-вувати цей алгоритм для одно-, дво- та тривимiрного випадюв представлення експериментальних даних.

Ключовi слова: контур, експериментальт дат, апроксимащя, параметричний сплайн, класифта-щя.

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

Ключевые слова: контур, экспериментальные данные, аппроксимация, параметрический сплайн, классификация.

Abstract. We discuss the algorithm for calculating the coefficients of the parametric spline for approximating sequences of experimental data. We showed the generalizations, which allow using this algorithm for one-, two- and three-dimensional cases of the experimental data submission. Keywords: circuit, experimental data, approximation, parametric spline, classification.

1. Введение

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

В целом ряде статей мы уже рассматривали подходы к решению таких задач при выделении признаков формы кривых, описывающих те или иные экспериментальные данные [1, 2]. В этой статье решено привести обобщение алгоритмического базиса при предварительной обработке данных, которые могут быть описаны одной или несколькими дугами кривых, для всех случаев пространств координат. Заметим, что описываемые алгоритмы относятся к этапу предварительной обработки исходных данных и построения системы признаков, чувствительных к форме объектов, для решения задачи классификации [3, 4]. Сама же классификация объектов по их форме в данной статье не рассматривается.

2. Постановка задачи

Итак, пусть в результате некоего физического процесса мы получаем дискретные экспериментальные данные X = {x(m)}, m = 0,M для одномерного, X = {x(m)}, Y = {y(m)}} для двумерного и X = {x(m)}, Y = {y(m)}, Z = {z(m)} для трехмерного случаев, которые исследователем воспринимаются как дискретные отсчеты некоей дуги кривой одномерной, плоской или пространственной. Исследователю важно классифицировать форму этой дуги

© Вишневский В.В., Калмыков В.Г., Романенко Т.Н., 2015 ISSN 1028-9763. Математичш машини i системи, 2015, № 4

кривой, но закон ее построения в общем случае не известен.

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

x(k ) = a0kr + a1kk 1 +... + ar-1k + ar, (1)

y(k) = b0kr + b1kk-1 +... + br-1k + br.

Выбор r -ной степени полиномов зависит от сложности аппроксимируемых контуров.

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

В качестве аппроксимирующего параметрического сплайна можно использовать кривую Безье, канонический сплайн (cardinal spline) [5]. В данной работе будет описано применение канонического сплайна третьего порядка.

Канонический сплайн - это последовательность полиномов третьего порядка, каждый из которых может быть записан параметрическим уравнением общего вида (2). Кривые, соответствующие полиномам, начинаются и заканчиваются в управляющих точках, образуя плавную односвязную кривую (рис. 1).

x(k ) = axk3 + bxk2 + cxk + dx, (2)

y(k) = a k3 + b k2 + c k + d .

s \ / i i i i

Для аппроксимации последовательности большого количества экспериментальных данных, являющихся реализацией кривых сложной формы, используют кардинальные кубические сплайны [5, 7]. Кардинальные кубические сплайны являются последовательностью N кубических полиномов, которые определяются управляющими точками v = {xn) или v = {xn, yn}, или v = {xn ,yn, z п }, п = 1, N +1, N << M. Каждое значение n в последовательности управляющих точек соответствует некоторому значению тп в Рис. 1. Канонический последовательности измерений. Будем рассматривать только сплайн корректные последовательности управляющих точек. Под кор-

ректной последовательностью будем понимать такую последовательность, при которой выполняется условие mn < mn+1. Количество полиномов в последовательности определяется сложностью формы аппроксимируемой экспериментальной кривой. Последовательность полиномов X(t) = {Xn(tn)}, Y(t) = {Y„(tn)}, Z(t) = {Zn(tn)} соответствует каждой из пространственных координат. Коэффициенты каждого из полиномов в последовательности, например, для координаты x : Xn (k) = anxk3 + bnxk2 + cnxk + dnx, определяются значениями в управляющих точках xn-1, xn, xn+1, xn+2:

x0' У

anx = Т (*„+! - *п-1 )+ Т(Xn+2 - *П )+ 2*П - 2,

К = -2Т(хп+1 - Хп-1 )-Т(хп+2 - Хп )-3хп + 3х„+1, (3)

Спх = Т (хп+1 Хп-1 ),

ё = х ,

пх п

где Т - натяжение (при Т = 0 кривая вырождается в прямую). Для большинства практических применений используют значение Т =0,5.

Для незамкнутых кривых при п = 1: хп-1 = х1, при п = N : хп+1 = хы.

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

В качестве меры сходства аппроксимирующего сплайна и последовательности экспериментальных данных будем использовать оценку площади фигуры, ограниченной контуром, образованным расчетной кривой и ломаной линией, последовательно соединяющей экспериментальные данные £ (О, Р). Тогда поиск сплайна, наилучшим образом аппроксимирующего последовательность экспериментальных данных, можно рассматривать как вычисление оптимальных коэффициентов vopt, при которых минимизируется значение оценки площади (5).

П = {хп, Уп}, (4)

Vopt :

а^шт £ (О, Р), (5)

где О - последовательность экспериментальных данных gm (х, у);

Р - точки аппроксимирующего сплайна рт (хрт, урт);

т = 0,М, М - количество отсчетов в последовательности экспериментальных данных.

Минимизация указанной меры сходства (5) достигается методом градиентного спуска [6].

Общий алгоритм итерационной процедуры аппроксимации экспериментальных данных параметрическими сплайнами с использованием итерационного метода градиентного спуска представлен на рис. 2. На старте алгоритма имеем произвольное приближение сплайна к последовательности экспериментальных точек. Оцениваем меру сходства и производим шаг градиентного спуска по одному из возможных направлений. Снова оцениваем меру сходства и делаем шаг в другом направлении градиентного спуска. Такая процедура выполняется до тех пор, пока величина изменения меры сходства становится меньше некоторого заранее заданного значения е. Возможная ситуация с отсутствием сходимости итерационного алгоритма блокируется заранее заданным максимальным количеством итераций.

V

3. Аппроксимация одномерной последовательности экспериментальных данных

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

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

В этом случае вектор управляющих точек сплайна будет выглядеть как (6)

V ® (Л, К }. (6)

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

На рис. 3 представлена иллюстрация работы алгоритма аппроксимации одномерной последовательности экспериментальных данных в наглядном виде.

Начальное положение аппроксимирующей кривой у=[у(Ш(к)1

Pm(Уpm, ¡рт)

Точки на аппроксимирующей кривой Рп с шагом Ак (и=[0;^1)

ро(Урд' ¡ро)' О р1(ур1' р!•)'

Аппроксимируемая последовательность О = (§1,§2, ■■■§м) и §о(У§го ¡§о)'

§М (у§М, ¡М

Минимизируемый параметр

Рис. 3. Аппроксимация одномерной последовательности экспериментальных данных

4. Экспериментальная проверка алгоритма

Алгоритм был экспериментально проверен для более 1000 реальных графиков спектрограмм медицинских препаратов крови, полученных по методу «Онкотест» [2]. На рис. 4 представлены примеры аппроксимации спектрограмм. Как видно из рисунка, по оси абсцисс отображена длина волны, причем интервалы между отдельными отсчетами по этой оси равны, что позволяет заменить значения длины волны на номер отсчета и рассматривать спектрограмму как пример одномерной последовательности экспериментальных данных.

Рис. 4. Примеры аппроксимации спектрограмм каноническими сплайнами

5. Аппроксимация двумерной последовательности экспериментальных данных

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

В этом случае вектор управляющих точек сплайна будет выглядеть как (7)

V ® К, Уп, к}. (7)

На рис. 5 представлена иллюстрация работы алгоритма аппроксимации двумерной последовательности экспериментальных данных в наглядном виде.

Аппроксимируемый контур О

щ Ы^о, Уg0, 1к0), Ыхг1, Уя1, Ъ)

Точки на аппроксимирующей кривой Рп - с шагом Ак (п=[0;^]) Ро^ ур0, tp0), О р1(хр1, ур1, Гр1),

рЫ (хрЫ урN 1рЫ)

Минимизируемый параметр

Км (xгM, ygM, 1вМ)

Рис. 5. Аппроксимация двумерной последовательности экспериментальных данных

6. Экспериментальная проверка алгоритма

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

Рис. 6. Примеры аппроксимации двумерных контуров каноническими сплайнами

7. Аппроксимация трехмерной последовательности экспериментальных данных

Трехмерную последовательность получим, если экспериментальные данные представлены в виде таблицы, в которой с каждым отсчетом (или индексом) связана тройка значений интересующих величин. Как пример можно привести электрокардиограмму в трех ортогональных отведениях [8].

В этом случае вектор коэффициентов сплайна будет выглядеть как (8)

V ® К, уп, 2„, 1п}. (8)

Начальное положение аппроксимирующей кривой у=[х(к), у(к), г(к), Ш

□ рт(хрт, урт, ^рт, ^рт)

Вш^я^ Уgm,

Аппроксимируемая дуга

и уг0,

у%1,

§м (хм У§М'

Точки на аппроксимирующей кривой Рп - с шагом Дк (п=[0;^|)

Ро(Хр0, Ур0, 2р0, ^р0)у

О р1(Хр1, Ур1, гр1, 1р1),

На рис. 7 представлен алгоритм аппроксимации трехмерной последовательности экспериментальных данных (трехмерной дуги) в наглядном виде. В случае трехмерной последовательности каждый отсчет экспериментальных данных и каждая точка аппроксимирующего сплайна характеризуются тремя координатами. Иными словами, и эксперимен-

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

8. Экспериментальная проверка алгоритма

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

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

9. Заключение

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

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

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

СПИСОК ЛИТЕРАТУРЫ

1. Вишневский В.В. Аппроксимация экспериментальных данных кривыми Безье / В.В. Вишневский, В.Г. Калмыков, Т.Н. Романенко // XIII-th International Conference KDS-2007. -Varna, Bulgaria, 2007. - June. - P. 3 - 9.

2. Вишневский В.В. Программно-аппаратный комплекс «0нкотест^М-01» / В.В. Вишневский, В.А. Владимиров, Т.Н. Романенко // Тезисы доклада II международной школы-семинара «Телемедицина - опыт и перспективы». - Донецк, 2006. - Т. 4, № 2. - С. 62 - 65.

3. Вишневський В.В. Бюметрична щентифшащя за допомогою електрокардюграми / В.В. Вишневський, Т.М. Романенко, Л.А. Юзуб // V мiжнар. наук.-практ. конф. "1нформацшш технологи та комп'ютерна iнженерiя" 1ТК1 2015. - !вано-Франювськ, 2015. - С. 130 - 131.

4. Вишневський В.В. Бюметрична iдентифiкацiя людини за ïï електрокардiограмою / В.В. Вишневський, Т.М. Романенко, Л.А. Юзуб // III мiжнар. наук.-практ. конф. "Обчислювальний iнтелект (результати, проблеми, перспективи)" ComInt 2015. - Черкаси, 2015. - С. 295.

5. Петцольд Ч. Программирование для Microsoft Windows на C#: в 2-х т. / Петцольд Ч.; пер. с англ. - М.: Русская редакция, 2002. - Т. 2. - С. 632 - 641.

6. Корн Г. Справочник по математике / Г. Корн, Т. Корн. - М.: Наука, 1974. - С. 660 - 661.

7. Vishnevskey V. Approximation of Planar and Spatial Experimental Curves by Splines that are Defined Parametrically / V. Vishnevskey, T. Romanenko, V. Kalmykov // Proc. of the international conference on applications of information and communication technology and statistics in economy and education ICAICTSEE-2014. - UNVE, Sofia, Bulgaria, 2014. - Ortober 24-25th. - P. 236 - 240.

8. Орлов В.Н. Руководство по электрокардиографии / Орлов В.Н. - М.: Медицинское информационное агентство, 2012. - С. 58.

Стаття над1шла до редакцИ' 24.09.2015

i Надоели баннеры? Вы всегда можете отключить рекламу.