Проблема поиска объектов на изображениях с помощью компьютерного зрения на основе информации о цвете

A.A. Артемов, M.В. Кавалеров, Г.С. Кузнецов

Пермский национальный исследовательский политехнический университет

ПРОБЛЕМА ПОИСКА ОБЪЕКТОВ НА ИЗОБРАЖЕНИЯХ С ПОМОЩЬЮ КОМПЬЮТЕРНОГО ЗРЕНИЯ НА ОСНОВЕ ИНФОРМАЦИИ О ЦВЕТЕ

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

В области компьютерного зрения важное место занимает проблема поиска и слежения за объектами на основе их цветовых характеристик. Актуальность проблемы вызвана многими практическими приложениями, например: автоматическое слежение за дорогой; планирование перемещения по плохо структурированным дорогам; обнаружение препятствий на дорогах [1]; обнаружение транспортных средств [2]; автоматическое отслеживание дорожных знаков [3]; распознавание автомобильных номеров [4]; отслеживание людей на видео, особенно при малых размерах их изображений; слежение за жестами человека [5]; манипуляции с целевыми объектами, выполняемые роботом согласно командам человека; сегментация, классификация и поиск изображений, фотографий [6-8]. В этом списке даны ссылки на отдельные работы в качестве примеров. Конечно, это далеко не полный перечень подобных приложений и соответствующих им исследований.

К основным преимуществам использования цвета в качестве ключевого признака относятся быстрота выделения объекта и малая изменчивость от угла зрения [2, 5]. Однако можно выделить две проблемы, затрудняющие использование цвета для поиска объекта:

1) проблема изменения интенсивности освещения и смещения оттенков за счет источника освещения [9, 10];

2) проблема интерпретации при именовании цветов (color naming), возникающая в случае команд и запросов человека, содержащих указания на тот или иной цвет [6, 11-14].

Так, например, при реализации лабораторного стенда «Робот-сортировщик» [15] первая проблема проявилась в ошибках при сортировке объектов по их цвету в случае изменений условий освещения. Кроме того, на глянцевой поверхности объектов иногда возникают блики, которые тоже приводят к различным ошибкам. Что касается проблемы именования цветов, то она может возникать при взаимодействии робота-сортировщика с человеком в процессе задания того или иного цвета в качестве критерия сортировки.

Постановка задачи. Учитывая перечисленные проблемы, была поставлена задача разработки нового алгоритма поиска и выделения объектов на основе информации о цвете, обладающего следующими особенностями: 1) устойчивость по отношению к изменению условий освещения (хотя бы частичное решение первой проблемы); 2) цвет объекта задается человеком (связь со второй из указанных проблем); 3) в качестве дополнительных параметров для выделения объектов можно использовать их видимый размер, форму, а также расстояние до объекта; 4) для разработки должна использоваться свободная библиотека OpenCV.

Также важным при постановке данной задачи было то, что этот алгоритм предполагается использовать не только для робота-сорти-ровщика, но и для мобильного робота в неизвестной обстановке, что, конечно, более сложно. Это означает отказ от частного решения и привязки к «удобным» особенностям робота-сортировщика: фон постоянного цвета на рабочей площадке; постоянное расстояние до объектов и т.д.

Выбор цветовой модели. Сначала важно определиться с цветовой моделью и соответствующим цветовым пространством.

При использовании стандартных функций OpenCV, изображение с веб-камеры поступает закодированным согласно модели RGB. В этой модели цветовой тон «размазан» по трем параметрам r (красный), g (зеленый), b (синий). Поэтому в задачах, связанных с выделением цвета, часто вместо RGB используют модель HSV (или похожую на нее модель HSL), например, см. работы [1, 3-5, 8].

Среди преимуществ модели HSV можно выделить следующие:

- отделение цветового компонента в виде цветового тона (H) [5], при этом значение тона не зависит от изменений интенсивности внешнего освещения, если оно является белым [3];

- исключение из рассмотрения параметра V позволяет повысить робастность по отношению к яркости освещения и уменьшить размерность (два параметра вместо трех) [1];

- удобство для решения проблемы именования цветов с помощью естественного языка, так как эта проблема очень часто рассматривается на основе моделей, где выделяются компоненты цветового тона и насыщенности цвета [6, 11, 13], и даже если применяются другие модели [12, 14], то все равно обычно выполняется сопоставление с базовой моделью Манселла, которая в указанном смысле похожа на модель HSV. Учитывая все это, в качестве основной была выбрана модель HSV.

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

- целевая область заранее выделяется в цветовом пространстве;

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

Первая ситуация реализуется в случае поиска объектов заранее известных цветов, например, в задачах следования за дорогой, слежение за жестами людей и т.д. Вторая ситуация возникает при взаимодействии с человеком, когда он, например, дает команду роботу в виде фразы «принеси красную кружку». Другой пример - это поиск по базе изображений с указанием цвета объекта или особенностей его цветовой композиции.

Задача построения соответствий между цветовыми терминами естественного языка и областями цветового пространства известна давно [11]. Существует множество методик решения этой задачи, например, см. работы [6, 12-14]. Их анализ и выбор подходящего метода в качестве основы требуют отдельного исследования.

На данном (начальном) этапе было решено использовать простейший способ решения, основанный на задании диапазона для H в модели HSV.

Одна точка на шкале H определяет двухмерную область с разными значениями S и V (насыщенность и значение). Но подходят не все точки этой области. Например, если выбрано значение H для красного тона, то при S = 0 и любом V получаем оттенки, относящиеся к градациям серого, а при малых V и любых S мы получаем очень темные оттенки, близкие к черному цвету. Поэтому для заданного H целевую область в этой двухмерной области определяем условием: V > Vmin и S > Smin, где Vmin, Smin - некоторые константы.

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

[//mm, #max] формируется ДВуХмерная область, подобная вы-0 60 120 180 240 300 360 шеупомянутой. Таким обра-

Рис. 1. Шкала цветовых тонов (Я) 30М’ в качестве целевой облас-

ти формируется трехмерная область в пространстве HSV. И эта область однозначно определяется выбором только двух значений по шкале H, а именно //mni и Hmax.

Почему было решено выбирать два значения Hmin и Hmax, а не одно значение H, автоматически определяющее некоторый диапазон допустимых отклонений от этого значения? Глядя на шкалу цветовых тонов (Я) модели HSV (см. рис. 1), становится понятным, что величина такого диапазона допустимых отклонений должна быть переменной в зависимости от значения H. Например, диапазон тонов, воспринимаемых в качестве зеленого цвета, шире диапазона тонов, воспринимаемых, как желтый цвет. Кроме того, для разных людей длины этих диапазонов будут отличаться из-за индивидуальных особенностей понимания цветовых терминов.

И вот здесь мы обращаемся к ранее указанной проблеме именования цветов (color naming). В основополагающей работе [11] были проведены исследования по определению базовых цветов для разных языков и по размещению этих цветов в цветовом пространстве Ман-селла. Оказалось, что картина практически не меняется при переходе

между языками, хотя не во всех языках одинаковое количество базовых цветов. Так, для английского языка было выделено 11 базовых цветов: черный, серый, белый, розовый, красный, оранжевый, коричневый, желтый, зеленый, синий, фиолетовый. В работе [6] была предложена модель именования цветов на основе нечеткой логики. На рис. 2 представлена диаграмма из этой работы, в которой графически отображены функции принадлежности для базовых цветов применительно к цветовому пространству Манселла.

Рис. 2. Диаграмма из работы [6], отображающая функции принадлежности для базовых цветов применительно к цветовому пространству Манселла

Правая часть этой диаграммы объясняет необходимость применения значений Fmin, Smin для выделения цветной (chromatic) области цветового пространства, а также может служить основой для выбора этих значений, естественно, с учетом перехода к пространству HSV.

На левой части диаграммы видно, что при заданном параметре VALUE для разных базовых цветов имеются разные по величине диапазоны по шкале HUE, которая немного отличается от шкалы H для модели HSV, но вполне очевидно, что при переходе к модели HSV ситуация будет похожей.

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

Но на данном (начальном) этапе было предложено простое решение, основанное на том, что человек выбирает цвет не словами естественного языка, а выбирает границы диапазона [Hmin, Hmax], кото-

рый на основе известных Ут1п. 5*™™ сразу же формирует целевую трехмерную область в цветовом пространстве.

К преимуществам данного способа выделения целевой области в цветовом пространстве можно отнести следующие особенности:

- человек выбирает только диапазон по шкале Н, ив результате сразу формируется трехмерная область в цветовом пространстве;

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

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

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

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

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

Возможность устранения этих недостатков следует рассмотреть в ходе будущих работ по данной теме.

Выделение объекта заданного цвета на изображении. Для примера обратимся к задаче поиска фломастера нужного цвета на данном изображении. Пусть в качестве критерия поиска был выбран желтый цвет путем выбора соответствующего диапазона на шкале Н. Тогда субъективному понятию «желтый цвет» будет соответствовать некоторая целевая область в цветовом пространстве, порожденная данным диапазоном на шкале Н.

Простой подход состоит в том, что каждый найденный пиксель с цветом из целевой области фиксируется тем или иным образом, например, на временном изображении. На рис. 3,а найденные (целевые) пиксели обозначены черным цветом, так как этот цвет удобнее при черно-белой печати подобных изображений. Искомый фломастер желтого цвета - третий слева. Видно, что почти все его изображение

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

в г

Рис. 3. Этапы выделения искомого объекта на примере поиска желтого фломастера

Многие из этих пикселей являются следствием цифровых шумов изображения, и такие пиксели будем называть шумовыми. Для их устранения использовались разные виды размывания изображения с помощью функции суБшооШ из библиотеки ОрепСУ. Наилучший результат получился на основе простого усреднения (СУ_БЬиЯ) для матрицы пикселей 7 на 7. Это размывание выполнялось до выделения целевых пикселей. После размывания было выполнено выделение целевых пикселей (см. рис. 3,6). Очевидно, что количество шумовых пикселей существенно уменьшилось. При этом, возможно, устранились некоторые одиночные «правильные» пиксели, согласующиеся с целевым цветом. Но это следует считать положительным моментом, так как требу-

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

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

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

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

Заключение. Поиск и слежение за объектами на основе информации о цвете являются важной проблемой в области компьютерного зрения. В ходе создания лабораторного стенда «Робот-сортировщик» [15] и последующей работы с ним возникла задачи разработки эффективного алгоритма для поиска объектов заданного цвета. Эта задача была усложнена необходимостью использования такого алгоритма не только для робота-сортировщика, а также для мобильного робота.

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

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

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

1. Batavia P., Singh S. Obstacle detection using adaptive color segmentation and color stereo homography // IEEE International Conference on Robotics and Automation. - 2001. - Vol. 1. - P. 705-710.

2. Tsai L., Hsieh J., Fan K. Vehicle detection using normalized color and edge map // 18th IPPR Conference on Computer Vision, Graphics and Image Processing. - Taipei, 2005. - P. 849-856.

3. Fleyeh H. Road and traffic sign color detection and segmentation -A Fuzzy Approach // IAPR Conference on Machine Vision Applications. -Tsukuba Science City, 2005. - P. 124-127.

4. Fuzzy-based algorithm for color recognition of license plates / F. Wang, L. Man, B. Wang, Y. Xiao, W. Pan, X. Lu // Pattern Recognition Letters. - 2008. - Vol. 29. - P. 1007-1020.

5. Bradski G. Computer vision face tracking for use in a perceptual user interface // Intel Technology Journal Q2. - 1998.

6. Seaborn M., Hepplewhite L., Stonham J. Fuzzy colour category map for content based image retrieval // Proceedings of the 10th British Machine Vision (BMVC 99). - Nottingham, 1999. - P. 103-112.

7. Han J., Ma K. Fuzzy color histogram and its use in color image retrieval // IEEE Transactions on Image Processing. - 2002. - Vol. 11. -P. 944-952.

8. Sural S., Qian G., Pramanik S. Segmentation and histogram generation using the HSV color space for image retrieval // Proceedings 2002 International Conference on Image Processing. - New York, 2002. - Vol. 2. - P. 589-592.

9. Funt B., Barnard K., Martin L. Is machine colour constancy good enough? // Computer Vision - ECCV’98. - Freiburg. - 1998. - Vol. 1406. -P. 445-459.

10. Csink L., Paulus D., Ahlrichs U., Heigl B. Color normalization and object localization // Vierter Workshop Farbbildverarbeitung. -Koblenz. - 1998. - P. 49-55.

11. Berlin B., Kay P. Basic color terms: their universality and evolution. - University of California Press, 1969 (1991 edition). - 196 p.

12. Lammens J. A computational model of color perception and color naming // Ph.D. thesis, State University of New York. - Genoa, 1994. - 253 p.

13. Mojsilovic A. A computational model for color naming and describing color composition of images // IEEE Transactions on Image Processing. - 2005. - Vol. 14. - P. 690-699.

14. Benavente R., Vanrell M., Baldrich R. Parametric fuzzy sets for automatic color naming // Journal of the Optical Society of America A. -2008. - Vol. 25. - P. 2582-2593.

15. Еремеев И.М., Кавалеров М.В. Создание лабораторного стенда «Робот-сортировщик» // Системы мониторинга и управления: сб. науч. тр. - Пермь: Изд-во Перм. гос. техн. ун-та, 2011. - С. 112-117.

Получено 09.09.2011