IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 人工智能 -> OpenCV绘制图像及写文字 -> 正文阅读

[人工智能]OpenCV绘制图像及写文字

OpenCV绘制图像及写文字

一、绘制直线

void line ()
{
    Mat mat;
    mat=cv::imread("图像地址");
    Point p1=Point(20,30);
    Point p2;
    p2.x=300;
    p2.y=300;
    Scalar color=Scalar(0,0,255);
    line(mat,p1,p2,color,1,LINE_8);//p1,p2是线段的两端的坐标,color是线段颜色,1是线段粗细,LINE_8不用管,可以默认
}

二、绘制矩形

void rectangle ()
{
    Mat mat=cv::imread("图像路径",读取图像的方式);
    Rect rect=Rect(200,200,300,300);//前面两个是左上角坐标,后面是矩形的长和宽
    Scalar color=Scalar(255,0,0);
    rectangle(mat,rect,color,2,LINE_8);
}

三、绘制椭圆

void ellipse ()
{
    Mat mat=cv::imread("图像路径",读取图像方式);
    Scalar color=Scalar(255,0,0);
    ellipse(mat,Point(mat.cols/2,mat.rovs/2),Size(mat.cols/4,mat.rovs/8),90,0,360,color,2,LINE_8);//Point为椭圆中心坐标,Size为长轴短轴大小,90为椭圆倾斜程度,0和360为弧度范围,若为0和180则为半个弧

}

四、绘制圆

void circle ()
{
    Mat mat=cv::imread("图像路径",读取图像方式);
    Scalar color=Scalar(0,255,255);
    Point center=Point(mat.cols/2,mat.rovs/2);
    circle(mat,center,150,color,2,LINE_8);//center为圆心位置,150为半径
}

五、绘制多边形

void polygon ()
{
    Mat mat=cv::imread("图像路径",读取图像方式);
    Point pts[1][5];
    pts[0][0]=Point(100,100);
    pts[0][1]=Point(100,100);
    pts[0][2]=Point(100,100);
    pts[0][3]=Point(100,100);
    pts[0][4]=Point(100,100);

    const Point* ppts[]={pts[0]};
    int npt[]={5};
    Scalar color=Scalar(0,255,255);
    fillPoly(mat,ppts,npt,1,color,LINE_8);
}

六、绘制随机线

void f ()
{
    Mat mat=cv::imread("图像路径",读取图像方式);
    RNG rng(12345);
    Point pt1;
    Point pt2;
    Mat bg=Mat::zeros(mat.size(),mat.type());
    for(int i=0;i<100000;++i)
    {
        pt1.x=rng.uniform(0,mat.cols);
        pt2.x=rng.uniform(0,mat.cols);
        pt1.y=rng.uniform(0,mat.rows);
        pt2.y=rng.uniform(0,mat.rows);
        Scalar color=Scalar(rng.uniform(0,255),rng.uniform(0,255),rng.uniform(0,255));
        if(waitKey(50)>0)
            break;
        line(bg,pt1,pt2,color,1,LINE_8);
        cv::imshow("line_picture",bg);
    }


}

七、写文字

Mat mat=cv::imread("图像路径",读取图像方式);
putText(mat,"文字内容",Point(300,300),字体,1.0,Scalar(0,0,255),3,LINE_8);//Point为字体左下角的坐标,1.0这个值越大字越大,3为字体的粗细

  人工智能 最新文章
2022吴恩达机器学习课程——第二课(神经网
第十五章 规则学习
FixMatch: Simplifying Semi-Supervised Le
数据挖掘Java——Kmeans算法的实现
大脑皮层的分割方法
【翻译】GPT-3是如何工作的
论文笔记:TEACHTEXT: CrossModal Generaliz
python从零学(六)
详解Python 3.x 导入(import)
【答读者问27】backtrader不支持最新版本的
上一篇文章      下一篇文章      查看所有文章
加:2021-08-06 09:37:50  更:2021-08-06 09:43:38 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年5日历 -2024/5/4 21:42:16-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码