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")

运行结果如下:

相关推荐
dagouaofei3 分钟前
AI自动生成你的年度报告PPT
人工智能·python·powerpoint
嫂子的姐夫7 分钟前
01-selenium
爬虫·python·selenium·自动化
无敌最俊朗@8 分钟前
C++ 内存管理与编译原理 (面试复习2)
java·开发语言·jvm
火山灿火山11 分钟前
Qt信号和槽
开发语言·qt
这样の我16 分钟前
java 模拟chrome tls指纹
java·开发语言·chrome
m0_6612791818 分钟前
学习笔记-安装并启动 Jupyter Noteboo
开发语言·python
代码or搬砖18 分钟前
常见的五个编译时异常和常见的五个编译时异常
开发语言·php
xwill*18 分钟前
3D-GENERALIST: Vision-Language-Action Models for Crafting 3D Worlds
人工智能·pytorch·python·深度学习
serve the people20 分钟前
tensorflow tf.Module 的检查点Checkpoint机制
人工智能·python·tensorflow
gCode Teacher 格码致知21 分钟前
Python 3.8.8环境下离线安装python-docx的完整方案-由Deepseek产生
python