要打印std::vector<cv::KeyPoint>
中的每个元素,你可以使用C++的迭代器来遍历vector并逐个打印每个元素。cv::KeyPoint
是一个包含特征检测和描述符提取的类,其包含的信息如尺度、角度、响应、octave和x,y坐标等。
以下是一个如何打印std::vector<cv::KeyPoint>
中元素的示例:
#include <iostream>
#include <vector>
#include <opencv2/features2d.hpp>
int main()
{
std::vector<cv::KeyPoint> keypoints;
// 在这里填充keypoints...
for (const auto& keyPoint : keypoints)
{
std::cout << "x: " << keyPoint.pt.x << ", y: " << keyPoint.pt.y
<< ", size: " << keyPoint.size
<< ", angle: " << keyPoint.angle
<< ", response: " << keyPoint.response
<< ", octave: " << keyPoint.octave
<< ", class_id: " << keyPoint.class_id
<< std::endl;
}
return 0;
}
这段代码将打印出每个关键点的x和y坐标、大小、角度、响应、octave和类ID。请注意,你需要包含相应的头文件(例如#include <opencv2/features2d.hpp>
)以使用cv::KeyPoint
类。