Научная статья на тему 'ВЫСОКОПРОИЗВОДИТЕЛЬНЫЕ АРХИТЕКТУРЫ ЦИФРОВОЙ ФИЛЬТРАЦИИ ИЗОБРАЖЕНИЙ В СИСТЕМЕ ОСТАТОЧНЫХ КЛАССОВ НА ОСНОВЕ МЕТОДА ВИНОГРАДА'

ВЫСОКОПРОИЗВОДИТЕЛЬНЫЕ АРХИТЕКТУРЫ ЦИФРОВОЙ ФИЛЬТРАЦИИ ИЗОБРАЖЕНИЙ В СИСТЕМЕ ОСТАТОЧНЫХ КЛАССОВ НА ОСНОВЕ МЕТОДА ВИНОГРАДА Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
72
10
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ЦИФРОВЫЕ ФИЛЬТРЫ / ОБРАБОТКА ИЗОБРАЖЕНИЙ / СИСТЕМА ОСТАТОЧНЫХ КЛАССОВ / ФИЛЬТРАЦИЯ ПО МЕТОДУ ВИНОГРАДА / FIELD-PROGRAMMABLE GATE ARRAY

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Валуева Мария Васильевна, Ляхов Павел Алексеевич, Нагорнов Николай Николаевич, Валуев Георгий Вячеславович

Непрерывное совершенствование методов регистрации, обработки и хранения визуальной информации приводит к необходимости улучшения технических характеристик систем цифровой обработки изображений. В данной работе предлагаются новые высокопроизводительные архитектуры цифровых фильтров для обработки изображений по методу Винограда с вычислениями в системе остаточных классов с модулями специального вида. Для оценки производительности и аппаратных затрат предложенных архитектур проведено аппаратное моделирование с использованием программируемых логических интегральных схем в среде автоматизированного проектирования Xilinx Vivado 2018.3 для целевой платы Artix-7 xc7a200tffg1156-3. Результаты аппаратного моделирования показали, что предлагаемые архитектуры цифровых фильтров повышают производительность до 5,42 раза по сравнению с известными методами за счет увеличения аппаратных затрат. Результаты данного исследования могут быть использованы при проектировании сложных систем обработки и анализа изображений, с целью увеличения их производительности.

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

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Валуева Мария Васильевна, Ляхов Павел Алексеевич, Нагорнов Николай Николаевич, Валуев Георгий Вячеславович

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

HIGH-PERFORMANCE DIGITAL IMAGE FILTERING ARCHITECTURES IN THE RESIDUE NUMBER SYSTEM BASED ON THE WINOGRAD METHOD

Continuous improvement of methods for visual information registration, processing and storage leads to the need of improving technical characteristics of digital image processing systems. The paper proposes new high-performance digital filter architectures for image processing by the Winograd method with calculations performed in a residue number system with special-type moduli. To assess the performance and hardware costs of the proposed architectures, hardware simulation is carried out using a field-programmable gate array in a computer-aided design environment Xilinx Vivado 2018.3 for the target device Artix-7 xc7a200tffg1156-3. The results of hardware simulation show that the proposed filter architectures have 1.13 - 5.42 times higher performance, but require more hardware costs compared to the known methods. The results of this study can be used in the design of complex systems for image processing and analysis for their performance to be increased.

Текст научной работы на тему «ВЫСОКОПРОИЗВОДИТЕЛЬНЫЕ АРХИТЕКТУРЫ ЦИФРОВОЙ ФИЛЬТРАЦИИ ИЗОБРАЖЕНИЙ В СИСТЕМЕ ОСТАТОЧНЫХ КЛАССОВ НА ОСНОВЕ МЕТОДА ВИНОГРАДА»

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

М.В. Валуева1, П.А. Ляхов1, Н.Н. Нагорнов1, Г.В. Валуев1 1 Северо-Кавказский федеральный университет, 355017, г. Ставрополь, ул. Пушкина, д. 1

Аннотация

Непрерывное совершенствование методов регистрации, обработки и хранения визуальной информации приводит к необходимости улучшения технических характеристик систем цифровой обработки изображений. В данной работе предлагаются новые высокопроизводительные архитектуры цифровых фильтров для обработки изображений по методу Винограда с вычислениями в системе остаточных классов с модулями специального вида. Для оценки производительности и аппаратных затрат предложенных архитектур проведено аппаратное моделирование с использованием программируемых логических интегральных схем в среде автоматизированного проектирования Xilinx Vivado 2018.3 для целевой платы Artix-7 xc7a200tffg1156-3. Результаты аппаратного моделирования показали, что предлагаемые архитектуры цифровых фильтров повышают производительность до 5,42 раза по сравнению с известными методами за счет увеличения аппаратных затрат. Результаты данного исследования могут быть использованы при проектировании сложных систем обработки и анализа изображений, с целью увеличения их производительности.

Ключевые слова: цифровые фильтры, обработка изображений, система остаточных классов, фильтрация по методу Винограда, Field-Programmable Gate Array.

Цитирование: Валуева, М.В. Высокопроизводительные архитектуры цифровой фильтрации изображений в системе остаточных классов на основе метода Винограда / М.В. Валуева, П.А. Ляхов, Н.Н. Нагорнов, Г.В. Валуев // Компьютерная оптика. - 2022. -Т. 46, № 5. - С. 752-762. - DOI: 10.18287/2412-6179-C0-933.

Citation: Valueva MV, Lyakhov PA, Nagornov NN, Valuev GV. High-performance digital image filtering architectures in the residue number system based on the Winograd method. Computer Optics 2022; 46(5): 752-762. DOI: 10.18287/2412-6179-C0-933.

Введение

Цифровая обработка изображений широко востребована в различных областях человеческой деятельности, таких как медицинская визуализация [1], геолокация [2], системы видеонаблюдения [3], контроль качества продукции на производстве [4] и многих других. Цифровая фильтрация используется в сложных системах обработки изображений с целью очистки от шума [5], сегментации [6], детектирования [7] или распознавания [8]. Линейные пространственные фильтры составляют основу многих систем обработки изображений, например, систем нейросетевого анализа изображений [9, 10]. В данной работе будет рассматриваться именно этот вид фильтров. Они делятся на сглаживающие фильтры, фильтры выделения контуров и фильтры повышения резкости [11].

Фильтрация изображения в оттенках серого I размера КхС производится следующим образом. Изображение обрабатывается фильтром W размером к хк, при этом размер обработанного изображения меньше исходного на к-1, если к нечетное, и на к, если к четное. Чтобы размер изображения не уменьшался после фильтрации, к исходному изображению добавляют рамку из столбцов и строк соответствующего размера [12]. Далее будем рас-

сматривать только случай, когда к - нечетное, так как он является наиболее распространенным на практике. Таким образом, на вход подается изображение 1Р размером (К + к - 1)Х(С + к - 1). После фильтрации изображения 1р фильтром размером к хк на выходе формируется изображение ^ размером К хС следующим образом:

1г ( у ) = Х ¿!р(*+1+', у+1+(, ]), (1)

где 0 < х < К, 0 < у < С, (=\_к / 2]. Схема процесса фильтрации изображения представлена на рис. 1.

Как видно из формулы (1), операции умножения и сложения лежат в основе цифровой фильтрации. Основная вычислительная нагрузка при линейной фильтрации заключается в многократном выполнении операции умножения. Аппаратная реализация процесса фильтрации позволяет увеличить скорость обработки изображений [13]. В связи с этим исследователи ведут разработки в области проектирования эффективных с точки зрения скорости энергопотребления и площади сумматоров и умножителей. В работе [14] авторы предлагают новое устройство умножения с накоплением. Авторы статьи [15] представили новое усеченное устройство умножения с накоплением

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

R+k-2

0 С-1

Функция фильтра 0 п

k R-1

Входное изображение, 1Р

Обработанное изображение, 1f

Рис. 1. Фильтрация изображения

Одним из подходов к увеличению быстродействия цифрового фильтра является уменьшение количества операций умножения. В работе [16] предложен метод фильтрации Винограда, который позволяет сократить количество умножений в процессе фильтрации за счет увеличения количества сложений. В статье [17] авторы предлагают использовать алгоритм Винограда для реализации операции свертки в сверточной нейронной сети при выполнении вычислений на графическом процессоре. Авторы статьи [18] предлагают аппаратный ускоритель сверточной нейронной сети, реализованный на FPGA (Field-Programmable Gate Array) с применением алгоритма Винограда.

Еще одним подходом к увеличению производительности, то есть количества обработанных кадров в единицу времени, цифровой фильтрации является использование непозиционной системы счисления - системы остаточных классов (СОК) [19]. Она позволяет представлять числа большой разрядности в виде небольших остатков от деления по модулю и выполнять вычисления параллельно по каждому модулю. Применение такого подхода позволяет увеличить скорость выполнения модульных операций сложения и умножения, являющихся основой для выполнения цифровой фильтрации. В работе [20] авторы предлагают архитектуру усеченного блока умножения с накоплением, использующего арифметику СОК. В статье [21] представлен метод сглаживающей фильтрации изображений с использованием СОК. Авторами предлагается метод квантования коэффициентов маски фильтра. В работе [22] предлагается архитектура устройства для сглаживания изображений и выделения контуров, которая использует трехмодуль-ный СОК. Авторы статьи [23] предлагают методологию построения цифровых фильтров в СОК для автоматизации процесса проектирования и обеспечения эффективного соотношения скорости и энергоэффективности устройств. В работе [24] представлена аппаратная реализация фильтра с конечной импульсной характеристикой на FPGA в СОК с набором модулей специального вида.

В данной работе предлагаются архитектуры устройств для фильтрации изображений методом Винограда с использованием СОК с модулями специального вида 2а и 2а+1, keN, где N - множество

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

Оставшаяся часть статьи организована следующим образом. В параграфе 1 кратко описано представление чисел в СОК и особенности применения СОК в цифровой фильтрации изображений. В параграфе 2 представлен метод Винограда для цифровой фильтрации. В параграфе 3 предложен метод построения цифровых фильтров на основе метода Винограда и арифметики СОК. Архитектуры предлагаемых устройств для фильтрации изображений описаны в параграфе 4. Параграф 5 содержит результаты аппаратного моделирования. Обсуждение результатов моделирования представлено в параграфе 6. В заключении изложены основные выводы по проведенному исследованию.

1. Применение системы остаточных классов для фильтрации изображений

В СОК целое число А представляется как набор остатков от деления {а1,а2,...,ап} на соответствующие попарно взаимно простые модули {рь р2,..., Рп}, так что ai = А1р [25]. Произведение всех модулей

р = Пр

/=1

называется динамическим диапазоном СОК. Арифметические операции над числами, представленными в СОК, производятся параллельно по каждому модулю:

A *B = (|a1 *bj| ,|a2 *b2

a * b )

(2)

где * означает операцию сложения, вычитания или умножения.

Число А = {а1, а2,..., а} может быть преобразовано из СОК в позиционную систему счисления (ПСС) с использованием Китайской теоремы об остатках [25]

A =

t (IP' l«\P')

(3)

где Рг = Р /рг, а р ^ - мультипликативный обратный элемент для Рг.

Фильтрация изображений по формуле (1) в СОК выполняется в несколько этапов (рис. 2). Сперва необходимо перевести данные из ПСС в СОК. Затем производится фильтрация параллельно по нескольким вычислительным каналам, которые соответствуют модулям СОК. Далее производится обратное преобразование из СОК в ПСС.

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

0

p

дулей должен обеспечивать достаточный динамический диапазон системы для однозначного представления чисел в СОК. Во-вторых, модули должны быть сбалансированы таким образом, чтобы время выполнения операций по каждому каналу было примерно одинаково и не было длительного простоя системы по какому-либо вычислительному каналу. Наконец, модули СОК специального вида 2а и 2а +1, кеЫ, где N - множество натуральных чисел, позволяют избежать затратной по ресурсам операции деления по модулю. Проектирование арифметических устройств по модулю вида 2а сводится к реализации а-битных устройств в двоичной системе счисления. Но требование попарной взаимной простоты модулей СОК позволяет нам использовать лишь один модуль вида 2а, так как остальные модули должны быть нечетными. Использование модулей вида 2а и 2а+1 позволяет использовать эффективные техники суммирования по модулю, аналогичные используемым в традиционной двоичной системе счисления [26]. Но практическая реализация вычислительного канала по модулю 2а +1, keN, требует введения дополнительной логики по методу «й1тт18Ьей-1» для отслеживания нулевой кодовой комбинации, что является нежелательным явлением при разработке системы с минимальными аппаратными и временными затратами [27, 28]. Таким образом, модули вида 2а -1 предпочтительнее для использования в качестве нечетных модулей системы.

\1р\р1 Фильтрация по модулю р1 \I\p1

И

и Г) \1р\р2 Фильтрация по \Цр2

Т модулю р2

о о п

\1р^п Фильтрация по Шрп

модулю рп

Рис. 2. Фильтрация изображения в СОК

Фильтрация по методу Винограда также может быть реализована с использованием арифметики СОК. В следующих параграфах представлен метод фильтрации Винограда и предложены архитектуры фильтров на основе данного метода и СОК с модулями специального вида.

2. Фильтрация по методу Винограда

Одномерная фильтрация по методу Винограда в матричной форме имеет вид:

= АТ (()© (вТ Й)),

(4)

где оператор О обозначает поэлементное умножение матриц, А, О и В - матрицы преобразования, « -маска одномерного фильтра, Й - вектор данных, z -результат фильтрации [17]. Алгоритм одномерной фильтрации по методу Винограда принято обозначать ^(п, к), где п - размер вектора z , а к - размер маски фильтра « .

Двумерная фильтрация по методу Винограда в матричной форме имеет вид [17]:

Z = АТ ((GWGT) О (ВТ БВ)) А,

(5)

где W - двумерная маска фильтра, Б - двумерный массив данных и Z - двумерный массив результата фильтрации. Алгоритм двумерной фильтрации по методу Винограда принято обозначать ¥(п хп, к хк).

Рассмотрим пример одномерной фильтрации по методу Винограда ^(2, 3). Пусть имеется вектор данных Й = }, 0 < i < 3, и фильтр с маской « = {"_,■ }, 0 < ] < 2, в результате фильтрации формируется вектор z = {г/}, 0 < /< 1. Представим z и « в виде полиномов, тогда г(х) = г\х+г0, "(х) = w2x2 + "1х + w0. Произведение г (х) w (х) может быть записано в виде

(6)

г (х)" (х) = (г1х + г0 )(w2 х2 + w1 х + w0) = = 1"2 х3 +(z1w1 + )х2 + ("0 + г0 w1 )х + г0 w0.

Представим слагаемые из выражения (6) в виде:

г0 Wo = ¿0 Wo,

ZlWo + ¿0 Wl = (¿0 + ¿1) ( + Wl ) - ¿0Wo - ZlWl,

z1w1 + 10 w2 = (0 + ) ( + w2 ) - 10 w1 -1"2 = 2.

(7)

Умножим обе части равенств на соответствующие элементы вектора Й .

d0 "0 + d1z1w0 + d1 + d2 ¿м + d2 "2 +

+dз¿"2 = do¿0"0 + dl ( + ¿1 )( + "1 )-

-d1 х0"0 - d1z1w1 + d2 (0 + ) ("И'1 + "2) --d2- d2+ d31"2.

(8)

Приравнивая соответствующие множители при ¿0, получим:

d0 "0 + d1w1 + d2 "2 =( d0 - d2) "0 + +1 (d1 + d2)(0 + + "2) +(2 -d1 )(0 -+ "2).

(9)

Приравнивая соответствующие множители при ¿1, получим:

d1w0 + d 2"1 + d"2 =

= 2 (d1 + d2 )(0 + + "2 )-- 1 (2 - dl )( - "1 + "2 ) -( - dз )"2.

(10)

Данные выражения (8 - 10) можно записать в виде

(11)

d 0 dl d2

dl d2 dз

т1 + т2 + т3 т2 - т3 - т4

I

I

р

где

Ш1 = ( -d2)w0,

т2 = 1/2( + d 2 )(0 + м + м2), т3 = 1/2(d2 -d! )(м0 -м + м2), т4 = ( - d3 )м2.

Пусть

w = [м0 м2 ], й = [ d0 d! d2 d3 ]Т.

Тогда матрицы преобразования для ^(2*2, 3*3) имеют вид

В

" 1 0 0"

1 0 0 0 " 1 1 1

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

0 1 -1 1 , G = 2 2 2

-1 1 1 0 1 1 1

0 0 0 -1 2 2 2

0 0 1

(12)

А =

1 0 1 1

1 -1

0 -1

В случае двумерной фильтрации ^(2*2, 3*3) необходимо воспользоваться формулой (5). На рис. 3 представлена схема фильтрации изображения методом Винограда ^(2*2, 3*3).

Фрагмент Маска Результат

изображения фильтра W фильтрации

Б размером размером Z размером

4*4 3*3 2*2

Рис. 3. Схема фильтрации фрагмента изображения по методу Винограда И(2*2, 3*3)

В следующем параграфе предложена архитектура устройства двумерной фильтрации методом Винограда ^(2*2, 3*3) с использованием арифметики СОК.

3. Метод проектирования цифровых фильтров на основе метода Винограда и арифметики системы остаточных классов

В работе предлагается новый метод построения цифрового фильтра размером к *к для обработки изображений на основе метода Винограда и арифметики СОК. Разделим изображение на фрагменты меньшего размера т*т, так что каждый фрагмент будет обрабатываться с помощью ¥(п *п, к *к), где к< т и п < т. То есть для обработки изображения требуется выбирать фрагменты Б размером т*т с шагом к по строкам и столбцам. Пусть фрагмент изображения обрабатывается фильтром с маской W раз-

мером к *к, тогда после обработки формируется фрагмент Z размером п *п. Например, для случая ^(2*2, 3*3), изображенного на рис. 3, выбираются фрагменты изображения Б размером 4*4 с шагом 2, результатом обработки фрагмента фильтром W с маской размером 3*3 по формуле (5) является фрагмент обработанного изображения Z размером 2*2. То есть при фильтрации методом Винограда ^(2*2, 3*3) формируются сразу четыре пикселя обработанного изображения.

В выражении (5) преобразование маски фильтра GWGT может быть выполнено предварительно один раз и, следовательно, не несет существенной вычислительной нагрузки. Введем обозначения и = GWGT, V = В^ОВ и М = и©У, тогда Z = А^МА Цифровой фильтр, выполняющий вычисления по методу Винограда, изображен на рис. 4 и состоит из:

1) блока памяти, в котором хранится преобразованная маска фильтра и;

2) устройства преобразования входных данных О, выполняющего вычисления матрицы V;

3) устройства поэлементного умножения матриц и и V, на выходе которого формируется матрица М;

4) устройства итогового преобразования матрицы М, выходом которого является фрагмент обработанного изображения Z.

Преобразование данных ВтОВ

Память GWGT

Поэлементное М Итоговое

умножение преобразование

и ■ V АТМА

Рис. 4. Схема устройства фильтрации фрагмента изображения по методу Винограда ¥(п*п, к*к)

Коэффициенты маски фильтра обычно являются вещественными числами. Для представления в цифровом устройстве их необходимо привести к целочисленному виду. В работе [21] представлен метод масштабирования коэффициентов для фильтров Гаусса. В соответствии с данным методом исходные коэффициенты фильтра умножаются на 2у, где у = 10+1 - параметр масштабирования. Далее коэффициенты округляются к большему. Обозначим маску фильтра с масштабированными коэффициентами как XV. После наложения цифрового фильтра на изображение выполняется масштабирование полученных результатов на 2-у и округление к меньшему.

При использовании СОК вычисления производятся параллельно по каждому модулю системы (рис. 2). Как упоминалось выше, выбор модулей СОК является важным этапом при проектировании цифровых устройств. В работе предлагается использовать модули специального вида 2а и 2а+1. Динамический диапазон СОК для устройства фильтрации изображения с 8-битным представлением пикселей должен удовлетворять неравенству [29]

Z

О

и

p ^255j )•

1=0 j=0

(13)

На рис. 5 представлена схема фильтра, выполняющего преобразование фрагмента изображения Б по методу Винограда Е(п хп, кхк) в СОК. На вход устройства поступает фрагмент изображения, представленный в СОК с набором модулей {2а1, 2а2-1, ..., 2аР-1}, где в -количество модулей, таким образом,

D = {D

|D| 2"2 -1 '•••' |D| 2"Р

|D|2- F(nyn, kyk) |Z|2-

по модулю 2 1

|D|2*-1 F(nyn, kyk) |Z|2®-1

по модулю 2°2-1

|D|2^-1 F(nyn, kyk) |Z|2o>-1

по модулю 2a -1

Рис. 5. Схема устройства фильтрации фрагмента изображения по методу Винограда ¥(п*п, к*к) с вычислениями в СОК

Вычисления производятся параллельно по в каналам, которые соответствуют набору модулей СОК. На вы-

V =

Z о, j =

d0,0 d 2,0 -(d 0,2 - d2,2 ) d0,1 - d 2,1 + d 0,2 d 2,2 -(d0,1 d 2,1 ) + d0,2 d 2,2 d0,1 -d 2,1 d0,3 + d 2,3

d1,0 + d2,0 - (d1,2 + d2,2 ) dy + d 2,1 + d1,2 + d 22 -(dy + d2,1 ) + d12 + d 22 d1,1 + d 2,1 - dy -d 2,3

d 2,0 - d1,0 -(d 2,2 - d1,2 ) d 2,1 - du - d1,2 + d 22 -(2,1 - d1,1 ) d1,2 + d 22 d 2,1 -dy + dy -d 2,3

d1,0 - d3,0 - (d1,2 - d3,2 ) d,,x - d3,1 + d1,2 - d3,2 -(dy d3,1 ) + dy -d3,2 dy -d3,1 -dy + d3,3

ход устройства поступает фрагмент обработанного изображения Z, представленный в СОК.

В следующем параграфе описаны архитектуры устройств для фильтрации изображений по методу Винограда ^(2х2, 3х3) с использованием СОК, построенные на основе предлагаемого метода.

4. Предлагаемые архитектуры устройств

фильтрации изображений на основе метода Винограда

Далее представлено описание предлагаемых архитектур устройств фильтрации изображений на основе метода Винограда ^(2х2, 3х3) с вычислениями в СОК. В качестве модулей СОК выбраны модули специального вида 2а и 2а+1, так что для каждого вида модулей предлагаются разные устройства. Предлагаемую архитектуру устройства цифровой фильтрации по модулю 2а в СОК можно также использовать для выполнения вычислений в ПСС с числами разрядности а бит.

Для случая ^(2х2, 3х3) размер матриц и, V и М составляет 4х4. Вычисление матриц V и Z может быть представлено в виде:

(14)

Zi,j =

M 00 + M10 + M 2,0 + M 0Д + M у + M 21 + M 0,2 + M12 + M 2,2 M 01 + My + M 21 -(M02 + M12 + M 2,2 )-M03 - M13 - M 2,3

M10 - M2,0 - M30 + My - M21 - My + M12 - M2,2 - M3,2

M 1,1 - M 2,1 - M3,1 -(,2 - M2,2 - M3,2 )-Ml,3 + M2,3 + M3,3

(15)

где 0 < j < 1.

Схема устройства для вычисления одного элемента матрицы V по модулю 2а представлена на рис. ба. Данное устройство производит преобразование данных из матрицы D и генерирует элемент F,- j, 0 < i < 3, 0 <j< 3. Далее будем обозначать данное устройство как DT (data transformation), на входы которого совместно подаются вектор входных данных

= {, j, h

',j h2j, h3,j !

сформированный из матрицы Б, и корректирующая константа с'^Т, которая равна количеству операций вычитания. Корректирующие константы необходимы для представления отрицательных чисел в дополнительном коде, который соответствует инверсии числа в двоичном коде с добавлением 1. Инверсию двоичного числа будем обозначать чертой сверху. Для расчета элемента У0,0 необходимо учитывать, что

-0,0 , h = {d0,0> d2,2, d2,0> d0,2/;

а 4Т = 2. Аналогично формируются данные для вычисления других элементов матрицы V. Особенностью расчета элемента У1,1 является то, что на вход поступают инвертированные числа

: {d1,b d2,b d2,0> d0,2 j

и корректирующая константа cDT = 0. Сложение чисел производится с помощью дерева сумматоров с сохранением переноса (Carry-Save Adder, CSA) и сумматора (Kogge-Stone Adder, KSA) по модулю 2а, то есть без учета старшего бита переноса [30, 31]. Таким образом, для вычисления матрицы V по модулю 2а используются 16 устройств DT, изображенных на рис. 6а, работающих параллельно. Устройство DT для вычисления одного элемента матрицы V по модулю 2а -1 имеет схожий принцип работы (рис. 6б). Отличие заключается в использовании техники циклического переноса старших бит (End-Around-Carry, EAC) [26]. Кроме того, для выполнения вычислений по модулю 2а -1 отрицательные числа представляют-

D

Z

1,1

ся в обратном коде, следовательно, отсутствуют корректирующие константы.

hi h{J hi hi cT

hi hi hi hi

a

a

a

a

a

И

Дерево CSA

a

a

KSA

a a a \ a 7 \ 7

г - - ,

Дерево EAC-CSA

a / a f

1 г у

EAC-KSA

a

1 г

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

а) V'J б) V'J'

Рис. 6. Схема устройства DT для вычисления одного элемента матрицы V: а) по модулю 2а; б) по модулю 2а-1

Поэлементное умножение матриц U и V производится с помощью 16 параллельных умножителей двух чисел, изображенных на рис. 7, обозначенных MUL (multiplication). На вход устройства поступают элементы матриц U и V. На рис. 7а представлена схема устройства умножения двух чисел по модулю 2а. Сперва с помощью массива вентилей AND формируются частичные произведения [30]. Так как расчеты производятся по модулю 2а, то биты старше а не участвуют в вычислениях. Затем производится сложение по модулю 2а с помощью дерева сумматоров CSA и сумматора KSA. На рис. 7б представлена схема устройства умножения двух чисел по модулю 2а -1. Для выполнения вычислений по модулю 2а -1 используется техника EAC. Таким образом формируется матрица M размером 4*4.

Vu U,, Vu U,,

M,,

M,,

а) J б)

Рис. 7. Схема устройства MUL для умножения двух чисел: а) по модулю 2а; б) по модулю 2а-1

Схема устройства для вычисления ,-й строки матрицы Z представлена на рис. 8. Введем для данного устройства обозначение FTR (final transform for

row). Для вычисления матрицы Z используются два устройства FTR, изображенных на рис. 8, работающих параллельно. На вход поступает вектор r = {, г/,..., J , сформированный из элементов матрицы M. Для выполнения расчетов по модулю 2а на вход устройства также подаются корректирующие константы Cftr = {с0, СJ (рис. 8а). Для расчета элементов первой строки

Zu, j = 0,1,

r =M

0, M10, M20, M0>1, M1jb M21, M0,2, M12, M2,2,

M0,3,My,M2,3} и Cftr ={0,5J.

Для расчета элементов второй строки

Z1,j, j = 0,1,

Г1 = {m l 0 , M2fi , M30 , My, M2,1, M31, M12 , M2,2, M32 ,

My,M2,3,M3,3} и eras ={6,7}.

Сложение чисел по модулю 2а производится с помощью дерева сумматоров CSA и сумматора KSA. Для выполнения вычислений по модулю 2а-1 используется техника EAC, а отрицательные числа представляются в обратном коде (рис. 86).

Предлагаемая схема устройства для двумерной фильтрации с использованием модифицированного метода Винограда на основе СОК представлена на рис. 9. Вычисления производятся по формуле (5). Преобразование маски фильтра U = GWGT производится предварительно, и результат хранится в памяти устройства. На рис. 9а представлена схема предлагаемого устройства фильтрации по модулю 2а. Так как для выполения операций с отрицательными числами требуется их представление в дополнительном коде, то в памяти устройства также хранятся корректирующие константы. Блок преобразования данных состоит из 16 устройств DT, представленных на рис. 6а. Блок поэлементного умножения матриц состоит из 16 устройств MUL, изображенных на рис. 7а. Блок итогового преобразования состоит из двух устройств FTR, представленных на рис. 8а. На рис. 96 изображена схема предлагаемого устройства фильтрации по модулю 2а -1. В памяти данного устройства хранится только преобразованная маска фильтра. Блоки преобразования данных, поэлементного умножения матриц и итогового преобразования состоят из соответствующих устройств, представленных на рис. 66, рис. 76 и рис. 86.

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

a

■о Л> Г 1 Г2 Г3 Г 4 Г 5 Г 6 Г 7 Г 8 Г 9 Г 10 Г 11 С 1 Л, Г 1 Г 2 Гз Г 4 Г 5 Г 6 Г 7 Г 8 Г9 Г 10 Г 11

а а

а а

а а а а а а а а а а а

а)

Дерево С8Л

а

КЭЛ

ш

Дерево С8Л

К8Л

а а

Дерево БЛС-СЭЛ

а а

БЛС-К8Л

б;

Zl,о

а а

31

Дерево БЛС-СЭЛ

Рис. 8. Схема устройства ЕТК для вычисления 1-й строки матрицы 2: а) по модулю 2а; б) по модулю 2а-1

Преобразование данных

БТ

сБТ БТ V

БТ

Поэлементное умножение

Ю,0

миь

Мо,

и,.

миь

М,

и3-

миь

Мз,

Итоговое преобразование

I _ ь о _ I

I

гМ^

? о

? 1

" ПК

а

а

а

а

а

а

а

а

а

а

а

БЛС-С8Л

а а

а ■ а

а ^ а

а ^ а

а а

а а

а

а

IX

а

а

БЛС-К8Л

а

а

а

а

о

с

БТ

Ъ

3,3

3.3

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

3.3

с

БТ

Итоговое преобразование

ь о

1 ¿-о ,

ь 1 РТК ^

Рис. 9. Схема устройства для двумерной фильтрации с использованием модифицированного метода Винограда

И(2*2, 3*3): а) по модулю 2а; б) по модулю 2а-1

5. Аппаратное моделирование предлагаемых устройств фильтрации изображений на основе метода Винограда

Для проверки эффективности предлагаемых устройств фильтрации изображений по методу Винограда было проведено аппаратное моделирование. Для эксперимента использован фильтр Гаусса размером 3x3:

W = — 15

1 2 1 2 3 2 1 2 1

(16)

Как видно из равенства (16). коэффициенты маски фильтра являются вещественными числами. В соответствии с методом масштабирования [21] исходные коэффициенты фильтра умножаются на 2У. где

и

Ъ

у = 10 + t. В данном случае t = 1 и у = 11. Для фильтра Гаусса размером 3х3 маска фильтра с масштабированными коэффициентами имеет вид:

W =

137 274 137 274 470 274 137 274 137

(17)

Таким образом, для обработки изображения фильтром (17) динамический диапазон должен удовлетворять условию P > 539070, то есть разрядность устройства составляет 20 бит. Для реализации вычислений в СОК был выбран набор модулей специального вида {27, 27-1, 2б-1}, динамический диапазон которого равен P = 1024128 и удовлетворяет условию (13).

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

Для теоретической оценки задержки и площади цифрового устройства используем «unit-gate^-модель [32]. Основываясь на данной абстрактной модели, задержка Udelay и площадь Uarea логических вентилей представляются следующим образом:

UAlay (NOT) = 0, Uarea (NOT) = 0;

Udeay (AND) = 1, Uarea (AND ) = 1;

Udeby (OR ) = 1, Uarea (OR ) = 1; (18)

Udeay (XOR) = 2, Uarea (XOR) = 2;

Udeay (XNOR) = 2, Uarea (XNOR) = 2.

На основе параметров логических вентилей могут быть рассчитаны параметры более сложных устройств [15, 20]. Предлагаемые фильтры на основе метода Винограда F(2*2, 3*3) и СОК с модулями специального вида состоят из устройств DT, MUL и FTR, описанных выше. На основе параметров задержки и площади логических вентилей (18) рассчитаем параметры данных устройств.

Параметры устройства DT по модулю 2а равны

Udeay (DT) = 2log2 а + 24,4, Uarea (DT) = 3а log2 а + 24а +1,

а по модулю 2а-1

Udeay (DT) = 2log2 а +17, б, Uarea (DT) = 3а log2 а + 20а.

Параметры устройства MUL по модулю 2а равны

Uda (MUL ) = 8,8 log2 а + 0,5а2 + 0,5а + 4,

(19)

(20)

Uarea (MUL ) = 3а log2 а + 7,5а2 -10,5а +1, а по модулю 2а -1

(21)

Udehy (MUL) = 8,8log2 а + а2 + 4, Uarea (MUL ) = 3а log2 а + 8а2 - 8а.

Параметры устройства FTR по модулю 2а

Ude,ay (FTR) = 2log2 а + 31,2, Uarea (FTR) = 3а log2 а+87а +1,

а по модулю 2а -1

Udeay (FTR) = 2log2 а + 31,2, Uarea (FTR) = 3а log2 а + 76а.

(22)

(23)

(24)

(25)

Предлагаемые устройства фильтрации на основе метода Винограда F(2*2, 3*3) состоят из 16 устройств DT и MUL и из 2 устройств FTR. Таким образом, параметры предлагаемого устройства по модулю 2а, основываясь на (19), (21) и (23), равны

Udeay (f (2 х 2,3 х 3)) = = Udday (DT ) + Ude,ay (MUL ) + Udeby (FTR ) = = 12,8log2 а + 0,5а2 + 0,5а + 59,6, Uarea ( (2 X 2,3 X 3)) = = 16Uarea (DT ) + 16Ua„a (MUL ) + 2Uarea (FTR) = = 102а log2 а + 120а2 + 390а + 34,

а по модулю 2а -1, основываясь на (20), (22) и (24), равны

Udeay (F (2 х 2,3 х 3)) = = Udday (DT ) + Ude,ay (MUL ) + Udeby (FTR ) = = 12,8log2 а+а2 + 52,8, Uarea ( (2 X 2,3 X 3)) = = 16Uarea (DT ) + 16Ua„a (MUL ) + 2Uarea (FTR) = = 102а log2 а + 128а2 + 344а.

Было проведено сравнение предлагаемого устройства фильтрации изображений с устройством для фильтрации по методу Винограда без использования СОК [18]. Кроме того, проведено сравнение с устройством фильтрации, состоящим из блоков умножения с накоплением (MAC) [14], и устройством, состоящим из усеченных блоков умножения с накоплением (TMAC) без арифметики СОК [15] и с использованием СОК [20].

Параметры устройства на основе метода Винограда без использования арифметики СОК [18] рассчитываются по формулам (25) при условии, что разрядность а = 20 бит.

Параметры фильтра, состоящего из MAC-блоков, FIR(MAC) [14] рассчитываются следующим образом:

(26)

Udeay (FIR(MAC)) = 88log2 a + 50,

Uarea (FIR(MAC)) = 30alog2 a + 80a2 - 40a +10.

(27)

Параметры фильтра, состоящего из TMAC-блоков, FIR(MAC) [15] вычисляются следующим образом

Udeay (FIR(TMAC)) = 70log2 a +14,

Uarea (FIR(TMAC)) = 3alog2 a + 80a2 + 3a +1,

(28)

для рассматриваемого случая разрядность а = 20 бит.

Параметры фильтра Р1Я(МЛС) с вычислениями в СОК [20] по модулю 2а вычисляются по формуле (29), а по модулю 2а -1 равны

Udeay (FIR(TMAC)) = 70log2 a +14, Uarea (FIR(TMAC)) = 3alog2 a + 80a2 + 6a.

(29)

Для реализации вычислений в СОК был выбран набор модулей специального вида {27, 27-1, 26-1}.

В табл. 2 представлены результаты теоретической оценки параметров площади и задержки предложенного и известных фильтров на основе «ипк^а1е»-модели. Так же была произведена оценка времени обработки изображения размером 256х256.

Табл. 1. Теоретические значения технических параметров устройств на основе «ыт^Ме»-модели

Метод Известные методы Предлагаемый метод

[14] [15] [20] [18]

Задержка 431 317 211 325 138

Площадь 33804 32321 10985 64651 29587

Время обработки изображения 2,8-107 2,1 -107 1,4-107 5,3-106 2,3-106

Анализ и обсуждение полученных теоретических результатов изложены в следующем параграфе.

5.2. Результаты аппаратного моделирования предлагаемых устройств фильтрации изображений на основе метода Винограда

Аппаратное моделирование на FPGA проводилось в среде автоматизированного проектирования Xilinx Vivado 2018.3 для целевой платы Artix-7 xc7a200tffg1156-3 со стратегией оптимизации Flow_PerfOptimized_high. Результаты аппаратного моделирования устройств для фильтрации изображений представлены в табл. 2. Качество обработки изображений всеми рассмотренными фильтрами одинаково. Для оценки устройств использовались такие параметры, как тактовая частота, количество занятых просмотровых таблиц (Look-up Table, LUT), энергопотребление и производительность, которые были получены в результате симуляции в среде проектирования. Под производительностью устройства подразумевается количество обработанных кадров размером 256^256 пикселей в секунду. Для комплексной оценки временных и аппаратных затрат была введена метрика, учитывающая одновременно влияние производительности устройства и его площади:

>=A ■

(30)

где P - производительность устройства, а A - площадь устройства (количество занятых LUT) [33]. Чем больше значение данной метрики, тем более сбалансировано устройство, то есть обладает лучшим соотношением производительности и площади.

Табл. 2. Результаты аппаратного моделирования

Метод Известные методы Предлагаемый метод

[14] [15] [20] [18]

Тактовая частота, МГц 31 36 56 37 42

Количество LUT 1872 1584 738 3633 3652

Энергопотребление, Вт 0,275 0,255 0,251 0,318 0,319

Производительность, кадр/с 473 549 854 2258 2563

Р 0,253 0,347 1,158 0,622 0,702

Анализ полученных результатов аппаратного моделирования представлен в следующем параграфе.

6. Обсуждение

Теоретический анализ на основе «unit-gate»-модели (табл. 1) параметров предлагаемых устройств и известных аналогов показал, что задержка предлагаемого фильтра на основе метода Винограда и арифметики СОК в 1,53 - 3,12 раз меньше, а время обработки одного изображения размером 256*256 в 2,30 - 12,17 раз меньше по сравнению с другими известными устройствами. Тем не менее фильтр на основе TMAC-блоков с вычислениями в СОК [20] обладает в 2,69 - 5,89 раз меньшей площадью по сравнению с другими рассмотренными устройствами.

Результаты аппаратного моделирования предлагаемых устройств фильтрации и известных аналогов (табл. 2) показали, что тактовая частота устройства, разработанного с использованием метода [20], на 33,33 - 80,64 % выше по сравнению с другими рассмотренными методами. Также данный метод требует на 53,41 - 79,79 % меньше LUT и на 1,57 - 21,32 % меньше энергозатрат по сравнению с другими рассмотренными методами. Предлагаемый в данной работе метод обладает в 1,13 - 5,42 раз большей производительностью по сравнению с другими рассмотренными известными методами. Тем не менее метрика р показывает, что фильтр на основе TMAC-блоков с вычислениями в СОК [20] является в 1,65 - 4,58 раз более сбалансированным относительно производительности устройства и его площади.

Разница в теоретических параметрах устройств и полученных в результате аппаратного моделирования объясняется тем, что «unit-gate»-модель не учитывает нагрузочную способность устройств, а также задействованную память и время обращения к ней.

На основе результатов аппаратного моделирования можно сделать вывод о том, что предложенное устройство фильтрации изображений обладает высо-

кой производительностью по сравнению с рассмотренными известными методами построения устройств фильтрации за счет увеличения аппаратных ресурсов на реализацию. Высокая производительность устройств на основе метода Винограда объясняется тем. что на выходе формируется сразу четыре пикселя обработанного изображения. Использование СОК с модулями специального вида позволило увеличить скорость устройства фильтрации по сравнению с другими устройствами. использующими ПСС. Таким образом. предлагаемые архитектуры фильтрации изображений могут быть применены в системах. где ключевую роль играет производительность.

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

Перспективными направлениями дальнейших исследований являются: разработка устройств фильтрации изображений методом Винограда в СОК для других случаев ¥(п хп. к *&). а также их внедрение в специальные процессоры обработки сигналов и системы нейросетевого анализа изображений с целью увеличения их производительности.

Заключение

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

В работе представлены архитектуры устройств фильтрации изображений методом Винограда ^(2x2. 3x3) с использованием СОК с модулями специального вида 2а и 2а -1. Было проведено аппаратное моделирование устройства. спроектированного предлагаемым методом. и устройств. разработанных известными методами. для сглаживающего фильтра Гаусса с маской 3x3. Результаты моделирования показали. что предлагаемые архитектуры обладают высокой производительностью по сравнению с известными подходами за счет увеличения аппаратных затрат. Результаты данного исследования могут быть использованы в системах обработки и анализа изображений для увеличения производительности устройств. Применение предложенных устройств позволит проектировать сложные устройства обработки изображений. работающие в режиме реального времени.

Благодарности

Работа выполнена в Северо-Кавказском центре математических исследований в рамках соглашения №. о75-о2-2о22-892 с Министерством науки и высшего образования Российской Федерации.

References

[1] Li H, Fan J, Yu K, Qi X, Wen Z, Hua Q, Zhang M, Zheng Q. Medical image coloring based on gabor filtering for internet of medical things. IEEE Access 2020; 8: 104016-104025. DOI: 10.1109/ACCESS.2020.2999454.

[2] Kamirul K, Hasbi W, Hakim PR, Syafrudin AH. Automatic ship recognition chain on satellite multispectral imagery. IEEE Access 2020; 8: 221918-221931. DOI: 10.1109/ACCESS.2020.3042702.

[3] Wang G, Li B, Zhang Y, Yang J. Background modeling and referencing for moving cameras-captured surveillance video coding in HEVC. IEEE Trans Multimedia 2018; 20(11): 2921-2934. DOI: 10.1109/TMM.2018.2829163.

[4] Alonzo LMB, Chioson FB, Co HS, Bugtai NT, Baldovino RG. A machine learning approach for coconut sugar quality assessment and prediction. 2018 IEEE 10 th Int Conf on Humanoid, Nanotechnology, Information Technology, Communication and Control, Environment and Management (HNICEM) 2018; 1-4. DOI: 10.1109/HNICEM.2018.8666315.

[5] Thanh DNH, Hien NN, Kalavathi P, Surya Prasath VB. Adaptive switching weight mean filter for salt and pepper image denoising. Procedia Computer Science 2020; 171: 292-301. DOI: 10.1016/j.procs.2020.04.031.

[6] Minnema J, Wolff J, Koivisto J, Lucka F, Batenburg KJ, Forouzanfar T, Eijnatten M. Comparison of convolution-al neural network training strategies for conebeam CT image segmentation. Comput Methods Programs Biomed 2021; 207: 106192. DOI: 10.1016/j.cmpb.2021.106192.

[7] Hespeler SC, Hespeler SC, Nemati H, Dehghan-Niri E. Non-destructive thermal imaging for object detection via advanced deep learning for robotic inspection and harvesting of chili peppers. Artificial Intelligence in Agriculture 2021; 5: 102-117. DOI: 10.1016/j.aiia.2021.05.003.

[8] Chervyakov NI, Lyakhov PA, Nagornov NN, Valueva MV, Valuev GV. Hardware implementation of a convolu-tional neural network using calculations in the residue number system. Computer Optics 2019; 43(5): 857-868. DOI: 10.18287/2412-6179-2019-43-5-857-868.

[9] Chriskos P, Frantzidis CA, Gkivogkli PT, Bamidis PD, Kourtidou-Papadeli C. Automatic sleep staging employing convolutional neural networks and cortical connectivity images. IEEE Trans Neural Netw Learn Syst 2020; 31(1): 113-123. DOI: 10.1109/TNNLS.2019.2899781.

[10] Tian Y. Artificial intelligence image recognition method based on convolutional neural network algorithm. IEEE Access 2020; 8: 125731-125744. DOI: 10.1109/ACCESS.2020.3006097.

[11] Gonzalez RC, Woods RE. Digital image processing. 3rd ed. Prentice Hall; 2008.

[12] Bovik AC. Handbook of image and video processing, 2nd ed. San Diego: Elsevier Academic Press; 2005.

[13] Nakasone S, Ofverstedt L, Wilken G, Skoglund U. An OpenCL implementation of an image filter on FPGA. 2019 IEEE 5th Int Conf on Computer and Communications (ICCC) 2019; 272-276. DOI: 10.1109/ICCC47050.2019.9064160.

[14] Tung CA, Huang S. High-performance multiply-accumulate unit by integrating additions and accumulations into partial product reduction process. IEEE Access 2020; 8: 8736787377. DOI: 10.1109/ACCESS.2020.2992286.

[15] Lyakhov P, Valueva M, Valuev G, Nagornov N. A method of increasing digital filter performance based on truncated multiply-accumulate units. Appl Sci 2020; 10: 9052. DOI: 10.3390/app10249052.

[16] Winograd S. Arithmetic complexity of computations. Si-am; 1980: 33. DOI: 10.1137/1.9781611970364.

[17] Lavin A, Gray S. Fast algorithms for convolutional neural networks. 2016 IEEE Conf on Computer Vision and Pattern Recognition (CVPR) 2016: 4013-4021. DOI: 10.1109/CVPR.2016.435.

[18] Yepez J, Ko S. Stride 2 1-D, 2-D, and 3-D Winograd for convolutional neural networks. IEEE Trans Very Large Scale Integr VLSI Syst 2020; 28(4): 853-863. DOI: 10.1109/TVLSI.2019.2961602.

[19] Molahosseini AS, De Sousa LS, Chang CH, eds. Embedded systems design with special arithmetic and number systems. Springer International Publishing; 2017.

[20] Lyakhov P, Valueva M, Valuev G, Nagornov N. Highperformance digital filtering on truncated multiply-accumulate units in the residue number system. IEEE Access 2020; 8: 209181-209190. DOI: 10.1109/ACCESS.2020.3038496.

[21] Chervyakov NI, Lyakhov PA, Nagornov NN, Kaplun DI, Voznesenskiy AS, Bogayevskiy DV. Implementation of smoothing image filtering in the residue number system. 2019 8th Mediterranean Conference on Embedded Computing (MECO) 2019: 1-4. DOI: 10.1109/MEC0.2019.8760190.

[22] Vassalos E, Bakalis D, Vergos HT. RNS assisted image filtering and edge detection. 2013 18th Int Conf on Digital Signal Processing (DSP) 2013: 1-6. DOI: 10.1109/ICDSP.2013.6622821.

[23] Cardarilli GC, Di Nunzio L, Fazzolari R, Nannarelli A, Petricca M, Re M. Design space exploration based methodology for residue number system digital filters implementation. IEEE Trans Emerg Topics Comput 2020; 10(1): 186-198. DOI: 10.1109/TETC.2020.2997067.

[24] Belghadr A, Jaberipur G. FIR filter realization via deferred end-around carry modular addition. IEEE Trans Circuits Syst I Regul Pap 2018; 65(9): 2878-2888. DOI: 10.1109/TCSI.2018.2798595.

[25] Omondi A, Premkumar B. Residue number systems: Theory and implementation. London: Imperial College Press; 2007.

[26] Vergos HT, Dimitrakopoulos G. On Modulo 2"+1 adder design. IEEE Trans Comput 2012; 61(2): 173-186. DOI: 10.1109/TC.2010.261.

[27] Mohan PVA, Premkumar AB. RNS-to-Binary Converters for Two Four-Moduli Sets {2n-1, 2n, 2"+1, 2n+1-1} and {2"-1, 2n, 2"+1, 2n+'+1}. IEEE Trans Circuits Syst I Regul Pap 2007; 54(6): 1245-1254. DOI: 10.1109/TCSI.2007.895515.

[28] Zivaljevic D, Stamenkovic N, Stojanovic V. Digital filter implementation based on the RNS with diminished-1 encoded channel. 2012 35th Int Conf on Telecommunications and Signal Processing (TSP) 2012: 662-666. DOI: 10.1109/TSP.2012.6256380.

[29] Chervyakov NI, Lyakhov PA, Kalita DI, Shulzhenko KS. Effect of RNS dynamic range on grayscale images filtering. 2016 XV Int Symp Problems of Redundancy in Information and Control Systems (REDUNDANCY) 2016: 3337. DOI: 10.1109/RED.2016.7779323.

[30] Parhami B. Computer arithmetic: algorithms and hardware designs. Oxford University Press; 2010.

[31] Kogge PM, Stone HS. A parallel algorithm for the efficient solution of a general class of recurrence equations. IEEE Trans Comput 1973; C-22(8): 786-793. DOI: 10.1109/TC.1973.5009159.

[32] Zimmermann R. Binary adder architectures for cell-based VLSI and their synthesis. Hartung-Gorre; 1998.

[33] Valueva MV, Nagornov NN, Lyakhov PA, Valuev GV, Chervyakov NI. Application of the residue number system to reduce hardware costs of the convolutional neural network implementation. Math Comput Simul 2020; 177: 232-243. DOI: 10.1016/j.matcom.2020.04.031.

Сведения об авторах

Валуева Мария Васильевна, 1993 года рождения, окончила бакалавриат и магистратуру по специальности «Прикладная математика и информатика» в ФГАОУ ВО «Северо-Кавказский федеральный университет». Аспирант ФГАОУ ВО «Северо-Кавказский федеральный университет». Работает младшим научным сотрудником в отделе теоретико-числовых систем Северо-Кавказского центра математических исследований, ФГАОУ ВО «Северо-Кавказский федеральный университет». Область научных интересов: цифровая обработка изображений, искусственный интеллект, модулярная арифметика, цифровые устройства. E-mail: mriya.valueva@mail.ru .

Ляхов Павел Алексеевич, 1988 года рождения, в 2009 году окончил Ставропольский государственный университет по специальности «Математика», кандидат физико-математических наук, доцент. Работает заведующим кафедрой математического моделирования ИМЕН ФГАОУ ВО «Северо-Кавказский федеральный университет». Область научных интересов: цифровая обработка сигналов и изображений, искусственный интеллект, модулярная арифметика, цифровые устройства, высокопроизводительные вычисления. E-mail: liahov@mail.ru .

Нагорнов Николай Николаевич, 1992 года рождения, окончил бакалавриат и магистратуру по специальности «Прикладная математика и информатика» в ФГАОУ ВО «Северо-Кавказский федеральный университет», кандидат технических наук. Работает младшим научным сотрудником в ФГАОУ ВО «Северо-Кавказский федеральный университет». Область научных интересов: цифровая обработка изображений, искусственный интеллект, модулярная арифметика. E-mail: sparta1392@mail.ru .

Валуев Георгий Вячеславович, 1992 года рождения, окончил магистратуру по специальности «Прикладная информатика» в ФГАОУ ВО «Северо-Кавказский федеральный университет». Аспирант ФГАОУ ВО «Северо-Кавказский федеральный университет». Работает младшим научным сотрудником в отделе теоретико-числовых систем Северо-Кавказского центра математических исследований, ФГАОУ ВО «Северо-Кавказский федеральный университет». Область научных интересов: цифровая обработка изображений, искусственный интеллект, высокопроизводительные вычисления. E-mail: mail@gyvaluev.ru .

ГРНТИ: 28.23.15

Поступила в редакцию 2 июня 2021 г. Окончательный вариант - 16 декабря 2021 г.

High-performance digital image filtering architectures

in the residue number system based on the Winograd method

M.V. Valueva1, PA. Lyakhov1, N.N. Nagornov1, G.V. Valuev1 1FSAEI HE "North-Caucasus Federal University", 355017, Stavropol, Russia, Pushkina 1

Abstract

Continuous improvement of methods for visual information registration, processing and storage leads to the need of improving technical characteristics of digital image processing systems. The paper proposes new high-performance digital filter architectures for image processing by the Winograd method with calculations performed in a residue number system with special-type moduli. To assess the performance and hardware costs of the proposed architectures, hardware simulation is carried out using a field-programmable gate array in a computer-aided design environment Xilinx Vivado 2018.3 for the target device Artix-7 xc7a200tffg1156-3. The results of hardware simulation show that the proposed filter architectures have 1.13 - 5.42 times higher performance, but require more hardware costs compared to the known methods. The results of this study can be used in the design of complex systems for image processing and analysis for their performance to be increased.

Keywords: digital filters, image processing, residue number system, Winograd filtering method, field-programmable gate array.

Citation: Valueva MV, Lyakhov PA, Nagornov NN, Valuev GV. High-performance digital image filtering architectures in the residue number system based on the Winograd method. Computer Optics 2022; 46(5): 752-762. DOI: 10.18287/2412-6179-CO-933.

Acknowledgements: The work is supported by the North-Caucasus Center for Mathematical Research under agreement No. 075-02-2021-1749 with the Ministry of Science and Higher Education of the Russian Federation.

Authors' information

Maria Vasilyevna Valueva (b. 1993) graduated from bachelor's and master's degrees in "Applied Mathematics and Computer Science" at the FSAEI HE "North Caucasus Federal University". She is a postgraduate student in FSAEI HE "North Caucasus Federal University". Currently she works as the junior researcher of Number-Theoretic Systems department of the North-Caucasus Center for Mathematical Research, FSAEI HE "North Caucasus Federal University". Research interests are digital image processing, artificial intelligent, modular arithmetic, digital devices. E-mail: mriya.valueva@mail.ru .

Pavel Alekseyevich Lyakhov, (b. 1988), graduated from Stavropol State University, specialty "Mathematics" in 2009. He is PhD of Physical and Mathematical Sciences and an associate professor. Currently he works as a head of Mathematical Modeling department in FSAEI HE "North Caucasus Federal University". Research interests: digital signal and image processing, artificial intelligent, modular arithmetic, digital devices, high-performance computing. E-mail: Hahov@mail.ru .

Nikolay Nikolaevich Nagornov (b. 1992) graduated from bachelor's and master's degrees in "Applied Mathematics and Computer Science" at the FSAEI HE "North Caucasus Federal University". He is PhD of Computer Sciences. Currently he works as the junior researcher at FSAEI HE "North Caucasus Federal University". Research interests are digital image processing, artificial intelligent, modular arithmetic. E-mail: sparta1392@mail.ru .

Georgii Vyacheslavovich Valuev (b. 1992) graduated from master's degrees in "Applied Computer Science" at the FSAEI HE "North Caucasus Federal University". He is a postgraduate student in FSAEI HE "North Caucasus Federal University". He works as an junior researcher at Number-Theoretic Systems department of the North-Caucasus Center for Mathematical Research, FSAEI HE "North Caucasus Federal University". Research interests are digital image processing, artificial intelligent, high-performance computing. E-mail: mail@,gvvaluev.ru .

Received June 2, 2021. The final version - December 16, 2021.

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