opencv 提供了绘制直线、圆形、矩形等基本绘图的功能
1、绘直线
cv2.line(画布,起点坐标,终点坐标,颜色,宽度)
例如:
cv2.line(image,(20,60),(300,400),(0,0,255),2)
2、绘矩形
cv2.rectange(画布,起点,终点,颜色,宽度)
若宽度大于0,标识边线宽度;如果小于0,表示画实心矩形
cv2.rectange(image,(20,60),(300,400),(255,0,0),-1)
3、绘圆形
cv2.circle(画布,圆心坐标,半径,颜色,宽度)
若宽度大于0,标识边线宽度;如果小于0,表示画实心圆行
cv2.circle(image,(300,300),40,(0,255,0),2)
4、绘多边形
cv2.polylines(画布,点坐标列表,封闭,颜色,宽度)
点坐标列表是一个numpy类型的列表,需要导入numpy 包
import numpy
创建点坐标: pts = numpy.array([[20,60],[300,280],[150,200]],numpy.int32)
cv2.rectange(image,[pts],True,(0,0,255),2)
5、添加文字
cv2.putText(画布,文字,位置,字体,大小,颜色,文字粗细)
字体:
cv2.FONT_HERSHEY_SIMPLEX 正常尺寸的sans-serif字体
cv2.FONT_HERSHEY_SPLAIN 小尺寸的sans-serif字体
cv2.FONT_HERSHEY_COMPLEX 正常尺寸的serif字体
cv2.FONT_HERSHEY_SCREIPT_SIMPLEX 手写字体风格
例如:
cv2.putText(image,'apple',(350,200),cv2.FONT_HERSHEY_SIMPLEX,1,(255,0,0),2)
import cv2
import numpy cv2.namedWindow("Image") #创建窗口 img = cv2.imread('ver.jpg') #读取图像 cv2.line(img,(50,50),(300,300),(255,0,0),2) #画直线 cv2.rectangle(img,(500,20),(580,100),(0,255,0),-1) #画矩形 cv2.circle(img,(500,300),40,(255,255,0),-1) #画圆形 pts = numpy.array([[300,300],[300,340],[350,320]],numpy.int32) #用numpy形成坐标列表
cv2.polylines(img,[pts],True,(0,255,255),2) #画多边形 cv2.putText(img,'测试',(350,420),cv2.FONT_HERSHEY_SIMPLEX,1,(255,232,133),2) cv2.imshow('Image',img)
cv2.waitKey(0)
cv2.destroyWindow("Image") #关闭窗口
polylines
python之OpenCv(三)---基本绘图的更多相关文章
-
Python 图像处理 OpenCV (16):图像直方图
前文传送门: 「Python 图像处理 OpenCV (1):入门」 「Python 图像处理 OpenCV (2):像素处理与 Numpy 操作以及 Matplotlib 显示图像」 「Python ...
-
OpenCV中的绘图函数-OpenCV步步精深
OpenCV 中的绘图函数 画线 首先要为画的线创造出环境,就要生成一个空的黑底图像 img=np.zeros((512,512,3), np.uint8) 这是黑色的底,我们的画布,我把窗口名叫做i ...
-
Python下opencv使用笔记(一)(图像简单读取、显示与储存)
写在之前 从去年開始关注python这个软件,途中间间断断看与学过一些关于python的东西.感觉python确实是一个简单优美.easy上手的脚本编程语言,众多的第三方库使得python异常的强大. ...
-
Python调用OpenCV读显写
OpenCV提供了python的接口,而且很重要的一点是python下的很多接口名与C++的接口名是一样的,这一篇先记录python调用OpenCV去读取图像.显示图像和保存图像. 1.OpenCV读 ...
-
Python 图像处理 OpenCV (2):像素处理与 Numpy 操作以及 Matplotlib 显示图像
前文传送门: 「Python 图像处理 OpenCV (1):入门」 普通操作 1. 读取像素 读取像素可以通过行坐标和列坐标来进行访问,灰度图像直接返回灰度值,彩色图像则返回B.G.R三个分量. 需 ...
-
Python 图像处理 OpenCV (3):图像属性、图像感兴趣 ROI 区域及通道处理
前文传送门: 「Python 图像处理 OpenCV (1):入门」 「Python 图像处理 OpenCV (2):像素处理与 Numpy 操作以及 Matplotlib 显示图像」 图像属性 图像 ...
-
Python 图像处理 OpenCV (5):图像的几何变换
前文传送门: 「Python 图像处理 OpenCV (1):入门」 「Python 图像处理 OpenCV (2):像素处理与 Numpy 操作以及 Matplotlib 显示图像」 「Python ...
-
Python 图像处理 OpenCV (6):图像的阈值处理
前文传送门: 「Python 图像处理 OpenCV (1):入门」 「Python 图像处理 OpenCV (2):像素处理与 Numpy 操作以及 Matplotlib 显示图像」 「Python ...
-
Python 图像处理 OpenCV (9):图像处理形态学开运算、闭运算以及梯度运算
前文传送门: 「Python 图像处理 OpenCV (1):入门」 「Python 图像处理 OpenCV (2):像素处理与 Numpy 操作以及 Matplotlib 显示图像」 「Python ...
随机推荐
-
Alpha版使用说明书
游戏规则: 玩家是黑色的小煤球哦! 通过方向键或者ASDW,来控制小球移动(上.下.左.右). 累计时间,直到碰到了红色的小球 ...
-
开发iOS应用程序需要的工具和编程技术
似乎每个iOS应用开发学习者都是从这篇文章开始写博客的,我也不例外,也从这里写吧,内容雷同,但绝对是原创.因为一直相信,通过自己的理解写出来,是掌握技术一个很好的途径. Xcode苹果最为优秀的集成开 ...
-
ORACLE 定时任务JOB
http://www.cnblogs.com/xclw/archive/2009/12/04/1616945.html
- TCP/IP状态转换图
-
php常用的操作
一. php配置 1.禁止一些函数disable_functions = eval,assert,popen,passthru,escapeshellarg,escapeshellcmd,passt ...
-
Asteroids(最小点覆盖)
Asteroids Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 18183 Accepted: 9905 Descri ...
-
小程序展开收缩文字demo
demo效果图: wxml 代码: <view class="{{ellipsis?'ellipsis':'unellipsis'}}">五险一金五五险一金险险一金五五 ...
-
impala系列: 基本命令和jdbc连接
--======================= 使用impala-shell 登录 --======================= impala-shell --auth_creds_ok_i ...
-
基于Groovy+HttpRestful的超轻量级的接口测试用例配置的设计方案及DEMO实现
目标 设计一个轻量级测试用例框架,接口测试编写者只需要编写测试用例相关的内容(入参及结果校验),不需要理会系统的实现,不需要写跟测试校验无关的内容. 思路 测试用例分析 一个用例由以下部分组成: (1 ...
-
vue-11-自定义指令
用于对纯 DOM 元素进行底层操作. // 注册一个全局自定义指令 v-focus Vue.directive('focus', { // 当绑定元素插入到 DOM 中. inserted: func ...