【问题标题】:feature extraction from websites网站特征提取
【发布时间】:2017-01-19 15:23:36
【问题描述】:

这更像是一个理论问题

每当我在网上搜索特征提取和特征匹配时,我得到的唯一结果都是关于图像对象..比如找到一张脸或一个有图案的枕头等..

但我试图实现的是从网站中进行良好的特征匹配(或提取)。这意味着我专注于网站中的重要对象,而且匹配很可能在面板、表格或图像之间进行(图像最不可能)

使用 opencv ORB 或 SIFT 并没有给我很好的结果 这是我一直在使用的代码:

def feature_matching2(fp1, fp2, num_of_matches):
image1 = cv2.imread(fp1, 0)
image2 = cv2.imread(fp2, 0)

orb = cv2.ORB()

kp1, des1 = orb.detectAndCompute(image1, None)
kp2, des2 = orb.detectAndCompute(image2, None)

bf = cv2.BFMatcher(cv2.NORM_HAMMING, crossCheck=True)

matches = bf.match(des1, des2)
matches = sorted(matches, key=lambda x: x.distance)

image3 = cv2.drawMatches(image1, kp1, image2, kp2, matches[:num_of_matches])

plt.imshow(image3)
plt.show()
return sum([match.distance for match in matches[:num_of_matches]])

再说一次,基本上我要找的是这个: 1.一种从网站截图中提取重要特征/对象的方法 2. 适合包含文本的大图像的特征匹配算法

* 编辑* 我们的想法是截取 2 个网站的屏幕截图并比较它们的功能,而不是使用 html

谢谢

【问题讨论】:

  • 所以你评估网站的图像,或网站代码,还是什么?如果网站是静态的(字体、背景、大小等不变),您可以使用简单的模板匹配。目的是什么?
  • 我已经编辑了帖子。我比较了 2 个不同网站截图的功能。目的是在 2
  • 你如何定义“相似对象”?您能找到您认为与示例图像“仍然相似”和“不够相似”的边界案例吗?
  • 最终我将使用机器学习来得出相似度的“等级”是否足够好。但我确实需要一种可靠的方法来检查这两个网站中的类似功能
  • 问题是,不同种类的相似性以完全不同的方式计算,因此您需要找到这种相似性的方法可能会有很大差异。可能(如果你不能给出适当的例子),你一开始就需要某种机器学习来找到解决方案。也许试试“深度学习”之类的,也许它可以为你找到功能。

标签: python-2.7 opencv feature-extraction feature-detection orb


【解决方案1】:

我认为您可以尝试HOG(定向梯度直方图)特征提取。该技术计算图像局部部分中梯度方向的出现次数。而简单的欧几里得距离有利于特征匹配。

【讨论】:

  • 你能再描述一下吗?或解释如何获得 2 头猪的欧几里得距离?一个简单的图像的猪是一个近 40m 插槽的数组
  • 公式为 欧式距离 = sqrt(sum((Mi-Ni).^2)) ,其中 Mi 是秒的像素图像和 Ni 是第一张图像的像素。 HOG 将特征作为图像的大小返回。您可以对两个图像特征进行归一化并以欧几里德距离应用,也可以逐像素处理(但是,两者必须具有相同的大小)。如果得到的值是最小值,那么这两个图像是相似的。
猜你喜欢
  • 2012-07-10
  • 1970-01-01
  • 2011-07-25
  • 2017-09-12
  • 2019-05-26
  • 2021-10-23
  • 2014-01-03
  • 2011-01-10
  • 2016-12-05
相关资源
最近更新 更多