The PatchMatch randomized matching algorithm for image manipulation
- 1 November 2011
- journal article
- research article
- Published by Association for Computing Machinery (ACM) in Communications of the ACM
- Vol. 54 (11), 103-110
- https://doi.org/10.1145/2018396.2018421
Abstract
This paper presents a new randomized algorithm for quickly finding approximate nearest neighbor matches between image patches. Our algorithm offers substantial performance improvements over the previous state of the art (20--100×), enabling its use in new interactive image editing tools, computer vision, and video applications. Previously, the cost of computing such matches for an entire image had eluded efforts to provide interactive performance. The key insight driving our algorithm is that the elements of our search domain---patches of image pixels---are correlated, and thus the search strategy takes advantage of these statistics. Our algorithm uses two principles: first, that good patch matches can be found via random sampling, and second, that natural coherence in the imagery allows us to propagate such matches quickly to surrounding areas. Our simple algorithm allows finding a single nearest neighbor match across translations only, whereas our general algorithm additionally allows matching of k -nearest neighbors, across all rotations and scales, and matching arbitrary descriptors. This one simple algorithm forms the basis for a variety of applications including image retargeting, completion, reshuffling, object detection, digital forgery detection, and video summarization.Keywords
Funding Information
- Division of Information and Intelligent Systems (IIS-0511965)
This publication has 17 references indexed in Scilit:
- Video tapestries with continuous temporal zoomACM Transactions on Graphics, 2010
- PatchMatchACM Transactions on Graphics, 2009
- Inverse texture synthesisACM Transactions on Graphics, 2008
- What Is a Good Nearest Neighbors Algorithm for Finding Similar Patches in Images?Lecture Notes in Computer Science, 2008
- Seam carving for content-aware image resizingACM Transactions on Graphics, 2007
- Image completion with structure propagationACM Transactions on Graphics, 2005
- Synthesis of bidirectional texture functions on arbitrary surfacesACM Transactions on Graphics, 2002
- Synthesizing natural texturesPublished by Association for Computing Machinery (ACM) ,2001
- Fast texture synthesis using tree-structured vector quantizationPublished by Association for Computing Machinery (ACM) ,2000
- Deformable template models: A reviewSignal Processing, 1998