c++ - 图像中的 Opencv 评级特征

标签 c++ opencv

OpenCV 论坛已经有几天不可用了,所以我在这里发布这个问题。我想用 C++ 实现一个类,该类将分析图像并确定该图像对于特征跟踪的好坏程度。

Vuforia 已经解释了一种方法。

https://developer.vuforia.com/library/articles/Solution/Natural-Features-and-Ratings

1)特征数量

计算返回的特征数量,假设至少需要 30 个特征。

2)局部对比

方差可以作为衡量图像中有多少变化的起点。要充分利用该指标,需要进行何种预处理?

我们如何改进这一点?使用 FT 或 DFT 变换,是否可以查看在许多不同的图像频率下是否存在高对比度?如何实现?

DFT -> 方差 (?)

3)特征分布

这可以通过聚类、合适的中心和均值+s.d 来完成。这与图像尺寸相当。 95% 应在平均值 + 2 x s.d 范围内。理想情况下。

4)避免有机形状

这不会产生任何特征,因此与特征数量的标准相同。

5) 避免重复模式

将检测到的特征与自身进行匹配,并确保没有太多重复项。

最佳答案

Vuforia 做同样的事情。

但是如果您想编写自己的代码来执行相同的操作,

  • ARToolkit 是为 NFT 标记提供相同功能的开源 SDK。如果你浏览 ARToolkit 的源代码,那么你 会找到类似"DisplayFeatureSet"

  • 的内容
  • 还有DisplayfeatureSet.exe 文件显示 所选图像的特征(热点)如:

enter image description here


我不知何故设法获得了源代码(.c)。 在这里,我提供我的 google Drive 链接来下载源代码,对其进行处理并分享您的经验:

Source Code to Display Feature Set

祝你好运:)

关于c++ - 图像中的 Opencv 评级特征,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37108628/

相关文章:

c# - 更快的 c# 图像处理

c++ - C++ inFile.Read中大小后跟多个参数

c++ - 无锁队列——单生产者,多消费者

c++ - 使用opencv将像素数据分配到 vector 中

c++ - 如何翻转 IplImage

c++ - OpenCV - 从视差图计算实际距离

c++ - 从坐标 vector 中提取坐标并保存到文件

c++ - 绑定(bind)功能麻烦

c++ - 如何使自定义图形适合 boost 图形库模板?

c++ - dyld : Library not loaded:/usr/local/opt/jpeg/lib/libjpeg. 9.dylib OpenCV C++ MacOS