1, cv2.VideoCapture()函数

//1、cv2.VideoCapture()函数:
cap = cv2.VideoCapture(0)//VideoCapture()中参数是0,表示打开笔记本的内置摄像头。
cap = cv2.VideoCapture("…/1.avi")//VideoCapture("…/1.avi"),表示参数是视频文件路径则打开视频。
cap=cv2.VideoCapture(Test_Video_Name)

2、cap.isOpened()函数:

返回true表示成功,false表示不成功

3、cap.set() cap.get()

// 摄像头参数设置,将cv2.CAP_PROP_POS_FRAMES设置为1,使用该参数的方法如下cap.get(cv2.CAP_PROP_POS_FRAMES)
cap.set(cv2.CAP_PROP_POS_FRAMES, 1)
//参考链接:https://blog.csdn.net/leon_zeng0/article/details/102791988

4、ret,frame= cap.read()按帧读取视频

// ret,frame= cap.read()按帧读取视频,ret,frame是获cap.read()方法的两个返回值: 参数ret 为True 或者False,代表有没有读取到图片 第二个参数frame表示截取到一帧的图片,是个三维矩阵;
ret, img = cap.read()
cv2.imshow("input", img)

5、cv2.waitKey()函数

参数是1,表示延时1ms切换到下一帧图像,参数过大如cv2.waitKey(1000),会因为延时过久而卡顿感觉到卡顿。
参数为0,如cv2.waitKey(0)只显示当前帧图像,相当于视频暂停。
esc键对应的ASCII码是27,即当按esc键是if条件句成立。


cv.waitKey()是一个键盘绑定函数。其参数是以毫秒为单位的时间。该函数等待任何键盘事件指定的毫秒
cv2.waitKey(delay):

delay≤0:一直等待按键;
delay取正整数:等待按键的时间(ms)。

该函数的返回值:

等待期间有按键:返回按键的ASCII码(比如:Esc的ASCII码为27);
等待期间没有按键:返回 值为-1;

需要注意的是:如果使用的是64位的计算机,cv.waitKey()函数的返回值与0xff按位相与操作,取其低八位,再与27(Esc的ASCII码为27)比较,或者这样cv2.waitKey(10) & 0xff == ord(‘q’),ord函数是取其ASCII编码,当然换成其他的字符也行只要ASCII码对应就行。

6、cap.release()与destroyAllWindows()函数:

cap.release()释放视频,调用destroyAllWindows()关闭所有图像窗口。

7、在指定图片上画一个矩形,返回操作后的图片

cv2.rectangle(img, start_point, end_point, color, thickness)
img:要在其上绘制矩形的图像
start_point:左上角坐标
end_point:右上角坐标
color:要绘制的矩形的边界线的颜色,对于BGR,我们传入一个元组,例如:(255,0,0)为蓝色
thickness:矩形边框线的粗细像素,厚度-1像素将以指定的颜色填充矩形形状

opencv摄像头常用操作相关推荐

  1. OpenCV 矩阵常用操作,比如 addWeighted, flip, hconcat, reduce, merge, norm, repeat, split, sort, mulSpectrum 等

    平时经常会用到一些 C++ OpenCV 矩阵 Mat 常用的函数,每次用到都要到官网去查看,现在特地整理了一下. 下面的函数均来自于 https://docs.opencv.org/master/d ...

  2. opencv Mat常用操作

    裁剪: int x = 50;int y = 50;int width = 50;int height = 50;cv::Rect rect(x, y, width, height);Mat temp ...

  3. opencv启动摄像头并且操作摄像头拍照

    提示:代码由pycharm实现 文章目录 前言 一.引入库 二.步骤 1.开启摄像头 2.设置一个变量方便后面保存图片 3.设置循环检测 总结 前言 本次我们记录OpenCV的启用电脑的摄像头以及对摄 ...

  4. OpenCV C++ 常用功能

    <OpenCV C++ 常用功能>    Key Words:C++.OpenCV.Mat. Beijing, 2020 Agile Pioneer   文章目录 Mat Mat各种初始化 ...

  5. OpenCV的基本矩阵操作与示例

    转载:http://blog.csdn.net/iracer/article/details/51296631 OpenCV的基本矩阵操作与示例 OpenCV中的矩阵操作非常重要,本文总结了矩阵的创建 ...

  6. OpenCV中视频操作及人脸识别案例

    目录 OpenCV中视频操作及人脸识别案例 视频操作 视频读写 从文件中读取视频并播放 保存视频 小结 视频追踪 meanshift Camshift 算法总结 小结 案例:人脸案例 人脸识别基础 实 ...

  7. Eigen::常用操作[转]

    Opencv::Mat 与 Eigen互转 Opencv::Mat转Eigen #include <Eigen/Dense> #include <iostream> #incl ...

  8. Opencv Mat矩阵操作

    Opencv Mat矩阵操作 1.生成矩阵: Mat image(240, 320, CV8UC3); 第一个参数是rows,该矩阵的行数:第二个参数是cols,该矩阵的列数:第三个参数是该矩阵元素的 ...

  9. 【无标题】c++ MFC图像处理CImage类常用操作代码

    原文作者:aircraft 原文地址:https://www.cnblogs.com/DOMLX/p/9598974.html 我看了一下发现关于c++下的CImage图像处理类 的图像处理相关的介绍 ...

  10. 基于Ubuntu安装opencv以及相关操作

    目录 一.基于Ubuntu下安装opencv 二.相关操作之图片 三.相关操作之视屏 四.总结 五.参考资料 一.基于Ubuntu下安装opencv 1.opencv依赖环境的安装 1.1 安装cma ...

最新文章

  1. 敏捷和DevOps:是敌是友?
  2. mysql删除有关联的数据库表_【数据库】mysql如何删除关联表
  3. 比navicat更好用的工具_5118是查什么的?做什么用的?对比站长工具和爱站谁更好?...
  4. 原生JS写Ajax的请求函数
  5. 如何保证文章中同一组样品在不同子图颜色一致?
  6. flask html缓存,flask_cache如何缓存动态数据,如何调用缓存数据
  7. VB6_小林的气象类模块
  8. php计算macd,MT4里的MACD和平常所用的MACD计算公式是什么?
  9. c语言轮流闪烁有1秒的接线图,LED彩灯PLC编程接线及梯形图
  10. 爬取豆瓣电影排行榜top250最新教程!经典爬虫案例
  11. python实现投票问题。
  12. jmeter显示桌面快捷方式图标
  13. i = i++ 计算过程还不会?C/C++ 的输出语句与Java 有何不同?
  14. 国标GB28181摄像头直播视频流媒体服务器获取视频流失败问题分析
  15. 安装配置Android Studio集成开发环境
  16. 第七章 中子----中子源、应用、能量分类、探测四个基本过程
  17. POj 3164 Command Network最小树形图 模板题 朱刘算法
  18. 关于 HTTP 常用 Method
  19. BMP 图像信息隐藏及检测
  20. 以太坊上海升级完成 “挖矿”成为历史 ETH未跌反涨,突破2100美元

热门文章

  1. Java基础学习总结(70)——开发Java项目常用的工具汇总
  2. 电商扣减库存_什么样的电商产品经理更值钱?先解决这个难题!
  3. 大华出入口管理系统H710服务器配置,DH-DSS-H710S2 大华出入口综合管理系统 人员车辆管理车场收费...
  4. 智能车改舵机中值步骤_智能车制作全过程(飞思卡尔)
  5. esp8266开发入门教程(基于Arduino)——环境安装
  6. 设计模式-05.建造者模式与模板方法模式比较
  7. arduino蓝牙模块1
  8. java实现大写转小写_java实现将大写字母转换为小写字母
  9. 非极大值抑制(Non-Maximum-Suppression)
  10. [裴礼文数学分析中的典型问题与方法习题参考解答]5.1.23