cv::Vec3f
是 OpenCV 提供的一个模板类,用于表示具有三个元素的向量,每个元素都是 float
类型。在图像处理和计算机视觉中,这种类型的向量通常用于表示颜色值(如 BGR 颜色空间中的一个像素点)、坐标点(例如圆的中心),或其他需要三个浮点数的数据。
cv::Vec3f
的使用
1. 表示圆的参数
在使用 cv::HoughCircles
函数检测圆时,cv::Vec3f
通常用来表示检测到的圆的参数:
cv::Vec3f
的第一个元素是圆心的 x 坐标。- 第二个元素是圆心的 y 坐标。
- 第三个元素是圆的半径。
std::vector<cv::Vec3f> circles;
cv::HoughCircles(edges, circles, cv::HOUGH_GRADIENT, 1, 20, 50, 30, 10, 100);
for (const auto& circle : circles) {
cv::Point center(cvRound(circle[0]), cvRound(circle[1]));
int radius = cvRound(circle[2]);