УДК 004.932
ОСОБЕННОСТИ ПАРАЛЛЕЛЬНОЙ РЕАЛИЗАЦИИ ОПЕРАЦИЙ МАТЕМАТИЧЕСКОЙ МОРФОЛОГИИ НА ПЛИС
Д.И. Устюков, А.И. Ефимов, Д.А. Колчаев
В статье рассматриваются вопросы предобработки изображений на программируемых логических интегральных схемах. В качестве алгоритма предобработки выбрана морфологическая дилатация, с использованием структурного элемента BOX 3x3. Рассмотрены вопросы бинаризации изображения пороговым методом, а также особенности параллельной реализации выбранного алгоритма на ПЛИС, описаны взаимосвязи вычислительных блоков и блоков фиксации результатов.
Ключевые слова: система технического зрения, морфологические операции, структурный элемент, дилатация, ПЛИС.
Математическая морфология является инструментом для извлечения отдельных компонентов изображений, полезных для представления и описания форм объектов, например их остовов, границ, выступов и т.д. Применение операций математической морфологии способно существенно повысить качество решения высокоуровневых задач обработки графической информации: распознавания образов, идентификация и сопровождения объектов интереса.
Еще одной причиной широкого применения морфологических операций при реализации программно-алгоритмического обеспечения систем технического зрения (СТЗ) является их простота. Базовые морфологические операции - эрозия (утоньшение) и дилатация (утолщение) [1] как для бинарных, так и для полутоновых изображений имеют очень простую структуру, что позволяет без труда реализовать их даже на мобильных вычислительных устройствах, входящих непосредственно в состав СТЗ. Производные морфологические операции, которые, как правило, имеют наибольшую ценность с практической точки зрения, в большинстве представляют собой комбинацию применения названных ранее базовых операций, что не оказывает существенных ограничений на процесс вычислений.
Реализация морфологических операций на программируемых логических интегральных схемах
Морфологические операции относятся к алгоритмам предварительной обработки изображений, соответственно на их выполнение должно отводиться минимальное время, т.к. далее для обрабатываемого изображения будет применён основной алгоритм (либо комбинация алгоритмов), который будет более трудоёмким и требовательным к ресурсам вычислительной системы.
Стандартным требованием к системам технического зрения является итоговая частота выдачи результатов обработки не менее 25 Гц, то есть 25 кадров в секунду, что продиктовано особенностями восприятия изображений человеческим глазом. Следовательно, предварительная обработка должна обеспечивать значительно большую скорость работы, чтобы не снижать итоговой производительности системы [5]. Для обеспечения такого быстродействия целесообразно использовать программируемые логические интегральные схемы (ПЛИС). Использование микросхем такого типа позволяет спроектировать многопоточный конвейерный вычислитель, что особенно актуально в задачах обработки изображений на мобильных вычислителях [6].
Морфологические операции обычно выполняются над бинарными образами (но следует заметить, что морфологические операции определены и над полутоновыми изображениями). В свою очередь входными данными модуля обработки информации системы технического зрения является изображение в оттенках серого или в некоторых
25
случаях в 24 битном RGB формате, поэтому первый этап реализуемой технологии -бинаризация исходного изображения. Типовая СТЗ, в рамках которой предполагается применение описанного алгоритма, содержит в своем составе вычислитель, телевизионную и тепловизионную камеры, а также устройство визуализации результатов для конечного пользователя [7]. Наличие нескольких каналов поступления графической информации еще более ужесточают требования к скорости выполнения предварительной обработки.
Существует несколько алгоритмов получения бинарного изображения. Для уменьшения вычислительной сложности и повышения быстродействия в работе использовался алгоритм пороговая бинаризация (1).
1255,1(i, j) > t
B(l, j) = In, л, (1)
[ 0,1(i, j) < t
где I(i,j) - значение яркости текущего пикселя, B(i,j) - бинарная матрица изображения, t - пороговое значение. Недостатком такого подхода является его зависимость от внешних условий, и необходимость ручной настройки. Однако предполагается использование такого метода бинаризации после операции выделения контуров (к примеру, с применением оператора Собеля [2]). Значение коэффициента t в этом случае может быть подобрано таким образом, чтобы контуры значимых объектов на изображении сохранялись при различных внешних условиях.
Исходными данными для операции морфологии являются бинарное изображение и так называемый структурный элемент, который зависит от вида и особенностей операции. В общем случае выбор структурного элемента осуществляется на основе анализа специфики решаемой задачи и оказывает принципиальное влияние на получаемые результаты. Он представляет собой матрицу размером меньше исходного изображения. Базовыми структурными элементами можно считать BOX[H,W] - прямоугольник заданного размера, DISK[R] — диск заданного размера, RING[R] - кольцо заданного размера.
В полученной реализации использовался морфологический метод дилатация (наращивание) в сочетании со структурным элементом BOX[3,3]:
Г1 1 1"
BOX[3,3]= 1 1 1 1 1 1
Изображение обрабатывается попиксельно, если анализируемый пиксель исходного изображения равен 1, то на результирующем изображении область пикселей размером, соответствующим размеру структурного элемента, с центром в точке с координатами анализируемого пикселя заполняется значениями структурного элемента. В рассматриваемом случае это означает, что если значение анализируемого пикселя равно единице, то все его соседние пиксели также приравниваются единице. В результате наблюдается утолщение линии объекта [3] (см. рис.1).
а б
Рис. 1. Морфологическая операция «Дилатация» а — фрагмент изображения; б — результат дилатации
26
Для обеспечения наибольшего быстродействия использованы следующие решения:
1. Исходное изображение имеет разрешение 640x480, яркость каждого пикселя может принимать значения от 0 до 255 (8 бит);
2. Изображение хранится в памяти ПЛИС построчно, каждая строка в отдельном модуле памяти, что позволяет одновременно читать и/или записывать 480 элементов.
3. Вычислительный блок состоит из 480 модулей, каждый из которых принимает данные от одного, соответствующего ему, блока памяти.
4. Результат хранится аналогично исходному изображению, однако, блоки памяти - однобитные.
5. Каждый вычислительный модуль формирует результат сразу в три блока памяти в соответствии с выбранным структурным элементом.
Очевидно, что в данной ситуации одновременно три вычислительных блока будут пытаться записать полученный результат в одну ячейку. Учитывая тот факт, что результат операции бинарный, а операция дилатации представляет собой наращивание (утолщение контуров объектов) результаты, полученные в вычислительных блоках, обращающихся к одной ячейке памяти, можно подключить к трехвходовой схеме «логическое или». В этом случае, если хотя бы один из блоков сформирует единицу, в результирующую память запишется единица [4].
Структура подключения вычислительных блоков с блоками памяти представлена на рис. 2.
Рис. 2. Схема подключения блоков на примере пяти вычислительных модулей
Работа вычислительного модуля осуществляется по следующему алгоритму:
- по установленному модулем верхнего уровня, управляющего обработкой, адресу Лёёге881п[9:0] выбирается значение яркости пикселя для анализа Б0[7:0];
- в соответствии с условием (1) в вычислительном модуле осуществляется проверка, если яркость пикселя больше значения X (в описываемой реализации 1=127), то модуль формирует в окрестности этого пикселя область, состоящую из единиц в противоположном случае из нулей;
- т.к. вычислительные блоки одновременно формируют значения для занесения в несколько модулей памяти, для корректной записи между данными, поступающими в один блок, осуществляется операция или;
- для фиксации значений в памяти результирующего изображения линия WeO устанавливается в единицу на три такта синхронизации, в это время значение на линии адрес Лёёге8в0[9:0] изменяется от Лёёге881п-1 до Лёёге881п+1.
Обработка одного пикселя занимает 3 такта, которые уходят на последовательную запись 3 значений в модуль памяти, операция выполняется для 480 строк одновременно, соответственно на обработку изображения, не учитывая время загрузки изображения в память ПЛИС и выгрузки результата, уходит 480*3 = 1440 тактов. Такие показатели подчёркивают, что алгоритм практически не оказывает влияние на общую производительность системы, а также ложится в структуру параллельной пространственной обработки изображений[2].
Результаты выполнения трехпроходной операции дилатации представлен на
рис. 3.
Рис. 3. Выполнение операции дилатация на ПЛИС: а — исходное изображение; б — результат обработки
Стоит отметить, что данный метод может быть реализован и для других морфологических алгоритмов, будут заменены только структурный элемент, и логическая операция.
Заключение
В статье приведено описание алгоритма и особенностей реализации бинарных морфологических операций на программируемых логических интегральных схемах. Применение предлагаемого алгоритма обеспечивает быструю предварительную обработку контуров объектов на изображении, что существенно повышает качество решения задач обработки видеоинформации, использующих подходы контурного анализа: распознавание образов, сопровождения подвижных объектов, совмещение и геометрическая коррекция изображений и др.
Работа выполнена в рамках гранта Президента Российской Федерации для государственной поддержки молодых российских ученых МК-661.2018.9, соглашение о предоставлении субсидии № 075-02-2018-683 от 16.11.2018
Список литературы
1. Красильников Н. Н. Цифровая обработка 2Б- и 3Б-изображений: учеб. пособие. СПб.: БХВ -Петер бур г, 2011. 608 с.
2. Ефимов А.И. Особенности реализации пространственных фильтров изображений на БРОЛ Электронная юстировка изображений при муль-тиспектральном наблюдении / А.И. Ефимов, И. А. Орлова, Д.И. Устюков // Известия Тульского государственного университета. Технические науки, 2018. Вып. 2. С. 196-206.
3. Гонсалес, Р. Цифровая обработка изображений / Р. Гонсалес, Р. Вудс; пер. с англ. М.: Техносфера, 2005. 1072 с.
4. Огнев И.В. Обработка изображений методами математической морфологии в ассоциативной осцилляторной среде / И.В. Огнев, Н.А. Сидорова, Д.И. Устюков // Известия Высших учебных заведений. Поволжский регион. Технические науки, 2007. № 4. С. 87-97.
5. Клинцов Г.Н. Основные свойства вычислительных алгоритмов, выполняемых на реальных ЭВМ / Г.Н. Клинцов, Е.В. Ларкин // Известия Тульского государственного университета. Технические науки, 2016. Вып. 1. С. 61-68.
6. Муратов Е.Р. Программно-аппаратные средства улучшения изображений в видеосистемах мобильных роботов/ Е.Р. Муратов, М.Б. Никифоров, Д. А. Варабин, Д.И. Устюков // Оборонная техника, 2017. № 8. С. 50-57.
7. Ефимов А. И. Обработка изображений в многоспектральных системах технического / Ефимов А.И., Костяшкин Л.Н., Логинов А.А., Муратов Е.Р., Никифоров М.Б., Новиков А.И.// Вестник Рязанского государственного радиотехнического университета, 2017. № 60. С. 83-92.
Устюков Дмитрий Игоревич, аспирант, [email protected], Россия, Рязань, Рязанский государственный радиотехнический университет,
Ефимов Алексей Игоревич, канд. техн. наук, доцент, lexie62rus@,mail. ru, Россия, Рязань, Рязанский государственный радиотехнический университет,
Колчаев Дмитрий Алексеевич аспирант, [email protected], Россия, Рязань, Рязанский государственный радиотехнический университет
FEATURES OF PARALLEL IMPLEMENTATION OF MATHEMATICAL MORPHOLOGY
OPERATIONS ONFPGA
D.I. Ustukov, A.I. Efimov, D.A. Kolchaev
The article presents the issues of image preprocessing on programmable logic integrated circuits. Morphological dilatation using the BOX 3x3 structural element was chosen as the preprocessing algorithm. The quastions of the image binarization with threshold method, as well as features of the selected algorithm parallel implementation on the FPGA, are discussed. The interrelationships of computational and results fixation blocks are described.
Key words: technical vision system, morphological operations, structural element, dilatation, FPGA.
Ustukov Dmitry Igorevich, postgraduate, ustukov. mail@ya. ru, Russia, Ryazan, Ryazan State Radio Engineering University,
Efimov Aleksey Igorevich, candidate of technical sciences, docent, lex-ie62rus@,mail. ru, Russia, Ryazan, Ryazan State Radio Engineering University,
Kolchaev Dmitry Alekseevich, postgraduate, 3force3@ mail. ru, Russia, Ryazan, Ryazan State Radio Engineering University