c++ - 如何获取keyPoint ID

标签 c++ opencv detect

我正在用 opencv 和 C++ 编写匹配程序,我想根据图像区域对检测到的关键点进行分类。

即:如果我在图像顶部检测到一个关键点,我想在区域 1 中对其进行分类...取决于我找到关键点的位置,我想对其进行分类。

最后我要像这样做一个新的分类器 vector :

vector classifier_vector;

我需要的两个参数之一是每个检测到的点的 ID。

有人知道如何获取关键点 ID 吗?

我不确定下一个但是我看到我需要获取的参数是

int _class_id

我说得对吗?

谢谢大家。 ;)

最佳答案

OpenCV 有一个 KeyPoint 类,它有以下参数:

pt (x,y) -> 关键点的位置, size - 关键点的大小, angle - 关键点的方向, response - 关键点的强度, octave - 检测到关键点的 Octave 层数, class_id - 关键点所属的对象编号。

所以基本上您需要的是 class_id

keyPoint kpt;
kpt.class_id;

关于c++ - 如何获取keyPoint ID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30628773/

相关文章:

arrays - MATLAB:检测并删除 2 列矩阵中的镜像对

c++ - 使用 Rcpp 查找重复项

c++ - 本地类型作为未实例化函数内的模板参数

c++ - 在opencv中将2张图像与透明蒙版结合起来

c++ - 不能在opencv C++中扭曲背面图像

python - 如何可靠地找到图像上的复选框(使用 cv2.findContours 或其他技术)?

browser - 从网络浏览器检测条形码扫描仪

c++ - 使用 CGAL 将多面体投影到 xy 平面

c++ - 如何优化自定义日期结构的比较功能?

Android - 在 View 上检测双击和三次点击