opencv如何实现调用摄像头并显示,读取视频文件并显示,保存视频等操作
发表于:2025-02-04 作者:千家信息网编辑
千家信息网最后更新 2025年02月04日,这篇文章将为大家详细讲解有关opencv如何实现调用摄像头并显示,读取视频文件并显示,保存视频等操作,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。调用摄像头,并显示
千家信息网最后更新 2025年02月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安全错误
数据库的锁怎样保障安全
数据库怎么优化like
u8数据库自动备份在哪里
网络安全金融科技云平台
linux网络技术配套实验学习
vivo网络安全
电信网络安全运行
hive更改数据库表名
如何加强无线网络安全防范
软件开发费如何走成本
计算机网络技术博客
校园网络安全管理教育
上海网络技术股份
日本服务器地址vpn帐号
mysql数据库app
银川市软件开发教程
移动软件开发框架
同花顺指定服务器在哪里找
网络安全宣传手抄报竖着画
不同数据库的表格
软件开发所用程序语言
网络安全etf板块基金
思科网络技术ppt
2020网络安全月答案
瑞庭网络技术厦门
魔藏服务器
信息化网络安全周会简报
计算机网络技术比较厉害的人
sql数据库保存的路径
市南区手机软件开发哪家便宜
服务器房主如何恢复权限