OpenCv实现绘图功能

 更新时间:2021年05月19日 10:41:57   作者:月疯  
这篇文章主要为大家详细介绍了OpenCv实现绘图功能,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

本文实例为大家分享了OpenCv实现绘图功能的具体代码,供大家参考,具体内容如下

绘制一个图像在上面画线:

import numpy as np
import matplotlib.pyplot as plt
import cv2
#画图
def show(image):
    plt.imshow(image)
    plt.axis('off')
    plt.show()
 
image = np.zeros((300,300,3),dtype='uint8')
 
#画线
green = (0,255,0)
cv2.line(image,(0,0),(300,300),green)#(0,0)开始点,(300,300)是结束点
#注意opencv的(0,0)点是从左上角开始的
 
blue = (0,0,225)
cv2.line(image,(300,0),(150,150),blue,5)#5表示线的宽度
 
show(image)

图像展示:

绘制一个矩形:

import numpy as np
import matplotlib.pyplot as plt
import cv2
#画图
def show(image):
    plt.imshow(image)
    plt.axis('off')
    plt.show()
 
image = np.zeros((300,300,3),dtype='uint8')
 
 
 
#画线
green = (0,255,0)
cv2.line(image,(0,0),(300,300),green)#(0,0)开始点,(300,300)是结束点
#注意opencv的(0,0)点是从左上角开始的
 
blue = (0,0,225)
cv2.line(image,(300,0),(150,150),blue,5)#5表示线的宽度
 
#绘制矩形
red=(255,0,0)
cv2.rectangle(image,(10,10),(60,60),red,2)#2表示矩形框的宽度
 
#填充
green=(0,255,0)
cv2.rectangle(image,(40,40),(100,100),green,-1)#-1表示矩形框填充
 
 
show(image)

注意:填充和非填充的矩形画法

图形展示: 

绘制一个圆形:

import numpy as np
import matplotlib.pyplot as plt
import cv2
#画图
def show(image):
    plt.imshow(image)
    plt.axis('off')
    plt.show()
 
 
#绘制圆形
white=(255,255,255)
image1 =np.zeros((300,300,3),dtype='uint8')
#设置圆心位置shape[1]表示宽度,shape[0]表示高度
(cX,cY) = image1.shape[1]//2,image1.shape[0]//2
for r in range(0,151,15):#从0循环到151,步长是15,r表示半径
    cv2.circle(image1,(cX,cY),r,white)

show(image1)

图形展示:

绘制一个填充圆形:

import numpy as np
import matplotlib.pyplot as plt
import cv2
#画图
def show(image):
    plt.imshow(image)
    plt.axis('off')
    plt.show()
 
 
#绘制圆形填充
image2=np.zeros((300,300,3),dtype='uint8')
for i in range(10):
    #半径取值
    radiu=np.random.randint(5,200)
    #颜色取值
    color=np.random.randint(0,255,size=(3,)).tolist()
    #圆心取值
    pt=np.random.randint(0,300,size=(2,))
    #画图
    cv2.circle(image2,tuple(pt),radiu,color,-1)
 
 
show(image2)

图形展示:

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • Python实现批量修改文件时间属性

    Python实现批量修改文件时间属性

    我们有时候需要修改文件的“修改时间” 、 “访问时间”,“创建时间” ,此时如果使用Python批量实现应该会方便很多,下面小编就来为大家介绍一下具体实现方法吧
    2023-11-11
  • 使用Flask-Cache缓存实现给Flask提速的方法详解

    使用Flask-Cache缓存实现给Flask提速的方法详解

    这篇文章主要介绍了使用Flask-Cache缓存实现给Flask提速的方法,结合实例形式详细分析了Flask-Cache的安装、配置及缓存使用相关操作技巧,需要的朋友可以参考下
    2019-06-06
  • Python 正则表达式(转义问题)

    Python 正则表达式(转义问题)

    这篇文章主要介绍了Python 正则表达式(转义问题),需要的朋友可以参考下
    2014-12-12
  • Python异常处理如何才能写得优雅(retrying模块)

    Python异常处理如何才能写得优雅(retrying模块)

    异常就是程序运行时发生错误的信号,下面这篇文章主要给大家介绍了关于Python异常处理的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2022-03-03
  • 用Python脚本来删除指定容量以上的文件的教程

    用Python脚本来删除指定容量以上的文件的教程

    这篇文章主要介绍了用Python脚本来删除指定容量以上的文件的教程,是Python操作文件的一个简单实践,需要的朋友可以参考下
    2015-05-05
  • Python NumPy数组裁切和数据类型的实现即原理详解

    Python NumPy数组裁切和数据类型的实现即原理详解

    这篇文章主要介绍了Python NumPy数组裁切和数据类型的实现即原理,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习吧
    2023-05-05
  • 手把手教你用Python打造互动式中秋节庆祝小程序

    手把手教你用Python打造互动式中秋节庆祝小程序

    中秋节将至,本文提供了一个使用Python开发的中秋节庆祝小程序教程,通过简单的步骤,您可以创建一个具有节日祝福、互动式灯谜游戏和模拟中秋明月动态背景的小程序,文章详细介绍了程序的功能、实现步骤以及如何运行程序,需要的朋友可以参考下
    2024-09-09
  • Python实现的栈(Stack)

    Python实现的栈(Stack)

    栈作为一种数据结构,是一种只能在一端进行插入和删除操作。这篇文章给大家介绍了Python实现的栈(Stack)的相关资料,感兴趣的朋友一起看看吧
    2018-01-01
  • Python下的Mysql模块MySQLdb安装详解

    Python下的Mysql模块MySQLdb安装详解

    在Python环境下,如果想操作MySQL数据库,难免会调用相应的包,比如常用的:MySQLdb通过导入:import MySQLdb 后,可直接调用里面的方法
    2014-04-04
  • python opencv把一张图片嵌入(叠加)到另一张图片上的实现代码

    python opencv把一张图片嵌入(叠加)到另一张图片上的实现代码

    这篇文章主要介绍了python opencv把一张图片嵌入(叠加)到另一张图片上,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-06-06

最新评论