4、OPENCV 在空白图片上画圆形,矩形,线条,字符

el/2024/3/2 11:07:28

做视觉检测的过程中,少不了对被检测对象进行注释,而注释的必要条件便是在图片上绘制原形、矩形、线条及字符。

程序:

#include <iostream>
#include <opencv2/highgui.hpp> // 说是说gui 具体什么gui 不清楚
#include <opencv2/imgcodecs.hpp> // 图像头文件
#include <opencv2/imgproc.hpp> // 图像处理头文件
using namespace std;
using namespace cv;
/// Draw shapes and text     //
/// 画圆形,方形以及如何在图像上放置Text  ///  
/// 用以检测之后注明尺寸等多种功能/
int main()
{// 创建空图像  Scalar-用以定义bgrMat img(512, 512, CV_8UC3,Scalar(255,255,255)); // CV_8UC3 的意思便为CV 0-255 个 bits C-channel 即三个频道 BGRcircle(img, Point(10, 10), 10, Scalar(0, 69, 255),1);  //直径10 颜色为橙色 圆厚度为1circle(img, Point(256, 256), 155, Scalar(0, 69, 255), FILLED); // 若使用 FILLED 代替 thiness 参量则会填充整个圆rectangle(img, Point(130, 226), Point(382,286), Scalar(255,255,255), FILLED);line(img, Point(130, 296), Point(382, 296), Scalar(255, 255, 255), 2);// 放置Text 文本putText(img, "Martaza's WorkShop", Point(137, 262), FONT_HERSHEY_PLAIN,1,Scalar(0, 69, 255), 1);imshow("Image", img);waitKey(0); // 延时,0即相当于无穷大
}

运行结果:


http://www.ngui.cc/el/3574173.html

相关文章

5、OPENCV视场转换

假设我们要实现QUEEN 这张片的视觉转换&#xff0c;使图像转换之后犹如我们正面看过一样 首先打开图形编辑器分别记录这张卡片四个边角的像素点 再利用原扑克的高宽比例 3.5:2.5 重新设置新视角的四边角像素点&#xff0c;具体程序如下所示&#xff1a; #include <iostrea…

6、OPencv 颜色检测

若要在OPencv 中实现颜色检测&#xff0c;首先要将待检测图像转换到HSV颜色空间中&#xff0c;但因为颜色是一个特定的取值范围&#xff0c;并且在我们不知情的情况下&#xff0c;只能通过TrackBar 来控制颜色阈值&#xff0c;用以探究各颜色的取值范围。 程序&#xff1a; #…

11、车牌识别

本程序的目的是为了识别行驶过程中的车牌&#xff0c;并且通过.png文件将车牌照片保存在对应路径中。首先分类器导入对应xml文件接着借助分类器的detectMultiScale函数来检测车牌。 具体代码如下&#xff1a; #include <iostream> #include <opencv2/highgui.hpp>…

Qt制作简单的折线图

首先在.pro添加 QT Charts &#xff1b; 若使用的是VS编程软件&#xff0c;具体操作如下所示&#xff1a; 勾选charts文件 下面直接给出代码 #include "QtGuiApplication1.h" #include <QtWidgets/QApplication> #include <QtWidgets/QMainWindow> #…

QListWidget类的用法

本教程通过举例来讲解QListWidget的用法 首先申明一个QListWidget类&#xff0c;通过setSelectionMode&#xff08;&#xff09;&#xff0c;来设置QListWidget的Item选择模式&#xff1a; listWidget new QListWidget(this); listWidget->setSelectionMode(QAbstractIte…

VS无法打开qt中的ui文件

解决方案&#xff1a; 即可。

qt中的foreach用法

直接上代码&#xff1a; QStringList test;test.append("aaaa");test.append("bbbb");test.append("cccc");QString tempa;QString tempb;int i 0;foreach(tempa, test){qDebug() << tempa << endl;if(1i)tempb tempa;i;}qDebug()…

松下A6全闭环控制模式参数调节

使用分辨率0.05微米的绝对式光栅尺&#xff0c;导轨螺距5毫米电机。 要实现闭环控制先将 pr001 设置为 6 (全闭环控制模式) pr004设置为300 (惯量比) pr00.3设置为11(刚性设定) &#xff0c;因为需要拉动电机故将这两个参数调大 pr008 不需要设置&#xff0c;因为在闭环控制…

1、有趣的指针

1、今天发现指针数组一个有趣的现象&#xff0c;众所周知&#xff0c;数组是基于指针而生成的&#xff0c;故指针和数组是可以进行相互转换&#xff0c;如下所示&#xff1a; int num[20]; num[1] *(num1); 但指针和数组还是存在不同点&#xff0c;其中之一便是指针名称是变…

自动存储、静态存储、动态存储

自动存储 在函数内部定义的常规变量使用自动存储空间&#xff0c;被称为自动变量&#xff08;automatic variable&#xff09;&#xff0c;意味着它们所属的函数被调用时自动产生&#xff0c;在该函数结束时消亡。 自动变量是一个局部变量&#xff0c;其作用域为包含它的代码…