python-opencv在图片中绘制各种图形

python-opencv在图片中绘制各种图形

1.绘制直线

2.绘制矩形

3.绘制圆

4.绘制椭圆

5.绘制多边形

6.嵌入文字

实现代码都在下面了,代码中参数做了简单注释

python 复制代码
import copy
import math
import matplotlib.pyplot as plt
import matplotlib as mpl
import numpy as np
import os

import cv2


def cv_show(name,img):
    cv2.imshow(name,img)
    #cv2.waitKey(0),接收0,表示窗口暂停
    cv2.waitKey(0)
    #销毁所有窗口
    cv2.destroyAllWindows()

'''

礼帽运算:原图-开运算
黑帽运算:闭运算-原图


'''

img=np.zeros((512,512,3),np.uint8)
## 1.绘制直线
cv2.line(img,
         (0,0),#左上角坐标
         (256,256),#右下角坐标
         (255,0,0),#颜色
         5)#线条粗细


## 2.绘制矩形
cv2.rectangle(img,(0,0),#左上角坐标
              (256,256),#右下角坐标
              (100,100,0),#颜色
              5)#线条粗细



## 3.绘制圆


cv2.circle(img,
           (255,255),#中心坐标
           40, #半径
           (255,0,0),
           5)#线条粗细



## 4.绘制椭圆
cv2.ellipse(
    img,
    (256, 256),
    (256, 128),
    0,  # 逆时针旋转角度
    0,  # 开始角度
    360,  # 结束角度
    (0, 0, 255),
    -1
)
pts=np.array([
    [50,50],#多边形连接节点坐标
    [400,100],
    [100,400]
    ])


## 5.绘制多边形

cv2.polylines(img,[pts],True,(255,0,0),5)
## 6.嵌入文字
font=cv2.FONT_HERSHEY_SIMPLEX
cv2.putText(img,
            'I like opencv',
            (50,300),#文字坐标
            font,#字体选择
            1,#字体大小
            (140,140,0)#字体颜色
            )

img_line=img[:,:,::-1]
plt.imshow(img_line)
plt.show()


os.system("pause")

运行结果如下:

相关推荐
2301_764441332 小时前
LISA时空跃迁分析,地理时空分析
数据结构·python·算法
014-code2 小时前
订单超时取消与库存回滚的完整实现(延迟任务 + 状态机)
java·开发语言
lly2024062 小时前
组合模式(Composite Pattern)
开发语言
游乐码2 小时前
c#泛型约束
开发语言·c#
Dontla3 小时前
go语言Windows安装教程(安装go安装Golang安装)(GOPATH、Go Modules)
开发语言·windows·golang
chushiyunen3 小时前
python rest请求、requests
开发语言·python
cTz6FE7gA3 小时前
Python异步编程:从协程到Asyncio的底层揭秘
python
铁东博客3 小时前
Go实现周易大衍筮法三变取爻
开发语言·后端·golang
baidu_huihui3 小时前
在 CentOS 9 上安装 pip(Python 的包管理工具)
开发语言·python·pip
南 阳3 小时前
Python从入门到精通day63
开发语言·python