Python+OpenCV调用摄像头接口打造家庭安防系统
来自CloudWiki
安装包
pip3 install opencv-python -i https://pypi.tuna.tsinghua.edu.cn/simple
拍照版
from os import mkdir from os.path import isdir import datetime from time import sleep import cv2 while True: #参数0表示笔记本自带摄像头 cap = cv2.VideoCapture(0) #获取当前日期时间 now = str(datetime.datetime.now())[:19].replace(':','_') if not isdir(now[:10]): mkdir(now[:10]) #捕捉当前图像,ret=True 表示成功,False表示失败 ret,frame = cap.read() if ret: #保存图像,以当前日期时间为文件名 fn = now[:10]+'\\'+now+'.jpg' cv2.imwrite(fn,frame) #每5秒钟捕捉一次图像 sleep(5) cap.release()
录像版
from os import mkdir from os.path import isdir import datetime from time import sleep from threading import Thread from shutil import copyfile import cv2 #参数0表示笔记本自带摄像头 cap = cv2.VideoCapture(0) #获取当前日期时间 now = str(datetime.datetime.now())[:19].replace(':','_') dirName = now[:10] tempAviFile = dirName + '\\' +now +'.avi' if not isdir(dirName): mkdir(dirName) #创建视频文件 aviFile = cv2.VideoWriter(tempAviFile, cv2.VideoWriter_fourcc('M','J','P','G'), 25,(640,480))#帧速和视频宽度、高度 def write(): while cap.isOpened(): #捕捉当前图像,ret=True表示成功,False表示失败 ret,frame = cap.read() if ret: #写入视频文件 aviFile.write(frame) aviFile.release() Thread(target=write).start() input('按任意健结束') cap.release()