当前位置: 首页 > news >正文

opencv调取摄像头录制

  大家好,我是csdn的博主:lqj_本人

这是我的个人博客主页:

lqj_本人的博客_CSDN博客-微信小程序,前端,python领域博主lqj_本人擅长微信小程序,前端,python,等方面的知识https://blog.csdn.net/lbcyllqj?spm=1011.2415.3001.5343哔哩哔哩欢迎关注:小淼前端

小淼前端的个人空间_哔哩哔哩_bilibili

本篇文章主要讲述python的人工智能视觉领域(opencv),本篇文章已经成功收录python人工智能视觉(opencv)从入门到实战专栏中:

https://blog.csdn.net/lbcyllqj/category_12200666.htmlicon-default.png?t=N176https://blog.csdn.net/lbcyllqj/category_12200666.html

 视频录制

VideoWriter

参数1为:输出文件;

参数2为:多媒体文件格式VideoWriter_fourcc;

参数3为:帧数

参数4为:分辨率

write编写并写入缓存

release缓存内容写入磁盘,并释放资源

1.导入cv库及定义窗口

import cv2 #导入cv2库cv2.namedWindow('frame', cv2.WINDOW_NORMAL)  # 创建一个窗口名字为window
cv2.resizeWindow('frame', 800, 600)  # 更改窗口的大小

2.调用摄像头

cap = cv2.VideoCapture(0)

3.指定输出视频的格式

# *mp4v就是解包操作 等同于 'm','p','4','v'
fourcc = cv2.VideoWriter_fourcc(*'mp4v')

4.设置输出视频的属性

属性一:output.mp4——定义输出后的视频名字

属性二:fourcc——指定视频的格式(根据上一条代码的赋值)

属性三:20——设置帧数

属性四:(640,480)——设置摄像头的分辨率

vw = cv2.VideoWriter('output.mp4',fourcc,20,(640,480))

5.判断摄像头是否正确打开

while cap.isOpened():ret,frame = cap.read()if not ret:break

6.写入每一帧数据,并显示窗口

vw就是4.命令行中定义并赋值过的vw

    vw.write(frame)cv2.imshow('frame',frame)

7.监听键盘按键退出

    if cv2.waitKey(10) == ord('q'):break

8.释放窗口资源

cap为打开的摄像头的资源

vw为写入数据资源

cap.release()
vw.release()
cv2.destroyAllWindows()

完整学习代码

import cv2 #导入cv2库cv2.namedWindow('frame', cv2.WINDOW_NORMAL)  # 创建一个窗口名字为window
cv2.resizeWindow('frame', 800, 600)  # 更改窗口的大小cap = cv2.VideoCapture(0)
# *mp4v就是解包操作 等同于 'm','p','4','v'
fourcc = cv2.VideoWriter_fourcc(*'mp4v')
#主要是这个分辨率
#output.mp4输出后的视频名字,fourcc指定的视频格式,20:帧数,(640,480)摄像头的分辨率
vw = cv2.VideoWriter('output.mp4',fourcc,20,(640,480))while cap.isOpened():ret,frame = cap.read()if not ret:break#写每一帧的数据vw.write(frame)cv2.imshow('frame',frame)if cv2.waitKey(10) == ord('q'):break#释放videowriter
cap.release()
vw.release()
cv2.destroyAllWindows()

结果显示

运行后就会录制并保存我们摄像头所录制的全部内容

 

相关文章:

opencv调取摄像头录制

大家好,我是csdn的博主:lqj_本人 这是我的个人博客主页: lqj_本人的博客_CSDN博客-微信小程序,前端,python领域博主lqj_本人擅长微信小程序,前端,python,等方面的知识https://blog.csdn.net/lbcyllqj?spm1011.2415.3001.5343哔哩哔哩欢迎关注…...

html标签手册

完整的HTML页面&#x1f4d1; ①基础标签&#x1f4d1;&#x1f4d1;&#x1f4d1; HTML <!DOCTYPE> 声明 !DOCTYPE声明必须是 HTML 文档的第一行&#xff0c;位于 html标签之前。 !DOCTYPE 声明不是 HTML 标签&#xff1b;它是指示 web 浏览器关于页面使用哪个 HTML 版…...

SpringMVC--视图、RESTful案例、处理AJAX请求

SpringMVC的视图 SpringMVC中的视图是View接口&#xff0c;视图的作用渲染数据&#xff0c;将模型Model中的数据展示给用户 SpringMVC视图的种类很多&#xff0c;默认有转发视图和重定向视图 当工程引入jstl的依赖&#xff0c;转发视图会自动转换为JstlView 若使用的视图技术为…...

一个同学升了leader,今年活还没干,他就已经想好组里成员的两次绩效考核怎么打了,还说:leader都是这样的!...

绩效是大家都比较关注的事情&#xff0c;那么作为领导&#xff0c;一般是怎么打绩效的呢&#xff1f;一位网友爆料&#xff1a;一个大学同学升了leader&#xff0c;前段时间跟他吃饭&#xff0c;他说他已经想好了今年组里成员的两次绩效考核怎么打了。该网友有点吃惊&#xff0…...

Docker 面试知识点

Docker 是什么&#xff1f; 是实现容器技术的一种工具是一个开源的应用容器引擎使用 C/S 架构模式&#xff0c;通过远程API 来管理 (我们本机是 C&#xff0c;docker 引擎是 S,实际的构建过程是在 docker 引擎下完成的)可以打包一个应用及依赖包到一个轻量级、可移植的容器中 …...

C++高级篇学习笔记

文章目录 前言 本文记录C一些面试难点问题剖析。 1. 左右值和右值引用的作用 左值&#xff1a;可以在左边&#xff0c;表达式结束后依然存在的持久对象&#xff0c;一般有名字&#xff0c;可以取地址。 提示&#xff1a; 前置自加/自减 可以做左值&#xff1b; 右值在右边&a…...

gentoo基本安装过程

该文章是本人在gentoo官方安装文档的基础上简单总结的&#xff0c;也是本人自己实践过的&#xff0c;目前本人用的就是gentoo&#xff0c;对于真的需要安装gentoo的朋友&#xff0c;建议还是参考官方文档&#xff0c;说的比较详细&#xff0c;这个可以简单看看&#xff0c;可以…...

【LeetCode】1234. 替换子串得到平衡字符串

1234. 替换子串得到平衡字符串 题目描述 有一个只含有 ‘Q’, ‘W’, ‘E’, ‘R’ 四种字符&#xff0c;且长度为 n 的字符串。 假如在该字符串中&#xff0c;这四个字符都恰好出现 n/4 次&#xff0c;那么它就是一个「平衡字符串」。 给你一个这样的字符串 s&#xff0c;…...

[动手写操作系统]-01-开机运行系统

文章目录 **概念和目标**概念目标理论源码概念和目标 概念 assembler: 汇编程序BIOS: BIOS(Basic Input Output System,基本输入输出系统)是个可编程的微型操作系统,用于管理计算机中的软硬件,它控制着系统的启动,系统是如何连接外部设备,怎样响应,调整相应操作,都是…...

最长回文子序列问题

最长回文子序列问题 问题描述&#xff1a;给你一个字符串 s &#xff0c;找出其中最长的回文子序列&#xff0c;并返回该序列的长度。 子序列定义为&#xff1a;不改变剩余字符顺序的情况下&#xff0c;删除某些字符或者不删除任何字符形成的一个序列。 注意是子序列而不是子…...

月薪11k!从财务专员到软件测试工程师,成都校区小哥哥用三个月实现转行换岗

好久没和大家分享学员的转行经历了&#xff0c;或许在一些人看来他们的故事与自己无关&#xff0c;但同样也能引起一些人的共鸣&#xff0c;可以帮助到那些陷于就业焦虑的同学找到目标和方向。相仿的年龄、相同的职业、相似的压力…在转行软件测试追求更好生活的路上&#xff0…...

Android 逆向工具大整理,碉堡了

文章目录jadx打开 gui 界面把安装包打开双击变量名和方法名可以高亮所有出现的地方**强大的搜索功能****搜索资源****查看 APK 签名****查看 APK dex 数&#xff0c;方法数****查看资源&#xff0c;配置清单****展开包名**查找方式引用反混淆导出 Gradle 工程导出反编译资源lib…...

二维数组的定义

1. 概念二维数组就是一种数组的数组&#xff0c;其本质上还是一个一维数组&#xff0c;只是它的数据元素又是一个一维数组。如果你对这个概念想象不出来&#xff0c;给大家举个栗子&#xff0c;相信吸烟的同学一下子就会明白。一根烟 一个变量一包烟 20根烟 一维数组一条烟 …...

SpringMVC--获取请求参数、域对象共享数据

SpringMVC获取请求参数 通过ServletAPI获取 将HttpServletRequest作为控制器方法的形参&#xff0c;此时HttpServletRequest类型的参数表示封装了当前请 求的请求报文的对象 RequestMapping("/testParam") public String testParam(HttpServletRequest request){S…...

2月13日,30秒知全网,精选7个热点

///深圳支持数字经济核心区试点&#xff0c;市民每月免费享有1T网络流量支持基础电信企业、广电企业及互联网企业加快推进全市内容分发网络&#xff08;CDN&#xff09;扩容及智能改造行动&#xff0c;优化和完善CDN节点部署&#xff0c;积极利用边缘计算技术&#xff0c;推动互…...

【C++设计模式】学习笔记(2):模式分类与模版方法 Template Method

目录 简介模式分类GOF-23 模式分类从封装变化角度对模式分类重构获得模式 Refactoring to Patterns重构关键技法“组件协作”模式Template Method 模式动机(Motivation)结构化软件设计流程面向对象软件设计流程早绑定与晚绑定模式的定义结构(Structure)要点总结结语简介 He…...

【Swift 60秒】92 - Nil coalescing

0x00 Lesson The nil coalescing operator unwraps an optional and returns the value inside if there is one. If there isn’t a value - if the optional was nil - then a default value is used instead. Either way, the result won’t be optional: it will either b…...

python pip安装的包的路径

以ubuntu为例从一个店家那里拿到的一个ubuntu环境中&#xff0c;同时安装了python3.6和python2.7&#xff0c;又安装了ros&#xff0c;最后pip安装包的位置很混乱&#xff0c;安装的包不知道安装在了哪里。使用vscode的时候需要代码提示&#xff0c;就得找到包的路径&#xff0…...

个人收藏学习

【默认收藏夹】 CompletableFuture使用详解&#xff08;全网看这一篇就行&#xff09; 从头开始学MySQL-------存储过程与存储函数&#xff08;4&#xff09; 聊聊支付流程的设计与实现逻辑 聊聊消息中心的设计与实现逻辑 SpringBoot2 整合JTA组件&#xff0c;多数据源事务管理…...

【C++】类和对象---需掌握的功能

目录1.初始化列表1.1构造函数赋值1.2初始化列表格式&#xff1a;编译器执行的顺序&#xff1a;特性&#xff1a;1.3explicit关键字类型替换过程多参数构造函数类型替换&#xff08;C11&#xff09;2.static成员编程题3.匿名对象4.友元4.1友元函数4.2友元类5.内部类6.拷贝对象时…...

变量 varablie 声明- Rust 变量 let mut 声明与 C/C++ 变量声明对比分析

一、变量声明设计&#xff1a;let 与 mut 的哲学解析 Rust 采用 let 声明变量并通过 mut 显式标记可变性&#xff0c;这种设计体现了语言的核心哲学。以下是深度解析&#xff1a; 1.1 设计理念剖析 安全优先原则&#xff1a;默认不可变强制开发者明确声明意图 let x 5; …...

SciencePlots——绘制论文中的图片

文章目录 安装一、风格二、1 资源 安装 # 安装最新版 pip install githttps://github.com/garrettj403/SciencePlots.git# 安装稳定版 pip install SciencePlots一、风格 简单好用的深度学习论文绘图专用工具包–Science Plot 二、 1 资源 论文绘图神器来了&#xff1a;一行…...

MVC 数据库

MVC 数据库 引言 在软件开发领域,Model-View-Controller(MVC)是一种流行的软件架构模式,它将应用程序分为三个核心组件:模型(Model)、视图(View)和控制器(Controller)。这种模式有助于提高代码的可维护性和可扩展性。本文将深入探讨MVC架构与数据库之间的关系,以…...

sqlserver 根据指定字符 解析拼接字符串

DECLARE LotNo NVARCHAR(50)A,B,C DECLARE xml XML ( SELECT <x> REPLACE(LotNo, ,, </x><x>) </x> ) DECLARE ErrorCode NVARCHAR(50) -- 提取 XML 中的值 SELECT value x.value(., VARCHAR(MAX))…...

【Java_EE】Spring MVC

目录 Spring Web MVC ​编辑注解 RestController RequestMapping RequestParam RequestParam RequestBody PathVariable RequestPart 参数传递 注意事项 ​编辑参数重命名 RequestParam ​编辑​编辑传递集合 RequestParam 传递JSON数据 ​编辑RequestBody ​…...

第 86 场周赛:矩阵中的幻方、钥匙和房间、将数组拆分成斐波那契序列、猜猜这个单词

Q1、[中等] 矩阵中的幻方 1、题目描述 3 x 3 的幻方是一个填充有 从 1 到 9 的不同数字的 3 x 3 矩阵&#xff0c;其中每行&#xff0c;每列以及两条对角线上的各数之和都相等。 给定一个由整数组成的row x col 的 grid&#xff0c;其中有多少个 3 3 的 “幻方” 子矩阵&am…...

Web 架构之 CDN 加速原理与落地实践

文章目录 一、思维导图二、正文内容&#xff08;一&#xff09;CDN 基础概念1. 定义2. 组成部分 &#xff08;二&#xff09;CDN 加速原理1. 请求路由2. 内容缓存3. 内容更新 &#xff08;三&#xff09;CDN 落地实践1. 选择 CDN 服务商2. 配置 CDN3. 集成到 Web 架构 &#xf…...

jmeter聚合报告中参数详解

sample、average、min、max、90%line、95%line,99%line、Error错误率、吞吐量Thoughput、KB/sec每秒传输的数据量 sample&#xff08;样本数&#xff09; 表示测试中发送的请求数量&#xff0c;即测试执行了多少次请求。 单位&#xff0c;以个或者次数表示。 示例&#xff1a;…...

探索Selenium:自动化测试的神奇钥匙

目录 一、Selenium 是什么1.1 定义与概念1.2 发展历程1.3 功能概述 二、Selenium 工作原理剖析2.1 架构组成2.2 工作流程2.3 通信机制 三、Selenium 的优势3.1 跨浏览器与平台支持3.2 丰富的语言支持3.3 强大的社区支持 四、Selenium 的应用场景4.1 Web 应用自动化测试4.2 数据…...

深入浅出Diffusion模型:从原理到实践的全方位教程

I. 引言&#xff1a;生成式AI的黎明 – Diffusion模型是什么&#xff1f; 近年来&#xff0c;生成式人工智能&#xff08;Generative AI&#xff09;领域取得了爆炸性的进展&#xff0c;模型能够根据简单的文本提示创作出逼真的图像、连贯的文本&#xff0c;乃至更多令人惊叹的…...