Reference articles on history, science, culture and more
Encyclopedia

Reverse image search

Content-based image retrieval

Image credit is listed at the end of this article.

Reverse image search is a content-based image retrieval technique where a user provides an image which the system will then search for among its dataset. By searching for a result via an image, users do not need to guess at keywords or terms that may or may not return a correct result. Reverse image search allows users to discover content that is related but not equivalent to their provided image, to discover the prevalence of the provided image in a dataset, and to discover manipulated versions and derivative works.

A visual search engine is a search engine designed to search for information on the World Wide Web through a reverse image search. Information may consist of web pages, locations, other images and other types of documents. This type of search engines is mostly used to search on the mobile Internet through an image of an unknown object (unknown search query). Examples are buildings in a foreign city. These search engines often use techniques for content-based image retrieval.

A visual search engine searches images, patterns based on an algorithm which it could recognize and gives relative information based on the selective or apply pattern match technique.

01Uses

Reverse image search may be used to:

  • Locate the source of an image.
  • Find higher resolution versions.
  • Discover webpages where the image appears.
  • Find the content creator.
  • Get information about an image.
Screenshot of results shown by the image searcher through example GOS
Screenshot of results shown by the image searcher through example GOS

02Algorithms

Commonly used reverse image search algorithms include:

03Visual information searchers

Image search

An image search engine is a search engine that is designed to find an image. The search can be based on keywords, a picture, or a web link to a picture. The results depend on the search criterion, such as metadata, distribution of color, shape, etc., and the search technique which the browser uses.

Image search techniques

Two techniques currently used in image search:

Search by metadata: Image search is based on comparison of metadata associated with the image as keywords, text, etc. and it is obtained by employing a set of images sorted by relevance. The metadata associated with each image can reference the title of the image, format, color, etc. and can be generated manually or automatically. This metadata generation process is called audiovisual indexing.

Search by example: In this technique, also called reverse image search, the search results are obtained through the comparison between images using content-based image retrieval computer vision techniques. During the search the content of the image is examined, such as color, shape, texture or any visual information that can be extracted from the image. This system requires a higher computational complexity, but is more efficient and reliable than search by metadata.

There are image searchers that combine both search techniques. For example, the first search is done by entering a text. The images obtained are then used to refine the search.

Video search

A video search engine is a search engine designed to search video on the net. Some video searchers process the search directly in the Internet, while others shelter the videos from which the search is done. Some searchers also enable to use as search parameters the format or the length of the video. Usually the results come with a miniature capture of the video.

Video search techniques

Currently, almost all video searchers are based on keywords (search by metadata) to perform searches. These keywords can be found in the title of the video, text accompanying the video or can be defined by the author. An example of this type of search is YouTube.

3D Models searcher

A searcher of 3D models aims to find the file of a 3D modeling object from a database or network. At first glance the implementation of this type of searchers may seem unnecessary, but due to the continuous documentary inflation of the Internet, every day it becomes more necessary indexing information.

3D Models search techniques

These have been used with traditional text-based searchers (keywords / tags), where the authors of the indexed material, or Internet users, have contributed these tags or keywords. Because it is not always effective, it has recently been investigated in the implementation of search engines that combine the search using text with the search compared to 2D drawings, 3D drawings and 3D models.

Princeton University has developed a search engine that combines all these parameters to perform the search, thus increasing the efficiency of search.

Mobile visual search

A mobile image searcher is a type of search engine designed exclusively for mobile phones, through which you can find any information on Internet, through an image made with the own mobile phone or using certain words (keywords). Mobile Visual Search solutions enable you to integrate image recognition software capabilities into your own branded mobile applications. Mobile Visual Search (MVS) bridges the gap between online and offline media, enabling you to link your customers to digital content.

Introduction

Mobile phones have evolved into powerful image and video processing devices equipped with high-resolution cameras, color displays, and hardware-accelerated graphics. They are also increasingly equipped with a global positioning system and connected to broadband wireless networks. All this enables a new class of applications that use the camera phone to initiate search queries about objects in visual proximity to the user (Figure 1). Such applications can be used, e.g., for identifying products, comparison shopping, finding information about movies, compact disks (CDs), real estate, print media, or artworks.

Process

Typically, this type of search engine uses techniques of query by example or Image query by example, which use the content, shape, texture and color of the image to compare them in a database and then deliver the approximate results from the query.

The process used in these searches in the mobile phones is as follows:

First, the image is sent to the server application. Already on the server, the image will be analyzed by different analytical teams, as each one is specialized in different fields that make up an image. Then, each team will decide if the submitted image contains the fields of their speciality or not.

Once this whole procedure is done, a central computer will analyze the data and create a page of the results sorted with the efficiency of each team, to eventually be sent to the mobile phone.

Diagram of a search realized through example based on detectable regions from an image
Diagram of a search realized through example based on detectable regions from an image

05Research systems

Microsoft Research Asia's Beijing Lab published a paper in the Proceedings of the IEEE on the Arista-SS (Similar Search) and the Arista-DS (Duplicate Search) systems. Arista-DS only performs duplicate search algorithms such as principal component analysis on global image features to lower computational and memory costs. Arista-DS is able to perform duplicate search on 2 billion images with 10 servers but with the trade-off of not detecting near duplicates.

3D models search techniques
3D models search techniques

06Open-source implementations

In 2007, the Puzzle library is released under the ISC license. Puzzle is designed to offer reverse image search visually similar images, even after the images have been resized, re-compressed, recolored and/or slightly modified.

The image-match open-source project was released in 2016. The project, licensed under the Apache License, implements a reverse image search engine written in Python.

Both the Puzzle library and the image-match projects use algorithms published at an IEEE ICIP conference.

In 2017, Facebook released the FAISS Library under the MIT License. FAISS can be used to perform similarity search and clustering of dense vectors, which is used in reverse image search engines and image similarity search engines.

In 2019, a book published by O'Reilly documents how a simple reverse image search system can be built in a few hours. The book covers image feature extraction and similarity search, together with more advanced topics including scalability using GPUs and search accuracy improvement tuning. The code for the system was made available freely on GitHub.

07Production reverse image search systems

Watch videos about Reverse image searchExplainers and documentaries on YouTube (opens in a new tab)

Sources and credits

This article is adapted from the Wikipedia article Reverse image search, written by its contributors and licensed under CC BY-SA 4.0. Fathomly has changed the layout, removed citation markers, navigation and maintenance notices, and adjusted punctuation. This adapted version is shared under the same license. For references, see the original article.

Images, from Wikimedia Commons:

Fathomly is not affiliated with or endorsed by the Wikimedia Foundation. Spotted a problem? Tell us.