OpenCV 图像绘制的实现

 更新时间:2021年07月14日 14:41:52   作者:琉璃灯的眷恋  
本文主要介绍了OpenCV 图像绘制的实现,主要包括直线,圆,多边形和自定义图形等,具有一定的参考价值,感兴趣的可以了解一下

+直线绘制

参数解析:(图像矩阵,直线起始坐标, 直线终止坐标、颜色、线条厚度)

import cv2
import numpy as np

img  = cv2.imread(r"./images/1.jpg")

cv2.line(img,(100,30),(210,180),color=(0,0,255),thickness=2)

cv2.imshow("pic show",img)
cv2.waitKey(0)

在这里插入图片描述

圆形绘制

参数 (图像,圆心,半径,颜色,线条厚度)

import cv2
import numpy as np

img  = cv2.imread(r"./images/1.jpg")

# cv2.line(img,(100,30),(210,180),color=(0,0,255),thickness=2)
cv2.circle(img,center=(50,50),radius=30,color=(0,0,255),thickness=2)

cv2.imshow("pic show",img)
cv2.waitKey(0)

在这里插入图片描述

矩形绘制

参数(图像,左上角坐标,右下角坐标,颜色,线条厚度)

import cv2
import numpy as np

img  = cv2.imread(r"./images/1.jpg")

# cv2.line(img,(100,30),(210,180),color=(0,0,255),thickness=2)
# cv2.circle(img,center=(50,50),radius=30,color=(0,0,255),thickness=2)
cv2.rectangle(img,(100,30),(210,180),color=(0,0,255),thickness=2)

cv2.imshow("pic show",img)
cv2.waitKey(0)

在这里插入图片描述

椭圆型绘制

  • image:它是要在其上绘制椭圆的图像。
  • centerCoordinates:它是椭圆的中心坐标。坐标表示为两个值的元组,即(X坐标值,Y坐标值)。
  • axesLength:它包含两个变量的元组,分别包含椭圆的长轴和短轴(长轴长度,短轴长度)。
  • angle:椭圆旋转角度,以度为单位。
  • startAngle:椭圆弧的起始角度,以度为单位。
  • endAngle:椭圆弧的终止角度,以度为单位。
  • color:它是要绘制的形状边界线的颜色。对于BGR,我们通过一个元组。例如:(255,0,0)为蓝色。
  • thickness:是形状边界线的粗细像素。厚度-1像素将用指定的颜色填充形状。
  • lineType:这是一个可选参数,它给出了椭圆边界的类型。
  • shift:这是一个可选参数。它表示中心坐标中的小数位数和轴的值。
import cv2
import numpy as np

img  = cv2.imread(r"./images/1.jpg")

# cv2.line(img,(100,30),(210,180),color=(0,0,255),thickness=2)
# cv2.circle(img,center=(50,50),radius=30,color=(0,0,255),thickness=2)
# cv2.rectangle(img,(100,30),(210,180),color=(0,0,255),thickness=2)
cv2.ellipse(img,center=(100,100),axes=(100,50),angle=0,startAngle=0,endAngle=360,color=(255,0,0),thickness=2)
cv2.imshow("pic show",img)
cv2.waitKey(0)

在这里插入图片描述

自定义形状

多边形,isClosed 代表是否是封闭

import cv2
import numpy as np

img  = cv2.imread(r"./images/1.jpg")

# cv2.line(img,(100,30),(210,180),color=(0,0,255),thickness=2)
# cv2.circle(img,center=(50,50),radius=30,color=(0,0,255),thickness=2)
# cv2.rectangle(img,(100,30),(210,180),color=(0,0,255),thickness=2)
# cv2.ellipse(img,center=(100,100),axes=(100,50),angle=0,startAngle=0,endAngle=360,color=(255,0,0),thickness=2)
pts = np.array([[10,5],[50,10],[70,20],[20,30]],dtype=np.int32)
pts = pts.reshape((-1,1,2))
cv2.polylines(img,[pts],isClosed=True,color=(0,0,255),thickness=2)

cv2.imshow("pic show",img)
cv2.waitKey(0)

在这里插入图片描述

绘制文本

import cv2
import numpy as np

img  = cv2.imread(r"./images/1.jpg")

# cv2.line(img,(100,30),(210,180),color=(0,0,255),thickness=2)
# cv2.circle(img,center=(50,50),radius=30,color=(0,0,255),thickness=2)
# cv2.rectangle(img,(100,30),(210,180),color=(0,0,255),thickness=2)
# cv2.ellipse(img,center=(100,100),axes=(100,50),angle=0,startAngle=0,endAngle=360,color=(255,0,0),thickness=2)
# pts = np.array([[10,5],[50,10],[70,20],[20,30]],dtype=np.int32)
# pts = pts.reshape((-1,1,2))
# cv2.polylines(img,[pts],isClosed=True,color=(0,0,255),thickness=2)

cv2.putText(img,"gril",(10,30),cv2.FONT_HERSHEY_SIMPLEX,fontScale=1,color=(0,0,255),thickness=1,lineType=cv2.LINE_AA)

cv2.imshow("pic show",img)
cv2.waitKey(0)

在这里插入图片描述

到此这篇关于OpenCV 图像绘制的实现的文章就介绍到这了,更多相关OpenCV 图像绘制内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Python几种常见算法汇总

    Python几种常见算法汇总

    这篇文章主要介绍了如何用Python实现几种常见算法,文中代码简单易懂,方便大家更好的学习,感兴趣的朋友可以了解下
    2020-06-06
  • Python Mysql数据库操作 Perl操作Mysql数据库

    Python Mysql数据库操作 Perl操作Mysql数据库

    python对mysql数据库的一些操作实现代码
    2009-01-01
  • Python中空格的转义字符方式

    Python中空格的转义字符方式

    这篇文章主要介绍了Python中空格的转义字符方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-03-03
  • Python内置函数memoryview()的实现示例

    Python内置函数memoryview()的实现示例

    本文主要介绍了Python内置函数memoryview()的实现示例,它允许你在不复制其内容的情况下操作同一个数组的不同切片,具有一定的参考价值,感兴趣的可以了解一下
    2024-05-05
  • Anaconda虚拟环境配置Python库与Spyder编译器的方法

    Anaconda虚拟环境配置Python库与Spyder编译器的方法

    在文章创建Anaconda虚拟Python环境的方法中,我们介绍了在Anaconda环境下,创建、使用与删除Python虚拟环境的方法,而创建虚拟环境后,就需要在对应的环境内配置各类库与软件,本文就对这些操作加以介绍,感兴趣的朋友感兴趣的朋友一起看看吧
    2024-04-04
  • 使用Python实现windows下的抓包与解析

    使用Python实现windows下的抓包与解析

    这篇文章主要介绍了使用Python实现windows下的抓包与解析,非常不错,具有参考借鉴价值,需要的朋友可以参考下
    2018-01-01
  • Python实现滑块验证码详解

    Python实现滑块验证码详解

    验证码作为一种自然人的机器人的判别工具,被广泛的用于各种防止程序做自动化的场景中。传统的字符型验证安全性已经名存实亡的情况下,各种新型的验证码如雨后春笋般涌现,今天给大家分享一篇Python实现滑块验证码
    2022-05-05
  • Numpy数组的切片索引操作

    Numpy数组的切片索引操作

    本文主要介绍了Numpy数组的切片索引操作,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-06-06
  • python中print输出有空格如何解决

    python中print输出有空格如何解决

    这篇文章主要介绍了python中print输出有空格的解决方案,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-02-02
  • Django中Cookie设置及跨域问题处理详解

    Django中Cookie设置及跨域问题处理详解

    本文主要介绍了Django中Cookie设置及跨域问题处理,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-09-09

最新评论