<<
>>

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

Структурно-функциональная схема устройства параллельной обработки изображений индикаторов панели приборов (УПОИ) приведена на рисунке 4.1 [40, 44, 48, 53].

Рисунок 4.1. Структурно-функциональная схема устройства параллельной обработки изображений индикаторов панели приборов

75

В состав разработанного устройства входит цифровая видеокамера (ЦВК), контроллер цифровой видеокамеры (КЦВК), ОЗУ, блок определения показаний стрелочных индикаторов (БОПСтИ), блок определения показаний жидкокристаллического дисплея (БОПЖКД), блок определения показаний световых индикаторов (БОПСвИ), блок клавиш (БК), блок жидкокристаллического дисплея (БЖКД), контроллер ввода-вывода (КВВ), N блоков генерации сигнала (БГС 1, БГС N), блок питания (БП), генератор тактовых импульсов, дешифратор клавиш (ДШК), шина адреса и управления (ША/У), шина данных (ШД).

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

Персональный компьютер (ПК) подключается к КВВ с использованием интерфейса USB [45], осуществляет расчет расписания обработки изображений индикаторов панели приборов с использованием исходных данных и не требует подключения в течение рабочих циклов обработки [46, 47].

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

Блоки определения показаний индикаторов (БОПСтИ, БОПЖКД, БОПСвИ) осуществляют обработку изображений индикаторов в соответствии с аппаратно-ориентированными алгоритмами, выполняя операции распознавания показаний индикаторов панели приборов.

Управляющий контроллер выполняет функцию управления процессом параллельной обработки изображений индикаторов панели приборов и подключается к ША/У и ШД.

УК подает управляющие сигналы на множество БГС, выполняющих генерацию сигналов, аналогичных сигналам, формируемым датчиками, при этом каждый БГС представляет собой отдельную печатную плату, которая подключается к ША/У и ШД и содержит триггер для хранения режима работы. Выбор БГС осуществляется с 76

помощью управляющего контроллера путем выставления на ША/У логической комбинации, кодирующей рабочий режим конкретного БГС. Для обеспечения генерации сигналов на каждый БГС подводится опорное напряжение +13,5 В, +5 В и общий провод Gnd. Выходы каждого БГС соединяются в сигнальную шину (СШ), которая электрически соединяется с внешним разъемом панели приборов.

Генератор тактовых импульсов предназначен для синхронизации работы цифровых схем. БК служит для управления устройством. БЖКД выполняет функции отображения справочной информации о процессе обработки изображений индикаторов.

ДШК используется для автоматического выбора режима индикации жидкокристаллического индикатора.

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

Блок определения показаний стрелочных индикаторов (БОПСтИ) представляет собой законченный вычислительный модуль, выполняющий функцию анализа изображения стрелочного индикатора с целью определения его показаний, и содержит контроллер ввода-вывода (КВВ), блок энергонезависимой памяти (БЭНП), ОЗУ, микроконтроллер (МК). При этом микроконтроллер (МК) выполняет функции арифметико-логического устройства, КВВ содержит последовательно соединенные вычитатель изображения и блок бинаризации.

Блок работает следующим образом. Полутоновое изображение шкалы стрелочного индикаторасоответствующее начальному показанию,

запоминается в ОЗУ УПОИ; полутоновое изображение шкалы стрелочного индикаторасоответствующее текущему показанию, также

запоминается в ОЗУ УПОИ.

Далее вычитатель изображений производит вычитание двух изображений по формуле (2.6), причем в процессе вычитания производится формирование двух массивов по правилам (2.7 - 2.8), один из которых содержит изображение стрелочного указателя соответствующего начальному положению стрелки указателя стрелочного индикатора, другой - текущемуЗатем блок бинаризации формирует

бинаризованные изображенапо формуле (2.9), после чего

производится:

1) сканирование изображенийпо всем пикселям с

целью определения координат центра стрелочного указателя по формуле (2.10) в блоке МК;

2) сканирование изображенийпо всем черным

пикселям с целью определения координат точекцентров

образованных отрезков по формулам (2.11 - 2.12) в блоке МК;

3) вычисление тангенса угла наклона указателя на изображениях

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

отношение (2.13) в блоке МК;

4) преобразование найденных значений tg(φ)для начального и текущего положения стрелочного указателя с использованием заранее определенных табличных значений, хранимых в БЭНП, в численные значения ψa,φуглов отклонения указателей;

5) вычисление значения искомого угла φмежду начальным и конечным отклонением стрелочного указателя по формуле (2.14) в блоке МК;

6) вычисление значения показания стрелочного индикатора Dпо формуле (2.15).

На последнем этапе результаты вычислений передаются по ШД на управляющий контроллер.

Отличительными особенностями БОПСтИ является вычисление

78

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

Блок определения показаний жидкокристаллического дисплея (БОПЖКД) представляет собой законченный вычислительный модуль, выполняющий функции анализа изображения жидкокристаллического дисплея с целью определения его показаний, и содержит блок интерполяции, блок бинаризации, блок разбиения, сравниватель шаблонов и ЗУ шаблонов.

Блок работает следующим образом.

В блоке интерполяции производится изменение размера изображения жидкокристаллического дисплея, затем в блоке бинаризации изображение приводится к виду к виду 1 бит/пиксель путем сравнения значения каждого пикселя изображения с пороговым значением и принятием нового значения пикселя из множества {0, 1}. После этого блок разбиения производит разбиение изображения жидкокристаллического дисплея на прямоугольные области нахождения различных символов, состоящих из сегментных индикаторов. Определение значения каждого символа производится в сравнивателе шаблонов на основе сравнения распознаваемого символа с символами из набора готовых шаблонов, содержащихся в ЗУ шаблонов по максимуму попиксельной идентичности двух изображений. На последнем этапе результаты распознавания передаются по ШД на управляющий контроллер, который выполняет определение текущего режима индикации на основе анализа совокупности распознанных символов, а также расчет численного значения показаний жидкокристаллического дисплея.

Блок определения показаний световых индикаторов (БОПСвИ) представляет собой законченный вычислительный модуль, выполняющий функцию анализа изображения светового индикатора с целью определения его показаний, и содержит блок интерполяции, блок бинаризации, 79

сравниватель шаблонов и ЗУ шаблонов.

Блок работает следующим образом.

В блоке интерполяции производится изменение размера изображения светового индикатора, затем в блоке бинаризации изображение приводится к виду к виду 1 бит/пиксель путем сравнения значения каждого пикселя изображения с пороговым значением и принятием нового значения пикселя из множества {0, 1}. Определение признака работоспособности светового индикатора производится в сравнивателе шаблонов на основе сравнения распознаваемого изображения с изображениями из набора готовых шаблонов по максимуму попиксельной идентичности двух изображений. На последнем этапе результаты распознавания передаются по ШД на управляющий контроллер, который выполняет определение текущего режима индикации на основе априорной информации о режимах индикации панели приборов.

Рассмотрим более подробно работу блоков интерполяции и сравнивателя шаблонов.

Блок интерполяции (рис. 4.2) производит интерполяцию в конвейерном режиме в три основных шага. На первом шаге интерполируемая область смещается в крайний угол основного (увеличенного кадра) (рис. 4.3), на втором шаге производится перенос пикселей с увеличением расстояния между ними до растяжения на целый кадр (рис. 4.4), и данные пиксели помечаются, как содержащие верные данные (рис. 4.5), третий шаг - осуществляется интерполяция промежуточных позиций пикселей (рис. 4.6) и окончательное формирование кадра с последующей его выдачей для дальнейшей обработки.

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

Рисунок 4.2. Структурно-функциональная организация блока интерполяции

Одновременно с этим, сразу после завершения получения текущего кадра контроллер-арбитр передает управление модулю смещения подфрейма.

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

Рисунок 4.3.

Модуль смещения подфрейма производит действия, иллюстрируемые рисунком 4.3. Именно он обеспечивает смещение текущей обрабатываемой

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

Рисунок 4.6.

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

В результате на данном этапе в ОЗУ выходного кадра формируются изображение, расширенное на весь кадр, но у данного изображения информацию несут только пиксели исходного подфрейма, а расположенные между ними пиксели не являются верными, их значения рассчитываются на следующем шаге. Контроллер-арбитр подаёт управляющий сигнал и переходит к третьему шагу обработки. Интерполятор получает управляющий сигнал и последовательно для каждого из прямоугольников, образованных пикселями с ранее записанными на втором шаге отсчетами яркости, производит интерполяцию посредством расчета каждого пикселя внутри обрабатываемой подобласти (рис. 4.6).

Интерполятор подает в вычислитель значения четырех крайних пикселей. Вычислитель в соответствии с выражением (2.16) рассчитывает значение яркости пикселя по каждому из цветовых каналов и его записывает в ОЗУ выходного кадра. Таким образом, в результате последовательной обработки всех пикселей всех подобластей в ОЗУ выходного кадра записано целевое интерполированное изображение. Интерполированное изображение передается через выходной буфер для дальнейшего использования.

Сравниватель шаблонов состоит из входного контроллера, ОЗУ, блока масштабирования, буферного ОЗУ, РПЗУ эталонов, счётчика адреса, контроллера управления, четырех регистров, вычислителя порога, сумматора, 83

вычитателя и модуль определения максимума (рисунок 4.7).

Рисунок 4.7. Структурно-функциональная организация сравнивателя шаблонов

Входное изображение под управлением входного контроллера поступает пиксель за пикселем из внешнего источника. В процессе ввода изображения записывается в оперативное запоминающее устройство по адресу, определяемому счетчиком адреса. После получения всего очередного кадра входного изображения контроллер управления формируют управляющий сигнал по системной шине, который обеспечивает передачу параметров области (соответствующей символу), которую необходимо распознать, в блок масштабирования. Блок масштабирования предназначен для приведения к идентичности размеров эталонного и текущего изображений. Блок масштабирования по заданному счётчиком адреса адресу считывает из основного ОЗУ текущую область обрабатываемого изображения и передает ее в буферное ОЗУ для последующего масштабирования. Блок масштабирования получает команду на обработку данной области и в соответствии с разработанной математической моделью масштабирования изображения обеспечивает приведение его к размеру эталонного

изображения для дальнейшего сравнения.

После выполнения масштабирования в буферном ОЗУ хранится приведенное к заданному размеру изображение распознаваемой области (символа). Далее контроллер управления подаёт управляющие сигналы на первый и второй регистры и записывает в них последовательно парами значения пикселей из буферного ОЗУ и РПЗУ эталонов. Первый и второй регистры сохраняют значение очередной пары пикселей и подают их на вычитатель, формирующий на своем выходе модуль разности значений пары пикселей и записывает её во второй регистр. Данная разность с выхода третьего регистра подается на первый вход компаратора. На второй вход компаратора поступает величина порога. Порог в зависимости от задачи задается константой или вычисляется при помощи вычислителя порога. Таким образом в результате на выходе компаратора формируется значение, определяющая степень близости очередной пары пикселей эталонного и текущего изображений. Данные значения поступают в накапливающий сумматор, с выхода которого по завершении обработки сравнения текущего эталона заносятся в четвертый регистр по управляющему сигналу, формируемому контроллером управления.

Контроллер управления подает команду на сравнение текущего изображения с очередным эталоном. После сравнения со всеми эталонами текущего изображения в четвертом регистровом ОЗУ хранятся значения степеней близости текущего изображения и эталонных изображений. Наконец под управлением контроллера управления модуль поиска максимума из регистрового ОЗУ последовательно считывает значение степеней близости текущего изображения и каждого из эталонов и выбирает тот эталон, для которого степень соответствия максимальна. Индекс эталона записывается в пятый регистр, который является выходным. Значение индекса эталона считывается внешним устройством.

Аппаратная реализация блоков генерации сигналов (БГС) в виде законченных плат, функционирующих независимо друг от друга, обладает 85

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

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

Реализация устройства наиболее удобна на ПЛИС семейства Zynq- 7000, представляющего семейство так называемых «систем на кристалле» (SoC) с различными сочетаниями производительности процессорной части и объёма программируемой логики. В этом семействе предпочтительными являются два взаимно совместимые по назначению выводов кристалла из младшей части семейства, оптимизированных для проектов с небольшой стоимостью: XC7Z014S-2CLG484I, содержащий одноядерный встроенный ARM Cortex-A9 процессор; 65 тыс. вентилей программируемой логики; 3,8 Мбит встроенной быстродействующей блочной памяти; XC7Z020-2CLG484I, содержащий двухъядерный встроенный ARM Cortex-A9 процессор; 85 тыс. вентилей программируемой логики; 4,9 Мбит встроенной быстродействующей блочной памяти. В обоих случаях для хранения промежуточных расчётных данных обрабатываемых массивов потребуется использовать также внешний модуль памяти типа DDR3.

4.2

<< | >>
Источник: Лысенко Ян Александрович. МОДЕЛЬ, МЕТОД И ОПТИКО-ЭЛЕКТРОННОЕ УСТРОЙСТВО ПАРАЛЛЕЛЬНОЙ ОБРАБОТКИ ИЗОБРАЖЕНИЙ ИНДИКАТОРОВ ПАНЕЛИ ПРИБОРОВ. Диссертация на соискание ученой степени кандидата технических наук. Курск - 2019. 2019

Скачать оригинал источника

Еще по теме Синтез структурно-функциональной схемы устройства параллельной обработки изображений индикаторов панели приборов:

  1. Содержание
  2. ВВЕДЕНИЕ
  3. Анализ методов и устройств обработки изображений индикаторов панелей приборов
  4. СИНТЕЗ СТРУКТУРНО-ФУНКЦИОНАЛЬНОЙ СХЕМЫ УСТРОЙСТВА ПАРАЛЛЕЛЬНОЙ ОБРАБОТКИ ИЗОБРАЖЕНИЙ ИНДИКАТОРОВ ПАНЕЛИ ПРИБОРОВ И ЕГО ЭКСПЕРИМЕНТАЛЬНОЕ ИССЛЕДОВАНИЕ
  5. Синтез структурно-функциональной схемы устройства параллельной обработки изображений индикаторов панели приборов
  6. ОСНОВНЫЕ РЕЗУЛЬТАТЫ И ВЫВОДЫ