作者:gnuhpc
出处:http://www.cnblogs.com/gnuhpc/

#include "highgui.h"
#include "cv.h"
#include <iostream>
#include <iomanip>using namespace std;#define thickness 2//线条粗细
#define line_type CV_AA//抗锯型直线int main()
{
CvScalar color=CV_RGB(255,158,97);//按RGB顺序排列
CvPoint pt1_Rect,pt2_Rect;//确定对角线上的两点
CvPoint center;//确定笑脸中心
int radius=0;//笑脸的半径//Eye
CvPoint center_l_eye;
CvPoint center_r_eye;//定义两眼的中心
CvSize axes_eye;//定义左右眼大小
double angle_l_eye=15;//左眼的偏转角,正数表示逆时针,附属为顺时针
double angle_r_eye=-15;double start_angle_eye=0;
double end_angle_eye=360;//Mouth
CvPoint pt1_l_mouth;
CvPoint pt2_l_mouth;
CvPoint pt1_r_mouth;
CvPoint pt2_r_mouth;//嘴角的点CvSize axes_mouth;
double angle_mouth=0;double start_angle_mouth=0;
double end_angle_mouth=360;//画图初始化
IplImage *img=cvCreateImage(cvSize(600,600),IPL_DEPTH_8U,3);
cvNamedWindow("image",CV_WINDOW_AUTOSIZE);//画外围边框
pt1_Rect.x=0;
pt1_Rect.y=0;
pt2_Rect.x=600;
pt2_Rect.y=600;
color=CV_RGB(97,158,255);
cvRectangle(img,pt1_Rect,pt2_Rect,color,CV_FILLED,line_type,0);//笑脸的轮廓
color=CV_RGB(255,158,97);
center.x=300;
center.y=300;
radius=200;
cvCircle(img,center,radius,color,CV_FILLED,line_type,0);//画眼睛
color=CV_RGB(156,25,255);
center_l_eye.x=240;
center_l_eye.y=200;
center_r_eye.x=360;
center_r_eye.y=200;
axes_eye.width=16;
axes_eye.height=30;
angle_l_eye=10;
angle_r_eye=-5;
start_angle_eye=0;
end_angle_eye=360;cvEllipse(img,center_l_eye,axes_eye,angle_l_eye,start_angle_eye,end_angle_eye,
color,CV_FILLED,line_type,0);//画左眼
cvEllipse(img,center_r_eye,axes_eye,angle_r_eye,start_angle_eye,end_angle_eye,
color,CV_FILLED,line_type,0);//画右眼//画嘴巴
pt1_l_mouth.y=300;
pt1_l_mouth.x=150;
pt2_l_mouth.y=270;
pt2_l_mouth.x=180;
pt1_r_mouth.y=270;
pt1_r_mouth.x=400;
pt2_r_mouth.y=300;
pt2_r_mouth.x=430;
axes_mouth.width=130;
axes_mouth.height=100;
start_angle_mouth=150;
end_angle_mouth=347;
angle_mouth=10;//左右嘴角
cvLine(img,pt1_l_mouth,pt2_l_mouth,color,4,line_type,0);
cvLine(img,pt1_r_mouth,pt2_r_mouth,color,4,line_type,0);//嘴巴的圆弧
cvEllipse(img,center,axes_mouth,angle_mouth,start_angle_mouth,
end_angle_mouth,color,4,line_type,0);
cvShowImage("image",img);
cvWaitKey(0);
cvSaveImage("smile.jpg",img);
cvReleaseImage(&img);
}

【OpenCV学习】用绘图函数画一个奥运志愿者笑脸徽章相关推荐

  1. 用emWin的2D绘图函数画一个带圆形端点的环形进度条

    先上效果图,首先是顺时针转: 然后是逆时针转: 大概讲一下思路吧,首先讲一下顺时针是怎么弄的,很简单. 画圆弧函数GUI_DrawArc有起始角度a0和终止角度a1两个参数,且a0必须小于a1否则无法 ...

  2. 拜师————python基础入门——守破离学习法,海龟绘图,画出奥运五环图,day3

    第六节课:任务6:006.简单错误如何处理_守破离学习法_程序员修炼手册 刚刚开始学习python,编程常常会出现一系列错误,建议采用一种学习方法来学习: 守 破 离 (这个是学习常识) 老师出的书: ...

  3. python_海龟绘图_画出奥运五环图---python工作笔记014

    然后我们再用海龟绘图去,画个奥运五环 去新建一个文件 首先引入turtle海龟绘图程序包

  4. opencv图像处理-常见绘图函数

    介绍 opencv 中常用的一些绘图函数 cv.line(),cv.circle(),cv.rectangle(),cv.ellipse(),cv.putText()等. 在上述所有功能中,有一些常见 ...

  5. opencv 学习:reshape函数

    在opencv中,reshape函数比较有意思,它既可以改变矩阵的通道数,又可以对矩阵元素进行序列化,非常有用的一个函数. 函数原型: C++: Mat Mat::reshape(int cn, in ...

  6. opencv 学习第三课 画线段 圆 椭圆 矩形 多边形 插入文字 代码注释版 保证你每一行都能读懂

    import numpy as np import cv2 as cv # 创建一张大小为512×512,通道数为3的黑色的图片 img = np.zeros((512,512,3), np.uint ...

  7. @用Python的turtle库画一个奥运五环!

    turtle库是一个非常有意思的东西,可以做一些画,安装也非常好安装,只需要在电脑中的ide中输入pip install turtle(这是Python2.0版本的安装) python3中输入pip3 ...

  8. 20200929 008.海龟绘图_画出奥运五环图

    绘制奥运五环标记 源码: #绘制奥运五环 import turtle turtle.width(10) turtle.color("blue") turtle.circle(50) ...

  9. 利用Python的turtle画一个奥运五环

    奥运五环图如下 ♥实现思路 项目需求 实现思路 需要画5个交叉的⚪ 利用turtle.circle()方法实现 五种颜色 turtle.color()方法改变颜色 画完一个⚪前往下一个点画⚪时不能有轨 ...

最新文章

  1. delphi 判断鼠标 左右_外设评测HyperX Pulsefire Haste游戏鼠标分享
  2. go语言中使用递归函数实现文件目录的遍历
  3. java 不能反序列化_java中的序列化与反序列化
  4. Canalys:尽管面临供应压力 2021年智能手机的出货量仍预计增长12%
  5. python删除首行_Python删除文件第一行
  6. 利用CSS边框合并属性打造table细边框
  7. select * from什么意思_SQL入门教程第15课:什么是内连接
  8. mysql 5.1.6 安装包_Centos6 离线安装 MySQL5.5.55-1(附带安装包及 Perl 依赖包)
  9. Dart 基础篇-所有知识点架构
  10. 一个企业老板给毕业生的十七句话
  11. 算法——排序——冒泡排序图解动画
  12. vagrant up 时提示错误 cound not open file
  13. 3DMAX场景渲染失败怎么办?
  14. ansible模块专项练习题
  15. 敌兵布阵——线段树单点修改区间查询
  16. 计算机属性没有共享,win10系统本地连接属性里没有共享选项的具体方案
  17. 生病原来不是因为缺药,而是因为缺营养
  18. vs 2022连接MySQL数据库
  19. .NET接入UnionPay银联支付(一)手机wap支付
  20. 欧尼酱讲JVM(02)——类的加载过程

热门文章

  1. 大数据发现非法传销网络
  2. 【小程序】Web-View 小程序跳转外部链接
  3. SQL 清空表数据的方法
  4. int转long Long型
  5. 蒙特卡洛算法的MATLAB实现
  6. 托福高频真词List14 // 附托福TPO阅读真题
  7. 年报下载及词频统计构建指标
  8. ant-design-vue antd-theme-webpack-plugin 动态改变主题
  9. win10 cmd open camera
  10. flappy bird 简易版