赞
踩
cv2是一个python的图像处理库,依赖c++的opencv库处理图像。
使用
- pip install numpy
- pip install opencv-python
即可安装cv2及numpy
输入
- >>> import cv2
- >>> import numpy as np#cv2读取的图片都是numpy数组
- >>> cv2.__version__
- '4.5.5'#或你的cv2版本
检查cv2是否安装成功,若成功,不会报错。
本次使用的minecraft.jpg
读取图片
参数:
filename:图片路径
flags:选填,默认为-1,即不改变图像,推荐不填
- >>> img = cv2.imread('C:/Users/<UserName>/Desktop/minecraft.jpg')#'C:/Users/Kevin/Desktop/minecraft.jpg'可替换为任意图像路径,由于编码问题,输入中文会报错
- >>> img
- array([[[255, 255, 255],
- [255, 255, 255],
- [255, 255, 255],
- ...,
- [255, 255, 255],
- [255, 255, 255],
- [255, 255, 255]],
-
- [[255, 255, 255],
- [255, 255, 255],
- [255, 255, 255],
- ...,
- [255, 255, 255],
- [255, 255, 255],
- [255, 255, 255]],
-
- [[255, 255, 255],
- [255, 255, 255],
- [255, 255, 255],
- ...,
- [255, 255, 255],
- [255, 255, 255],
- [255, 255, 255]],
-
- ...,
-
- [[255, 255, 255],
- [255, 255, 255],
- [255, 255, 255],
- ...,
- [255, 255, 255],
- [255, 255, 255],
- [255, 255, 255]],
-
- [[255, 255, 255],
- [255, 255, 255],
- [255, 255, 255],
- ...,
- [255, 255, 255],
- [255, 255, 255],
- [255, 255, 255]],
-
- [[255, 255, 255],
- [255, 255, 255],
- [255, 255, 255],
- ...,
- [255, 255, 255],
- [255, 255, 255],
- [255, 255, 255]]], dtype=uint8)

返回值是一个dtype为8的数组。一个最小的数组为一个BGR或BGRA模式的像素,一个中等的数组为一列,最大的数组为整个图像。
显示图片
参数:
winname:窗口名称
mat:显示的图片
一定要搭配cv2.waitKey()函数!
- >>> cv2.imshow('minecraft',img);cv2.waitKey()
- -1
效果:
保存图片
参数:
filename:保存的路径
img:保存的图片
params:选填,压缩级别
- >>> cv2.imwrite('C:/Users/<UserName>/Desktop/minecraft.png',img)
- True
效果:
在图片上加文字
参数:
img:要加文字的图片
text:要添加的文字
org:文字的左上角位置
fontFace:文字的字体
fontScale:文字的大小
color:文字的颜色
thickness:文字的粗细
- >>> cv2.imshow('minecraft',cv2.putText(img,'minecraft',(0,100),cv2.FONT_HERSHEY_PLAIN,2,(127,255,0),4));cv2.waitKey()
- -1
效果:
在图片上画空心矩形
参数:
img:要画矩形的图片
pt1:矩形左上角坐标
pt2:矩形右下角坐标
color:矩形颜色
thichness:矩形线宽
- >>> cv2.imshow('minecraft',cv2.rectangle(img,(16,16),(32,32),(255,255,0),4));cv2.waitKey()
- -1
- >>> cv2.imshow('minecraft',cv2.rectangle(img,(26,26),(50,50),(0,255,0),4));cv2.waitKey()
- -1
效果:
颜色空间转换
参数:
img:需要转换的图片
code:转换模式,具体看下表
- >>> cv2.imshow('minecraft',cv2.cvtColor(img,cv2.COLOR_BGR2GRAY));cv2.waitKey()
- -1
效果:
今天的内容就到这里,记得点赞!
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。