iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >PythonOpenCV简单的绘图函数使用教程
  • 693
分享到

PythonOpenCV简单的绘图函数使用教程

2024-04-02 19:04:59 693人浏览 安东尼

Python 官方文档:入门教程 => 点击学习

摘要

目录1、画直线的函数是cv2.line2、画矩形的函数是cv2.rectangle3、画圆函数是cv2.circle4、画椭圆的函数是cv2.elipes5、画多边形的函数是cv2.

1、画直线的函数是cv2.line

cv2.line函数语法:

cv2.line(img,start_point,end_point,color,thickness=0)

cv2.line函数参数解释:

img:需要画的图像

start_point:直线的开头,必须是一个元组类型

end_point:直线的结尾,必须是一个元组类型

color:直线的颜色,必须是一个元组类型

thickness:直线的宽度

代码示例:

cv2.line(img,(0,0),(100,100),(0,255,0),3)

实际操作:

import cv2
import numpy as np
#读取一张画布
img=cv2.imread('1.jpg')
#在上面画线
cv2.line(img,(0,0),(100,100),(0,255,0),3)
#将画完的图像存到“.img”文件以后再显示出来
cv2.imshow('img',img)
cv2.waiTKEy(0)
cv2.destroyAllwindows()

演示结果:

2、画矩形的函数是cv2.rectangle

cv2.rectangle函数语法:

cv2.rectangle(img,point1,point2,color,thickness=0)

cv2.rectangle函数的参数解释:

img:需要画的图像

point1:矩形左上角点的坐标,必须是一个元组类型

point2:矩形右下角点的坐标,必须是一个元组类型

color:线的颜色,必须是一个元组类型

thickness:线的宽度

说明:这个函数每调用一次,就会产生一个矩形,多次调用就会产生多个矩形。

示例代码:

cv2.rectangle(img.(0,0),(128,128),(0,255,0),3)

实际操作:

import cv2
import numpy as np
#读取一张画布
img=cv2.imread('1.jpg')
#在上面画线
cv2.rectangle(img,(0,0),(128,128),(0,255,0),3)
#将画完的图像存到“.img”文件以后再显示出来
cv2.imshow('img',img)
cv2.waitKey(0)
cv2.destroyAllWindows()

结果演示:

上面的两个实例中,颜色都是我们固定好的,那么我们想要一个随机颜色的图形,该怎么做呢?

import cv2
import numpy as np
img = np.zeros((512,512,3),np.uint8)#创建一个黑色的画布,大小为512*512像素,通道数为3
flag=1#跳出外层循环
while flag:
    for a in range(0,256):
        cv2.rectangle(img,(350,0), (500,128),(a,255-a,a),3)
        cv2.namedWindow('image',cv2.WINDOW_NORMAL)
        cv2.resizeWindow('image',(1000,1000))#调整屏幕大小
        cv2.imshow('image',img)
        if cv2.waitKey(1)==ord('q'):
            flag-=1#跳出while循环
            break#跳出for循环
cv2.destroyAllWindows()

渐变图: 

3、画圆函数是cv2.circle

cv2.circle的语法:

cv2.circle(img,center,R,color,thickness=0)

cv2.circle函数的参数解释

img:要画的图像

center:圆心坐标,必须是一个元组类型

R:圆的半径

color:颜色,必须是一个元组类型

thickness:线宽

示例代码:

cv2.circle(img,(100,100),100,(0,255,2),-1)
#画圆的时候,-1表示向内填充颜色

实际操作:

import cv2
import numpy as np
img = cv2.imread('1.jpg')
img=cv2.circle(img,(100,100),100,(0,255,0),-1)
cv2.imshow('img',img)
cv2.waitKey(0)
cv2.destroyAllWindows()

结果演示:

4、画椭圆的函数是cv2.elipes

cv2.elipes函数的语法:

cv2.ellipes(img,center,(a,b),direction,angle_start,angle_end,color,thickness)

cv2.elipes函数的参数解释:

img:要画的图像

center:椭圆的中心位置

(a,b):长轴和短轴

direction:顺时针方向的旋转角度

angle_start:画椭圆开始的角度

angle_end:画椭圆结束的角度

color;线的颜色

thickness:线的宽度

示例代码:

cv2.ellipese(img,(256,256),(100,50),0,0,360,(0,255,0),-1)

实际操作:

import cv2
import numpy as np
img = cv2.imread('1.jpg')
img=cv2.ellipse(img,(100,100),(100,80),0,0,360,(0,255,0),-1)
cv2.imshow('img',img)
cv2.waitKey(0)
cv2.destroyAllWindows()

换个角度:(0,270)

import cv2
import numpy as np
img = cv2.imread('1.jpg')
img=cv2.ellipse(img,(100,100),(100,80),0,0,270,(0,255,0),-1)
cv2.imshow('img',img)
cv2.waitKey(0)
cv2.destroyAllWindows()

在顺时针旋转30:

(direction = 30)

import cv2
import numpy as np
img = cv2.imread('1.jpg')
img=cv2.ellipse(img,(100,100),(100,80),30,0,270,(0,255,0),-1)
cv2.imshow('img',img)
cv2.waitKey(0)
cv2.destroyAllWindows()

5、画多边形的函数是cv2.polylines

cv2.polylines语法:

cv2.polylines(img,pts,isClosed,color,thickness=0)

cv2.polylines函数参数解释:

img:要画的图像

pts:点的集合,以列表的形式填入

isClosed:多边形是否闭合,如果为False则不闭合,如果为True则闭合。

color:线的颜色

thickness:线的宽度

代码示例:

import cv2
import numpy as np
img =np.zeros((256,256,3),np.uint8)
pts=np.array([[10,3],[48,19],[60,3],[98,19]],np.int32)#注意格式必须是int32
pts=pts.reshape((-1,1,2))
#reshape的第一个参数为-1,表明这一维度的长度是根据后面的维度计算出来的
cv2.polylines(img,[pts],True,(0,255,255),2)
cv2.imshow('img',img)
cv2.waitKey(0)
cv2.destroyAllWindows()

结果显示:

6、添加文字的函数是cv2.putText

cv2.putText函数语法:

cv2.putText(img,text,org,fontFace,fontScale,color,thickness,lineType)

cv2.putText函数参数解释

img:要添加文字的背景图

text:添加的文字

org:添加文字的位置

fontFace:字体

fontScale:字号大小

color:字的颜色

thickness:线条的宽度

lineType:线条的种类

示例代码:

cv2.putText(img,'python+OpenCV',(10,40),font,1,(255,255,255),2,cv2.LINE_AA)

实际操作:

import cv2
import numpy as np
img =np.zeros((256,256,3),np.uint8)
font=cv2.FONT_HERSHEY_SIMPLEX
cv2.putText(img,"OpneCV",(10,40),font,1,(255,255,255),2,cv2.LINE_AA)
cv2.namedWindow('image',cv2.WINDOW_NORMAL)
cv2.resizeWindow('image',750,750)
cv2.imshow('img',img)
cv2.waitKey(0)
cv2.destroyAllWindows()

以上就是Python OpenCV简单的绘图函数使用教程的详细内容,更多关于Python OpenCV绘图函数的资料请关注编程网其它相关文章!

--结束END--

本文标题: PythonOpenCV简单的绘图函数使用教程

本文链接: https://www.lsjlt.com/news/162016.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • PythonOpenCV简单的绘图函数使用教程
    目录1、画直线的函数是cv2.line2、画矩形的函数是cv2.rectangle3、画圆函数是cv2.circle4、画椭圆的函数是cv2.elipes5、画多边形的函数是cv2....
    99+
    2024-04-02
  • iReport简单使用方法图文教程
    iReport是一个能够创建复杂报表的开源项目,它100%使用Java语言编写,是目前全球最为流行的开源报表设计器,由于它丰富的图形界面,你能够很快的创建出任何一种你想要的报表。 i...
    99+
    2024-04-02
  • butterfly简单使用教程
    butterfly 可以让你在浏览器中显示日常终端,喜欢吗?一起来试试吧。安装butterfly...
    99+
    2023-06-05
  • w3af简单使用教程
    w3af简单使用教程w3af是一个Web应用程序***和检查框架.该项目已超过130个插件,其中包括检查网站爬虫,SQL注入(SQL Injection),跨站(XSS),本地文件包含(LFI),远程文件包含(RFI)等.该项目的目标是要建...
    99+
    2023-01-31
    简单 教程 w3af
  • MySQL使用简单教程
    本文通过演示如何使用MySQL客户机程序创建和使用一个简单的数据库,允许连接到MySQL服务器、运行查询和查看结果。 mysql也可以在批处理模式下使用:预先将查询放在文件中,然后告诉mysql执行文件的内容。 要查看mysql提供的选项列...
    99+
    2023-08-17
    mysql 服务器 数据库
  • 如何使用Python绘制简单的折线图
    这篇文章主要讲解了“如何使用Python绘制简单的折线图”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“如何使用Python绘制简单的折线图”吧!创建RandomWalk类为模拟随机漫步,我们...
    99+
    2023-07-04
  • PythonPandas工具绘制数据图使用教程
    目录背景介绍折线图条形图水平条形图堆积图散点图饼图蜂巢图箱线图绘制子图背景介绍 Pandas的DataFrame和Series在Matplotlib基础上封装了一个简易的绘图函数,使...
    99+
    2024-04-02
  • C# Chart 简单使用教程
    Chart控件可以用来绘制波形图、柱状图、饼图、折线图等,用来进行数据表现是很不错的,现在简单说一下这个控件的使用方法 XAML: <Window x:Class="WpfA...
    99+
    2022-11-21
    C# Chart使用 C# Chart
  • .NET HttpClient简单使用教程
    创建一个名为HttpClientTest的Web API项目 新建Clients文件夹,用于存放自定义的HttpClient 在Clients下新建一个MyHttpClient类...
    99+
    2024-04-02
  • Docker swarm 简单使用教程
    swarm 三台虚拟机 132,133,134 1.初始化一个集群 并把自己加入集群中 # 初始化主节点 docker swarm init --advertise-addr 1...
    99+
    2024-04-02
  • Navicat For MySQL的简单使用教程
    1.前提是必须先安装好MySQL数据库(Mac下安装MySQL数据库见前一篇) 2.安装Navicat 3.点击navicate左上角:连接->MySQL->先测链接下,如果提示连接成功,就可以...
    99+
    2024-04-02
  • Python数据可视化之使用matplotlib绘制简单图表
    目录一、绘制折线图二、绘制柱形图或堆积图形三、绘制条形图或堆积条形图 四、绘制堆积面积图五、绘制直方图六、绘制饼图或者圆环图 七、绘制散点图或气泡图八、绘制箱形图...
    99+
    2024-04-02
  • UsbEAm Hosts Editor简单使用教程
    USBAM Hosts Editor是一个用于编辑Windows主机文件的工具。它可以帮助用户轻松地添加、编辑或删除主机文件中的条目...
    99+
    2023-09-21
    使用
  • Pygame Draw绘图函数的具体使用
    Pygame 中提供了一个draw模块用来绘制一些简单的图形状,比如矩形、多边形、圆形、直线、弧线等。 pygame.draw模块的常用方法如下表所示: ...
    99+
    2024-04-02
  • 使用Python matplotlib绘制简单的柱形图、折线图和直线图
    目录介绍1、柱形图2、直线图3、折线图总结介绍 Matplotlib 可能是 Python 2D-绘图领域使用最广泛的套件。它能让使用者很轻松地将数据图形化,并且提供多样化的输出格式...
    99+
    2024-04-02
  • 数据可视化——用python绘制简单的折线图
    文章目录 前言JSON使用 pyecharts 模块绘制折线图下载 pyecharts 模块使用 pyecharts 模块绘制简单的折线图添加配置选项 前言 前面我们已经学习了pyt...
    99+
    2023-09-01
    信息可视化 python 开发语言
  • SpringBoot配置使用H2数据库的简单教程
    目录如何操作 依赖yml配置生成内存数据库H2 第一种: 第二种 持久化 如何操作 依赖 <dependency> <groupId>org.s...
    99+
    2024-04-02
  • python-docx的简单使用示例教程
    python-docx的简单使用 ''' 设置表格所有单元格的四个边为0.5磅,黑色,实线 可以使用返回值,也可以不使用 ''' def 设置表格网格线为黑色实线(table_obj...
    99+
    2023-05-18
    python-docx使用 python-docx
  • python中turtle库的简单使用教程
    Turtle库是Python中的一个绘图库,它可以在画布上绘制各种形状和图案。下面是一个简单的使用教程:1. 导入turtle库:在...
    99+
    2023-08-17
    Python
  • Qt Creator使用教程的简单说明
    目录Qt Creator 欢迎界面Qt Creator 新建项目1)左边栏2) 代码编辑器Qt Creator 编辑 UIQt Creator 生成和运行程序Qt 在很长的一段时间内...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作