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, может быть обучена классифицировать яблоки по степени зрелости, но для этого потребуется набор данных с размеченными изображениями, чтобы учитывать различия в освещении, текстуре и типах яблок. 

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Начать бесплатно
Ссылка скопирована в буфер обмена