СПОСОБ ВЫДЕЛЕНИЯ КОНТУРОВ ОБЪЕКТОВ ИЗОБРАЖЕНИЯ И УСТРОЙСТВО ДЛЯ ЕГО РЕАЛИЗАЦИИ
METHOD OF DETECTING CONTOURS OF IMAGE OBJECTS AND DEVICE FOR REALISING SAID METHOD

Изобретение относится к вычислительной технике и может быть использовано в системах технического зрения, цифровых устройствах получения и обработки изображений для предварительной обработки изображения - формирования контурного описания изображения.
Известен способ выделения контуров объектов изображения (пат. №7151844 США, опубл. 15.12.06), аппаратно реализованный в видеодатчике, заключающийся в формировании двумерного пиксельного массива - изображения, последовательном пространственном дифференцировании изображения в вертикальном и горизонтальном направлениях, получении значения яркости каждого пикселя контурного изображения путем расчета на основе значений производных в вертикальном и горизонтальном направлениях.
Недостатком данного способа является низкая точность выделения контуров, вызванная независимой обработкой каждого пикселя без учета информации о соседних пикселях.
Наиболее близким к предлагаемому является способ выделения контуров объектов изображения и увеличения четкости (резкости) изображения (пат. №7068852 США, опубл. 27.06.06), включающий процесс выделения контуров изображения, утончение контуров на основе увеличения четкости контуров посредством увеличения контраста в области контура в зависимости от уровня шума на изображении в окрестности текущего анализируемого пикселя.
Недостатком данного способа является внесение искажений в формируемое контурное изображение при утончении контуров увеличением их контраста (что субъективно повышает качество изображения, но неприемлемо при последующей обработке изображения системой технического зрения).
Известно устройство выделения контуров объектов изображения (пат №6917721 США), содержащее процессор и ОЗУ.
Недостатком данного устройства является низкая скорость выделения контуров, вызванная использованием процессора для выполнения всех этапов процесса выделения контуров.
Наиболее близким к предлагаемому устройству является устройство выделения контуров изображений объектов (пат. №2185659 РФ), состоящее из датчика изображения, буферной памяти, элемента И, генератора, нейроматричного процессора, АЦП, блока выделения кадрового и строчного импульсов, контроллера шины.
Недостатком этого устройства является низкая точность выделения контуров объектов изображения, высокая структурная сложность устройства, вызванная использованием нейроматричного процессора.
Технической задачей изобретения является повышение точности выделения контуров изображения путем введения дополнительных операций обработки изображения, увеличение скорости выделения контуров и упрощение структуры устройства за счет использования специализированных модулей обработки изображения.
Задача решается тем, что в известный способ, включающий выделение контуров на основе пространственного дифференцирования и утончение контуров, введены предварительная фильтрация изображения и последующая бинаризация изображения.
Техническая задача решается тем, что в известное устройство, содержащее контроллер шины (КШ), были введены ОЗУ для хранения промежуточных результатов обработки изображения, блоки фильтрации изображения (БФ), блок выделения контуров (БК), микропроцессор (МП), причем первая группа входов-выходов котроллера шины соединена с шиной для получения данных с ЭВМ, вторая группа входов-выходов котроллера шины соединена с первой группой входов-выходов ОЗУ для передачи и получения данных, третья группа входов-выходов котроллера шины соединена со второй группой входов-выходов ОЗУ для получения и передачи адреса, первый выход контроллера шины соединен со входом ОЗУ для управления режимом работы ОЗУ (чтение/запись), второй выход контроллера шины соединен со входом блока фильтрации для передачи управляющего сигнала, первая группа входов-выходов блока фильтрации соединена с первой группой входов-выходов ОЗУ для передачи и получения данных, вторая группа входов-выходов блока фильтрации соединена со второй группой входов-выходов ОЗУ для получения и передачи адреса, первый выход блока фильтрации соединен с первым входом ОЗУ для управления режимом работы ОЗУ, второй выход блока фильтрации соединен со входом блока выделения контуров для передачи управляющего сигнала, первая группа входов-выходов блока выделения контуров соединена с первой группой входов-выходов ОЗУ для передачи и получения данных, вторая группа входов-выходов блока выделения контуров соединена со второй группой входов-выходов ОЗУ для получения и передачи адреса, первый выход блока выделения контуров соединен со входом ОЗУ для управления режимом работы ОЗУ, второй выход блока выделения контуров соединен с первым входом микропроцессора для передачи управляющего сигнала, первая группа входов-выходов микропроцессора соединена с первой группой входов-выходов ОЗУ для передачи и получения данных, вторая группа входов-выходов микропроцессора соединена со второй группой входов-выходов ОЗУ для получения и передачи адреса, первый выход микропроцессора соединен со входом ОЗУ для управления режимом работы ОЗУ, второй выход микропроцессора соединен со входом контроллера шины для передачи сигнала окончания обработки изображения.
Изобретение может быть использовано для предварительной обработки изображения - выделения контуров объектов изображения - в системах технического зрения, цифровых фото- и видеокамерах и соответствует критерию «промышленная применимость».
Сущность изобретения поясняется чертежом, где показана структурная схема устройства выделения контуров изображения.
Устройство содержит (чертеж) КШ 1, ОЗУ 2, блок фильтрации 3, блок выделения контуров 4, микропроцессор 5, причем первая группа входов-выходов КШ 1 соединена с шиной для получения данных с ЭВМ, вторая группа входов-выходов КШ 1 соединена с первой группой входов-выходов ОЗУ 2, третья группа входов-выходов КШ 1 соединена со второй группой входов-выходов ОЗУ 2, первый выход КШ 1 соединен со входом ОЗУ 2, второй выход КШ 1 соединен со входом блока фильтрации 3, первая группа входов-выходов блока фильтрации 3 соединена с первой группой входов-выходов ОЗУ 2, вторая группа входов-выходов блока фильтрации 3 соединена со второй группой входов-выходов ОЗУ 2, первый выход блока фильтрации 3 соединен со входом ОЗУ 2, второй выход блока фильтрации 3 соединен со входом блока выделения контуров 4, первая группа входов-выходов блока выделения контуров 4 соединена с первой группой входов-выходов ОЗУ 2, вторая группа входов-выходов блока выделения контуров 4 соединена со второй группой входов-выходов ОЗУ 2, первый выход блока выделения контуров 4 соединен со входом ОЗУ 2, второй выход блока выделения контуров 4 соединен со входом микропроцессора 5, первая группа входов-выходов микропроцессора 5 соединена с первой группой входов-выходов ОЗУ 2, вторая группа входов-выходов микропроцессора 5 соединена со второй группой входов-выходов ОЗУ 2, первый выход микропроцессора 5 соединен со входом ОЗУ 2, второй выход микропроцессора 5 соединен со входом КШ 1.
Способ заключается в предварительной фильтрации кадра изображения для повышения качества выделения контуров, выделении контуров, последующем утончении контуров и формировании бинарного изображения для повышения точности выделения контуров.
КШ 1 предназначен для управления обменом данными между ЭВМ и устройством выделения контуров изображения.
ОЗУ 2 предназначено для хранения данных, используемых в блоке фильтрации 3, блоке выделения контуров 4, микропроцессоре 5.
Блок фильтрации 3 предназначен для выполнения процедуры фильтрации изображения с целью повышения качества выделения контуров.
Блок выделения контуров 4 предназначен для выделения контуров изображения.
Микропроцессор 5 предназначен для выполнения процедур утончения контуров и формирования бинарного изображения.
Устройство работает следующим образом.
Цифровое изображение с ЭВМ поступает на первую группу входов-выходов КШ 1, после чего на первом выходе КШ 1 формируется управляющий сигнал, поступающий на вход ОЗУ 2 и переводящий его в режим записи информации, на второй группе входов-выходов КШ 1 формируются данные для передачи на первую группу входов-выходов ОЗУ 2, на третьей группе входов-выходов КШ 1 формируется адрес данных, поступающий на вторую группу входов-выходов ОЗУ 2, на втором выходе КШ 1 формируется управляющий сигнал, поступая на вход блока фильтрации 3, разрешающий его работу. В результате в ОЗУ 2 находится текущий кадр изображения.
Блок фильтрации 3 на первом выходе формирует управляющий сигнал, поступающий на вход ОЗУ 2 и переводящий его в режим чтения. Блок фильтрации 3 на первую группу входов-выходов принимает данные (изображение), поступающие через первую группу входов-выходов ОЗУ 2, на вторую группу входов-выходов принимает адрес, поступающий через вторую группу входов-выходов ОЗУ 2. Поступившие данные подвергаются процедуре фильтрации.
В качестве фильтра используется фильтр Гаусса, функция отклика которого имеет вид
где r - расстояние между центром функции отклика и текущей точкой, σ - среднее квадратическое отклонение фильтра Гаусса, величина, определяющая крутизну функции отклика фильтра и, следовательно, степень сглаживания изображения (меньше крутизна - сильнее сглаживание).
D
Для заданной маски G процесс фильтрации изображения в точке с координатами (х, у) описывается как
где I'(х, у) - значение яркости точки отфильтрованного изображения, I(x+s, у+t) - значение яркости точки исходного изображения.
После окончания процедуры фильтрации на первом выходе блока фильтрации 3 формируется управляющий сигнал, уведомляющий об окончании процедуры фильтрации, поступающий на вход ОЗУ 2 и переводящий его в режим записи, через первую группу входов-выходов блока фильтрации 3 результаты поступают на первую группу входов-выходов ОЗУ 2, на второй группе входов-выходов блока фильтрации формируется адрес, поступающий на вторую группу входов-выходов ОЗУ 2, на втором выходе блока фильтрации 3 формируется управляющий сигнал, поступающий на вход блока выделения контуров 4 и разрешающий его работу.
Блок выделения контуров 4 через первый выход отправляет управляющий сигнал на вход ОЗУ 2, переводящий его в режим чтения. Блок выделения контуров 4 на первую группу входов-выходов принимает данные, поступающие через первую группу входов-выходов ОЗУ 2, на вторую группу входов-выходов принимает адрес, поступающий через вторую группу входов-выходов ОЗУ 2. Поступившие данные подвергаются обработке.
Для выделения контурных линий на изображении применяется пространственное дифференцирование. Для этого в каждой точке вычисляется вектор градиента функции яркости изображения, который описывается модулем g(х, у), отражающим скорость изменения яркости в точке с координатами 〈х, у〉, и направлением ν(х, у), которое определяется углом наклона прямой, соответствующим направлению перепада яркости, к оси абсцисс. Совокупность векторов градиента в каждой точке отфильтрованного изображения I'(x, у) представляет собой градиентное изображение
содержащее информацию о перепадах функции яркости (контурных линиях).
x
у
При дискретном представлении поля яркостей изображения частные производные по направлениям представляются дискретными аппроксимациями, наилучшей из которых является оператор Собела. Оператор содержит маски, соответствующие горизонтальной H и вертикальной Н частным производным
Составляющие градиентного изображения Gr вычисляются как
x
y
x
У
где d(х, у), d(х, у) - результаты свертки изображения I'(х, у) с горизонтальной H и вертикальной Н масками соответственно
После обработки всего кадра изображения на первом выходе блока выделения контуров 4 формируется управляющий сигнал, поступающий на вход ОЗУ 2 и переводящий его в режим записи, через первую группу входов-выходов блока выделения контуров 4 результаты поступают на первую группу входов-выходов ОЗУ 2, на второй группе входов-выходов блока выделения контуров 4 формируется адрес, поступающий на вторую группу входов-выходов ОЗУ 2, на втором выходе блока выделения контуров 4 формируется управляющий сигнал, поступающий на вход микропроцессора 5 и разрешающий его работу.
Микропроцессор 5 через первый выход отправляет управляющий сигнал на вход ОЗУ 2, переводящий его в режим чтения. Микропроцессор 5 на первую группу входов-выходов принимает данные, поступающие через первую группу входов-выходов ОЗУ 2, на вторую группу входов-выходов принимает адрес, поступающий через вторую группу входов-выходов ОЗУ 2. Поступившие данные подвергаются обработке.
Утончение контурных линий основано на интерпретации максимума яркости контурной линии в направлении максимального градиента как средней линии контура. Подавляются все точки в поле величин g(х, у), яркость которых не превосходит яркости соседних точек в направлении антиградиента контурной линии. В результате формируется скелетное градиентное изображение Gr'
1
2
1
2
где приращения координат i, i, j, j определяются как
1
2
1
i=int[sin(ν(x, у))], i=-i,
1
2
1
j=int[cos(ν(x, у))], j=-j.
Процесс формирования бинарного изображения представляется как
1
2
3
4
1
2
где К - коэффициент детализации бинарного изображения В, который позволяет управлять уровнем детализации (количеством контуров) и обладает устойчивостью к изменению динамического диапазона изображения, Т, T, T, Т - пороговые значения, используемые при бинаризации изображения, t, t - функции изменения пороговых значений в зависимости от наличия в восьмисвязной окрестности точек контура.
После процедуры утончения контурных линий на первом выходе микропроцессора 5 формируется управляющий сигнал, поступающий на вход ОЗУ 2 и переводящий его в режим записи, через первую группу входов-выходов микропроцессора 5 результаты поступают на первую группу входов-выходов ОЗУ 2, на второй группе входов-выходов микропроцессора 5 формируется адрес, поступающий на вторую группу входов-выходов ОЗУ 2, на втором выходе микропроцессора 5 формируется управляющий сигнал, поступающий на первый вход КШ 1 и информирующий об окончании обработки текущего кадра изображения.
КШ 1 через первый выход отправляет управляющий сигнал на вход ОЗУ 2, переводящий его в режим чтения. КШ 1 на первую группу входов-выходов принимает данные, поступающие через первую группу входов-выходов ОЗУ 2, на вторую группу входов-выходов принимает адрес, поступающий через вторую группу входов-выходов ОЗУ 2. Поступившие данные через первую группу входов-выходов КШ 1 поступают в ЭВМ.
Блоки фильтрации изображения, блок выделения контуров могут быть реализованы на программируемых интегральных схемах малой и средней степени интеграции серий Spartan или Virtex (производитель - Xilinx). В качестве микропроцессора 5 может быть использована микроЭВМ или микроконтроллер, работающие на тактовой частоте не менее 300 МГц. Контроллер шины 1 может быть реализован на специализированных микросхемах, широко выпускаемых зарубежной промышленностью. ОЗУ 2 реализуют на микросхемах памяти, удовлетворяющих требованиям по быстродействию и объему.
Изобретение позволяет повысить точность выделения контуров изображения за счет утончения контуров изображения и бинаризации изображения, увеличить скорость выделения контуров за счет использования специализированных модулей обработки изображения, реализующих операции обработки изображения в соответствии с предложенным способом.