opencv 绘制形状和文字文字

在这里插入图片描述在这里插入图片描述在这里插入图片描述



//画线
void DrawLine(Mat m)
{
    Point pt1(20,30);
    Point pt2(80,80);
    Scalar color(0,0,255);
    line(m,pt1,pt2,color,1,LINE_AA);
}
void DrawRectangle(Mat m)
{
    Rect rect(100,100,200,200);
    Scalar color(0,255,0);

    rectangle(m,rect,color,2,LINE_8);//画矩形
}
//画椭圆
void DrawEllipse(Mat m)
{
    Scalar color(0,255,0);
    ellipse(m,Point(m.cols/2,m.rows/2),Size(m.cols/4,m.rows/8),180,0,180,color,1,LINE_AA);
}

void DrawCircle(Mat m)
{
    Scalar color(0,255,0);
    Point pt(m.cols/2,m.rows/2);
    circle(m,pt,150,color,3,LINE_AA);
}
//画多边形
void DrawPolygon(Mat m)
{
    Point pts[1][5];
    pts[0][0]=Point(100,100);
    pts[0][1]=Point(100,200);
    pts[0][2]=Point(250,200);
    pts[0][3]=Point(300,100);
    pts[0][4]=Point(100,100);

    const Point *ppts[]={pts[0]};
    int npt[]={5};
    Scalar color(0,255,0);
    Scalar color1(0,0,255);
    fillPoly(m,ppts,npt,1,color,8);
   
    //画文本
    putText(m,"hello mm",Point(50,50),CV_FONT_NORMAL,2.0,color1,3,16);
}

void DrawRandomLine(Mat m)
{
    RNG rng(123456);//随机数
    Point pt1;
    Point pt2;

    Mat m1=Mat::zeros(m.size(),m.type());
    int i=1000;
    while (i) {
        pt1.x=rng.uniform(0,m.cols);
        pt1.y=rng.uniform(0,m.rows);
        pt2.x=rng.uniform(0,m.cols);
        pt2.y=rng.uniform(0,m.rows);
        Scalar color=Scalar(rng.uniform(0,255),rng.uniform(0,255),rng.uniform(0,255));
        line(m1,pt1,pt2,color,1,LINE_8);
        imshow("m1",m1);
        --i;
    }
}




int main()
{
  	Mat src=imread("./1/3.jpg");
    if(!src.data)
        return -1;
     // DrawLine(src);
    //  DrawRectangle(src);
    //  DrawEllipse(src);
    //  DrawCircle(src);
    // DrawPolygon(src);
    DrawRandomLine(src);
    imshow("src",src);

}

画线 圆 椭圆 多边形 文字

在这里插入图片描述

随机画线,颜色随机

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值