消除不需要的关键点

时间:2013-06-27 19:23:15

标签: python image-processing sift hough-transform

首先感谢您的时间。我想消除在图像框架周围检测到的关键点(博物馆画廊的艺术品)。换句话说,我想从框架中分离出实际的艺术作品。每件艺术品都包含不同类型的画面。

![使用筛选检测到的关键点] [1]

我已经为David Lowe的SIFT implementation编写了一个Python包装器来检测关键点以及计算描述符。

但是我的问题是解决这个问题的最佳方法是什么?以下任何一种或其他什么?

  • 使用Hough转换(使用Python图像库)
  • 模板匹配

非常感谢您的帮助

再次感谢

2 个答案:

答案 0 :(得分:0)

我会使用Hough变换并尝试检测形成四边形的线。

如果这幅画确实包含正方形或其他东西,你可能会遇到麻烦。我会寻找一些假设:可接受的宽高比,可接受的尺寸。还可以找到最外侧的四边形,并朝着图像中心的方向前进,如果适用的话,拾取内部四边形。这将为您提供框架及其厚度,因此您可以忽略此处或框架之外的任何关键点。

P.S。如果你收到我的随机回复,那是因为我不小心回复了你帖子中的另一篇帖子...... ^^

答案 1 :(得分:0)

对于每件艺术品,你有一个干净,框架正确的参考图像吗?

如果是这样,另一个删除背景杂乱的解决方案是:

  1. 使用ratio test算法计算您的框架与参考图像之间的关键点对应关系,
  2. 执行geometric consistency check过滤掉错误匹配。
  3. 此外,几何检查将为您提供单应矩阵,可用于扭曲输入框架或投影参考图像的角落。

    通过这种方式,您可以原生地获取框架内的艺术品区域。

    以下是有关如何使用opensift's match tool执行此操作的示例 - 以下是插图。

    enter image description here