我正在使用c ++学习opencv。我在霍夫线变换的代码中遇到了Vector。任何人都可以解释我Vec4i存储什么以及4i意味着什么。 代码片段: -
vector<Vec4i> lines;
HoughLinesP(dst, lines, 1, CV_PI/180, 50, 50, 10 );
for( size_t i = 0; i < lines.size(); i++ )
{
Vec4i l = lines[i];
line( cdst, Point(l[0], l[1]), Point(l[2], l[3]), Scalar(0,0,255), 3, CV_AA);
}
答案 0 :(得分:8)
查看OpenCV Basic Structures。
Vec4i是用于表示具有4维的向量的结构,每个值为int
如果您查看HoughLinesP() documentation,您会看到这个特定情况下每个维度的内容:
lines - 行的输出向量。每条线由4元素矢量(x_1,y_1,x_2,y_2)表示,其中(x_1,y_1)和(x_2,y_2)是每个检测到的线段的终点。
简而言之,每一行都是Vec4i,前两行是行的起点(x1,y1),后两行是行的终点(x2,y2)