Подтвердить что ты не робот

Как работает цветной поиск изображений Google?

Скажем, я запрашиваю

http://images.google.com.sg/images?q=sky&imgcolor=black

и я получаю все небо черного цвета, как на самом деле работает алгоритм?

4b9b3361

Ответ 1

На основе этот документ, опубликованный инженерами Google Генри Роули, Шумет Балуджа и Д-р Юси Цзин, кажется, самое важное значение вашего вопроса о распознавании цветов в изображениях относится к алгоритму Google "saferank" для изображений, которые могут обнаруживать телесные тона без какого-либо текста вокруг него.

Статья начинается с описания, описывая "классические" методы, которые обычно основаны на нормализации цветовой яркости, а затем используют " Gaussian Distribution," или используя трехмерную гистограмму, созданную с использованием значений RGB в пикселях (каждый цвет представляет собой 8-битное целочисленное значение от 0 до 255, представляющее, сколько из этого цвета включено в пиксель). Также были введены методы, основанные на таких свойствах, как "яркость" (часто неправильно называемая "светимость" ), которая представляет собой плотность интенсивности света невооруженным глазом от данного изображения.

В документе Google упоминается, что им необходимо обработать примерно 10 ^ 9 изображений с помощью своего алгоритма, чтобы он был как можно более эффективным. Чтобы достичь этого, они выполняют большинство своих вычислений по ROI (область интереса), которая представляет собой прямоугольник, центрированный в изображении и вставкой на 1/6 размеров изображения со всех сторон. Как только они определили ROI, у них есть много разных алгоритмов, которые затем применяются к изображению, включая Алгоритмы Face-Detection, Color Constancy algs и другие, которые в целом находят статистические тенденции в раскраске изображения и, самое главное, находят цвет оттенки с самой высокой частотой в статистическом распределении.

Они используют другие функции, такие как Entropy, Edge-Detection и текстурные определения для Чтобы извлечь линии из изображений, они используют реализацию OpenCV (Bradski, 2000) вероятностного преобразования Хауха (Kiryati et al., 1991), вычисленного по краям компонентов, связанных с цветом кожи, что позволяет им находить прямые линии которые, вероятно, не являются частями тела и, кроме того, позволяют им лучше определять, какие цвета наиболее важны в изображении, что является ключевым фактором в их поиске цвета изображений.

Подробнее о технических особенностях этой темы, включая математические уравнения и т.д., читайте на бумаге Google, связанной с ней в начале, и посмотрите раздел исследований на своем веб-сайте.

Очень интересный вопрос и тема!

Ответ 2

Изображения - это только пиксели. Пиксели - это только значения RGB. Мы знаем, что черный в RGB, поэтому мы можем искать его в изображении.

Ответ 3

Ну, один из методов имеет в основном:

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

Это очень, очень простое описание одного из возможных методов.

Ответ 4

Существуют различные способы извлечения цвета из изображения, и я думаю, что другие ответы были адресованы им (K-Means, дистрибутивы и т.д.).

Предполагая, что вы выделили цвета, есть несколько способов поиска по цвету. Одним медленным, но очевидным подходом было бы рассчитать расстояние между цветом поиска и доминирующими цветами изображения с использованием некоторой метрики (например, Color Difference), а затем весовые результаты, основанные на "близости".

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