1. 使用摄像头捕捉图像,将其转换为灰度帧后,输出视频图像

import numpy as np
import cv2 as cv cap = cv.VideoCapture(0)while(True):# 一帧一帧的捕捉ret,frame = cap.read()# 将每一帧从RGB转换成灰度gray = cv.cvtColor(frame,cv.COLOR_BGR2GRAY)#显示捕捉的结果帧cv.imshow('frame',gray)#按q退出if cv.waitKey(1) & 0xFF==ord('q'):break#释放摄像头
cap.release()
#释放所有窗口
cv.destroyAllWindows()

 2.  读取外部的彩色视频,将其转换为灰度帧后显示视频

import numpy as np
import cv2 as cv cap = cv.VideoCapture('D:/test.mp4')#播放视频
while(cap.isOpened()):# 一帧一帧的捕捉ret,frame = cap.read()# 将每一帧从RGB转换成灰度gray = cv.cvtColor(frame,cv.COLOR_BGR2GRAY)#显示捕捉的结果帧cv.imshow('frame',gray)#按q退出,参数为1ms播放速度较快,一般设为25毫秒if cv.waitKey(25) & 0xFF==ord('q'):break#释放视频
cap.release()
#释放所有窗口
cv.destroyAllWindows()

 3. 摄像头捕捉彩色图像,设置输出视频的格式,将捕捉到的帧镜像化后输出到程序所在目录

import numpy as np
import cv2 as cv # 打开摄像头
cap = cv.VideoCapture(0)
# 写入视频的格式为XVID
fourcc = cv.VideoWriter_fourcc(*'XVID')
# 第三个参数为fps 第四个参数为视频大小
out=cv.VideoWriter('output.avi',fourcc,20.0,(640,480))while(cap.isOpened()):ret,frame = cap.read()if ret==True:# 将帧水平翻转(参数为1)frame = cv.flip(frame,1)# 将帧写入output.aviout.write(frame)# 窗口显示处理过的帧cv.imshow('frame',frame)if cv.waitKey(1) & 0xFF == ord('q'):breakelse:break# 释放摄像头
cap.release();
# 释放输出的视频
out.release();
# 释放所有窗口
cv.destroyAllWindows()

参考文献:https://docs.opencv.org/4.0.1/d2/de8/group__core__array.html#gaca7be533e3dac7feb70fc60635adf441


我要成为一名优秀的图像处理专家!

opencv 学习第二课 摄像头、外部视频读取、处理、显示、写入 代码注释版 保证你每一行都能读懂相关推荐

  1. opencv 学习第一课 图像读取、显示、写入 代码注释版 保证你每一行都能读懂

    import numpy as np import cv2 as cvimg = cv.imread('cat.jpg',0) #读入图片 cv.imshow('image1',img) #显示图片 ...

  2. opencv 学习第三课 画线段 圆 椭圆 矩形 多边形 插入文字 代码注释版 保证你每一行都能读懂

    import numpy as np import cv2 as cv # 创建一张大小为512×512,通道数为3的黑色的图片 img = np.zeros((512,512,3), np.uint ...

  3. C++下opencv学习笔记(一)(图像的简单读取丶显示与存储)

    C++下opencv学习笔记(一)(图像的简单读取丶显示与存储) 前言 学习C++ OpenCV,第一需要具备面向对象语言的基础,第二要对图像处理机器学习有基础了解,容易入门.觉得自己基础已经有了可以 ...

  4. 用gcc生成静态库和动态库和使用opencv库编写打开摄像头压缩视频

    文章目录 一.用gcc生成静态库和动态库 1.编辑生成程序hello.h.hello.c.main.c 2.将hello.c生成.o文件 3.使用静态库 4.动态库的使用 二.a与.so库文件的生成与 ...

  5. Python-opencv学习第二课:图像色彩

    Python-opencv学习第二课:图像色彩 文章目录 Python-opencv学习第二课:图像色彩 一.学习内容 二.代码部分 NOTES:上一课代码改善(第一课) 1.引入库(第二课内容开始) ...

  6. as3学习第二课 显示对象和显示列表

    关于显示对象 原文地址:as3学习第二课   显示对象和显示列表 作者:冰剑蓝影 一.显示对象    显示对象就是可以在舞台上显示的对象.包括直接看到的对象,如图形.文字.图片.视频.还有看不到但又真 ...

  7. JavaScript学习 第二课(二)

    JavaScript学习 第二课(二) 一.Math对象: 该对象的作用是用来处理数学运算符的,该对象不需要手动创建,因为它是window对象的一个属性,当页面加载完毕后,后台就是自动创建Math对象 ...

  8. 开始Python学习第二课(python环境安装)

    *** 开始Python学习第二课*** 一. Python语言简介 1. Python语言 1.1 Python的命名 2. Python基本概念 2.1 Python的简单介绍 2.2 Pytho ...

  9. H.265/HEVC 简述 第二课(数字视频格式)

    目录 零.前言 一.数字视频 二.数字视频格式 三.H.265/HEVC编码视频格式 零.前言 本系列博客是对H.265/HEVC视频编码进行一个简单的介绍,主要介绍大致的编码框架和流程,不涉及算法和 ...

最新文章

  1. php 自定义表格并统计,PHP 使用Echarts生成数据统计报表的实现
  2. ajax post 参数说明
  3. 嗨:VSCode和IDEA都请安装上这个神奇的插件
  4. RDKit | 基于RDKit的氨基酸序列转换为SMILES
  5. oracle数据库查表_oracle数据库常用的99条查询语句
  6. Linux数据报文接收发送总结7
  7. 学会用好 Visual Studio Code
  8. 正则表达式是匹配模式,要么匹配字符,要么匹配位置
  9. 一个开源的强类型客户端(.NET 中的 Open Fegin)— Rabbit Go
  10. 嵌入式Jetty和Apache CXF:借助Spring Security来保护REST服务
  11. 帮助你在移动设备上生成倾斜控制(重力控制)的旋转效果jQuery插件 - lenticular.js...
  12. 数据库迁移Flyway
  13. .Net程序集强签名详解
  14. Android BroadcastReceiver示例教程
  15. 把已经写好的Vue项目转成uni-app项目
  16. 【HAVENT原创】让 axios 支持 jsonp
  17. 开发者百宝箱——DevToys
  18. 知乎页面的html代码,仿知乎当复制网页内容时在尾部加入版权信息代码
  19. 怎样用MATLAB画二次函数曲线,matlab画二次函数图像
  20. 娱乐_3D相册(HTML)_七夕

热门文章

  1. python有趣小程序-Python全栈开发-有趣的小程序
  2. python3入门代码-Python3零基础自学方法?
  3. 第D题 把手放在键盘上时,稍不注意就会往右错一位。
  4. ubuntu mysql自动补全_mysql自动化安装脚本(ubuntu and centos64)
  5. 【python笔记】:字典类型详解
  6. python的整除运算_Python3基础 ** 幂运算 // 整除运算
  7. php中的class的用法,PHP get_class_vars() 函数用法及示例
  8. 连接池配置oracle aix,一次AIX系统swap使用过高的故障解决过程
  9. c语言串的存储操作完整,c语言中关于串的相关知识以及操作
  10. php和gps终端设备通讯,运输车辆GPS定位+语音对讲通讯方案