Научная статья на тему 'Обзор алгоритмов для решения задачи измерения высоты объекта на изображении'

Обзор алгоритмов для решения задачи измерения высоты объекта на изображении Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY
144
24
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
ROBUSTNESS / PIXEL / ALGORITHM / CLUSTERING / C-MEANS / KANNI DETECTOR / РОБАСТНОСТЬ / ПИКСЕЛЬ / АЛГОРИТМ / КЛАСТЕРИЗАЦИЯ / С-MEANS / ДЕТЕКТОР КАННИ

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Денисенко Никита Васильевич

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

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

Похожие темы научных работ по компьютерным и информационным наукам , автор научной работы — Денисенко Никита Васильевич

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

REVIEW OF ALGORITHMS FOR SOLVING THE PROBLEM OF MEASURING THE HEIGHT OF THE OBJECT ON THE IMAGE

In practice specialists often have to solve problems related to computer vision, and specifically with a narrower scope of these technologies, such as the robots vision. The purpose in such cases is to simplify the development of image-based information systems that are part of the control systems of complex dynamic objects (control systems of technical and technological processes in production), to form the reaction of such a system to the results of processing of input data (images). The subject of this work is the analysis of ways to solve the problem of measuring the height of the object in the image.

Текст научной работы на тему «Обзор алгоритмов для решения задачи измерения высоты объекта на изображении»

УДК 004.023

ОБЗОР АЛГОРИТМОВ ДЛЯ РЕШЕНИЯ ЗАДАЧИ ИЗМЕРЕНИЯ ВЫСОТЫ ОБЪЕКТА НА ИЗОБРАЖЕНИИ Денисенко Н. В.

Донской государственный технический университет, Ростов-на-Дону, Российская Федерация

n1ck 1tade@gmail.com

UDC 004.023

REVIEW OF ALGORITHMS FOR SOLVING THE PROBLEM OF MEASURING THE HEIGHT OF THE OBJECT ON THE IMAGE Denisenko N. V.

Don State Technical University, Rostov-on-Don, Russian Federation n1ck 1tade@gmail.com

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

Ключевые слова: робастность, пиксель, алгоритм, кластеризация, с-means, детектор

In practice specialists often have to solve problems related to computer vision, and specifically with a narrower scope of these technologies, such as the robots vision. The purpose in such cases is to simplify the development of image-based information systems that are part of the control systems of complex dynamic objects (control systems of technical and technological processes in production), to form the reaction of such a system to the results of processing of input data (images). The subject of this work is the analysis of ways to solve the problem of measuring the height of the object in the image.

Keywords: robustness, pixel, clustering, c-means, Kanni detector.

algorithm,

Канни.

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

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

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

Общие положения. Прежде чем приступить к обработке изображения, необходимо определить некоторые параметры, которые помогут найти реальную высоту объекта. Ход лучей в тонкой линзе представлен на рис. 1. Здесь нужно определить И (высоту объекта). В расчётах понадобятся с1 (расстояние до измеряемого объекта), / (фокусное расстояние, определяется в зависимости от оборудования —камеры) и Н (размер объекта на изображении с учётом разрешения камеры). Именно переменную Н будет искать алгоритм. Формула получается следующей:

Н

к=йх —-Н

Рис. 1. Схема хода лучей в тонкой линзе

Подходы к подсчёту пикселей объекта на изображении:

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

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

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

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

Кластеризация. Кластеризация (или кластерный анализ) — это задача разбивки множества объектов на группы, называемые кластерами [2, 3]. Перечень групп, как правило, формируется в процессе работы алгоритма, в одну группу должны попасть только похожие объекты, в рассматриваемом случае это будут пиксели.

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

Нечёткую кластеризацию от просто кластеризации отличает то, что объекты, которые подвергаются кластеризации, относятся к конкретному кластеру с некой принадлежностью, а не однозначно. К примеру, если попытаться дать такой ответ на вопрос, к какому кластеру относится объект, то при нечёткой кластеризации будет получена вероятность того, что объект принадлежит к первому кластеру, на 70%, а ко второму кластеру — на 30%. Такой подход более удобен в рассматриваемом случае.

Наиболее популярным алгоритмом нечеткой кластеризации является алгоритм с-средних (с-теапв). Основная цель алгоритма заключается в минимизации:

п с 1=1 ]=1

где п — количество точек данных, V] — ]-й кластерный центр, m — индекс размытости m € [1, го],

Щ] обозначает принадлежность ьго объекта в j-м кластерном центре,

\\х1 — г1\\ — Евклидово расстояние между ьм объектом и j-м центром кластера.

Шаги работы алгоритма:

Пусть X = {х1, x2, x3 ..., xn} — множество точек данных, а V = {у1, v2, v3 ..., vc} — множество центров.

1. Определить количество кластерных центров е. 2. Вычислить по функции принадлежности:

С йи 2

Чк к=1 1к

V] = „„ ,-~т~, V = 1,2, - С

3. Вычислить нечеткие центры V], используя формулу:

4. Повторять шаги 2 и 3 до тех пор, пока не будет достигнуто минимальное значение J или

\\ик+1 — ик\\ < в,

г(ш)}

где ёу представляет собой Евклидово расстояние между ьой точкой данных и j-м центром кластера,

к — шаг итерации,

в является критерием завершения между [0, 1], У = (^¿у )п*с — матрица значений функции принадлежности, J — целевая функция.

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

Детектор границ Канни. В реализации третьего подхода могут помочь алгоритмы вычисления контуров объектов, например, широко распространён алгоритм Канни. Этот алгоритм генерирует тонкие фрагменты контуров изображения. Алгоритм управляется тремя параметрами: параметром сглаживания а и двумя пороговыми значениями интенсивности.

Сначала изображение сглаживается гауссовым фильтром с размахом а. Затем в каждом пикселе сглаженного изображения вычисляются величина и направление градиента. Направление градиента используется для уточнения контуров посредством удаления пикселей, в которых величина градиента не превышает величины градиента в двух соседних пикселях по любую сторону от данного пикселя вдоль направления градиента (рис. 2).

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

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

Рис. 2. Принцип не-максимального подавления

порогового значения (рис. 3). Обычно нижнее пороговое значение выбирается примерно наполовину меньше верхнего [4,5].

Рис. 3. Результат выполнения алгоритма Канни

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

Заключение. Были рассмотрены способы, которые можно применять для вычисления размера объекта, определены их плюсы и минусы. Алгоритм по одному цвету — плюсы заключаются в скорости использования и простоте реализации. Алгоритм по нескольким цветам, его плюсом является универсальность, минусом — низкая скорость работы из-за сложности вычисления кластеров и применения алгоритмов поиска объекта. И алгоритм вычисления, являющийся самым распространённым, с использованием операторов нахождения границ объекта, например, детектора Канни.

Библиографический список

1. Обработка и анализ изображений в задачах машинного зрения : курс лекций и практических занятий / Ю. В. Визильтер [и др.]. — Москва : Физматкнига, 2010. — 672 с.

2. Мандель, И. Д. Кластерный анализ / И. Д. Мандель. — Москва : Финансы и статистика, 1988. — 176 с.

3. Обзор алгоритмов кластеризации данных [Электронный ресурс] / Хабрахабр. — Режим доступа: https://habrahabr.ru/post/101338/ (дата обращения: 14.12.17).

4. Шапиро, Л. Компьютерное зрение / Л. Шапиро, Дж. Стокман ; пер. с англ. — Москва : БИНОМ. Лабораторные знания, 2006. — 752 с.

5. J. Canny A Computational Approach to Edge Detection // IEEE Transactions on Pattern Analysis and Machine Intelligence. - 1986. - №6. - С. 679 - 698.

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