После продолжительного времени пониженного спроса на новые технологии в отечественной промышленности, не в последнюю очередь в связи с насущной необходимостью преодоления кризиса растёт интерес к инновационным разработкам. Среди них особую роль играют высокоинтеллектуальные многофункциональные приборы для промышленных систем управления производственным процессом, основанным на обработке многомерных информационных массивов, таких как изменяющиеся во времени двумерные изображения и видеоданные. Наиболее перспективно строить такие приборы на основе систем технического зрения [4]. С их помощью появляется возможность создания новых типов информационных систем, решающих широкий класс проблем, благодаря использованию информации визуального характера. Именно на основе системы технического зрения, как показывает предварительный анализ, можно решить проблему оценки температуры и расхода расплава плавильной печи при производстве минеральной ваты.
Технологии обработки видеоизображений хорошо освещены в литературе и Интернете. Несмотря на то, что научные исследования и разработки по этой теме ведутся очень давно, существует ряд нерешенных проблем, в частности с распознаванием объектов сложной формы, а также высокоскоростное совмещение изображений в реальном времени с точностью до долей интервала дискретизации. По результатам исследования ученых из Массачусетского технологического института (MIT) справедливый уровень работы систем распознавания объектов – это 60-процентная вероятность правильного распознавания и классификации визуальных объектов [3].
В настоящее время имеется множество средств и библиотек разработки, а также программных продуктов, использующих алгоритмы цифровой обработки изображений, например Intel Open Source Computer Vision Library, MATLAB Functions for Computer Vision, OpenVIDIA: Parallel GPU Computer Vision, Disparity Analysis of Images, ГАБИТУС и др. Подавляющее большинство подобных программных продуктов предоставляют обширный выбор реализаций алгоритмов предварительной обработки, совмещения изображений и распознавания образов, однако требуют доработки при использовании в реальных системах технического зрения [6, 8, 9, 10, 12–14].
Анализ предметной области показывает [7], что при построении системы технического зрения для оценки дебита расплава металлургической печи при производстве минераловатной продукции необходимо решить следующие задачи:
– реализовать высокоскоростную обработку видеоизображений для определения скорости истечения струи и ее положения;
– осуществить передачу информации в виде команд управления, а также потока видеокадров между вычислительным и интерфейсным модулями системы;
– организовать хранение большого объема видеокадров с нетипичными изображениями струи;
– предусмотреть защиту информации от несанкционированного доступа к настройкам самой системы технического зрения, а также и к результатам мониторинга технологического процесса.
Все эти проблемы являются не только актуальными, но и обязательно будут востребованы при разработке новых систем технического зрения. Среди перечисленных проблем наибольшее влияние на производительность системы оценки дебита и температуры струи оказывают первые две. Именно решению этих задач и посвящена настоящая статья.
Основная часть
Скорость истечения струи может быть определена путем нахождения величины взаимного сдвига фрагментов изображений на двух последовательных кадрах. Существующие методы оценки параметров смещения текущего изображения (ТИ) относительно эталонного (ЭИ) и основанные на инвариантных мерах сходства являются по своей природе двумерными. Однако наиболее высокоскоростные алгоритмы определения параметров взаимного сдвига изображений реализуются с помощью одномерных методов и заключаются в раздельном определении смещения вдоль осей X и Y [1]. Для реализации таких алгоритмов необходимо произвести развязку двумерного сдвига изображений на два независимых одномерных [11]. Развязка производится путем вычисления циклических инвариантов каждой строки и каждого столбца – своеобразных обобщенных проекций двумерного изображения на два взаимно перпендикулярных направления.
Пусть f(x, y) – функция яркости некоторого изображения, , S(·,·,…,·) – симметрическая функция от N переменных (например,
), а
– произвольный набор из К функций от l переменных. Возьмем l произвольных горизонтальных отсчетов
и вычислим величину
(1)
где знак ⊕ означает суммирование по mod N. При циклическом сдвиге всего массива происходит перестановка переменных Uω[…] внутри симметрической функции S, которая не меняет при этом своего значения. Величину
будем называть инвариантом y-го столбца изображения f(x, y). Совокупность инвариантов , при ω-const,
образует одномерный массив – строку, который будем называть инвариантной проекцией столбцов с номером ω. Для аналогичной инвариантной проекции строк применим обозначение
.
Пусть fЭ(x, y) ‒ эталонное изображение, а ‒ текущее, где (x0, y0) взаимный сдвиг изображений. Тогда
(2)
и
(3)
Отметим, что частным случаем (2) и (3) являются энергетические спектры строк и столбцов изображения f(x, y). Действительно, если
то
и
Выражения (2) и (3) показывают, что и
не зависят от циклического сдвига вдоль проектируемой оси, но сохраняют всю информацию о смещении во взаимно перпендикулярных направлениях для любого значения ω.
Среди приборов, способных решать задачи бесконтактного измерения температуры контролируемых объектов, наиболее перспективными являются пирометры. В качестве основы для разработки и программирования интерфейса обмена данными между РС и пирометром предлагается использовать протокол связи, совместимый со стандартным протоколом Modbus. Формат передачи байта совпадает со стандартным протоколом RS-485 [5]. Основное назначение интерфейса RS-485 в данном применении – построение многоточечных сигнальных сетей на базе нескольких (до 31) пирометров и master-устройства (компьютера или иного средства сбора данных). Пример топологии такой сети показан на рисунке 1. Линия связи – двухпроводная, двунаправленная. Для минимизации отражений резисторы-терминаторы на обоих концах линии должны иметь сопротивление, близкое или равное характеристическому импедансу линии (120 Ом), но их параллельное сопротивление не должно быть ниже минимального импеданса нагрузки (60 Ом).
Выбор такого решения обусловлен тем, что наряду с устройством оценки температуры необходимо будет управлять и обмениваться информацией с моторизованной платформой следящей системы, с помощью которой будет обеспечиваться контроль местоположения струи. Для унификации всех обменов между РС и внешними приборами и предлагается выбрать такой формат передачи данных.
Рис. 1. Пример топологии многоточечной сигнальной сети
Рис. 2. Экономия общего времени исполнения ядра в зависимости от длительности обработки данных
В настоящее время высокоскоростную обработку видеоизображений реализуют на графических процессорах (GPU). Для повышения скорости обработки многомерных массивов информации в текущей реализации системы применяется технология CUDA. При организации многопоточной обработки информации на GPU необходимо наряду с контролем времени обмена данными между центральным и графическим процессором [2] контролировать время исполнения ядра на GPU. С этой целью были проведены исследования общего времени исполнения ядра на графическом процессоре, включающего загрузку данных, их обработку на мультипроцессорах и выгрузку данных, в зависимости от различной длительности только процесса обработки информации. Результаты проведенного эксперимента проиллюстрированы на рис. 2.
Полученные графики показывают, что наибольшей эффективности при многопоточной обработке можно добиться при равенстве времен загрузки данных, их обработки и выгрузки.
Заключение
Использование стандартизированного протокола Modbus для обмена данными между оборудованием делает систему универсальной и легко встраиваемой в промышленные сети любого предприятия. Применение в качестве физического уровня двухпроводной интерфейс RS-485 позволяет системе легко масштабироваться и подстраиваться под любые требования производства. Предложенная схема объединения бесконтактного пирометра с моторизованной платформой следящей системы хорошо себя зарекомендовала во время эксплуатации в тяжелых условиях производства минеральной ваты.
Проведенный анализ различных аспектов процесса обработки и передачи данных между CPU и GPU позволяет сформулировать следующий протокол передачи данных в CUDA. Его основные положения заключаются в следующем:
– минимальный объем обрабатываемых данных должен превышать 256 Кб;
– обработку данных объемом меньше 512 Кб производить в два потока, а при объеме данных, превышающих 512 Кб, обработку организовывать в 4 потока;
– размерность обрабатываемых данных должна быть 1, 2, 4, 8 или 16 байт;
– использовать только асинхронное копирование;
– оптимизировать обработку информации на мультипроцессорах GPU таким образом, чтобы время обработки данных не превышало время их загрузки или выгрузки.
Рецензенты:Доросинский Л.Г., д.т.н., профессор, заведующий кафедрой «Информационные технологии», Уральский федеральный университет имени первого Президента России Б.Н. Ельцина, г. Екатеринбург;
Поршнев С.В., д.т.н., профессор, заведующий кафедрой «Радиоэлектроника информационных систем», Уральский федеральный университет имени первого Президента России Б.Н. Ельцина, г. Екатеринбург.
Работа поступила в редакцию 06.03.2015.