直线:line(image,Point,Point,Scalar,thickness,Line type,shift)
image:绘制直线的图像
Point:直线的起始点
Point: 直线的结束点
Scalar:直线的颜色
thickness:线的宽度
Line type:线的类型
LINE_4 : 4邻域连接线
LINE_8 : 8邻域连接线
LINE_AA :反锯齿连接线
shift:坐标点小数点的位数
椭圆:ellipse(image,Point ,Size,angle,startAngle,endAngle,Scalar,thickness,Line type,shift)
image:绘制椭圆的图像
Point:椭圆的中心点
Size:椭圆的长半轴和短半轴的长度
angle:椭圆的旋转角度
startAngle:椭圆开始绘制的角度
endAngle:椭圆结束绘制的角度
Scalar:椭圆框的颜色
thickness:椭圆的线宽
Line type:线的类型
shift:坐标点小数点的位数
矩形:rectangle(image,Rect,Scalar,thickness,Line type,shift)
rectangle(image,Point,Point,Scalar,thickness,Line type,shift)
image:绘制矩形的图像
Rect:矩形的位置和大小
Scalar:矩形框的颜色
thickness:矩形的线宽
Line type:线的类型
shift:坐标点小数点的位数
圆形:circle(image,Point,radius,Scalar,thickness,Line type,shift)
image:绘制圆的图像
Point:圆心点
radius:圆的半径
Scalar:圆线框的颜色
thickness:圆线框的宽度
Line type:线的类型
shift:坐标点小数点的位数
绘制多边形并填充:fillPoly(image,pts,npts,ncontours,Scalar)
image:绘制多边形的图像
pts:多边形顶点集
npts:绘制多边形的定点数
ncontours:绘制多边形的数目
Scalar:多边形填充的颜色
void MyPolygon(Mat image)
{
Point pts[1][5];
pts[0][0] = Point(100, 100);
pts[0][1] = Point(300, 100);
pts[0][2] = Point(400, 200);
pts[0][3] = Point(300, 300);
pts[0][4] = Point(100, 200);
const Point* ppts[] = { pts[0] };
int npts[] = {5};
Scalar color = Scalar(188, 177, 255);
fillPoly(image, ppts, npts, 1, color);
}
文本:putText(image,text,Point,fontFace,fontScale,Scalar,thickness,Line type,bottomLeftOrigin)
image:绘制文本的图像
text:要绘制的文本
Point:中文字体左下角的坐标
fontFace:字体类型
fontScale:字体大小
Scalar:字体颜色
thickness:字体的粗细
Line type:一个可选参数,表示使用行的类型。
bottomLeftOrigin:一个可选参数,如果为true,图像数据原点位于左下角;如果为flase,它位于左上角。