opencv2的打开摄像头python_OpenCV-Python基础教程2-打开摄像头

一、打开摄像头

import cv2

#打开摄像头并灰度化显示

capture =cv2.VideoCapture(0)while(True):#获取一帧

ret, frame =capture.read()#将这帧转换为灰度图

gray =cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)

cv2.imshow(‘frame‘, gray)#如果输入q,则退出

if cv2.waitKey(1) == ord(‘q‘):break

cv2.VideoCapture(0)创建VideoCapture对象,参数0表示摄像头编号,如果你有两个摄像头,也可以传入1

#获取捕获的分辨率#propId可以直接写数字,也可以用OpenCV的符号表示

width, height = capture.get(3), capture.get(4)print(width, height)#以原分辨率的一倍来捕获

capture.set(cv2.CAP_PROP_FRAME_WIDTH, width * 2)

capture.set(cv2.CAP_PROP_FRAME_HEIGHT, width* 2)

想了解完整的属性列表可以参考:

VideoCaptureProperties。

也可以使用cap.set(propId, value)来修改属性值

二、播放本地视频

#播放本地视频

capture = cv2.VideoCapture(‘4.视频展台的使用视频.mp4‘)while(capture.isOpened()):

ret, frame=capture.read()

gray=cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)

cv2.imshow(‘frame‘, gray)if cv2.waitKey(30) == ord(‘q‘):break

和打开摄像头一样,把摄像头编号换成视频的路径就可以播放本地视频。cv2.waitKey的参数0表示无限等待,数值越大,视频播放越慢,反之,则越快。通常设置25到30

三、录制视频

保存图片使用的是cv2.imwrite(),要保存视频,需要创建一个VideoWriter对象,需要传入四个参数

输出的文件名,如’output.avi’

编码方式FourCC码

帧率FPS

要保存的分辨率大小

FourCC是用来指定视频编码方式的四字节码

capture =cv2.VideoCapture(0)#定义编码方式并创建VideoWriter对象

fourcc = cv2.VideoWriter_fourcc(*‘MJPG‘)

outfile= cv2.VideoWriter(‘output.avi‘, fourcc, 25., (640, 480))while(capture.isOpened()):

ret, frame=capture.read()ifret:

outfile.write(frame)#写入文件

cv2.imshow(‘frame‘, frame)if cv2.waitKey(1) == ord(‘q‘):break

else:break

四、小结

原文:https://www.cnblogs.com/gezhuangzhuang/p/10291177.html

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值