Reverse image search
Reverse image search is a content-based image retrieval (CBIR) query technique that involves providing the CBIR system with a sample image that it will then base its search upon; in terms of information retrieval, the sample image is what formulates a search query. In particular, reverse image search is characterized by a lack of search terms. This effectively removes the need for a user to guess at keywords or terms that may or may not return a correct result. Reverse image search also allows users to discover content that is related to a specific sample image, popularity of an image, and discover manipulated versions and derivative works.
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.
Commonly used reverse image search algorithms include:
- Scale-invariant feature transform - to extract local features of an image 
- Maximally stable extremal regions
- Vocabulary Tree.
Application in popular search systems
Google's Search by image is a feature that uses reverse image search and allows users to search for related images just by uploading an image or image URL. Google accomplishes this by analyzing the submitted picture and constructing a mathematical model of it using advanced algorithms. It is then compared with billions of other images in Google's databases before returning matching and similar results. When available, Google also uses metadata about the image such as description.
TinEye is a search engine specialized for reverse image search. Upon submitting an image, TinEye creates a "unique and compact digital signature or fingerprint" of said image and matches it with other indexed images. This procedure is able to match even very edited versions of the submitted image, but will not usually return similar images in the results.
eBay ShopBot uses reverse image search to find products by a user uploaded photo. eBay uses a ResNet-50 network for category recognition, image hashes are stored in Google Bigtable; Apache Spark jobs are operated by Google Cloud Dataproc for image hash extraction; and the image ranking service is deployed by Kubernetes. 
SK Planet uses reverse image search to find related fashion items on its e-commerce website. It developed the vision encoder network based on the TensorFlow inception-v3, with speed of convergence and generalization for production usage. A recurrent neural network is used for multi-class classification, and fashion-product region-of interest detection is based on Faster R-CNN. SK Planet's reverse image search system is built in less than 100 man-months.
Alibaba released the Pailitao application during 2014. Pailitao (Chinese: 拍立淘, literally means shopping through a camera) allows users to search for items on Alibaba's E-commercial platform by taking a photo of the query object. The Pailitao application uses a deep CNN model with branches for joint detection and feature learning to discover the detection mask and exact discriminative feature without background disturbance. GoogLeNet V1 is employed as the base model for category prediction and feature learning.
Pinterest acquired startup company VisualGraph in 2014 and introduced visual search on its platform. In 2015, Pinterest published a paper at the ACM Conference on Knowledge Discovery and Data Mining conference and disclosed the architecture of the system. The pipeline uses Apache Hadoop, the open-source Caffe convolutional neural network framework, Cascading for batch processing, PinLater for messaging, and Apache HBase for storage. Image characteristics, including local features, deep features, salient color signatures and salient pixels are extracted from user uploads. The system is operated by Amazon EC2, and only requires a cluster of 5 GPU instances to handle daily image uploads onto Pinterest. By using reverse image search, Pinterest is able to extract visual features from fashion objects (e.g. shoes, dress, glasses, bag, watch, pants, shorts, bikini, earrings) and offer product recommendations that look similar.
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.
Production reverse image search systems
- "How to search by image". Google. Retrieved 2 November 2013.
- "Video searching with Frompo". Frompo.com. Retrieved 2 November 2013.
- "FAQ - TinEye - Why use TinEye?". TinEye.
- Bundling Features for Large Scale Partial-DuplicateWeb Image Search Microsoft.
- A New Web Image Searching Engine by Using SIFT Algorithm computer.org
- "FAQ - TinEye - How does TinEye work?". TinEye.
- "FAQ - TinEye - Can TinEye find similar images??". TinEye.
- "Visual Search at eBay". acm.org.
- Visual Fashion-Product Search at SK Planet
- "Visual Search at Alibaba". acm.org.
- "Shopping With Your Camera: Visual Image Search Meets E-Commerce at Alibaba". Alibaba Tech.
- Josh Constine. "Pinterest Acquires Image Recognition And Visual Search Startup VisualGraph". TechCrunch. AOL.
- "Visual Search at Pinterest". acm.org.
- "Building a scalable machine vision pipeline". Pinterest Engineering.
- Duplicate-Search-Based Image Annotation Using Web-Scale Data Microsoft.