python-----opencv读视频、循环读图片显示进度条
功能:opencv读视频,显示进度条,推动进度条快进、后退,按q退出。代码如下:
import os
import cv2
def nothing(emp):
pass
def jindu(name,video):
cv2.namedWindow(name,0)
cv2.resizeWindow(name, 800, 600)
cap = cv2.VideoCapture(video)
frames = int(cap.get(cv2.CAP_PROP_FRAME_COUNT))
loop_flag = 0
pos = 0
cv2.createTrackbar('time', name, 0, frames, nothing) while 1:
if loop_flag == pos:
loop_flag = loop_flag + 1
cv2.setTrackbarPos('time', name, loop_flag)
print('loop_flag1', loop_flag)
else:
pos = cv2.getTrackbarPos('time', name)
loop_flag = pos
cap.set(cv2.CAP_PROP_POS_FRAMES, pos)
print('loop_flag2', loop_flag)
ret, img = cap.read() cv2.imshow(name, img)
if cv2.waitKey(1) & 0xFF == ord('q'): #按q退出
cv2.waitKey(0) if __name__ == '__main__':
video = r"D:\Team-CV\video_wang\test/1.MOV"
name = video.split('.')[-1]
jindu(name, video)
功能:opencv循环读图片,显示进度条,推动进度条快进、后退,按q退出。代码如下:
import os
import cv2
def nothing(emp):
pass def jindu_imgpath(name,frames):
cv2.namedWindow(name,0)
cv2.resizeWindow(name, 800, 600)
loop_flag = 0
pos = 0
cv2.createTrackbar('time', name, 0, frames, nothing)
path_list = os.listdir(img_path)
for m, img in enumerate(path_list):
img_file = img_path + '/' + img
img_new = cv2.imread(img_file)
if cv2.waitKey(1) & 0xFF == ord('q'):
cv2.waitKey(0)
if loop_flag == pos:
loop_flag = loop_flag + 1
cv2.setTrackbarPos('time', name, loop_flag)
else:
pos = cv2.getTrackbarPos('time', name)
loop_flag = pos
img = path_list[loop_flag]
img_file = img_path + '/' + img
img_new = cv2.imread(img_file)
cv2.imshow(name, img_new) if __name__ == '__main__':
img_path = r"D:\Team-CV\video_wang\test\JPEGImages"
frames = len(os.listdir(img_path))
jindu_imgpath('img', frames)
python-----opencv读视频、循环读图片显示进度条的更多相关文章
- Python opencv提取视频中的图片
作者:R语言和Python学堂链接:https://www.jianshu.com/p/e3c04d4fb5f3 这个函数就是本文要介绍的video2frames()函数,功能就是从视频中提取图片,名 ...
- 利用Python计算π的值,并显示进度条
利用Python计算π的值,并显示进度条 第一步:下载tqdm 第二步;编写代码 from math import * from tqdm import tqdm from time import ...
- WPF下载远程文件,并显示进度条和百分比
WPF下载远程文件,并显示进度条和百分比 1.xaml <ProgressBar HorizontalAlignment="Left" Height="10&quo ...
- Asp.Net实现无刷新文件上传并显示进度条(非服务器控件实现)(转)
Asp.Net实现无刷新文件上传并显示进度条(非服务器控件实现) 相信通过Asp.Net的服务器控件上传文件在简单不过了,通过AjaxToolkit控件实现上传进度也不是什么难事,为什么还要自己辛辛苦 ...
- (委托事件处理)关于多线程执行显示进度条的实例(转)&&线程间操作无效: 从不是创建控件“rtxtEntryNO”的线程访问它。
关于多线程执行显示进度条的实例! 之前回答了一篇关于怎么在线程中操作进度条的帖子,估计有人看的不是很明白今天没事,写了一个小小的实例,很简单,就2个文件权当抛砖引玉,希望有更好解决方案的人发表一下意见 ...
- 基于Jquery插件Uploadify实现实时显示进度条上传图片
网址:http://www.jb51.net/article/83811.htm 这篇文章主要介绍了基于Jquery插件Uploadify实现实时显示进度条上传图片的相关资料,感兴趣的小伙伴们 ...
- 【shell脚本】显示进度条
使用动态时针版本显示进度条 [root@VM_0_10_centos shellScript]# cat progressBar.sh #!/bin/bash # 进度条,动态时针版本 # 定义显示进 ...
- tqdm和zip组合使用时无法显示进度条-解决办法
问题 单独对于可迭代对象iterator使用tqdm时,结合循环就可以在终端显示进度条, 以直观展示程序进度,如下: from tqdm import tqdm textlist = [] for i ...
- 任务栏显示进度条 CreateComObject(CLSID_TaskbarList) as ITaskbarList4
http://www.cnblogs.com/jxsoft/archive/2011/06/02/2067712.html //在任务栏显示 进度条 unit Unit9; interface use ...
随机推荐
- 树莓派 - RPi.GPIO
RPi.GPIO是通过Python/C API实现的,C代码操作底层寄存器, python通过Python/C API调用这些C接口. 这是关于RPi.GPIO项目的介绍. 其中提到了有python ...
- Python之条件判断
Python之条件判断 计算机之所以能做很多自动化的任务,因为它可以自己做条件判断. 比如,输入用户年龄,根据年龄打印不同的内容,在Python程序中,用if语句实现: age = 20 if age ...
- *****Python之进程线程*****
Python之进程线程 Python的threading模块 并发编程: 操作系统:位于底层硬件与应用软件之间的一层. 工作方式:向下管理硬件,向上提供接口. 进程:资源管理单位(容器) 线程:最 ...
- C++ 赋值运算符重载
类的定义 class Test{ int id; public: Test(int i): id(i){ cout << "obj_" << i <& ...
- DataBase安装及简单配置
下载以及安装 打开mysql官网下载页面:http://dev.mysql.com/downloads/mysql/ 用管理员身份打开cmd命令行工具,cd到解压文件的bin目录 输入mysqld i ...
- 集训第五周动态规划 G题 回文串
Description A palindrome is a symmetrical string, that is, a string read identically from left to ri ...
- 【转】Java IO流 overview
Java流操作有关的类或接口: Java流类图结构: 流的概念和作用 流是一组有顺序的,有起点和终点的字节集合,是对数据传输的总称或抽象.即数据在两设备间的传输称为流,流的本质是数据传输,根据数据传输 ...
- 常见问题:Linux安装Python3步骤、Windows无法利用pip
Linux安装python3.6和第三方库的步骤: 我的Linux是CentOS 6.5版本 Linux下大部分系统默认自带python2.x的版本,最常见的是python2.6或python2.7, ...
- codeforces 691D(数据结构)
D. Swaps in Permutation time limit per test 5 seconds memory limit per test 256 megabytes input stan ...
- HDU——1281 棋盘游戏
棋盘游戏 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submis ...