Научная статья на тему 'О применении ПЛИС архитектуры FPGA в задачах субполосной обработки изображений'

О применении ПЛИС архитектуры FPGA в задачах субполосной обработки изображений Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
917
148
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
СУБПОЛОСНЫЕ МЕТОДЫ / ЧАСТОТНЫЕ ПРЕДСТАВЛЕНИЯ / ПЛИС / ОБРАБОТКА ИЗОБРАЖЕНИЙ / FPGA

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Чудинов С. М., Заливин А. Н.

В работе рассмотрена возможность применения ПЛИС архитектуры FPGA для реализации алгоритмов цифровой обработки изображений. Приведена модель устройства, реализованная в программном продукте Simulink. Представлены результаты обработки изображений.

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

Текст научной работы на тему «О применении ПЛИС архитектуры FPGA в задачах субполосной обработки изображений»

Серия История. Политология. Экономика. Информатика. 2013 №7 (150). Выпуск 26/1

УДК 621.397

О ПРИМЕНЕНИИ ПЛИС АРХИТЕКТУРЫ FPGA В ЗАДАЧАХ СУБПОЛОСНОЙ ОБРАБОТКИ ИЗОБРАЖЕНИЙ1

с.м. ЧУДИНОВ1 Д.Н. ЗАЛИВИН2

'ОАО «НИИ Супер ЭВМ», г. Москва

2Белгородский

государственный националь ный исследовательский университет

e-mail:

Chud35@yandex.ru Zalivin@bsu.edu.ru

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

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

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

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

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

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

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

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

В работе рассмотрена возможность применения ПЛИС архитектуры НЧ'тЛ для реализации алгоритмов цифровой обработки изображений. Приведена модель устройства, реализованная в программном продукте втшИпк. Представлены результаты обработки изображений.

Ключевые слова: субполосные методы, частотные представления, ПЛИС, БРОА, обработка изображений.

1 Исследование выполнено при поддержке Министерства образования и науки Российской Фе-

дерации, гос. контракт № 14.514.11.4088.

Ш

ІцІ

/І /I

їк = [ [ Е(х,у)ехр(-]х(і-1))ехр(-]у(к-1))сіхсіу/4л2

-х-х , (1)

где_/ - мнимая единица О ~ ~^); Р - трансформанта Фурье (основная частотная характеристика)

Изображения определяются как матрицы Ф = {/;/.}, где /ік /=1,2,...,#, к = 1,2,...,А/ значения изображения в соответствующих пикселях.

^(Х>0 = ЕЕ ./'( ехр(-/х(і -1))ехр(—/у (к -1)). (2)

к=1 /=1

Справедливо равенство Парсеваля, которое целесообразно представить в следующей форме [2]

М N і К а

еф = Ё ЁЛ = Ё Ё Я і ^ I2 ’ (3)

*=1 У=1 П=1 ■ї=1 (ж,.у)=Г,

где интервалы Узг определяют разбиение двумерной области ПЧ на интервалы следующего вида

Кг = { (*є[-Пі2-П,^[Пл,П,2))о(;уе[-Пг2-Пг^и[Пм,Пг2)) } (4)

пи = °> пщ,2 = л; пп = о, = л.

Имеется в виду, что переменная х принимает значения из интервала (субполосы) оси абсцисс плоскости пространственных частот (ПЧ) = [—Оі2,—Ол)^[Ол,Оі2), тогда как одновременно переменная у попадает в следующий интервал (субполосу) оси ординатСг = [—Ог2,—Ог1)^[Ог1,Ог2). Субинтервал V , схематично изображен на на рис.1.

V

Отметим, что интегралы

Е.. =

Рис.1. Двумерная область ПЧ УХ1 (субинтервал)

| Е(х,у) \2 сіхсіу /4ж2,

(5)

(х,у)єІгіт

определяют части энергии, попадающие в выбранные интервалы ПЧ. После подстановки сюда определения (2) и преобразований с учетом симметрии (4) нетрудно [2] получить соотношение для вычисления интегралов вида (5) без вычислений трансформанты Фурье

Ехг=НФгА1ФА2), (6)

где символ /г означает сумму диагональных элементов (след) матрицы; Ах и А2 -субполосные матрицы с элементами вида

„1 _ -/2))-‘МА,1(*1 "'г)) ; ; ДГ Г_ч

аци \ ? 1? 2 ? У/)

л-(/1-/2)

_2 _1Ь,ш(Пг2(^-^2))-5,//|(Пг1(^-^2)) , , , ^

аы-, ---------------------77-----—------------------,к1,к2 = \„.,М . С»;

ж(ку к2)

Полагая

С,Г=Е,Г/ЕФ, (9)

можно определить совокупность интервалов ПЧ, где суммарно сосредоточена заданная доля энергии.

В свою очередь, используя вариационный принцип[2]

£>(7%I) = Л |^(х,у)-гО,у)\2(Ы* + ||(х, _у)|2 ёисЗЬ => пип , (ю)

(м,у)еКу?. (и,у)&У$г

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

¥,г=(У:;т) = А1ФА2,п = \,..,К-,т = 1,..,М. (Ю

Существенное значение имеет свойство получаемой компоненты

У™ = | | ^(^>’)ехрОх(//-1))ехр(7г(от-1))<*йЬ/4л-2, (12)

х&В3 усОг

которое заключается в отсутствии влияния на результат фильтрации смежных интервалов ПЧ. Кроме того, используя определения (4) , (7) и (8), нетрудно доказать равенство

5 Я

ЦГ„ = Ф, (13)

«=1 г=1

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

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

Таким образом, нетрудно убедиться, что в основе методов субполосной обработки изображений лежит повторение пары операций: умножения и суммирования (в действительности — накопления, поскольку требуется не просто сложение пар чисел, а вычисление суммы всех произведений). Очевидно, что наибольшую производительность при использовании алгоритмов такого типа будут иметь те процессоры, которые способны выполнить умножение и накопление за возможно меньшее число тактов. Идеальным вариантом является однотактное исполнение. Что вполне осуществимо при помощи ПЛИС архитектуры РРСА.

На рис. 2 проиллюстрированы различия между сигнальным процессором и БРОАпри выполнении операции цифровой фильтрации.

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

Серия История. Политология. Экономика. Информатика. -|д-|

2013. №7 (150). Выпуск 26/1

требующуюся для реализации всего фильтра или иного алгоритма). Несмотря на то, что некоторые сигнальные процессоры допускают выполнение 2 или 4 операций «умножения с накоплением» одновременно, для фильтров высокого порядка общее падение частоты оказывается достаточно существенным. В то же время FPGA вполне могут обеспечить однотактное исполнение всех операций, используя параллельный расчет. Этому способствует, очевидно, наличие большого числа блоков DSP, выполняющих умножение с накоплением. Нетрудно заметить, что для эффективного использования этого преимущества следует ориентироваться на алгоритмы и методы, подразумевающие распараллеливание операций.[3]

Пример фильтра 256-го порядка

DSP-npot^ccop после лопат ел ьное «ьполнение Дам»

Коэфф.

256 iua/oe •ычислений

Дани**

500 МГц

FPGA. параллельное исполнение--------------------------------- 500 MS^S

1 «акт

Данные

со

Данмыа

Pilc. 2. Выполнение цифровой фильтрации в сигнальном процессоре и FPGA

Кроме того, важным преимуществом FPGA является их способность обеспечивать не просто высокую скорость обработки, но еще и непрерывную обработку и стабильную скорость. Дело в том, что понятие «пиковая производительность» приобретает несколько разный оттенок при использовании сигнальных процессоров и FPGA. В случае с сигнальным процессором тактовая частота, показанная на рис. 2 как 1 ГГц, достаточно условно соответствует количеству операций непосредственно с фильтром. В программе процессора могут быть предусмотрены и другие действия, например обработка прерываний. Кроме того, при соответствующем построении системы пиковая скорость может упасть из-за промаха кэша и множества других факторов. Иными словами, понятие «пиковая производительность» имеет статистический характер, а реальное значение производительности может меняться не только в зависимости от выбранного алгоритма, но еще и в процессе работы программы при возникновении соответствующих условий.

В качестве примера использования ПЛИС для обработки изображений с помощью программной системы MATLAB и Xilinx system generator среды ISE 14.4, были реализованы параллельные алгоритмы двухмерной цифровой фильтрации изображений, основанные на свертке исходного изображения с некоторой маской к которым можно отнести. К таким алгоритмам относятся: Edge, Sobel X-Y, Gaussian. Данные алгоритмы позволяют, отфильтровывая информацию, которая может рассматриваться как не актуальная, при этом сохраняя важные структурные свойства изображений. Для сравнения производительности было выбрано две платы Virtex-6 FPGA (Virtex-6, 2010) xc6vlX240Tl-ilffi759 и xc6vlXi3oTl-ilffii56.

Фильтрация осуществлялась на основе свертки исходного изображения с матрицами размером 5x5 следующего вида:

НАУЧНЫЕ ВЕДОМОСТИ

ш

0 0

0 1

0 -1

0 1

0 0

_ — _

0 0 0 0 0 0 ] 1 2 1 1

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

0 0 0 1 -1 0 ] 2 4 2 1

0 0 1 1 0 0 2 4 8 4 2

0 0 1 1 0 0 1 2 4 2 1

0 0 0 0 0 0 1 1 2 1 1

Sobel X-Y Gaussian

-1 -о о Edge

Для реализации алгоритмов фильтрации изображений в модуле Simulink программной системы MATLAB была составлена модель устройства на основе ПЛИС, представленная на рисунке 3.

File Edrt View Simulation Fo»mat Tools Help

|io 0

Normal

К

System

Ganmio1

greyScaleSignal

-H

In

From

WotspeoB

Gateway In

Register

Lirvel * Linal

Lme" —► Line2

in Ll*e3 —#- Line3 cut

Li"** —► Line*

Un«6 —*■ Line5

Out

Gateway Out

filtered I mage

Register 1

To И/опзраое

Vt*1e>2 5 Line Buffer

Ready

100%

ode45

Рис. 3. Модель устройства фильтрации изображений на основе ПЛИС На вход модели подавалось исходное изображение представленное на рисунке 4.

Рис. 4. Исходное изображение

Результаты обработки исходного изображения с помощью реализованной модели устройства на основе ПЛИС, представлены на рисунке 5.

ЩРГЙ

Рис. 5. Результат обработки исходного изображения: а) на основе оператора Edge, б) на основе оператора Sobel X-Y, в) на основе оператора Gaussian.

Как видно из результатов обработки представленных на рисунке 5, созданная модель устройства на основе ПЛИС позволяет производить фильтрацию изображений, что подтверждает ее работоспособность.

Так же, немаловажным параметром реализации алгоритмов на основе ПЛИС является скорость обработки. Для оценки скорости обработки изображений был использован специализированный модуль Xilinx Timing Analyzer.

По результатам анализа оказалось, что если FPGA работает на частоте 230 МГц, тогда пропускная способность составляет 230 МГц / 5 = 46000000 выборок / секунду. Для изображений 64x64 в оттенках серого, пропускная способность составляет 46x10 А 6 / (64 * 64) = 11 230 кадров / сек, для 256x256 пропускная способность 701 кадров/с, а для 512x512 172 кадров/сек. Таким образом, пропускная способность ПЛИС зависит от размера исходного изображения.

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

Литература

1. Фисенко В.Т., Фисенко Т.Ю., Компьютерная обработка и распознавание изображений: учеб. пособие. - СПб: СПбГУ ИТМО, 2008. - 192 с.

2. Жиляков, Е.Г. О дешифрировании изображений земной поверхности по космическим снимкам / Жиляков Е.Г., Черноморец А.А. Красильников В.В. // Научные ведомости БелГУ. Сер. История. Политология. Экономика. Информатика. - 2010. - № 1 (72). -Вып. 13/1. - С. 144-151.

3. Илья Тарасов, Возможности FPGA фирмы Xilinx в задачах цифровой обработки сигналов: журнал Компоненты и технологии №5 2007.

APPLICATION OF FPGA FPGA ARCHITECTURE IN PRORIEMS SURRAND IMAGE PROCESSING

S.M. CHUDINOV1 A.N.ZALIVIN2

•OAO «Nil SUPER-EVM»

2Belgorod National Research University

e-mail:

Chud35@yandex.ru Zalivin@bsu.edu.ru

The paper considers the possibility of using FPGAs FPGA architecture for the implementation of digital image processing algorithms. A model of the device, implemented in software product Simulink. The results of image processing.

Keywords: subband methods, frequency representation, FPGA, FPGA image processing

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