c++ - 关键点大小和倍频程之间的 OpenCV 连接

标签 c++ opencv image-processing keypoint

我正在使用 OpenCV keypoints,我有一个关于 keyPoint 大小和 Octave 的问题。

我知道一个关键点有一个坐标 (x,y) 和大小,它可以简单地描述为一个以 (x,y) 为中心和大小为半径的圆。

而且我知道有一些 Octave 级别(在此期间图像被下采样 2)正在检测关键点。

我有 2 个问题。

  1. keypoint size与检测到的octave or sublevel之间是否存在某种关系?
  2. 该图像最多可以包含多少个 Octave 音阶?由于在每个 Octave 音阶图像都被 2 下采样,这是否意味着答案是 Log(2,image_size)?那么 sublevel 呢?

最佳答案

1) 是的,(通常)关键点大小(或尺度)与检测的倍频程和子级之间存在关系:尺寸/尺度越大,组合的倍频程和子级越高。但请注意,这将取决于关键点检测器(SIFT、SURF 等)的选择及其实现。看看 David Lowe 的 SIFT 论文:SIFT一些见解。

enter image description here

2) 这在理论上确实是图像的最大 Octave 音阶数,实际上这永远不会被使用:如果我没记错的话,OpenCV SIFT 检测器只使用 2 或 3 个 Octave 音阶,每 3 个中间尺度。

关于c++ - 关键点大小和倍频程之间的 OpenCV 连接,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34452233/

相关文章:

c++ - 在 Blackberry Cascades 中使用来自 C++ 的信号关闭工作表

algorithm - 从白色引用中获取白平衡 (K)

c++ - boost::regex 和 std::regex 之间不一致?

c++ - 编译器如何隐式地进行这种转换?

python - 估计矩形对象的姿势不稳定

c# - 扫描图像 OpenCV 上的文档检测

python - 如何解决Jupyter Notebook中的 "out of memory"错误?

matlab - 从 Gabor 滤波器制作特征向量进行分类

c++ - 在 C++ 中将特殊 ASCII 字符转换为 XML 兼容字符串

c++ - sigma_s和sigma_r的详细含义OpenCV上的Enhance函数