from IPython.display import clear_output, display, HTML
from PIL import Image
import matplotlib.pyplot as plt
import time
import cv2
import os
def show_video(video_path:str,small:int=2):
if not os.path.exists(video_path):
print("视频文件不存在")
video = cv2.VideoCapture(video_path)
current_time = 0
while(True):
try:
clear_output(wait=True)
ret, frame = video.read()
if not ret:
break
lines, columns, _ = frame.shape
if current_time == 0:
current_time = time.time()
else:
last_time = current_time
current_time = time.time()
fps = 1. / (current_time - last_time)
text = "FPS: %d" % int(fps)
cv2.putText(frame, text , (0,100), cv2.FONT_HERSHEY_TRIPLEX, 3.65, (255, 0, 0), 2)
frame = cv2.cvtColor(frame, cv2.COLOR_BGR2RGB)
frame = cv2.resize(frame, (int(columns / small), int(lines / small)))
img = Image.fromarray(frame)
display(img)
time.sleep(0.02)
except KeyboardInterrupt:
video.release()
show_video('/home/tl/vechcle_infer/data/pred_road.mp4')
Jupyter notebook, formerly known as the IPython notebook, is a flexible tool that helps you create readable analyses, as you
最近准备系统补充一下人工智能相关知识,因为之前使用的是kaggle,这次准备支持一下国内平台,于是去使用了一下阿里的天池,其中有一个环境使用入门强化课程PPO强化学习,在阿里docker gpu/cpu环境中解决环境问题好久,最后决定在舍友服务器上自己搭一个在线jupyter.
使用了教程中的代码仓库git怎么也生成不了MP4,由此进行了问题排查
并且生成的mp4仅有
step1 排除环境问题
检查相关依赖是否一定要使用gpu(因为舍友的服务器是阿里的服务器,虚拟出来的,没有gpu)
结论gym g.
voila可以使jupyter notebook转换为交互式的仪表板。网上有一些例子(将Jupyter Notebook变成Web APP:Voila)可以了解到voila的一些功能。还有关于jupyter的使用技巧(如何优雅地使用 Jupyter?)
本文主要内容是制作一个简单的网页界面,其中的功能有:1. 选择不同的视频并且可以播放,2.运行深度学习模型的测试代码,3.补充
1. jupyter notebook播放视频
import ipywidgets as widgets
from ipy
import cv2
capture = cv2.VideoCapture("D:\\dataset\\chip_gesture.ts")
def processImg(img):
# 画出一个框
OpenCV函数:cv2.VideoCapture(), cv2.VideoWriter()
1. 打开摄像头
要使用摄像头,需要使用cv2.VideoCapture(0)创建Video
html_str = '''
<video controls width=\"500\" height=\"500\" src=\"{}\">animation</video>
'''.format("./dataset/vid****8726.mp4")
print(html_str)
display(HTML(html_str))
本页面购买不发书!!!仅为视频课购买!!! 请务必到https://edu.csdn.net/bundled/detail/59 下单,方可购买课程+图书。 本页面,仅为观看视频页面,如需购买图书,请务必到https://edu.csdn.net/bundled/detail/59下单购买。 本课程由浅入深的讲授人工智能、机器学习、深度学习的原理和实现,尤其会重点介绍搜索引擎和自然语言处理等热门技术,不但会用生动的例子帮助学员理解理论知识,还会手把手详细示范动手实践环节,让你能够亲自实现一个智能问答系统。
Jupyter涂鸦
在Jupyter Notebook内部创建任何人都可以播放的交互式截屏视频。
是否曾经想在Jupyter Notebook中为某人提供动手的“实时”演示? 使用Graffiti,您可以在笔记本的任何位置添加浮动提示以及可选的录制电影。 演示您想要的内容,突出显示重要内容-全部由您叙述! 由于电影可以在笔记本中和在笔记本中播放,因此观众可以随时暂停,沉浸于您的代码中并完全按照录制时的尝试进行尝试,然后继续播放。
尝试涂鸦! 试试看这些现场演示:
请等待大约30秒钟,以使演示在mybinder.org上旋转。 (感谢MyBinder的员工提供的出色服务)。
或者,观看常规录
获取指定分区直播间id列表
这次我们看直播的区域是:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-5J1gmUSU-1624862277894)(http://qiniuimg.xiaoxiaoming.xyz/imgs/image-20210628134450600.png?imageslim)]
然后我们该分区的直播间id
本课程为Python全栈开发初级入门篇-语言基础章节,学习完本篇章可对python语言有初步的掌握与理解,本课程侧重于初级学员,课程内容详细有针对性,务求各种类型的学员都可以掌握python开发。
不管是Jupyter Notebook还是IPython Notebook,用过的人都知道,要想达成本地python-opencv一样窗口播放视频的效果是非常麻烦的。
网络上能搜索到的matplotlib动态切换图片,大部分都是绘制函数图,或者就是用clear_output清空输出区域的办法重新绘制,既麻烦又不雅观。
现在给大家介绍一个新的方法,可以在jupyter网页开发时像opencv“窗口”...