使用opencv-python如何打开USB或者笔记本前置摄像头
更新时间:2022年06月21日 09:12:53 作者:BIT可达鸭
这篇文章主要介绍了使用opencv-python如何打开USB或者笔记本前置摄像头的过程,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
opencv-python打开USB或笔记本前置摄像头
代码
其中video_index是摄像头编号,一般前置摄像头为0,USB摄像头为1或2.
import cv2 def catch_video(name='my_video', video_index=0): # cv2.namedWindow(name) cap = cv2.VideoCapture(video_index) # 创建摄像头识别类 if not cap.isOpened(): # 如果没有检测到摄像头,报错 raise Exception('Check if the camera is on.') while cap.isOpened(): catch, frame = cap.read() # 读取每一帧图片 cv2.imshow(name, frame) # 在window上显示图片 key = cv2.waitKey(10) if key & 0xFF == ord('q'): # 按q退出 break if cv2.getWindowProperty(name, cv2.WND_PROP_AUTOSIZE) < 1: # 点x退出 break # 释放摄像头 cap.release() cv2.destroyAllWindows() if __name__ == "__main__": catch_video()
效果
Opencv-python摄像头录制视屏,拍照
Opencv-python摄像头录制视屏并保存
import cv2 # 导入opencv包 video = cv2.VideoCapture(0) # 打开摄像头 fourcc = cv2.VideoWriter_fourcc(*'XVID') # 视频存储的格式 fps = video.get(cv2.CAP_PROP_FPS) # 帧率 # 视频的宽高 size = (int(video.get(cv2.CAP_PROP_FRAME_WIDTH)), int(video.get(cv2.CAP_PROP_FRAME_HEIGHT))) out = cv2.VideoWriter('video.avi', fourcc, fps, size) # 视频存储 f=0 while out.isOpened(): ret, img = video.read() # 开始使用摄像头读数据,返回ret为true,img为读的图像 if ret is False: # ret为false则关闭 exit() cv2.namedWindow('video', cv2.WINDOW_AUTOSIZE) # 创建一个名为video的窗口 cv2.imshow('video', img) # 将捕捉到的图像在video窗口显示 out.write(img) # 将捕捉到的图像存储 print(f ,' ' , 'fps: ',fps) f+=1 # 按esc键退出程序 if cv2.waitKey(1) & 0xFF == 27: video.release() # 关闭摄像头 break
拍照
#coding:utf-8 import cv2 cap = cv2.VideoCapture(0)#创建一个 VideoCapture 对象 flag = 1 #设置一个标志,用来输出视频信息 num = 1 #递增,用来保存文件名 while(cap.isOpened()):#循环读取每一帧 ret_flag, Vshow = cap.read() #返回两个参数,第一个是bool是否正常打开,第二个是照片数组,如果只设置一个则变成一个tumple包含bool和图片 cv2.imshow("Capture_Test",Vshow) #窗口显示,显示名为 Capture_Test k = cv2.waitKey(1) & 0xFF #每帧数据延时 1ms,延时不能为 0,否则读取的结果会是静态帧 if k == ord('s'): #若检测到按键 ‘s',打印字符串 cv2.imwrite("/home/jie/图片/VOC/image/"+ str(num) + ".jpg", Vshow) print(cap.get(3)); #得到长宽 print(cap.get(4)); print("success to save"+str(num)+".jpg") print("-------------------------") num += 1 elif k == ord('q'): #若检测到按键 ‘q',退出 break cap.release() #释放摄像头
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。
相关文章
如何使用Python修改matplotlib.pyplot.colorbar的位置以对齐主图
使用matplotlib.colors模块可以完成大多数常见的任务,下面这篇文章主要给大家介绍了关于如何使用Python修改matplotlib.pyplot.colorbar的位置以对齐主图的相关资料,需要的朋友可以参考下2022-07-07python os.listdir按文件存取时间顺序列出目录的实例
今天小编就为大家分享一篇python os.listdir按文件存取时间顺序列出目录的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧2018-10-10Python PyQt5运行程序把输出信息展示到GUI图形界面上
这篇文章主要介绍了Python PyQt5运行程序把输出信息展示到GUI图形界面上,本文通过截图实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下2020-04-04解决python 读取excel时 日期变成数字并加.0的问题
这篇文章主要介绍了python 读取excel时, 日期变成数字并加.0的问题,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下2019-10-10python ForMaiR实现自定义规则的邮件自动转发工具
这篇文章主要为大家介绍了python ForMaiR实现自定义规则的邮件自动转发工具示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪2023-12-12
最新评论