博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
opencv3.2.0之绘图
阅读量:4454 次
发布时间:2019-06-07

本文共 1529 字,大约阅读时间需要 5 分钟。

//描述:包含程序所使用的头文件和命名空间

#include <opencv2/opencv.hpp>
#include "opencv2/core/core.hpp"
#include "highgui.h"
#include "opencv2/imgproc/imgproc.hpp"

using namespace cv;
using namespace std;
//宏定义部分
#define WINDOW_NAME1 "[绘制图1]"
#define WINDOW_NAME2 "[绘制图2]"
#define WINDOW_WIDTH 600

//绘制椭圆,代码分析:把图画在img上,在椭圆中心为(WINDOW_WIDTH / 2, WINDOW_WIDTH / 2),并且大小位于矩形(WINDOW_WIDTH / 4, WINDOW_WIDTH / 16)内。旋转角度为angle,扩展的弧度为0到360度。默认染色是蓝色,线宽为2,线性为9

void DrawEllipse(Mat img, double angle) {
int thickness = 2;
int lineType = 8;
ellipse(img,
Point(WINDOW_WIDTH / 2, WINDOW_WIDTH / 2),
Size(WINDOW_WIDTH / 4, WINDOW_WIDTH / 16),
angle,
0,
360,
Scalar(255, 129, 0),
thickness,
lineType);
}

//绘制实心圆,把图画在img上,圆中心为WINDOW_WIDTH / 32,Scalar(0, 0, 255)颜色为红色,线宽为2,线性为9

void DrawFilledCircle(Mat img, Point center) {
int thickness = -1;
int lineType = 8;
circle(img,
center,
WINDOW_WIDTH / 32,
Scalar(0, 0, 255),
thickness,
lineType);
}
//主函数
int main(void) {
//创建空白的MAT图像
Mat atomImage = Mat::zeros(WINDOW_WIDTH,WINDOW_WIDTH,CV_8UC3);
Mat rookImage = Mat::zeros(WINDOW_WIDTH, WINDOW_WIDTH, CV_8UC3);
//先绘制出椭圆
DrawEllipse( atomImage,90);
DrawEllipse(atomImage, 0);
DrawEllipse(atomImage, 45);
DrawEllipse(atomImage, -45);
//再绘制圆心
DrawFilledCircle(atomImage,Point(WINDOW_WIDTH/2,WINDOW_WIDTH/2));
//显示图像
imshow(WINDOW_NAME1,atomImage);
cvMoveWindow(WINDOW_NAME1,0,200);
/*imshow(WINDOW_NAME2, rookImage);
cvMoveWindow(WINDOW_NAME2, WINDOW_WIDTH, 200);*/
waitKey(0);
return 0;
}

注意:在编写函数时必须注意把函数写在主函数上,才能正确调用。

转载于:https://www.cnblogs.com/alpqmz/p/7502770.html

你可能感兴趣的文章
[cnblog新闻]历史性时刻:云硬件支出首次高于传统硬件
查看>>
[转帖]Oracle dba_objects和all_objects 最大的区别
查看>>
【转帖】国产x86处理器KX-6000发布
查看>>
RSA算法及其在iOS中的使用
查看>>
04-js的运算符
查看>>
第三天 while循环 及其用法
查看>>
Delphi 10 seattle 去掉自带的代码连接线
查看>>
构建高并发高可用的电商平台架构实践(转)
查看>>
Geometry Imager Viewport Filter
查看>>
Guava API学习之Optional 判断对象是否为null
查看>>
九度oj 题目1025:最大报销额
查看>>
数字及字符串
查看>>
【转载】OmniGraffle (二)基础绘图和模具
查看>>
一些提高开发效率的 Category
查看>>
拓扑排序基础题——排序
查看>>
搭建keepalived+mysql主从复制高可用
查看>>
假如你在每一个变化中看见崭新的自己
查看>>
转:iphone 申请证书
查看>>
电子测量作业——采用DDS(数字频率合成法)设计信号发生器 ,完成设计方案。...
查看>>
Python就业方向
查看>>