Python安装好之后,可以在cmd中输入python --version来查看Python的版本信息。对于OpenCV,打开Python的开发环境,输入import cv2,运行没有报错说明一切正常。要查看OpenCV的版本,可以:
import cv2
print(cv2.__version__)
#'4.2.0'
安装完成之后,我们开始最基本的操作
加载图片,显示图片,保存图片
OpenCV函数:cv2.imread(), cv2.imshow(), cv2.imwrite()
import numpy as np
img=cv2.imread("timg.jpg",1) #读取函数,第一个参数图片路径,第二个参数图片类型--1代表彩色图片,2代表灰度图片
cv2.imshow("image",img) #显示函数 窗口名+图片对象
key = cv2.waitKey(0) #等待函数,参数为等待的时间,单位是毫秒。0为一直等待
if key==27: #按esc键时,关闭所有窗口
print(key)
cv2.destroyAllWindows() #销毁窗口
img.shape #图片尺寸900*1440 3为RGB
(900, 1440, 3)
img=cv2.imread("timg.jpg",1)
scale_percent = 50 # percent of original size #缩放比例
width = int(img.shape[1] * scale_percent / 100)
height = int(img.shape[0] * scale_percent / 100)
dim = (width, height)
img=cv2.resize(img,dim) #重设窗口大小
cv2.imshow("imag",img)
key = cv2.waitKey(0)
if key==27: #按esc键时,关闭所有窗口
print(key)
cv2.destroyAllWindows()
OpenCV函数:cv2.VideoCapture(), cv2.VideoWriter()
要使用摄像头,需要使用cv2.VideoCapture(0)创建VideoCapture对象,参数0指的是摄像头的编号.
如果你电脑上有两个摄像头的话,访问第2个摄像头就可以传入1,依此类推。
#url="http://admin:admin@10.181.151.231:8081/" #网络摄像头
#capture = cv2.VideoCapture(url)
capture = cv2.VideoCapture(0) #0为默认摄像头
while(True):
# 获取一帧
ret, frame = capture.read()
# 将这帧转换为灰度图
img=cv2.resize(frame,(1080,540))
cv2.imshow('frame', img)
if cv2.waitKey(1) == ord('q'):
cv2.destroyAllWindows()
break
capture.release() #释放摄像头
播放本地视频
跟打开摄像头一样,如果把摄像头的编号换成视频的路径就可以播放本地视频了。回想一下cv2.waitKey(),它的参数表示暂停时间,所以这个值越大,视频播放速度越慢,反之,播放速度越快,通常设置为25或30。
# 播放本地视频
capture = cv2.VideoCapture('demo_video.mp4')
while(capture.isOpened()):
ret, frame = capture.read()
gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)