УДК 519.61; 004.02; 004.67 DOI: 10.17586/0021-3454-2016-59-3-211-218
ПОНИЖЕНИЕ РАЗМЕРНОСТИ ПРОСТРАНСТВА ПРИ КОРРЕЛЯЦИИ И СВЕРТКЕ ЦИФРОВЫХ СИГНАЛОВ
1 2 А. Ю. Гришенцев1, А. Г. Коробеиников2
1 Университет ИТМО, 197101, Санкт-Петербург, Россия E-mail: grishentcev@ya.ru
2 Санкт-Петербургский филиал Института земного магнетизма, ионосферы и распространения радиоволн им. Н. В. Пушкова РАН, 199034, Санкт-Петербург, Россия
Сформулированы и доказаны теоремы о понижении размерности пространства при корреляции и свертке n-мерных цифровых сигналов, в том числе при быстрой свертке на основе быстрого преобразования Фурье. В качестве иллюстрации рассмотрены некоторые примеры. Широкое применение теорем возможно в задачах обработки и анализа цифровых данных, в системах широкополосной радиосвязи, в оптоэлектронике, при исследованиях уединенных волн (солито-нов) и в других естественно-научных областях знаний.
Ключевые слова: корреляция, свертка, быстрая свертка, многомерные сигналы, оптимизация вычислений, цифровая обработка сигналов, широкополосные сигналы
Введение. Развитие современных систем цифровой обработки сигналов в значительной степени обусловлено развитием вычислительных технологий и методов цифровой обработки. Особое внимание уделяется обработке многомерных изображений. Говоря об изображениях, часто имеются в виду графические изображения; в более широком смысле изображение является (функциональным) отображением T элементов y некоторого множества Y (yeY), называемого прообразом, на элементы х множества X (xeX), называемого образом (изображением), т.е. T:Y^X.
Эффективная цифровая обработка требует развитого математического аппарата [1—4] с возможностью реализации в аппаратном, программном или смешанном виде [2, 5, 6]. Для создания систем цифровой обработки оптимальное решение — это готовые системы, выполненные в виде микросхем или схемотехнических модулей [7, 8], программных библиотек, имеющих высокий уровень многокритериальной оптимизации и достаточное множество опций конфигурации при высоком быстродействии. Построение таких систем требует, кроме развитого математического аппарата, междисциплинарного (конвергентного) подхода к проектированию объектов приборостроения [9, 10].
В настоящей статье сформулированы и доказаны теоремы о понижении размерности пространства при корреляции и свертке, а также теорема о понижении размерности пространства при быстрой свертке. Реализация теорем может быть выполнена доступными вычислительными средствами, что способствует их более эффективному использованию в системах цифровой обработки сигналов.
Особую актуальность рассматриваемые теоремы имеют для современных систем обработки многомерных изображений высокой четкости [11—13], систем широкополосной связи [6], оптоэлектронных систем [5] и других систем цифровой и смешанной обработки сигналов.
Теоремы о понижении размерности пространства при корреляции и свертке. Введем следующие обозначения: пусть в D-мерном пространстве Л° [3, 11] заданы два дискретных сигнала u[n1, n2,..., nD] и h[n1, n2,..., nD], nieZ, i=1, ..., D, где каждый элемент сигнала
является комплексным числом. Тогда операцию свертки обозначим как у[п1, п2,..., пв]= =и[п^ п2,..., пг)]*И\п\, п2,..., пв] или у[Лв]=и[Лв]*к[Лв], а выражение для вычисления
п
в-мерной свертки при использовании сумматора у[п] = Е х[к] [4] будет иметь следующий
к=-о
вид [4, 14]:
00 го
у[п2,• • •,пв]= Е Е - Е ф®,
(1)
к1=-о к2 =-о кэ =-о
где ф = и[к1,к2,-,кв], ш = к[«1 -к1,«2 -к2, — ,пв-кв].
Операцию корреляция обозначим как у[п1, п2,..., пО]=и[п1, п2,..., пО]*А[п1, п2,..., пв] или у[Лв]=и[Лв]*к[Лв], а выражение для вычисления в-мерной корреляции будет иметь следующий вид:
о о
у[n2,•..,по]= е Е • Е ф®,
(2)
к1=-о к2 =-о к0 =-о
где ф = и[к1,к2,•..,кв]; ш=к[п1 +кьп2 + к2,-.,пв +кв]; ш — комплексно сопряженное число к ш.
Зададим операцию, называемую понижением размерности пространства на измерение п. или суммированием сигнала и[Лв] по п.-, как
о
= Е и [ п2, • • •,пв ], п е{пЪ п2, • • •, пв}.
и
Лв - п,-
Теорема 1. Пусть в в-мерном пространстве Лв заданы два дискретных сигнала и[Л^] и к[Лв] с конечным, по каждому измерению из Лв, числом ненулевых значений. Выберем одно произвольное измерение п. из Лв, тогда результат свертки у[Лв]= и[Лв]*к[Лв] с последующим
суммированием по п. — есть у
Лв - п
= Е у[п\, п2, • • •, пв ], что эквивалентно предваритель-
ному суммированию и
Лв - п
= Е и[п1,п2,• ..,пв] и к
Лв - п.-
= Е к[пь n2, пв ]
с последующей сверткой у[Лв-п/]= и[Лв-п/]*к[Лв-п/].
Доказательство. Для дискретного сигнала у[Лв] = и[Лв]*к[Лв] выберем и зафиксируем значения отсчетов по всем, кроме одного, измерениям щ (/=1,..., В). Произведем, согласно выражению (1), вычисление свертки у[ЛВ]= и[ЛВ]*к[ЛВ] для зафиксированных (Лв-п.) и всех возможных п значений отсчетов. При этом, учитывая, что (в соответствии с формулировкой теоремы) сигналы и[Лв] и к[Лв] имеют конечное число ненулевых значений по каждому измерению, в результате вычислений получим конечное множество ненулевых элементов сигнала у[Лв] с зафиксированными значениями отсчетов по всем, кроме одного, измерениям п.. Полученное множество позволяет вычислить сумму, характеризующую понижение размерно-
сти для одного элемента сигнала: у
Лв - щ
= Е у[п, п2, •, пв ], которая является суммой
по п. комбинаторным сочетаниям без повторений исходных сигналов и[Лв] и к[Лв] для зафиксированных значений по прочим отсчетам.
о
о
п =-о
Понижение размерности пространства при корреляции и свертке цифровых сигналов 213 Выполним действия иначе. Сначала произведем понижение размерности сигналов и[ЛВ]
и И[ЛВ] для выбранного ранее измерения щ, вычислив и
Л я - щ
= 2 ^^ щв]
и
И
Лв - щ
= 2 И[и1з «2, • ••, ]. Затем произведем свертку сигналов и[Л -щ] и И[Л -щ] для
щ=-ю
зафиксированных ранее значений отсчетов по всем измерениям из (Ля-щ-). В результате получим сумму комбинаторных сочетаний без повторений исходных сигналов и[ЛВ] и И[ЛВ], аналогичную сумме, полученной ранее.
Применение указанной последовательности действий к различным значениям отсчетов для (Лв-щ) показывает, что результат операции свертки у[ЛВ]= и[ЛВ]*И[ЛВ] с последующим
суммированием по
есть у
Лв - щ■
= 2 у[^1,п2,•••,пБ], что эквивалентно предвари-
тельному суммированию и
Лв - щ
= 2 и[щ1,»г, — ,] и И
Лв - щ
с последующей сверткой у[ЛВ-щ-]= ^Л^щР^Л^щ]. ■
Теорема 2. Пусть в В-мерном пространстве Лв заданы два дискретных сигнала и[ЛВ] и И[ЛВ] с конечным, по каждому измерению из Лв, числом ненулевых значений. Выберем одно произвольное измерение щ из Лв, тогда результат операции корреляции у[ЛВ]= и[ЛВ]*И[ЛВ]
с последующим суммированием по щ
есть у
Лв - щ
= 2 У^1,щ2, — ,щв], что эквива-
лентно предварительному суммированию и
Лв - ГЦ
= 2 и[щ1,щ^..,щв] и И
Лв - щ
= 2 И[щ, щ2, •, щв ] с последующей корреляцией у[ЛВ-щ-]= ^Л^щ^^Л^щ].
Доказательство теоремы, аналогично доказательству теоремы 1, с той лишь разницей, что вместо операции свертки (1) необходимо использовать операцию корреляции (2). ■
Теорема о понижении размерности пространства при быстрой свертке. При реализации свертки дискретных сигналов на основе преобразования Фурье и перемножения их спектров, в случае применения быстрого преобразования Фурье (БПФ), получим так называемую быструю свертку. Для реализации быстрой свертки используем следующие обозначения: ^|и[Лв]}=Ц[Лв] — прямое преобразование Фурье дискретного сигнала и[Лв]; ^1{Ц[Лв]}=и[Лв] — обратное преобразование Фурье. Следует отметить, что при прямом БПФ производится отображение сигнала в частотное пространство, вообще говоря, по природе своей не идентичное исходному пространству существования сигнала. Но результат БПФ может быть отображен в В-мерное пространство Лв, в котором задан исходный сигнал, так как его размерность и его БПФ совпадают, а значения элементов пространства будут комплексными числами.
Таким образом, можно сформулировать теорему о понижении размерности пространства при быстрой свертке, которая является следствием теоремы 1.
Теорема 3. Пусть В-мерном пространстве Лв заданы два дискретных сигнала и[ЛВ] и И[ЛВ] с конечным, по каждому измерению из Лв, числом ненулевых значений. Выберем одно произвольное измерение щ из Лв, тогда результат операции быстрой свертки у[ЛВ]= =^-1{^{и[ЛВ]}-^{И[ЛВ]}} с последующим суммированием по щ — есть
У
Лв - п
= 2 у[п\,П2,...,пв], что эквивалентно предварительному суммированию
Лв - п
= 2 М[П1'П2,•••,пв] и к
Л ^ - П;
= 2 к[п1з П2,..., пв ] с последующей быстрой
сверткой 1г1{Е{и[Л[)-п1\}-Е{к[Л0'-п1\}}, или кратко:
г-11Г {2^ ° р |2к[Л ° = г-1 { {и[Л ° ]} • г{к[Л»]
Доказательство теоремы следует из доказательства теоремы 1 и определения операции „быстрая свертка". Теорему о понижении размерности пространства можно записать в виде
выражения 2
п
быстрой
"л в " *2к "Лв" = Лв" *к Лв"
заменив операцию свертки операцией
свертки
у[Лв]=Г^1{Г{м[Лв]}-Г{к[Лв]}}, получим выражение
г-11 г 12и[Л °] 1 • г I !к[Л°] [ [ = 2 (г-1{Г>[ ]} • Г {к[Л° ]}}) .
■
Замечание о практическом применении теоремы 3. В работе [14] показано, что для сокращения вычислений и оптимизации реализации свертки применять быструю свертку имеет смысл, например, для одномерных сигналов, содержащих 60 и более элементов. При этом следует учитывать требование, что БПФ применимо к последовательностям, число элементов которых кратно 2 (к — целое положительное число). А если число элементов последовательности не кратно 2к, то для реализации БПФ такие последовательности дополняют нулевыми элементами до необходимой кратности. С учетом сказанного возможно определить порог эффективного применения быстрой свертки для (одномерных) последовательностей, содержащих 64 элемента и более.
Рассмотрим частные случаи применения теорем.
Пример 1. Свертка двух векторов: заданы два вектора (например, строки некоторых изображений) Х=(х0, х1, х2, х3, х4) и Н=(к0, к1, к2), требуется выполнить свертку в соответствии с теоремой 1. Используя выражение (1), для заданных значений векторов
XI -1
у[;] = 2х и №-1]
1=0
вычислим свертку векторов У=Х*Н:
У= (к0х0, к0х1+к1х0, к0х2+к1х1+к2х0, к0х3+к1х2+к2х1, к0х4+к1х3+к2х2, к1х4+к2х3, к2х4).
Затем вычислим поэлементную сумму для вектора У:
'ЕУ=(к0х0+к0х1+к1х0+к0х2+к1х1+к2х0+к0х3+к1х2+к2х1+к0х4+к1х3+к2х2+к1х4+к2х3+к2х4).
В результате получим сумму комбинаторных сочетаний без повторений различных произведений элементов векторов X и Н. Далее, в соответствии с теоремой 1, получим указанный результат с помощью вычисления поэлементной суммы для векторов X и Н: ЕХ=(х0+х1+х2+х3+х4) и ЕН=(к0+к1+к2) с последующей сверткой, т.е. перемножения скаляров:
(х0+х1+х2+х3+х4)(к0+к1+к2)= =(к0х0+к0х1+к1х0+к0х2+к1х1+к2х0+к0х3+к1х2+к2х1+к0х4+к1х3+к2х2+к1х4+к2х3+к2х4)=ЕУ.
Очевидно, что результаты совпадают.
Следует отметить, что если считать умножение или сложение как одну операцию, то для получения одинакового результата свертка с последующим суммированием требует 29 операций (15 операций умножения и 14 операций сложения), а суммирование с последующей сверткой — 7 операций, из которых только 1 (ресурсозатратная) операция умножения и 6 операций сложения. Такое существенное сокращение операций особенно актуально для обработки многомерных сигналов [6, 15, 16].
Пример 2. Широкополосный сигнал существует в пространстве, заданном частотой и временем (со, ¿), при этом ансамбль бинарных сигнатур, определяющий широкополосный сигнал, образован матрицей Адамара [6] и имеет вид:
Н =
п 1 1 1
1 -1 1 -1
1 1 -1 -1
л -1 -1 1
автокорреляция матрицы НН будет иметь следующий вид:
У = Н • Н =
Г 1 0 -1 0 -1
0 1
0 -4 0 0 0 4 0
-1
0 -3 0 5 0 -1
0 0 0 16 0 0 0
-1
0 5 0 -3 0 -1
0 4 0 0 0 -4 0
л 0 -1 0 -1 0 1
при этом сумма матрицы У по столбцам: (0, 0, 0, 16, 0, 0, 0).
Применив теорему 2, рассчитаем сумму матрицы Н по столбцам с последующим вычислением автокорреляции полученных векторов:
(4, 0, 0, 0) <4, 0, 0, 0)=(0, 0, 0, 16, 0, 0, 0).
Полученные результаты совпадают.
Пример 3. В качестве примера к теоремам 1 и 3 рассмотрим следующий. В программе Ма1ЬаЬ [17] реализованы вычислительные процедуры свертки и быстрой свертки с понижением размерности в соответствии с теоремами для матриц с комплексными коэффициентами (см. листинг). Результаты расчетов, выводимые программой, приведены в конце листинга.
Отметим, что матрицы исходных данных сформированы с учетом изменения размеров результирующего дискретного сигнала у[ЛВ] при свертке у[ЛВ]= и[ЛВ]*И[ЛВ] и особенностей реализации функций программы Ма1ЬаЬ. Понижение размерности пространства сигнала производится с помощью функции БашО; если параметром функции Ма1ЬаЬ БашО является двумерный массив, то происходит суммирование по столбцам; функция conv() предназначена для свертки одномерных последовательностей; функции fft() и ifft() — прямое и обратное БПФ одномерных последовательностей соответственно; функции conv2(), fft2() и ifft2() — двумерные аналоги рассмотренных функций.
Листинг. Программная реализация теорем 1, 2, 3.
% исходные матрицы тх1 = [1 + 3i 2+i 0 0;
7+2i 3 + ^ 0 0; 0 0 0 0; 0 0 0 0];
тх2 = [5+i 9+7i 0 0; 2+2i 4-3i 0 0; 0 0 0 0; 0 0 0 0];
О О_________________________________________________________
ОО---------------------------------------------------------
%% ТЕОРЕМА "О ПОНИЖЕНИИ РАЗМЕРНОСТИ ПРИ СВЕРТКЕ"
% 1-й способ:
conv(sum(mx1), sum(mx2))
% 2-й способ:
sum(conv2(mx1,mx2))
о о_________________________________________________________
ОО---------------------------------------------------------
%% ТЕОРЕМА "О ПОНИЖЕНИИ РАЗМЕРНОСТИ ПРИ БЫСТРОЙ СВЕРТКЕ" % 1-й способ:
ifft(fft(sum(mx1)).*fft(sum(mx2))) О 2-й способ:
sum(ifft2(fft2(mx1).*fft2(mx2)))
О О_________________________________________________________
%%---------------------------------------------------------
%% ТЕОРЕМА "О ПОНИЖЕНИИ РАЗМЕРНОСТИ ПРИ КОРРЕЛЯЦИИ"
% 1-й способ:
xcorr(sum(mx1), sum(mx2))
% 2-й способ:
sum(xcorr2(mx1,mx2))
о о_________________________________________________________
%%---------------------------------------------------------
Результаты расчетов (вывод программы)
41,0+59^ 104, 0+147^ 45, 0+85, 0i 0,0+0,0i 0,0+0,0i 0,0+0^ 0,0+0,0i 41,0+59,0i 104, 0+147, 0i 45, 0+85, 0i 0,0+0^ 0,0+0,0i 0,0+0,0i 0,0+0,0i
41,0 + 59,0i 104, 0 + 147^ 45, 0 + 85, 0i 0,0 + 0,0i 41,0 + 59,0i 104, 0 + 147, 0i 45, 0 + 85^ 0,0 + 0,0i
0,0+0,0i 0,0+0,0i 124, 0+33, 0i 156, 0+56^ 50, 0+20, 0i 0,0+0,0i 0,0+0,0i 0,0+0,0i 0,0+0^ 124, 0+33, 0i 156, 0+56, 0i 50, 0+20, 0i 0,0+0,0i 0,0+0^ Расчеты, выполненные различными способами, показывают эквивалентность результатов и демонстрируют некоторые практические возможности применения рассмотренных теорем, в частности возможность существенного сокращения вычислительных затрат при выполнении свертки с понижением размерности пространства в задачах корреляционного распознавания образов, например широкополосных сигналов.
Заключение. Сформулированы и доказаны теоремы о понижении размерности пространства при свертке, корреляции и быстрой свертке. Практическое применение теорем возможно при решении широкого класса задач обработки и анализа цифровых данных, например в задачах компьютерного зрения, в широкополосных системах связи и др. При необходимости на современной элементной базе можно выполнить полностью аппаратную реализацию вычислений на основе рассмотренных теорем. Применение теорем может способствовать повышению эффективности использования вычислительных ресурсов, что особенно актуально при обработке многомерных дискретных сигналов.
список литературы
1. Гантмахер Ф. Р. Теория матриц. М.: Наука, 1967. 576 с.
2. Жаринов О. О., Жаринов И. О. Синтез и оптимизация вычислительных алгоритмов обработки сигнала на основе корреляционно-экстремального метода в электрокардиографии высокого разрешения // Изв. вузов. Приборостроение. 2014. Т. 57, № 1. С. 29—38.
3. Новиков С. П., Тайманов И. А. Современные геометрические структуры и поля. М.: МЦНМО, 2005. 584 с.
4. Оппенгейм А., Шафер Р. Цифровая обработка сигналов. М.: Техносфера, 2009. 856 с.
5. Коробейников А. Г., Гатчин Ю. А., Дукельский К. В., Тер-Нерсесянц Е. В. Технологические методы снижения уровня оптических потерь в микроструктурированных волоконных световодах // Научно-технический вестник информационных технологий, механики и оптики. 2014. № 1 (89). С. 31—38.
6. Ипатов В. Широкополосные системы и кодовое разделение сигналов. принципы и приложения. М.: Техносфера, 2007. 488 с.
7. Брей Б. Микропроцессоры Intel: 8086/8088, 80186/80188, 80286, 80386, 80486, Pentium, Pentium pro processor, Pentium II, Pentium III, Pentium 4. Архитектура, программирование и интерфейсы: Пер. с англ. СПб: БХВ-Петербург, 2005. 1328 с.
8. Редькин П. П. Микроконтроллеры Atmel, архитектура AVR32 семейства AT32UC3. Руководство пользователя. М.: Техносфера, 2010. 784 с.
9. Герасимов И. В., Сафьянников Н. М., Якимовский Д. О. Сложно-функциональные блоки смешанных систем на кристалле: автоматизация функционального проектирования: Монография / Под ред. И. В. Герасимова. СПб: Изд-во „Элмор", 2012. 237 с.
10. АнисимовВ. И. Топологический расчет электронных схем. Л.: Энергия, 1977. 240 с.
11. Чобану М. Многомерные многоскоростные системы обработки сигналов. М.: Техносфера, 2009. 480 с.
12. Dubois E. The sampling and reconstruction of time-varying imagery with application to video systems // Proc. IEEE. 1985. Vol. 73, N 4. P. 502—522.
13. Vaidyanathan P. P. Multirate Systems and Fiter Banks. Englewood Cliffs: Prentice Hall, 1993. 944 p.
14. Смит С. Цифровая обработка сигналов: Практ. руководство для инженеров и научных работников: Пер. с англ. М.: Изд-во „Додека-XXI век", 2011. 720 с.
15. Гришенцев А. Ю., Коробейников А. Г. Декомпозиция n-мерных цифровых сигналов по базису прямоугольных всплесков // Научно-технический вестник информационных технологий, механики и оптики. 2012. № 4 (80). С. 75—79.
16. Гришенцев А. Ю., Коробейников А. Г. Методы и модели цифровой обработки изображений: Монография. СПб: Изд-во Политехи. ун-та, 2014. 190 с.
17. Documentation the Mathworks Matlab 2-d Convolution [Электронный ресурс]: <http://www.mathworks.com/ help/matlab/ref/conv2.html>, 2015.
Сведения об авторах
Алексей Юрьевич Гришенцев — канд. техн. наук; Университет ИТМО, кафедра проектирования и
безопасности компьютерных систем; E-mail: grishentcev@ya.ru Анатолий Григорьевич Коробейников — д-р техн. наук, профессор; ИЗМИРАН; зам. директора по науке;
E-mail: korobeynikov_a_g@mail.ru
Рекомендована кафедрой Поступила в редакцию
проектирования и безопасности 13.10.15 г.
компьютерных систем
Ссылка для цитирования: Гришенцев А. Ю., Коробейников А. Г. Понижение размерности пространства при корреляции и свертке цифровых сигналов // Изв. вузов. Приборостроение. 2016. Т. 59, № 3. С. 211—218.
ON REDUCTION OF SPACE DIMENSION AT DIGITAL SIGNALS CORRELATION AND CONVOLUTION
A. Yu. Grishentcev1, A. G. Korobeynikov2
1ITMO University, 197101, St. Petersburg, Russia E-mail: grishentcev@ya.ru
2 Pushkov Institute of Terrestrial Magnetism, Ionosphere, and Radio Wave Propagation of RAS, St. Petersburg Branch, 199034, St. Petersburg, Russia
Theorems on reduction of space dimension at correlation and convolution of n-dimensional digital signals are formulated and proved, specifically for fast convolution on the base of the fast Fourier transformation. Several examples are presented as illustrations. The theorems are reported to have possible applications in the problems of digital processing of n-dimensional signal, broadband radio communication, optoelectronics, in solitary waves (solitons) research, and in other fields of fundamental and applied natural sciences.
Keywords: correlation, convolution, fast convolution, multi-dimensional signals, optimization of computing, digital signal processing, broadband signals
Data on authors
Alexey Yu. Grishentcev — PhD, ITMO University, Department of Computer System Design and
Security; E-mail: grishentcev@ya.ru Anatoliy G. Korobeynikov — Dr. Sci., Professor; Pushkov Institute of Terrestrial Magnetism, Ionosphere, and Radio Wave Propagation of RAS; E-mail: korobeynikov_a_g@mail.ru
For citation: Grishentcev A. Yu., Korobeynikov A. G. On reduction of space dimension at digital signals correlation and convolution // Izv. vuzov. Priborostroenie. 2016. Vol. 59, N 3. P. 211—218 (in Russian).
DOI: 10.17586/0021-3454-2016-59-3-211-218