Abstract
Many computer vision algorithms require searching a set of images for similar patches, which is a very expensive operation. In this work, we compare and evaluate a number of nearest neighbors algorithms for speeding up this task. Since image patches follow very different distributions from the uniform and Gaussian distributions that are typically used to evaluate nearest neighbors methods, we determine the method with the best performance via extensive experimentation on real images. Furthermore, we take advantage of the inherent structure and properties of images to achieve highly efficient implementations of these algorithms. Our results indicate that vantage point trees, which are not well known in the vision community, generally offer the best performance.
Chapter PDF
Similar content being viewed by others
References
Bentley, J.L.: Multidimensional binary search trees used for associative searching. Comm. ACM 18(9), 509–517 (1975)
Sproull, R.F.: Refinements to nearest-neighbor searching in k-dimensional trees. Algorithmica 6(4), 579–589 (1991)
Omohundro, S.M.: Five balltree construction algorithms. Technical Report 89-063 (1989)
Linde, Y., Buzo, A., Gray, R.M.: An algorithm for vector quantizer design. IEEE Transactions on Communications 28(1), 84–94 (1980)
Yianilos, P.N.: Data structures and algorithms for nearest neighbour search in general metric spaces. In: Symposium on Discrete algorithms, pp. 311–321 (1993)
Lowe, D.: Distinctive image features from scale-invariant keypoints. IJCV (2003)
Sivic, J., Zisserman, A.: Video google: A text retrieval approach to object matching in videos. In: ICCV, Washington, DC, p. 1470. IEEE Computer Society, Los Alamitos (2003)
Nister, D., Stewenius, H.: Scalable recognition with a vocabulary tree. CVPR (2006)
Shechtman, E., Irani, M.: Matching local self-similarities across images and videos. CVPR (2007)
Buades, A., Coll, B., Morel, J.M.: A non-local algorithm for image denoising. CVPR (2005)
Efros, A.A., Freeman, W.T.: Image quilting for texture synthesis and transfer. SIGGRAPH (2001)
Freeman, W.T., Jones, T.R., Pasztor, E.C.: Example-based super-resolution. IEEE Comput. Graph. Appl. 22(2), 56–65 (2002)
Chávez, E., Navarro, G., Baeza-Yates, R., Marroquín, J.L.: Searching in metric spaces. ACM Computing Surveys 33(3), 273–321 (2001)
Shakhnarovich, G., Darrell, T., Indyk, P.: Nearest-Neighbor Methods in Learning and Vision. MIT Press, Cambridge (2006)
Bentley, J.L.: K-d trees for semidynamic point sets. In: Symposium on Computational geometry, pp. 187–197 (1990)
Beis, J.S., Lowe, D.G.: Shape indexing using approximate nearest-neighbour search in high-dimensional spaces. CVPR (1997)
Hays, J., Efros, A.A.: Scene completion using millions of photographs. ACM Transactions on Graphics (SIGGRAPH) 26(3) (2007)
Hotelling, H.: Analysis of a complex of statistical variables with principal components. Journal of Educational Psychology 24, 417–441 (1933)
MacQueen, J.: Some methods for classification and analysis of multivariate observations. In: Symposium on Mathematical Statistics and Probability, pp. 281–297 (1967)
Edelsbrunner, H.: Algorithms in combinatorial geometry. Springer, New York (1987)
Nene, S.A., Nayar, S.K.: A Simple Algorithm for Nearest Neighbour Search in High Dimensions. IEEE Transactions on Pattern Analysis and Machine Intelligence 19(9), 989–1003 (1997)
Arya, S., Mount, D.M., Netanyahu, N.S., Silverman, R., Wu, A.Y.: An optimal algorithm for approximate nearest neighbor searching in fixed dimensions. J. ACM 45(6), 891–923 (1998)
Indyk, P., Motwani, R.: Approximate nearest neighbors: towards removing the curse of dimensionality. In: Symposium on Theory of Computing, pp. 604–613 (1998)
Mikolajczyk, K., Matas, J.: Improving descriptors for fast tree matching by optimal linear projection. In: ICCV (2007)
Ruderman, D.L.: The statistics of natural images. Network: Computation in Neural Systems 5, 517–548 (1996)
Viola, P., Jones, M.: Rapid object detection using a boosted cascade of simple features. CVPR (2001)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2008 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Kumar, N., Zhang, L., Nayar, S. (2008). What Is a Good Nearest Neighbors Algorithm for Finding Similar Patches in Images?. In: Forsyth, D., Torr, P., Zisserman, A. (eds) Computer Vision – ECCV 2008. ECCV 2008. Lecture Notes in Computer Science, vol 5303. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-88688-4_27
Download citation
DOI: https://doi.org/10.1007/978-3-540-88688-4_27
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-88685-3
Online ISBN: 978-3-540-88688-4
eBook Packages: Computer ScienceComputer Science (R0)