实现步骤
一、OpenCV的操作图像
首先我们需要安装OpenCV,执行下面语句:
pip install opencv-python
之后要用到。
1、读取和显示
我们直接看代码:
import cv2
# 读取图片
img = cv2.imread("1.jpg")
# 显示图片
cv2.imshow("img", img)
cv2.waitKey()
cv2.destroyAllWindows()
其中waitKey是等待输入的函数,因为imshow之后显示一瞬间,所以我们需要调用它。而destroyAllWindows是释放窗口。
2、灰度转换
灰度转换就是将图片转换成黑白图片(灰色),这样可以方便我们处理像素。代码如下:
import cv2
img = cv2.imread("1.jpg")
# 灰度转换
gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
我们还可以直接以灰度形式读入:
import cv2
# 以灰度形式读入
img = cv2.imread("1.jpg", 0)
3、获取图片尺寸并修改尺寸
我们直接看代码:
import cv2
img = cv2.imread("1.jpg", 0)
# 获取图片的高宽
h, w = img.shape
# 缩放图片
res = cv2.resize(img, (w//2, h//2))
因为img的shape属性是一个元组,所以我们可以直接自动拆包。
然后调用cv2.resize函数,第一个参数传入图片,第二个参数传入修改后的尺寸。
4、绘制文字
绘制文字我们需要调用cv2.putText函数,代码如下:
import cv2
img = cv2.imread('1.jpg')
# 绘制文字
cv2.putText(
# 背绘制的图片
img,
# 要绘制的文字
'Hello',
# 文字左下角的坐标
(100, 500),
# 字体
cv2.FONT_HERSHEY_SIMPLEX,
# 字体大小缩放
20,
# 文字颜色
(0, 0, 0),
# 文字粗细
10
)
我们只需要注意这些参数就好了。
5、读取视频
读取视频的操作一般是通用的,代码如下:
import cv2
# 读取视频
cap = cv2.VideoCapture('1.mp4')
# 获取视频的帧率
fps = cap.get(cv2.CAP_PROP_FPS)
# 循环读取图片的每一帧
while True:
# 读取下一帧
ret, frame = cap.read()
if not ret:
break
else:
pass
cap.release()
上面我们获取的视频的帧,在写入视频的时候我们需要用到。
6、写入视频
写入视频的操作也是常规代码:
import cv2
fourcc