基于OpenCV实现视频的循环播放
本文将介绍基于OpenCV实现视频的循环播放。
有以下三个步骤:
- 首先设置一个frame的设置参数frame_counter,值为0
- 在读帧时间,将每次加一
- 当 frame_counter 达到视频总帧数时,将当前的帧设置为 0
视频总帧数:CAP_PROP_FRAME_COUNT
设置当前的帧:CAP_PROP_POS_FRAMES
VideoCaptureProperties
通用属性标识符参考地址。
1.Python+OpenCV实现
import cv2cap = cv2.VideoCapture("001.mp4")
frame_counter = 0while (cap.isOpened()):ret, frame = cap.read()frame_counter += 1if frame_counter == int(cap.get(cv2.CAP_PROP_FRAME_COUNT)):frame_counter = 0cap.set(cv2.CAP_PROP_POS_FRAMES, 0)cv2.imshow("frame", frame)key = cv2.waitKey(1)# ESCif key == 27:break
cap.release()
cv2.destroyAllWindows()
2.C++ + OpenCV实现
#include <opencv2/core/core.hpp>
#include <opencv2/highgui/highgui.hpp>
#include <opencv2/imgproc/imgproc.hpp>int main() {cv::Mat frame;cv::VideoCapture cap("001.mp4"); int frame_counter = 0;while (true){cap >> frame;if (!frame.data){printf("Image not loaded");return -1;}frame_counter += 1;if (frame_counter == int(cap.get(cv::CAP_PROP_FRAME_COUNT))){frame_counter = 0;cap.set(cv::CAP_PROP_POS_FRAMES, 0);}cv::imshow("demo", frame);char(key)=(char)cv::waitKey(1);if(key==27)break;}return 0;
}
参考目录
https://medium.com/ching-i/%E5%BD%B1%E7%89%87%E6%8C%81%E7%BA%8C%E6%92%AD%E6%94%BE-python-c-3e0cfdd39269
基于OpenCV实现视频的循环播放相关推荐
- 基于OpenCV的视频人物查找及剪辑*
基于OpenCV的视频人物查找及剪辑 摘要:本项目是基于OpenCV的人脸识别技术,将一个完整的视频中自己想要了解的某个具体的人物片段,通过将视频分割成帧并且训练需要提取人物的面部特征,通过主成分分析 ...
- python 视频人脸替换_Python基于OpenCV实现视频的人脸检测
本文实例为大家分享了基于OpenCV实现视频的人脸检测具体代码,供大家参考,具体内容如下 前提条件 1.摄像头 2.已安装Python和OpenCV3 代码 import cv2 import sys ...
- python视频人脸检测_Python基于OpenCV实现视频的人脸检测
本文实例为大家分享了基于OpenCV实现视频的人脸检测具体代码,供大家参考,具体内容如下 前提条件 1.摄像头 2.已安装Python和OpenCV3 代码 import cv2 import sys ...
- 基于OpenCV的视频场景切割神器
环境 windows 10 64bit anaconda with python 3.7 pyscenedetect 0.5.5 简介 了解视频剪辑的小伙伴,应该都知道转场这个词.一个视频场景转换到另 ...
- 基于OpenCV的视频处理 - 人脸检测
一个不知名大学生,江湖人称菜狗 original author: jacky Li Email : 3435673055@qq.com Time of completion:2023.2.7 Las ...
- 91.video.ws index php_如何利用videojs实现视频列表循环播放(完整代码)
本篇文章给大家带来的内容是关于如何利用videojs实现视频列表循环播放(完整代码),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. 庭审直播 .video-js { /* posit ...
- 基于OpenCV的视频道路车道检测
基于OpenCV的视频道路车道检测 基于OpenCV的视频道路车道检测 前言 综述 运行方法 车道检测的实现 路面图像二值化 基于透视变换提取车道区域 基于二次多项式拟合车道线 计算曲率半径与车辆的偏 ...
- 调用笔记本的摄像头实现基于opencv的视频人脸识别(中文显示和英文显示)以及 index 480 is out of bounds for axis 0 with size 480错误的解决
@人脸识别代码和一些常见错误 基于opencv的视频人脸识别(中文显示)以及 index 480 is out of bounds for axis 0 with size 480错误的解决 参考了 ...
- uniapp播放本地视频,循环播放第二遍会显示加载图标
uniapp播放本地视频,循环播放第二遍会显示加载图标 解决:将加载图标替换成一张纯透明的图片(我感觉这个方法有点捞,有更好的方法可以留言)本方法适用离线打包,因为替换图片要修改uniapp的依赖包 ...
- AVProVideo插件实现文件夹中的视频文件循环播放
说明: 最近项目需要循环播放一个视频列表,使用的是[AVProVideo插件],发现只能一个视频的循环播放,不能实现一个文件夹下的所有视频的循环播放. 解决如下: 插件下载 提取码:bdgh 根据上图 ...
最新文章
- hdu 2665(主席树查询区间k大值)
- 设计模式之工厂类模式总结对比、简单工厂模式、工厂方法模式、抽象工厂模式、带反射的工厂模式、例子代码分析、最详细
- 英特尔媒体年会场景(15P)——实拍与小结
- 2.2. 对网络安全的威胁
- iOS tableViewCell自适应高度 第三发类库
- python拷贝文件函数_Python Set集合,函数,深入拷贝,浅入拷贝,文件处理
- 洛谷 P1966 火柴排队 —— 思路
- Unity超基础学习笔记(一)
- python实现归并算法
- vb.net oracle数据库,vb.net 如何与oracle数据库连接
- 有效需求预测的四大优势
- Kinetis系列单片机(飞思卡尔,NXP )单片机唯一ID获取
- 2. 查询表product——统计所有库存商品的总价值
- [转载]程序员去面试的梗!面试官:“哦了,明天来上班吧”
- #大三狗的日常总结与反思03#
- Linux下一些网络小技巧
- 频率控制方式及优缺点总结
- 如何备份VMware虚拟磁盘文件并移植到其他虚拟机
- 浅谈ArcGIS GP服务 :一、框架介绍
- HR团队如何提升效率?人力资源RPA给你答案