Pictures and Videos|Day 1
第一次学习OpenCV,在这里将学会怎样读入、显示、保存一幅图像/视频,以及从摄像头获取并显示视频。
1. 图片
1.1 读入图像
使用函数 cv2.imread() 读入图像。
import numpy as np
import cv2
img = cv2.imread('messi5.jpg',0)
1.2 显示图像
使用函数 cv2.imshow() 显示图像。
cv2.imshow('image',img)
cv2.waitKey(0)
cv2.destroyAllWindows()
1.3 保存图像
使用函数 cv2.imwrite() 来保存一个图像。
cv2.imwrite('messigray.png',img)
1.4 尝试
import numpy as np
import cv2
img = cv2.imread('messi5.jpg',0)
cv2.imshow('image',img)
k = cv2.waitKey(0)
if k == 27:
cv2.destroyAllWindows()
elif k == ord('s'):
cv2.imwrite('messigray.png',img)
cv2.destroyAllWindows()
2. 视频
2.1 用摄像头捕获视频
使用摄像头捕获实时图像,创建一个 VideoCapture 对象来获取视频。
import numpy as np
import cv2
cap = cv2.VideoCapture(0)
while(True):
ret, frame = cap.read()
gray = cv2.cvtColor(frame, v2.COLOR_BGR2GRAY)
cv2.imshow('frame',gray)
if cv2.waitKey(1) & 0xFF == ord('q'):
break
cap.release()
cv2.destroyAllWindows()
有时 cap 可能不能成功的初始化摄像头设备。这种情况下上面的代码会报 错。你可以使用 cap.isOpened() ,来检查是否成功初始化了。如果返回值是 True ,那就没有问题。否则就要使用函数 cap.open() 。
2.2 从文件中播放视频
与从摄像头中捕获一样,只需要把设备索引号改成视频文件的名字。 在播放每一帧时,使用 cv2.waiKey() 设置适当的持续时间。
|