Searching a Collection of Pictures

Once pictures have numerical representations, we can search for nearby ones. Comparing every picture works for a small collection, but a larger collection gives us a reason to consider search indexes and their compromises.

15 sections · 18 questions · 4 coding challenges

1 / 15

How Could We Search Images Without Comparing Every Pixel of Every Picture?

BOTIE

A useful image representation solves only part of a retrieval problem. We still have to find related entries among a large collection. Comparing a query with every stored representation is straightforward, but the cost grows with the collection.

Sivic and Zisserman's 2003 Video Google work borrowed text-retrieval ideas to search local visual features through an index. Later vector-search work, including Johnson and colleagues' 2017 study, addressed efficient similarity search at much larger scales. These approaches use different representations but share the need to organise the search.

An index gives us a way to inspect promising candidates without treating every stored item equally. Clusters, partitions, or compressed codes can reduce the work. Approximate search may miss some true nearest neighbours, so we measure retrieval quality as well as speed. The index helps find nearby representations; the representation determines whether those neighbours are useful pictures.

Sources for this history