Любой поиск в интернете начинается с запроса, который пользователь вводит в поисковую строку. Запросы могут быть разными, и дело даже не в длине или формулировке, а в самой их форме. Обычно запрос — это слово или несколько слов, но иногда проще решить задачу без них. Скажем, описывать словами, что нарисовано на той или иной картинке, бывает затруднительно. А теперь и не нужно — Яндекс научился искать не только с помощью слов, но и с помощью картинок.
В любом поисковике довольно просто найти информацию о Ниагарском водопаде. Но что если у вас есть только фотография водопада, а Ниагарский он или нет — кто его знает? С помощью поиска по картинке можно быстро это выяснить. Поиск по картинке вообще позволяет легко расширить кругозор и узнать, например, что это за зверь:
Можно найти не только описание изображения, но и любую другую связанную с ним информацию. Например, по картинке товара можно найти интернет-магазин, в котором он продаётся, а по фотографии певицы — сайт, где её фотографий целая коллекция. Наконец, можно просто поискать такую же картинку, но, например, не обрезанную или без подписей.
Новая возможность работает на технологии компьютерного зрения, созданной разработчиками Яндекса. Она называется «Сибирь» (от англ. CBIR – Content-based image retrieval, то есть поиск изображения по содержанию). После того как пользователь загрузил картинку, поисковая машина превращает её в набор визуальных слов. Визуальные слова — это удобные для поиска численные представления ключевых элементов картинки (границы объектов, контрастные области и так далее). После этого поисковая машина выбирает среди известных ей миллиардов картинок изображения, содержащие такие же визуальные слова, как на загруженной картинке, отсекая все остальные. Это важный этап, потому что для увеличения скорости необходимо сузить область поиска. Потом компьютер сопоставляет расположение ключевых элементов на оставшихся изображениях и выстраивает их по близости к загруженной картинке так, что сверху оказываются наиболее похожие. Всё это занимает меньше минуты.
Искать похожие изображения среди миллиардов картинок в интернете очень сложно, во всём мире это умеют делать лишь несколько компаний. Наш поиск по картинке — это лишь первый шаг на довольно трудном пути. Сейчас Яндекс ищет картинки, совпадающие с загруженной или имеющие идентичные фрагменты, но постепенно будет учиться большему. К примеру, поиск уже показывает способности к обобщению: иногда находится не просто такая же картинка, а другое изображение, содержащее такой же объект. Например, поиск по изображению Эрмитажа, взятому из панорам на Яндекс.Картах, даёт такой результат.
Так что впереди ещё много интересной работы, результат которой вы обязательно увидите.
Александр Крайнов, менеджер проектов компьютерного зрения