从数据库中查找视觉上相似的照片的算法? [英] Algorithm for finding visually similar photos from a database?

查看:159
本文介绍了从数据库中查找视觉上相似的照片的算法?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

TinEye,Google和其他人提供了反向图片搜索 - 您可以上传照片,而且在几秒钟内就会找到类似的照片。



这些算法的源版本?






我知道SIFT但是它们只能用于将一张照片直接与另一张照片进行比较。即,为了找到给定照片的类似照片是 O(n)操作,找到所有视觉上相似的照片将是 O(n ^ 2 ) - 两者都非常慢。



我需要一个可以通过[关系]数据库索引的特征描述符,



通过视觉上类似我的意思是非常类似。

解决方案

您可以考虑的有效方法是 Bag- of-Words模型



基本上,您可以对目标图像进行离线计算。您可以从这些图片中提取一堆功能,以便使用 k-means聚类。搜索最近的图片将导致在最近的邻居搜索的空间中应用算法



对于邻居搜索,您可以使用FLANN





另请参阅:
视觉相似性搜索算法



这只是一种可能性,必须说明的是,这个话题确实很有挑战性,而且它的确是巨大的。



只是一些参考: / p>


TinEye, Google and others offer a "reverse image search" -- you can upload a photo and within seconds it will find similar photos.

Is there an open-source version of these algorithms?


I know about "SIFT" and other algorithms for finding "visually similar" photos, but they only work for comparing one photo directly to another. i.e., to find similar photos to a given photo is an O(n) operation, to find all visually similar photos would be O(n^2) -- both of which are prohibitively slow.

I need a feature descriptor that is indexable by a [relational] database to reduce the result set to something more manageable.

By "visually similar" I mean very similar. i.e, a photo that has been lightly touched up/recolored in Photoshop, slightly cropped or resized, photos taken in rapid succession of the same scene, or flipped or rotated images.

解决方案

A valid approach you can consider is the Bag-of-Words model.

Basically you can do an offline computation of the target images. You can extract from those images a bunch of features in order to create a codebook with algorithms like k-means clustering. Searching for the nearest images will lead to the applications of an algorithm like Nearest neighbor search in the space of the codebook.

For the neighbour search you can use FLANN

Take a look also at: Visual similarity search algorithm

This is only a possibility and, truth must be told, this topic is really challenging and litterature on it is really huge.

Just some references:

这篇关于从数据库中查找视觉上相似的照片的算法?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆