相关文章推荐

不管是Jupyter Notebook还是IPython Notebook,用过的人都知道,要想达成本地python-opencv一样窗口播放视频的效果是非常麻烦的。

网络上能搜索到的matplotlib动态切换图片,大部分都是绘制函数图,或者就是用clear_output清空输出区域的办法重新绘制,既麻烦又不雅观。
现在给大家介绍一个新的方法,可以在jupyter网页开发时像opencv“窗口”一样播放视频、预览图片,甚至可以做一个在线播放器以查看远程服务器里的视频、图片文件,那就是使用 ipywidgets 里的 Image 控件。
如果还没有安装 ipywidgets ,可以在终端中使用 pip install ipywidgets 安装。

最精简的示例

import os
import cv2
import ipywidgets as widgets
from IPython.display import display
imgbox = widgets.Image(format='jpg', height=300, width=400)
display(imgbox)
root = "datasets/Awaken"
for file in os.listdir(root):
    canvas = cv2.imread(os.path.join(root, file))
    imgbox.value = cv2.imencode('.jpg', canvas)[1].tobytes()

效果展示:
Awaken1Awaken3
说明:我提前把许多张图片放在了datasets/Awaken目录下,然后使用for循环遍历图库,依次展示。
Awaken文件夹

ipywidgets.Image控件可以在Jupyter中开辟一个用于显示图片的窗口,与matplotlib.pyplotfigure不同的是,这个窗口支持随时更改其图片内容,而不需要使用IPython.display.clear_output来清除上一次的输出。
但问题是,ipywidgets.Image控件输入的value不是matplotlibopencv支持的numpy格式的图片,而是流媒体格式,那么我们就要先把numpy图像数组转换成流媒体,方法就是cv2.imencode('.jpg/.png/...', img)[1].tobytes()

关于ipywidgets的更多用法,请参考我的另一篇Blog:Jupyter notebook交互输入方法

原创于CSDNhttps://blog.csdn.net/liuqixuan1994/article/details/88715454,转载请注明出处!

不管是Jupyter Notebook还是IPython Notebook,用过的人都知道,要想达成本地python-opencv一样窗口播放视频的效果是非常麻烦的。网络上能搜索到的matplotlib动态切换图片,大部分都是绘制函数图,或者就是用clear_output清空输出区域的办法重新绘制,既麻烦又不雅观。现在给大家介绍一个新的方法,可以在jupyter网页开发时像opencv“窗口”... from IPython.display import display,Latex,Math %matplotlib inline from IPython.core.interactiveshell import InteractiveShell sh = InteractiveShell.instance() def number_to_str(n,cut=5): ns=str(n) format_='{0:.'+str(cut)+'f}' if 'e' in ns or ('.' in ns and len(ns)>cut+1): voila可以使jupyter notebook换为交互式的仪表板。网上有一些例子(将Jupyter Notebook变成Web APP:Voila)可以了解到voila的一些功能。还有关于jupyter使用技巧(如何优雅地使用 Jupyter?) 本文主要内容是制作一个简单的网页界面,其中的功能有:1. 选择不同的视频并且可以播放,2.运行深度学习模型的测试代码,3.补充 1. jupyter notebook播放视频 import ipywidgets as widgets from ipy def processImg(img): # 画出一个框 cv2.rectangle(img, (500, 300), (800, 400), (0, 0, 255), 5, 1, 0) # 上下翻 # img= cv2.flip(img, 0)
ipywidgets ipywidgets可以用于在jupyter notebook当中进行界面设计,以及一些简单的交互式控件操作。 SelectMultiple(复选框框组件取值) from ipywidgets import interact,widgets from ipywidgets import interact from ipywidgets import Button, Layout #样例列表 test_list = ['first','second','third','forth','
基于上篇文章,在开始之前需要在上级目录里打开jupyter notebook 首先需要进入scrips目录里进行激活,然后如果在该目录下输入jupyter notebook的话,不太好 所以需要进入上级目录 创建和显示窗口 需要牢记的命令 namedWindow() 创建命令窗口 imshow() 显示窗口 destroyAllwindows() 摧毁窗口 resizeWindow() 改变窗口大小 waitKey()等待用户输入 #opencv在导包的时候是叫 import cv2 capture = cv2.VideoCapture("D:\\dataset\\chip_gesture.ts") def processImg(img): # 画出一个框
相信大家一定会seaborn或者matplotlib这几个模块感到并不陌生,通常大家会用这几个模块来进行可视化图表的制作。 为了让我们绘制的图表更具交互性,今天我来给大家介绍个组件。喜欢记得收藏、关注、点赞。 完整代码、数据、技术交流文末获取 ipywidgets 首先我们通过pip命令来下载该模块 pip install ipywidgets 该模块中的interact函数可以和我们自定义的函数相结合,随着我们输入的不断变化,输出也会产生相应的不同结果,我们来看一个简单的案例 from ipywidge
解决matplotlib.pyplot在Jupyter Notebook中不显示图像问题可以按照以下步骤进行: 1. 首先,确保已经正确安装了matplotlib库。可以使用命令`pip install matplotlib`来安装最新的版本。 2. 导入matplotlib.pyplot并查看是否出现任何错误。如果没有错误,继续执行下一步。 3. 如果在终端或命令提示符中使用matplotlib模块时可以正常显示图像,但在Jupyter Notebook中无法显示图像,可能是由于Jupyter Notebook的设置问题。 4. 在代码的开头添加 `%matplotlib inline`,以确保在Jupyter Notebook中内联显示图像。这将告诉Jupyter Notebook在代码块的末尾自动显示matplotlib绘制的图像。 import matplotlib.pyplot as plt %matplotlib inline 5. 如果在执行代码后仍然无法显示图像,尝试使用`plt.show()`来手动显示图像。 import matplotlib.pyplot as plt %matplotlib inline # 绘制图像 plt.plot(x, y) plt.show() 6. 检查Jupyter Notebook的内核是否在运行,并且没有发生任何错误。如果有错误,修复错误并重新启动Jupyter Notebook。 7. 确保Jupyter Notebook所用的Python环境与matplotlib的安装环境一致。如果使用了虚拟环境,请确保已将matplotlib正确安装在该环境中。 希望通过以上步骤能够解决matplotlib.pyplot在Jupyter Notebook中不显示图像问题。如果问题仍然存在,可以尝试在社区或论坛中寻求进一步的帮助。 ### 回答2: 解决matplotlib.pyplot在Jupyter Notebook中不显示图像的问题可以尝试以下几种解决方法。 1. 检查是否安装了matplotlib库和相关的依赖库。在终端或命令提示符中输入"pip list"或"conda list"命令,查看matplotlib和相关依赖库是否已安装。 2. 确保代码中包含正确的绘图语句并执行。例如,使用"plt.show()"语句显示图像,或在使用Jupyter Notebook时,使用"%matplotlib inline"命令启用内联绘图。 3. 检查是否存在其他的图像显示设置。有时候,Jupyter Notebook可能会在代码中显示图像之前或之后进行其他的图像显示操作,导致最终无法正确显示图像。可以尝试在代码的适当位置添加"plt.figure()"等语句,确保图像正常显示。 4. 检查Jupyter Notebook运行环境是否正常。有时候,由于Jupyter Notebook的问题,可能导致图像无法正常显示。可以尝试重新启动Jupyter Notebook,或者使用其他的Jupyter Notebook环境,如Google Colab等。 总之,要解决matplotlib.pyplot在Jupyter Notebook中不显示图像的问题,可以通过检查安装情况、确认代码正确性、调整图像显示设置和检查Jupyter Notebook环境等方式进行解决。