python+opencv打开摄像头,保存视频、拍照功能的实现方法

yipeiwu_com5年前Python基础

以下代码是保存视频

# coding:utf-8
import cv2
import sys
reload(sys)
sys.setdefaultencoding('utf8')
cap = cv2.VideoCapture(0)
cap.set(3,640)
cap.set(4,480)
cap.set(1, 10.0)
#此处fourcc的在MAC上有效,如果视频保存为空,那么可以改一下这个参数试试, 也可以是-1
fourcc = cv2.cv.CV_FOURCC('m', 'p', '4', 'v')
# 第三个参数则是镜头快慢的,10为正常,小于10为慢镜头
out = cv2.VideoWriter('/opt/code/video/output2.avi', fourcc,10,(640,480))
while True:
 ret,frame = cap.read()
 if ret == True:
  frame = cv2.flip(frame, 1)
  a = out.write(frame)
  cv2.imshow("frame", frame)
  if cv2.waitKey(1) & 0xFF == ord('q'):
   break
 else:
  break
cap.release()
out.release()
cv2.destroyAllWindows()

以下代码是拍照,在按q之后,保存图片并退出。

import cv2

cap = cv2.VideoCapture(0)
while(1):
 # get a frame
 ret, frame = cap.read()
 # show a frame
 cv2.imshow("capture", frame)
 if cv2.waitKey(1) & 0xFF == ord('q'):
  cv2.imwrite("/opt/code/image/fangjian2.jpeg", frame)
  break
cap.release()
cv2.destroyAllWindows()

以上这篇python+opencv打开摄像头,保存视频、拍照功能的实现方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python ipset管理 增删白名单的方法

为方便用ipset 来管理防火墙,写了下面Ipset类来对Ip进行管理 #!/usr/bin/env python # coding: utf-8 import MySQLdb...

Python实现数值积分方式

Python实现数值积分方式

原理: 利用复化梯形公式,复化Simpson公式,计算积分。 步骤: import math """测试函数""" def f(x,i): if i == 1: re...

pytorch 实现在预训练模型的 input上增减通道

如何把imagenet预训练的模型,输入层的通道数随心所欲的修改,从而来适应自己的任务 #增加一个通道 w = layers[0].weight layers[0] = nn.Con...

python求素数示例分享

复制代码 代码如下:# 判断是否是素数def is_sushu(num): res=True for x in range(2,num-1):  ...

Python3之字节串bytes与字节数组bytearray的使用详解

字节串bytes 字节串也叫字节序列,是不可变的序列,存储以字节为单位的数据 字节串表示方法: b"ABCD" b"\x41\x42" ... 字节串的构造函数: bytes()...