python drawline_基于python,OPenCv中基本的绘图函数
(一)OpenCv中,python接口的基本的绘图函数
1-用于绘制直线的--------cv2.line()函数
2-用于绘制椭圆的--------cv2.ellipse()函数
3-用于绘制矩形的--------cv2.rectangle()函数
4-用于绘制圆的-----------cv2.circle()函数
5-用于绘制多边形的----cv2.fillploy()函数
6-用于绘制文本的------cv2.putText()函数
#coding:utf-8
#===================================================================================================
#文件说明:
# 第三节:基本图形的绘制
#开发环境:
# Ubuntu14.04+Python2.7+IDLE+IPL
#时间地点:
# 陕西师范大学 2016.11.19
#作 者:
# 九月
#===================================================================================================
import numpy as np #[1]导入python中的数值分析,矩阵运算的程序库模块
import cv2 #[2]导入OpenCv程序库模块
from matplotlib import pyplot as plt #[3]仅仅导入了matplotlib绘图程序库中的一个子模块
'''【模块1】定义一个画直线的函数'''
#1--img--------[1]画直线的图片
#2--start------[2]直线的起点
#3--end--------[3]直线的终点
#4--(255,0,0)--[4]直线的颜色
#5--thickness--[5]直线的粗细
#6--lineType---[6]直线的类型--实线,虚线
def DrawLine(srcImg,start,end):
thickness = 2
lineType = 8
cv2.line(srcImg,start,end,(255,0,0),thickness,lineType)
'''【模块2】定义一个画矩形的函数'''
#1--画一个矩形的时候,只需要知道两点:左上角定点和右下角定点
#2--画一个矩形,只需要知道两个Point
def DrawRectangle(srcImg,leftTopPoint,rightButtomPoint):
thickness = 2
lineType = 8
cv2.rectangle(srcImg,leftTopPoint,rightButtomPoint,(0,0,255),thickness,lineType)
'''【模块3】画圆'''
#1--画圆,我们只需要知道原型的中心和半径的大小
def DrawCircle(srcImg,centerPoint,radius):
thickness = 2
lineType = 8
cv2.circle(srcImg,centerPoint,radius,(0,255,0),thickness,lineType)
'''【模块4】画椭圆'''
def DrawEllipse(srcImg,centerPoint,radius,angle):
thickness =2
lineType =8
cv2.ellipse(srcImg,centerPoint,radius,angle,0,360,(255,255,0),thickness,lineType)
srcImg = np.zeros((512,512,3),np.uint8) #[1]创建一个width*heigth=512*512的数通道的黑色彩色图片
DrawLine(srcImg,(0,0),(511,511)) #[2]画直线
DrawLine(srcImg,(0,100),(511,511))
DrawRectangle(srcImg,(10,10),(300,300)) #[3]画矩形
DrawCircle(srcImg,(255,255),100) #[4]画圆
DrawCircle(srcImg,(255,255),200)
DrawEllipse(srcImg,(255,255),(150,20),0) #[5]画椭圆,中心点(255,255),长半轴150,短半轴20,旋转角度0
DrawEllipse(srcImg,(255,255),(150,20),45) #[5]画椭圆,中心点(255,255),长半轴150,短半轴20,旋转角度45
DrawEllipse(srcImg,(100,255),(150,20),135) #[5]画椭圆,中心点(100,255),长半轴150,短半轴20,旋转角度45
#[6]在图片上绘制字体
cv2.putText(srcImg,"I am Maweifei,OPenCv",(0,500),cv2.FONT_HERSHEY_SIMPLEX,1,(255,0,255),2,8)
cv2.namedWindow("[srcImg]")
cv2.moveWindow("[srcImg]",10,10)
cv2.imshow("[srcImg]",srcImg)
cv2.waitKey(0)
cv2.destroyWIndow("[srcImg]")
python drawline_基于python,OPenCv中基本的绘图函数相关推荐
- python用函数绘制椭圆_详解opencv中画圆circle函数和椭圆ellipse函数
1. void ellipse(InputOutputArray img, Point center, Size axes, double angle, double startAngle, doub ...
- Python之pandas:pandas中to_csv()、read_csv()函数的index、index_col(不将索引列写入)参数详解之详细攻略
Python之pandas:pandas中to_csv().read_csv()函数的index.index_col(不将索引列写入)参数详解之详细攻略 目录 pandas中to_csv().read ...
- c++ python opencv_ubuntu下C++与Python混编,opencv中mat类转换
C++ 与 Python 混编 因为赶项目进度,需要使用到深度学习的内容,不过现有的深度学习框架大多使用python代码,对于不会改写C++的朋友来说,需要耗费大量的时间去改写,因此,使用python ...
- python系统-基于Python搭建Django后台管理系统
一个好的项目数据库管理后台是必须的,今天代码君教大家搭建Django网站后台,当然做网站后台的前提是需要有Python以及Django的开发环境,至于如何搭建这些开发环境,请查看我的上一篇文章 Mac ...
- python篮球-基于Python/Java的人工智能篮球训练系统的制作方法
本发明涉及信息技术领域,尤其涉及一种基于Python/Java的人工智能篮球训练系统. 背景技术: 人工智能的发展已经开始渗透到各行各业.经过发明人的研究和检索,发现作为篮球训练,已经有专利申请.其中 ...
- 【Python】基于Python获取链家小区房价信息及其POI数据
文章目录 1 简介 2 效果展示 3 分析网页 4 代码思路 5 完整代码 6 相关文章 1 简介 本来要先发在csdn上的,但是之前学弟催我给他公众号写点东西,我就把这篇博客首发在他的公众号上,现在 ...
- (附源码)python+mysql+基于python的学生成绩管理系统 毕业设计071143
Django学生成绩管理 摘 要 在国家重视教育影响下,教育部门的密确配合下,对教育进行改革.多样性.质量等等的要求,使教育系统的管理和运营比过去十年前更加理性化.依照这一现实为基础,设计一个快捷而又 ...
- python+mysql+基于python的学生成绩管理系统 毕业设计-附源码071143
Django学生成绩管理 摘 要 在国家重视教育影响下,教育部门的密确配合下,对教育进行改革.多样性.质量等等的要求,使教育系统的管理和运营比过去十年前更加理性化.依照这一现实为基础,设计一个快捷 ...
- python 模拟考试系统_Project-OTS: Online Exam System written on Python 3. 基于Python 3的在线考试系统。...
Project-OTS Online Exam System written on Python 3. Your can first try it on ots.icystal.top. 基于Pyth ...
最新文章
- android 之Activity的五种传值方式 (在从当前Activity跳转到目标Activity时的传值方式)
- oracle 设置查询条数,SQL、MySQL、Oracle、 Sqlite、Informix数据库查询指定条数数据的方法...
- memcache如何更新mysql_使用MySQL触发器如何实现memcache自动更新
- 告诉你,Spring Boot 真是个牛逼货
- 挑战程序设计竞赛 (秋叶拓哉 / 岩田阳一 / 北川宜稔 著)
- redis rdb aof区别_Redis(三):持久化RDB,fork.copyonwrite,AOF,RDBamp;AOF混合使用
- WinDbg 命令三部曲:(一)WinDbg 命令手册
- Linux 中显示所有正在运行的进程
- Windows XP操作系统中的禁忌
- html/jsp下载Excel文件
- 从“五种权力论”说新人入职要点
- backtrack常用的一些综合扫描工具实例用法
- 解决Windows无法加载中文(中国)-王码五笔输入法(任何输入法都行) 键盘的布局的方法...
- 数学建模(十)博弈论
- 暗影精灵3 黑苹果macOS BigSur 11.2.3 EFI
- ios和linux共享的笔记软件,超好用!5款完全免费、支持全平台的笔记软件
- 免费网站建设应该要掌握哪些?
- Android系统内存优化
- Knowledge graph, Freebase, Wikidata三大知识图谱
- 不打开Excel文件读取工作表名(ADOX)
热门文章
- 微盟616零售购物节观察:私域流量增值是社交生态的真实价值
- java vue20.2.2浏览器_支持 Java 15!Java 开发工具 IntelliJ IDEA 2020.2发布
- mysql只能用一个索引_mysql只会使用到一个索引的原因
- i350t4和v2区别_I350T4V2 英特尔原装I350网卡 全新千兆电口网卡
- python解压文件_Python压缩和解压缩文件(zip/unzip)详解
- 散点图 横纵坐标_厉害了,Matplotlib还能这样画散点图!
- java中配置bean_Spring中基于Java的配置@Configuration和@Bean用法
- coreldraw的线条怎么变成圆头_别再穿到处撞的小白鞋了,这五款春夏小皮鞋,不管怎么搭配都好看...
- node与mysql开源_node与mysql的相互使用————node+mysql
- python爬虫学习(一) requests模块