Yolo Vision Shenzhen
Шэньчжэнь
Присоединиться сейчас

Использование распознавания цвета в приложениях компьютерного зрения

Абирами Вина

5 мин чтения

28 февраля 2025 г.

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

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

Автомобиль с автоматическим управлением не просто видит красный сигнал светофора – он обрабатывает цвет как сигнал к остановке. Эта способность распознавать и интерпретировать цвета помогает преодолеть разрыв между человеческим зрением и компьютерным зрением.

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

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

Что такое определение цвета?

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

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

Каждый цвет определяется тремя значениями в диапазоне от 0 до 255, где 0 означает отсутствие цвета, а 255 означает полную интенсивность. Например, чистый красный цвет — (255, 0, 0), потому что он имеет самое высокое значение красного и не имеет зеленого или синего. Белый цвет — (255, 255, 255), потому что все три цвета имеют полную интенсивность.

__wf_reserved_inherit
Рис. 1. Пример того, как компьютер видит цвета яблока.

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

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

Введение в цветовые пространства

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

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

Обзор цветового пространства RGB

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

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

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

__wf_reserved_inherit
Рис. 2. Куб цветов RGB.

Обзор цветового пространства HSV

Цветовое пространство HSV (Hue, Saturation, Value) представляет цвета на основе трех компонентов: оттенок (тип цвета), насыщенность (его интенсивность) и значение (его яркость). В отличие от RGB, который смешивает интенсивности света, HSV ближе к тому, как люди воспринимают цвета, что делает его более практичным выбором для многих задач обработки изображений.

В частности, оттенок представляет собой фактический цвет и измеряется в градусах на цветовом круге, где красный цвет находится при 0°, а синий — при 240°. Между тем, насыщенность контролирует, насколько ярким или тусклым выглядит цвет, где 0% — это полностью серый, а 100% — полностью яркий. С другой стороны, значение определяет яркость, варьируясь от 0% (черный) до 100% (полная яркость).

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

__wf_reserved_inherit
Рис. 3. Конус HSV.

Сравнение цветовых пространств RGB и HSV

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

В HSV оранжевый цвет определяется иначе. Его оттенок составляет около 30°, что определяет его положение на цветовом круге. Его насыщенность близка к 100%, что означает, что это яркий, чистый цвет, а его значение также составляет 100%, что указывает на полную яркость. Поскольку HSV отделяет цвет от яркости, он часто более полезен в приложениях для определения цвета, где условия освещения могут меняться.

__wf_reserved_inherit
Рис. 4. Сравнение значений RGB и HSV. Изображение автора.

Как работает распознавание цвета

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

Вот краткий обзор основных этапов, связанных с определением цвета с использованием обработки изображений:

  • Получение изображения: Процесс начинается со съемки изображения или видеокадра с помощью камеры. Изображение обычно хранится в формате RGB в виде матрицы пикселей.
  • Преобразование цветового пространства: Поскольку RGB не всегда идеально подходит для определения цвета, изображение преобразуется в цветовое пространство HSV. Это помогает отделить цвет от яркости, делая обнаружение более стабильным в различных условиях освещения.
  • Пороговая обработка цвета: Определяется конкретный диапазон для целевого цвета в формате HSV. Этот шаг создает бинарную маску, где пиксели в выбранном диапазоне цветов отображаются белым цветом, а все остальные — черным.
  • Маскирование: Двоичная маска применяется к исходному изображению, чтобы выделить обнаруженный цвет, отфильтровывая все остальное. Это выделяет только те области, которые соответствуют желаемому цвету.

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

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

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

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

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

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

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

Реальные примеры использования обнаружения цвета

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

Распознавание цвета для оценки качества ткани

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

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

__wf_reserved_inherit
Рис. 5. Распознавание цветов играет ключевую роль в создании красочных тканей.

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

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

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

__wf_reserved_inherit
Рис. 6. Манго на разных стадиях зрелости: (a) испорченный, (b) спелый и (c) неспелый.

Основные выводы

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

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

Углубите свои знания об ИИ, изучив наше сообщество и репозиторий GitHub. Узнайте об инновациях в области применения ИИ в производстве и компьютерного зрения в здравоохранении, а также узнайте, как начать использовать Vision AI с помощью наших вариантов лицензирования.

Давайте строить будущее
ИИ вместе!

Начните свой путь в будущее машинного обучения

Начать бесплатно