streamlit 网页端opencv图像处理
streamlit 简介
Streamlit是一个用于创建交互式Web应用程序的Python库。它的主要目标是使数据科学家能够快速轻松地搭建和部署机器学习模型、数据可视化和演示等应用。
以下是Streamlit的一些核心特点和优势:
简单易用:Streamlit提供了简洁直观的API,使得创建Web应用变得非常简单。只需使用少量的Python代码,就能够构建交互式应用程序,无需繁杂的前端开发经验。
实时更新:Streamlit支持实时更新,即当修改代码后,应用程序会自动重新加载,并且可以即时看到修改后的效果,方便进行迭代开发和调试。
内置组件:Streamlit提供了各种内置组件,可以方便地构建用户界面,包括文本输入框、下拉菜单、按钮、图表等,使得用户与应用程序进行交互更加灵活。
多媒体支持:Streamlit内置了对多媒体内容的支持,可以轻松地显示图像、音频和视频等,方便展示和分析多媒体数据。
部署简单:Streamlit应用程序可以非常容易地部署在各种平台上,包括本地服务器、云服务器以及各种云服务提供商(如Heroku、AWS等),使得应用的分享和展示变得非常便捷。
总之,Streamlit是一个强大而简单易用的Python库,为数据科学家和开发人员提供了快速构建交互式Web应用程序的能力,使得展示、可视化和演示数据变得更加高效和方便。无论是原型开发、数据可视化还是机器学习模型部署,Streamlit都是一个很好的选择。
目标
我是通过streamlit实现opecv读取网络视频流(esp-eye的网络视频流)进行做图像处理,这里做的是人体姿态识别,后期还打算跑yolo模型。
环境搭建
我这里是在服务器上用conda创建了python3.8的python环境,你用其他方法也可以,然后再开始安装pip install opencv-contrib-python
opencv的拓展库 包含基础库,pip install streamlit
安装streamlit环境
运行程序
官网示例
在 .py的文件下运行命令行终端 streamlit run xxx.py
默认端口是8501,通过浏览器访问本地IP的该端口即可打开
终端输出:
You can now view your Streamlit app in your browser.
Local URL: http://localhost:8501
Network URL: http://192.168.1.20:8501
程序机制
streamlit 程序会在每一次事件发生时,重新运行程序,所以,在程序中添加按钮之类的要注意保存事件的状态,让下一次运行程序的时候执行上一次程序中发生的事件。