Сравнительный анализ использования цветовых пространств RGB и HSB в задачах распознавания объектов при определении позиции предметов в роботизированных системах

Автор: Кузьмина Екатерина Константиновна, Катулин Михаил Владимирович, Пашкова Мария Михайловна, Решетников Андрей Геннадьевич, Семашко Владимир Сергеевич, Семашко Сергей Владимирович

Журнал: Сетевое научное издание «Системный анализ в науке и образовании» @journal-sanse

Статья в выпуске: 1, 2022 года.

Бесплатный доступ

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

Цветовые пространства, роботы, компьютерное зрение

Короткий адрес: https://sciup.org/14124330

IDR: 14124330

Текст научной статьи Сравнительный анализ использования цветовых пространств RGB и HSB в задачах распознавания объектов при определении позиции предметов в роботизированных системах

Kuzmina E. K. et al. Comparative analysis of the use of RGB and HSB color spaces in object recognition tasks when determining the position of objects in robotic systems. System Analysis in Science and Education, 2021;(1): 55–63(In Russ). Available from:

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

Состояние проблемы

Большой проблемой при распознавании объектов в условиях задач управления движением мобильного робота в производственных помещениях и перемещение объектов является динамическая реализация распознавания в реальном масштабе времени: могут двигаться объект манипуляции, сам робот и при этом они могут изменять положение относительно друг друга (со скоростями 1-2м/сек). При этом, распознавание должно происходить меньше чем за 0.05 сек. Процедура должна выполняться на мобильном роботе, оснащенном одноплатным компьютер типа RaspberryPi . Вычислительные мощности накладывают ограничения на использование аппаратной части системы распознавания, основанных на машинном обучении. Поэтому остро стоит вопрос быстрого выделения объекта. Одним из способов выделения необходимых объектов является цветовая маркировка. Необходимо отметить, что от освещения может очень сильно зависеть конкретный цвет, воспринимаемый системами компьютерного зрения. Самым распространенным цветовым пространством в которые используются при в компьютерных системах, фотоаппаратах и т.д. является цветовое пространство RGB ( red - green - blue ). В цветовом пространстве RGB цвет образуется из трех компонентов красный, зеленый и синий. Причина выбора этих компонент состоит в том, что они совпадают с пиками чувствительности естественного человеческого зрения в световом диапазоне (рис. 1) [1, 2].

Рис. 1. Цветовое пространство RGB

Примечание. Cones - это колбочки чувствительные к цвету, а RODS - это палочки чувствительные в чёрно-белом в цвете. Существуют еще ipRGCs клетки, но они реагируют на освещённость и не участвуют в создании образов.

Поэтому это пространство очень удобно для формирования изображения, которое предназначено для естественного человеческого зрения. Но при анализе изображения численными методами это не дает преимуществ. Еще в 1931 году было проведено исследование по заказу Международной комиссии по освещению, которое разработало первую независимую от устройств цветовую модель CIE XYZ [3]. Эти координаты соответствовали компонентам RGB . Если мы построим сечение этого пространства плоскостью X + Y + Z = const (рис. 2), получим, что третья переменная определяется через две остальные. Сечение образует так называемую хроматическую диаграмму, которая описывает все цвета, которые могут быть получены любыми спектральными составами излучений.

Рис. 2. Сечение CIE XYZ пространства

Еще во времена композитного видео - сигнал передавался в цветовом пространстве YCbCr - Y -яркость, Cb - blue компонента, Cr - red компонента, т.е. вполне возможно разделить яркостную составляющую и цветовую. Мы видим, что при анализе RGB будут тратиться дополнительные усилия, если необходимо анализировать только цвет или только яркость освещения. Кроме того, цветовая компонента сильно зависит от времени суток и типа освещения (люминесцентная лампы, солнечный свет и т.д.) Поэтому представляется интересным рассмотреть другие цветовые пространства, в которых разделена цветовая компонента и яркостная.

Одним из распространенных пространств применяемыми в цифровой обработке изображений является цветовое пространство HSB ( HSB ) [4] - Hue , Saturation , Brightness - тон, насыщенность, яркость, т.е. можно раздельно обрабатывать компоненты цвета, яркости и насыщенности.

Модель можно представить в виде цилиндра (рис. 3).

Рис. 3. Цветовое пространство HSB

Примечание. Hue - тон определяет угол поворота, S - насыщенность расстояние от центра и B brightness - яркость высоту точки от основания. Серый цвет располагается на вертикали в центре цилиндра. А белый цвет соответствует центру цилиндры в высшей точке. В основании лежит черный цвет.

Таким образом, для анализа яркости нам хватит анализировать только одну компоненту, для анализа цвета так же только одно. Преобразование из RGB в HSB проводится по следующему правилу:

Значение R , G, B делаться на 255 для привода диапазона 0-255 к 0-1.0.

R' = R / 255,

G' = G/255,

B' = B/255,

Cmax = max ( R', G', B'), Cmin = min( R', G', B')), A = Cmax - Cmin.

Расчет тона (канал H) :

60°

( R'- G' x ------

I A

+ 4

H = ^

60°

( B'- R' x ------

I A

60° x |  —— mod 6

I A

, A = 0

, C max = B'

, C max = G'

, C max = R'

Расчет насыщенности (канал S) :

0      , C max = 0

A                 „.

----- , C max ^ 0

_ C max

Расчет яркости (канал B ):

B = C max.

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

Использование аппаратных возможностей

При разработке систем компьютерного зрения в роботизированных системах необходимо отметить еще одну открывшуюся возможность получения изображения при использовании одноплатных компьютеров в расширенным набором интерфейсов. В устройствах типа Raspberry PI, Nvidia Jetson NX или Jetson AGX , которые можно использовать для управления роботами, появляется возможность работы с фото матрицами напрямую через интерфейсы 1 2 C , SPI, CSI [5].

При использовании интерфейса MIPI CSI -2 данные изображения могут передаваться непосредственно от модуля камеры или сенсора на процессор. Это устраняет необходимость промежуточной обработки или преобразования данных, как в случае с USB 3.0 и позволяют гибко управлять сенсорами: по сути, данные передаются «напрямую», что сказывается на показателях потребления ресурсов процессора. Соответствующие аппаратные компоненты (например, микроконтроллер) также не требуются. Именно благодаря этим условиям становится возможным разрабатывать встраиваемые системы с чрезвычайно низким потреблением ресурсов.

Данный интерфейс позволяет поднимать скорость получения изображений до 70 кадров/сек в разрешении 1280 X 720 на RaspberryPi 4. При этом имеется возможность практически моментально изменять чувствительность камеры. Например, мы можем снимать группы кадров с кратной чувствительностью 1 х , 4 х , 8 х.

Использование программной обработки изображения

Рассмотрим кадр, сделанный на не слишком контрастной сцене (рис 4.)

Рис. 4. Кадр, сделанный на не контрастной сцене

Очевидно, что часть изображения (поверхность, покрытая снегом) потеряла много деталей (ушла в полностью белый цвет) и очень плохо поддается анализу. Часть, наоборот, слишком темная (деревья и машины) и тоже плохо поддается распознаванию (например – номера машин). Выходом будет снять последовательность кадров с разной чувствительностью.

(а)                                             (б)                                    (в)

Рис. 5. (а) Короткая выдержка, (б) Средняя выдержка, (в) Длинная выдержка

Сделаем 3 кадра (рис. 5) с выдержками, различающимися в 4 раза.

Затем сформировать суммарное изображение из значений каждого кадра с учетом, что реальное их значение отличается в 4 раза (рис. 6).

Рис. 6. Суммарное изображение

Это явление в цифровой фотографии называется HDR high dynamic range [6].

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

Посмотрим на сколько легко анализировать кадры в HSB пространстве.

Построим гистограммы яркости (канал B ) для кадров (рис. 7). Слева гистограмма для первого кадра.

Рис. 7. Гистограммы яркости кадров

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

Гистограмма яркости результирующего кадра представлена на рис. 8.

Рис. 8. Увеличенный диапазон

Видно, что потери в темных и в светлых частях изображения отсутствуют.

Таким образом, потерь информации в обработанном изображении нет. Это означает, что при распознавании можно считать, что все изображения адекватны снимаемой сцене.

Если учесть, что съемка ведется со скоростью ~60 кадров/сек и при движении позицию робота надо контролировать с точностью до 10 см, то следует вывод, что на каждый кадр для распознавания позиции мы можно потратить не более 0.1 сек. Следовательно, при работе в HSB можно оценить требуемую чувствительность “центрального” кадра и потратить 1 кадр для контроля верности оценки, а также и трикадра для создания результирующего кадра. При этом имеем сразу матрицы изображения для анализа в цвете, яркости и насыщенности.

Посмотрим, как меняются остальные каналы (рис. 9).

Рис. 9. Гистограммы каналов кадров

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

Приведем пример из реального распознавания кубика, с которым работает манипулятор. Вот как выглядит исходный кадр для распознавания предмета (красного кубика) в RGB (рис. 10 (а)) и преобразованный в градации серого (рис. 10 (б)).

(а)                                    (б)                                    (в)

Рис. 10. (а) – исходный кадр, (б) – черно-белое изображение, (в) – канал H в HSB

То же изображение, преобразованное в HSB , показано на рис. 10 (в). Для анализа выбран канал H (цвет) диапазон значений 0-255. Наглядно видно, что в градациях серого цвета у кубика есть множественные пересечения по тону с полом, а в канале пересечения тона кубика в значимых количествах больше на снимке не наблюдается.

Заключение

При определении объекта методами компьютерного зрения удобно разделить процедуры анализа освещенности (яркости) предмета и его цветовые характеристики. В пространстве RGB это сделать более трудоемко и приходится оперировать 32 разрядными числами. При использовании пространства HSB возможно разделить цветовую и яркостною характеристику. Если учесть, что в задачу получения изображения и детектирования предметов входит и оценка необходимой экспозиции следующего кадра в условиях работы с сенсорами на низком уровне, то быстрое получение гистограммы яркости кадра необходимо для адекватной работы системы в целом. Тестовые замеры на одноплатном компьютере RaspberryPi 4, сенсоре OV 5647 фирмы OminiVision , работающем на интерфейсе CSI в разрешении 1280 Х 720 60 fp s, показали, что при использовании пространства HSB данная задача решается успешно.

Список литературы Сравнительный анализ использования цветовых пространств RGB и HSB в задачах распознавания объектов при определении позиции предметов в роботизированных системах

  • Hogervorst M. A., Toet A. Improved Color Mapping Methods for Multiband Nighttime Image Fusion Journal of Imaging. 2017. Т.3, № 36. DOI: 10.3390/jimaging3030036
  • Colour space transforms for improved video compression / Y. Wang [et al.] // Proc. of IWSSIP 2014. P. 219-222.
  • Гонсалес Р., Вудс Р. Цифровая обработка изображений. М.:Техносфера, 2006.
  • Smith A. R. Color gamut transform pairs // Computer Graphics. 1987. № 12 (3). C. 12-19.
  • Петин В. Микрокомпьютеры RaspberryPi: Практическое руководство. БХВ-Петербург, 2015.
  • Гомон Ю.Б. Методы улучшения качества изображений. СПб, 2014. 35 с.
Статья научная