В программе, над которой я работаю, я стараюсь классифицировать цвета на основе их значений RGB как красный, оранжевый, желтый, зеленый, синий или белый. Я классифицирую их, сравнивая данные RGB с постоянным «идеальным» значением для каждого цвета и находя минимальное евклидово расстояние в трехмерном пространстве. Тем не менее, у меня возникают проблемы, когда цвет, который я анализирую, исходит из темного изображения, поскольку текущая программа имеет трудности с различием между оранжевыми, желтыми и красными в темных изображениях. Как мне исправить или обойти эту проблему?Классификация цвета в темном окружении
ответ
Окружающая среда всегда будет создавать проблемы. Скажем, если единственный источник света красный, вы не сможете рассказать о сером, зеленом или синем цвете.
Если ваша ситуация не так сложна, вы можете попробовать отрегулировать изображение. Почти все программное обеспечение для обработки изображений/библиотеки имеют некоторые функции для этой цели. Вероятно, лучшим решением было бы иметь некоторые компоненты калибровки в сцене, такие как белый шар, который вы знаете, какой цвет он должен быть, и может помочь вам отрегулировать изображение и облегчить идентификацию цвета.
Я уже сравнивал с известными значениями в сцене, поэтому я попытаюсь настроить изображение, спасибо вам большое много для вашего ответа. –
Я предлагаю вам поместить ваши воображаемые изображения, например. gimp и попробуйте автоэкспозицию/автоуровень/авто-белый баланс и аналогичные настройки, чтобы увидеть, если какой-либо из них создает изображение, для которого работает ваша программа. Если да, сделайте немного чтения о том, что эта настройка делает с изображением, и либо примените аналогичную настройку, используя библиотеку обработки воображения, либо напишите ее самостоятельно. –
Пожалуйста, подумайте о том, чтобы продолжить/следовать сайту StackExchange Color Theory: https://area51.stackexchange.com/proposals/110687/color-theory –