Поиск изображений по содержанию
Поиск изображений по содержанию(англ. Content-based image retrieval, CBIR) — это применение методов компьютерного зрения к задаче поиска изображений, то есть к задаче поиска цифровых изображений в крупных базах данных.
Термин «по содержанию» означает, что поиск анализирует собственные данные изображения, а не такие метаданные, как ключевые слова, теги или описания, ассоциированные с изображением. В этом контексте содержанием могут быть цвета, формы, текстуры или любая другая информация, полученная напрямую из изображения. Такой подход востребован, поскольку поиск по метаданным полностью зависит от полноты и качества аннотирования[1].
Сравнение с поиском по метаданным
Мета-поиск изображений требует, чтобы человек вручную аннотировал изображения, добавляя ключевые слова или метаданные в большую базу данных, что является затратным по времени процессом и не всегда отражает нужные ключевые слова. Эффективность поиска изображений по ключевым словам субъективна и формализована недостаточно. Аналогичные трудности при формализации успеха существуют и у CBIR-систем[2]. «Ключевые слова также ограничивают диапазон поиска заранее известными критериями», а «установленные при заведении» оказывается менее надёжным по сравнению c использованием содержания изображения[3].
История
Термин «поиск изображений по содержанию» впервые был использован в 1992 году японским инженером Тосиказу Като из Электротехнической лаборатории для описания экспериментов по автоматическому поиску изображений в базе данных по цветам и формам[2][4]. Позже термин стал означать процесс поиска необходимых изображений в большой коллекции на основе синтаксических характеристик изображения. Используемые методы, инструменты и алгоритмы происходят из статистики, распознавания образов, обработки сигналов и компьютерного зрения[1].
Первой коммерческой CBIR-системой стала разработка компании IBM — QBIC (англ. Query By Image Content)[5][6]. Позднее сетевые и графовые методы предложили альтернативы классическим алгоритмам[7].
Хотя хранение множественных изображений как единого объекта существовало и до появления термина BLOB (англ. Binary Large OBject)[8], полноценный поиск изображений по содержанию, а не по описаниям, стал возможен с появлением QBIC от IBM[3].
Технический прогресс
Интерес к CBIR обусловлен ограничениями систем, основанных на метаданных, а также широким спектром потенциальных применений эффективного поиска изображений. Текстовую информацию об изображениях легко искать с помощью существующих технологий, но для этого требуется ручное описание каждого изображения. Это малореализуемо для больших коллекций или автоматически генерируемых изображений, например, с камер наблюдения. Возможны и ложные пропуски изображений из-за использования синонимов в описаниях. Системы на семантической категоризации (например, «кот» как частный случай «животного») могут снизить вероятность ошибки, но требуют большего участия пользователя. Стандарты для категоризации существуют, однако проблемы масштабируемости и ошибочной классификации сохраняются[2].
Первые CBIR-системы осуществляли поиск по цвету, текстуре и форме. Позже стало очевидно, что необходимы пользовательские интерфейсы. Поэтому внимание систем стало смещаться в сторону ориентированного на пользователя дизайна: поддержка семантических запросов, обратной связи с пользователем, интеграция машинного обучения и учёт удовлетворённости пользователя[1].
Методы
Разработано множество систем CBIR, но по состоянию на 2006 год задача поиска изображений только на основе их пиксельного содержания во многом остаётся нерешённой[1].
Различные варианты работы CBIR используют различные формы ввода пользователем запросов.
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]:
- архитектура и инженерный дизайн;
- коллекции произведений искусства;
- профилактика преступлений;
- Геоинформационные системы и дистанционное зондирование;
- Интеллектуальная собственность;
- медицинская диагностика;
- военная сфера;
- поисковые и фотоархивы;
- электронные каталоги;
- фильтрация по наличию наготы[23];
- Система распознавания лиц;
- текстильная промышленность[12].
Коммерческие системы[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)
Ссылки
- IJMIR — множество публикаций по орасти CBIR
- Поиск по рисунку (поиск изображений по эскизам)
- Демонстрация поискового движка по изображениям по примеру или цвету


