opencv如何实现调用摄像头并显示,读取视频文件并显示,保存视频等操作
发表于:2025-12-04 作者:千家信息网编辑
千家信息网最后更新 2025年12月04日,这篇文章将为大家详细讲解有关opencv如何实现调用摄像头并显示,读取视频文件并显示,保存视频等操作,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。调用摄像头,并显示
千家信息网最后更新 2025年12月04日opencv如何实现调用摄像头并显示,读取视频文件并显示,保存视频等操作
这篇文章将为大家详细讲解有关opencv如何实现调用摄像头并显示,读取视频文件并显示,保存视频等操作,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
调用摄像头,并显示视频:
import numpy as npimport cv2 as cv# cap = cv.VideoCapture(-1)# cap = cv.VideoCapture(1)cap = cv.VideoCapture(0) # 传入一个设备索引,代表不同的摄像头,或者传入一个视频文件名# cap = cv.VideoCapture('testVideo.mp4')if not cap.isOpened():print("Cannot open camera")exit()width = cap.get(cv.CAP_PROP_FRAME_WIDTH)height = cap.get(cv.CAP_PROP_FRAME_HEIGHT)print('宽度和高度分别是:', width, height) # 宽度和高度分别是: 640.0 480.0ret = cap.set(cv.CAP_PROP_FRAME_WIDTH,320) # 设定宽度ret = cap.set(cv.CAP_PROP_FRAME_HEIGHT,240) # 设定高度while True:# Capture frame-by-frameret, frame = cap.read() # 返回True或者False,如果读取正确是True,可以用False来判断是否到达视频的末尾 # if frame is read correctly ret is Trueif not ret:print("Can't receive frame (stream end?). Exiting ...")break# Our operations on the frame come heregray = cv.cvtColor(frame, cv.COLOR_BGR2GRAY)# Display the resulting framecv.imshow('LinMaZi-frame-LinZuQuan', gray) # 设定显示窗口标题文字if cv.waitKey(1) == ord('q'): # 判断用户是否输入q键break# When everything done, release the capturecap.release() # 释放资源cv.destroyAllWindows()读取视频文件并显示:
import numpy as npimport cv2 as cvcap = cv.VideoCapture('毕业晚会.MP4')# cap = cv.VideoCapture(0)while cap.isOpened():ret, frame = cap.read()# if frame is read correctly ret is Trueif not ret:print("Can't receive frame (stream end?). Exiting ...")breakgray = cv.cvtColor(frame, cv.COLOR_BGR2GRAY)cv.imshow('frame', gray)if cv.waitKey(25) == ord('q'): # 选择合适的刷新时间间隔,25毫秒还不错breakcap.release()cv.destroyAllWindows()调用摄像头并显示,保存为视频文件:
import numpy as npimport cv2 as cvimport timecap = cv.VideoCapture(0)# Define the codec and create VideoWriter objectfourcc = cv.VideoWriter_fourcc(*'XVID') # 两者等效# fourcc = cv.VideoWriter_fourcc('X','V','I','D') # 两者等效saveTime = time.strftime("%Yy-%mm-%dd@%Hh%Mm%Ss", time.localtime())out = cv.VideoWriter('output_' + saveTime + '.mp4', fourcc, 20.0, (640, 480)) # 参数说明 output file name, FourCC code, frames per second (fps), frame sizewhile cap.isOpened():ret, frame = cap.read()if not ret:print("Can't receive frame (stream end?). Exiting ...")break# frame = cv.flip(frame, 1) # 左右横向翻转frame = cv.flip(frame, 0) # 上下纵向翻转# write the flipped frameout.write(frame)cv.imshow('LinMaZi-frame-LinZuQuan', frame)if cv.waitKey(1) == ord('q'):break# Release everything if job is finishedcap.release()out.release()cv.destroyAllWindows()关于"opencv如何实现调用摄像头并显示,读取视频文件并显示,保存视频等操作"这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。
视频
摄像头
文件
摄像
宽度
篇文章
高度
不错
更多
不同
合适
实用
上下
代表
内容
参数
文件名
文字
文章
时间
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
大华服务器网页怎么调中文
胸痛中心数据库理制度
科大讯飞的软件开发
网络安全责任分工和岗位职责
网络安全整治的主要任务包括
安卓软件开发工作类型
h5两个页面之间传数据库
北京第五纬度网络技术有限公司
暴雪手游无法连接服务器
数据库同名
低价mysql数据库
软通考试网络安全答案
大学计算机数据库技术ppt
网络技术三级怎么样
2台网吧服务器配置
高斯数据库技术移民
电脑代理服务器没有响应
上海可来软件开发招聘信息
p36081.6t服务器不识别
农业银行总部的软件开发部
数据库创建表如何设置
软件开发顾客的消费习惯
网络安全责任分工和岗位职责
网络安全靠人民为人民
服务器管理员密码在哪修改
宁波金人网络技术有限公司
南宁导购系统软件开发
db2数据库时间管理
服务器cpu通用么
pg 数据库密码