如何在vector<CvPoints>或vector<Point2f>的图像上绘制?VectorPoints vector<Point2f>。我只需要使用OpenCV在VectorPoints中绘制图像。
vector<CvPoints>
vector<Point2f>
r6l8ljro1#
手动执行:
Vec3b mycolor(100,0,0); for (int i=0;i<mypoints.size();i++) myimage.at<Vec3b>(mypoints[i].x,mypoints[i].y)=mycolor;
或者在这些坐标上画圆:
int myradius=5; for (int i=0;i<mypoints.size();i++) circle(myimage,cvPoint(mypoints[i].x,mypoints[i].y),myradius,CV_RGB(100,0,0),-1,8,0);
hwamh0ep2#
如果你只想画一条连接矢量中的点的折线,你可以简单地迭代矢量元素,然后使用opencv line(http://docs.opencv.org/modules/core/doc/drawing_functions.html#line)函数在两个点之间画一条线。
slsn1g293#
在从点的向量转换为轮廓的向量之后使用drawContours。
drawContours
vector <vector <Point>> contours; contours.push_back(VectorPoints); cv::drawContours(matDraw, contours, -1, Scalar(0, 255, 0));
3条答案
按热度按时间r6l8ljro1#
手动执行:
或者在这些坐标上画圆:
hwamh0ep2#
如果你只想画一条连接矢量中的点的折线,你可以简单地迭代矢量元素,然后使用opencv line(http://docs.opencv.org/modules/core/doc/drawing_functions.html#line)函数在两个点之间画一条线。
slsn1g293#
在从点的向量转换为轮廓的向量之后使用
drawContours
。