Поиск изображений по содержанию

Поиск изображений по содержанию(англ. Content-based image retrieval, CBIR) — это применение методов компьютерного зрения к задаче поиска изображений, то есть к задаче поиска цифровых изображений в крупных базах данных.

Термин «по содержанию» означает, что поиск анализирует собственные данные изображения, а не такие метаданные, как ключевые слова, теги или описания, ассоциированные с изображением. В этом контексте содержанием могут быть цвета, формы, текстуры или любая другая информация, полученная напрямую из изображения. Такой подход востребован, поскольку поиск по метаданным полностью зависит от полноты и качества аннотирования[1].

Сравнение с поиском по метаданным

Мета-поиск изображений требует, чтобы человек вручную аннотировал изображения, добавляя ключевые слова или метаданные в большую базу данных, что является затратным по времени процессом и не всегда отражает нужные ключевые слова. Эффективность поиска изображений по ключевым словам субъективна и формализована недостаточно. Аналогичные трудности при формализации успеха существуют и у CBIR-систем[2]. «Ключевые слова также ограничивают диапазон поиска заранее известными критериями», а «установленные при заведении» оказывается менее надёжным по сравнению c использованием содержания изображения[3].

История

Термин «поиск изображений по содержанию» впервые был использован в 1992 году японским инженером Тосиказу Като из Электротехнической лаборатории для описания экспериментов по автоматическому поиску изображений в базе данных по цветам и формам[2][4]. Позже термин стал означать процесс поиска необходимых изображений в большой коллекции на основе синтаксических характеристик изображения. Используемые методы, инструменты и алгоритмы происходят из статистики, распознавания образов, обработки сигналов и компьютерного зрения[1].

QBIC — Query By Image Content

Первой коммерческой CBIR-системой стала разработка компании IBMQBIC (англ. Query By Image Content)[5][6]. Позднее сетевые и графовые методы предложили альтернативы классическим алгоритмам[7].

Хотя хранение множественных изображений как единого объекта существовало и до появления термина BLOB (англ. Binary Large OBject)[8], полноценный поиск изображений по содержанию, а не по описаниям, стал возможен с появлением QBIC от IBM[3].

VisualRank

Технический прогресс

Интерес к CBIR обусловлен ограничениями систем, основанных на метаданных, а также широким спектром потенциальных применений эффективного поиска изображений. Текстовую информацию об изображениях легко искать с помощью существующих технологий, но для этого требуется ручное описание каждого изображения. Это малореализуемо для больших коллекций или автоматически генерируемых изображений, например, с камер наблюдения. Возможны и ложные пропуски изображений из-за использования синонимов в описаниях. Системы на семантической категоризации (например, «кот» как частный случай «животного») могут снизить вероятность ошибки, но требуют большего участия пользователя. Стандарты для категоризации существуют, однако проблемы масштабируемости и ошибочной классификации сохраняются[2].

Первые CBIR-системы осуществляли поиск по цвету, текстуре и форме. Позже стало очевидно, что необходимы пользовательские интерфейсы. Поэтому внимание систем стало смещаться в сторону ориентированного на пользователя дизайна: поддержка семантических запросов, обратной связи с пользователем, интеграция машинного обучения и учёт удовлетворённости пользователя[1].

Методы

Разработано множество систем CBIR, но по состоянию на 2006 год задача поиска изображений только на основе их пиксельного содержания во многом остаётся нерешённой[1].

Различные варианты работы CBIR используют различные формы ввода пользователем запросов.

Поиск по примеру (Query By Example)

QBE (англ. Query by example) — техника поиска[9], при которой пользователь задаёт системе пример изображения, на основе которого и строится выдача. Алгоритмы поиска варьируются в зависимости от конкретного приложения, но результаты должны содержать общие черты с примером[10]. Эта техника помогает избежать трудностей, связанных с текстовым описанием поиска.

Способы предоставления примера:

  • загрузка уже существующего изображения или выбор из набора случайных;
  • рисование грубого наброска интересуемого изображения (например, с помощью цветных пятен или схематичных форм)[10].

Семантический поиск

Семантический поиск начинается с запроса наподобие «найти фотографии Авраама Линкольна». Компьютерам подобная задача затруднительна, поскольку человек на изображениях может находиться в разном положении, выражении лица и пр. Поэтому зачастую CBIR использует низкоуровневые признаки: текстуру, цвет, форму. Они могут сочетаться с интерфейсами, облегчающими задание критериев, или с базами, предварительно обученными на определённых объектах (например, лица, отпечатки пальцев, формы). Тем не менее, для поиска по высоким понятиям требуется обратная связь от человека[6].

Обратная связь по релевантности

Сочетание разнообразных поисковых техник системы CBIR с диапазоном пользовательских запросов усложняет задачу соответствия ожиданиям пользователя[11]. Системы CBIR используют механизм обратной связи по релевантности, когда пользователь поочерёдно помечает результаты поиска как «релевантно», «не релевантно» или «нейтрально», а система повторно ищет уже с учётом новых оценок. Реализации такого типа интерфейсов существуют[12].

Итеративные методы и машинное обучение

Машинное обучение и применение итеративных методов становятся всё более популярными в CBIR[13].

Прочие методы запроса

Существуют и другие методы: поиск по примерным изображениям, навигация по иерархическим категориям, запросы по выделенному региону, множественным примерам, эскизам, конкретным визуальным признакам, а также мультимодальные запросы (комбинирующие, например, прикосновения, голос и пр.)[14].

Сравнение содержимого с помощью метрик сходства

Обычный способ сравнения двух изображений в CBIR (например, примера и кандидата из базы) — использование метрик расстояния между изображениями. Метрика оценивает сходство по цвету, текстуре, форме и иным признакам. Например, расстояние 0 означает идеальное совпадение по выбранным признакам, а больший показатель — различие. Результаты упорядочивают по удалённости от примера[10]. Разработано множество моделей для оценки расстояния между изображениями[15].

Цвет

Метрики на основе цвета строятся, например, по цветовым гистограммам, где учитывается доля пикселей определённых цветов[2]. Оценка по цвету не зависит от размера или ориентации изображения[6]. Также исследуются подходы к сегментации по цвету регионами и пространственному расположению зон[14].

Текстура

Текстуры — визуальные паттерны и их распределение в изображении. Представляются в виде набора «текселей», классифицируемых по числу текстур. Наборы определяют не только вид текстуры, но и её размещение[10].

Выделение текстуры затруднительно: обычно её моделируют как двумерную вариацию по интенсивности. Оценивается контраст, регулярность, шероховатость, направленность[6][16]. Основная проблема — выявление закономерных вариаций пикселей и их связь с типами текстуры («шёлковистая», «грубая» и др.).

Популярные методы:

Форма

Под формой понимается фигура определённого объекта или области, а не всё изображение. Обычно форму выделяют методом сегментации или поиска границ. Существуют методы, включающие фильтрацию по форме[17]. Дескрипторы формы должны быть инвариантны к сдвигу, масштабу и повороту[6].

Примеры дескрипторов формы[6]:

Уязвимости, атаки и методы защиты

Как и другие задачи компьютерного зрения (распознавание, детекция), современные методы поиска изображений на основе нейронных сетей подвержены состязательным атакам — как по выбору кандидата, так и по запросу[18]. Показано, что ранжирование может существенно меняться при микроскопических модификациях, незаметных человеку. Кроме того, существуют переносимые состязательные примеры (model-agnostic), позволяющие организовать «чёрный ящик»-атаки на глубинные системы ранжирования без доступа к их реализации[18][19].

Устойчивость к таким атакам может быть повышена методами состязательной защиты, например с помощью защиты Мадри[20].

Оценка эффективности поиска изображений

Критерии эффективности поиска изображений могут измеряться через точность и полноту. Существуют и другие исследуемые подходы[21].

Одновременное применение различных техник

В CBIR-системах могут одновременно использоваться разные методы, например: интеграция кластеризации пикселей, пересечения гистограмм и дискретного вейвлет-преобразования[22].

Применение

Возможные сферы использования CBIR[2]:

Коммерческие системы[2]:

  • QBIC от IBM
  • VIR Image Engine от Virage
  • Image RetrievalWare от Excalibur
  • VisualSEEk и WebSEEk
  • Netra
  • MARS
  • Vhoto
  • Pixolution

Экспериментальные системы[2]:

  • Photobook (MIT)
  • WebSEEk (Колумбийский университет)
  • Informedia (Университет Карнеги — Меллон)
  • iSearch — PICT

Примечания

Литература

  • “Query by Image and Video Content: The QBIC System” (Flickner, 1995)
  • “Finding Naked People” (Fleck et al., 1996)
  • “Virage Video Engine” (Hampapur, 1997)
  • “Library-based Coding: a Representation for Efficient Video Compression and Retrieval” (Vasconcelos & Lippman, 1997)
  • “System for Screening Objectionable Images” (Wang et al., 1998)
  • “Content-based Image Retrieval” (JISC, Eakins & Graham, 1999)
  • Ardizzoni, Bartolini, Patella. Windsurf: Region-Based Image Retrieval Using Wavelets (1999)
  • Vasconcelos & Lippman. A Probabilistic Architecture for Content-based Image Retrieval (2000)
  • Vasconcelos & Lippman. A Unifying View of Image Similarity (2000)
  • M. Lew. Next Generation Web Searches for Visual Content (2000)
  • Vasconcelos. Image Indexing with Mixture Hierarchies (2001)
  • Wang, Li, Wiederhold. SIMPLIcity: Semantics-Sensitive Integrated Matching for Picture Libraries (2001)
  • Popescu, Grefenstette. A Conceptual Approach to Web Image Retrieval (2008)
  • Ruiz-del-Solar et al. FACERET: An Interactive Face Retrieval System Based on Self-Organizing Maps (2002)
  • Li and Wang. Automatic Linguistic Indexing of Pictures by a Statistical Modeling Approach (2003)
  • Sivic & Zisserman. Video google: A text retrieval approach to object matching in videos (2003)
  • Vasconcelos. Minimum Probability of Error Image Retrieval (2004)
  • Vasconcelos. On the Efficient Evaluation of Probabilistic Similarity Functions for Image Retrieval (2004)
  • Hove. Extending image retrieval systems with a thesaurus for shapes (2004)
  • Berg et al. Names and Faces in the News (2004)
  • Quack et al. Cortina: a system for large-scale, content-based web image retrieval (2004)
  • Eidenberger. A new perspective on Visual Information Retrieval (2004)
  • Town, Sinclair. Language-based Querying of Image Collections on the basis of an Extensible Ontology (2004)
  • Bartolini, Ciaccia, Patella. The PIBE Personalizable Image Browsing Engine (2004)
  • Jaffre. Costume: A New Feature for Automatic Video Content Indexing (2005)
  • Arandjelovic & Zisserman. Automatic Face Recognition for Film Character Retrieval in Feature-Length Films (2005)
  • Rouw. Meaningful Image Spaces (2005)
  • Lew et al. Content-based Multimedia Information Retrieval: State of the Art and Challenges (2006)
  • Bartolini, Ciaccia, Patella. Adaptively Browsing Image Databases with PIBE (2006)
  • Jacobs, Finkelstein, Salesin. Algorithm on which Retrievr (Flickr search) and imgSeek is based on
  • Bartolini, Ciaccia. Imagination: Exploiting Link Analysis for Accurate Image Annotation (2007)
  • Hove. Evaluating Use of Interfaces for Visual Query Specification (2007)
  • Vasconcelos. From Pixels to Semantic Spaces: Advances in Content-Based Image Retrieval (2007)
  • Maree et al. Content-based Image Retrieval by Indexing Random Subwindows with Randomized Trees (2007)
  • Datta et al. Image Retrieval: Ideas, Influences, and Trends of the New Age (2008)
  • Li and Wang. Real-Time Computerized Annotation of Pictures (2008)
  • Bartolini, Ciaccia, Patella. Query Processing Issues in Region-based Image Databases (2010)
  • Bartolini, Patella, Romani. Shiatsu: Semantic-based Hierarchical Automatic Tagging of Videos by Segmentation Using Cuts (2010)
  • Bartolini, Romani. Efficient and Effective Similarity-based Video Retrieval (2010)
  • Bartolini, Ciaccia. Multi-dimensional Keyword-based Image Annotation and Search (2010)
  • Bartolini, Patella, Stromei. The Windsurf Library for the Efficient Retrieval of Multimedia Hierarchical Data (2011)
  • Joly, Alexis et al. Pl@ntNet: Interactive plant identification based on social image data
  • Tyagi Vipin. Content based Image Retrieval (2017)
  • Luo, Zhang, Huang, Gao, Tian. Superimage: Packing Semantic-Relevant Images for Indexing and Retrieval (2014)
  • Moise, Shestakov, Gudmundsson, Amsaleg. Indexing and searching 100M images with Map-Reduce (2013)