图像相似度和近似重复检测

标签 image algorithm multimedia

我们将设计一个系统来有效地发现
近乎重复(在同一地点或以非常
类似的场景。请参阅以下两个示例图像。)来自一个非常
包含大约 N 个用户提供的图像的大型数据库(即 Flickr)。
(N ~= 2.5 亿)。给定数据库中的图像,系统需要
显示数据库中前 K 个近乎重复的图像及其
对应的近似重复分数。您可以计算
离线几乎重复的相似性。

(1) 什么可能是特征表示的良好候选者
图像及其相应的距离(或相似性)度量?为什么?

(2)计算所有成对的时间复杂度是多少
图像数据库中的相似之处?任何加速算法
近重复检测(例如,过滤掉不相关的图像
首先采用低成本的图像相似性措施)?可能是什么
您提出的方法对降低时间复杂度的影响?
任何权衡的准确性?

(3)使用您提出的算法,估计时间可能是多少
如果将新图像插入数据库(N 张图像),复杂度如何?

最佳答案

我们可以将完整的问题分为两个不同的部分,第一部分将处理匹配和最接近的图像,第二部分将处理时间复杂度和加速系统。

匹配最近的图像。

1)最近相遇图像的可能性取决于所有可用图像的矢量和匹配率,然后质疑为什么矢量,因为当我们计算图像比较时,这是我们可以相对选择的第一件事。

2)在进行成对划分之前,我相信大数据的分 block 将是一个很好的选择,然后为计算绘制相似的对。但是现在我们需要记住一件事,如果我们对一张图像进行峰值处理,然后对另一张图像进行峰值处理进行比较,那么它将需要处理第二个候选图像的复杂算法或标准。

算法

  • 尺度不变特征变换(关键点匹配)
  • 直方图法(直方图匹配)

  • 这两种算法都广泛用于需要比较的工业中,并且易于使用 matlab 和 Open-CV(java、c/c++)实现。现在指出我们如何可以加速这个完整的任务,我认为实现完整系统的最佳方法是使用分布式系统,并且可以使用 Hadoop、Aka 等框架轻松实现,这也将提供自由选择平台让您感觉舒适。

    算法引用:
    Scale-invariant feature transform (Keypoint Matching)
    Histogram matching

    希望这会有所帮助。

    关于图像相似度和近似重复检测,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47131018/

    相关文章:

    JavaScript promise 以相反的顺序加载

    按钮上的 C# 图标(调整大小)

    database - 在 ARIES 恢复方法中重复历史记录有什么好处?

    c# - 将音频播放到.net中的非默认播放设备

    java - Jpeg DCT 和 IDCT 计算不正确

    java - 用于从内置摄像头和麦克风检测新媒体的 Android API

    android - 选择图片Intent导致空指针异常

    algorithm - 从 3D 浮雕图像中提取深度图

    algorithm - 我需要为此实现 b 树搜索吗?

    android - 如何在相机 View 中显示图库图标?