基于Gradio的YOLOv8通用目标检测与图像分割演示系统
可自定义检测模型、演示便捷、安装简单
🚀 作者简介
曾逸夫,从事人工智能研究与开发;主研领域:计算机视觉;YOLOv8官方开源项目代码贡献人;YOLOv5官方开源项目代码贡献人
❤️ Github:https://github.com/Zengyf-CVer
🚀更新走势
-
2023-04-14
⚡ Gradio YOLOv8 Det v0.2.3正式上线 -
2023-01-23
⚡ Gradio YOLOv8 Det v0.2.2正式上线 -
2023-01-22
⚡ Gradio YOLOv8 Det v0.2正式上线 -
2023-01-15
⚡ Gradio YOLOv8 Det v0.1正式上线
🤗在线Demo
❤️ 快速体验
本项目提供了在线demo,点击下面的logo,进入Hugging Face Spaces中快速体验:
💎项目流程与用途
📌 项目整体流程
📌 项目示例
❤️ Gradio YOLOv8 Det v0.2.3 界面与检测效果(目标检测)
❤️ Gradio YOLOv8 Det v0.2.3 界面与检测效果(图像分割)
❤️ 快速体验
本项目提供了6个图片示例,用户可以快速体验检测与分割效果:
示例界面
💡项目结构
.
├── gradio-yolov8-det# 项目名称
│ ├── model_config# 模型配置
│ │ ├── model_name_all.yaml # YOLOv8 模型名称(yaml版)
│ │ └── model_name_custom.yaml # 自定义模型名称(yaml版)
│ ├── cls_name# 类别名称
│ │ ├── cls_name_zh.yaml# 类别名称文件(yaml版-中文)
│ │ ├── cls_name_en.yaml# 类别名称文件(yaml版-英文)
│ │ ├── cls_name_ru.yaml# 类别名称文件(yaml版-俄语)
│ │ ├── cls_name_es.yaml# 类别名称文件(yaml版-西班牙语)
│ │ ├── cls_name_ar.yaml# 类别名称文件(yaml版-阿拉伯语)
│ │ ├── cls_name_ko.yaml# 类别名称文件(yaml版-韩语)
│ │ ├── cls_name.yaml# 类别名称文件(yaml版-中文-v0.1)
│ │ └── cls_name.csv# 类别名称文件(csv版-中文)
│ ├── util# 工具包
│ │ ├── fonts_opt.py# 字体管理
│ │ └── pdf_opt.py# PDF管理
│ ├── img_examples# 示例图片
│ ├── __init__.py# 初始化文件
│ ├── gradio_yolov8_det.py # v0.2.3主运行文件
│ ├── gyd_fastapi_server.py # Gradio FastAPI运行文件
│ ├── setup.cfg# pre-commit CI检查源配置文件
│ ├── .pre-commit-config.yaml# pre-commit配置文件
│ ├── LICENSE# 项目许可
│ ├── CodeCheck.md# 代码检查
│ ├── .gitignore# git忽略文件
│ ├── README.md# 项目说明
│ └── requirements.txt# 脚本依赖包
├── gradio-yolov8-det# 项目名称
│ ├── model_config# 模型配置
│ │ ├── model_name_all.yaml # YOLOv8 模型名称(yaml版)
│ │ └── model_name_custom.yaml # 自定义模型名称(yaml版)
│ ├── cls_name# 类别名称
│ │ ├── cls_name_zh.yaml# 类别名称文件(yaml版-中文)
│ │ ├── cls_name_en.yaml# 类别名称文件(yaml版-英文)
│ │ ├── cls_name_ru.yaml# 类别名称文件(yaml版-俄语)
│ │ ├── cls_name_es.yaml# 类别名称文件(yaml版-西班牙语)
│ │ ├── cls_name_ar.yaml# 类别名称文件(yaml版-阿拉伯语)
│ │ ├── cls_name_ko.yaml# 类别名称文件(yaml版-韩语)
│ │ ├── cls_name.yaml# 类别名称文件(yaml版-中文-v0.1)
│ │ └── cls_name.csv# 类别名称文件(csv版-中文)
│ ├── util# 工具包
│ │ ├── fonts_opt.py# 字体管理
│ │ └── pdf_opt.py# PDF管理
│ ├── img_examples# 示例图片
│ ├── __init__.py# 初始化文件
│ ├── gradio_yolov8_det.py # v0.2.3主运行文件
│ ├── gyd_fastapi_server.py # Gradio FastAPI运行文件
│ ├── setup.cfg# pre-commit CI检查源配置文件
│ ├── .pre-commit-config.yaml# pre-commit配置文件
│ ├── LICENSE# 项目许可
│ ├── CodeCheck.md# 代码检查
│ ├── .gitignore# git忽略文件
│ ├── README.md# 项目说明
│ └── requirements.txt# 脚本依赖包
🔥安装教程
✅ 第一步:创建conda环境
conda create -n yolo python==3.8
conda activate yolo # 进入环境
conda activate yolo # 进入环境
✅ 第二步:克隆
git clone https://gitee.com/CV_Lab/gradio-yolov8-det.git
✅ 第三步:安装Gradio YOLOv8 Det依赖
cd gradio-yolov8-det
pip install -r ./requirements.txt -U
pip install -r ./requirements.txt -U
⚡使用教程
💡 运行Gradio YOLOv8 Det
📌 运行
python gradio_yolov8_det.py
# 在浏览器中输入:http://127.0.0.1:7860/或者http://127.0.0.1:7861/ 等等(具体观察shell提示)
# 在浏览器中输入:http://127.0.0.1:7860/或者http://127.0.0.1:7861/ 等等(具体观察shell提示)
❗ 注:默认类别文件cls_name_zh.yaml|cls_name.csv
💡 脚本指令操作
❤️ 本项目提供了一些脚本指令,旨在扩展项目的功能。
❗ 注:其中的一些功能是界面组件(按钮、文本框等)无法实现的,需要通过脚本指令完成:
# 共享模式
python gradio_yolov8_det.py -is # 在浏览器中以共享模式打开,https://**.gradio.app/
# 图片输入源切换,默认为图片上传
python gradio_yolov8_det.py -src upload # 图片上传
python gradio_yolov8_det.py -src webcam # webcam拍照
# 输入图片操作模式,默认为图片编辑器
python gradio_yolov8_det.py -it editor # 图片编辑器
python gradio_yolov8_det.py -it select # 区域选择
# 自定义下拉框默认模型名称
python gradio_yolov8_det.py -mn yolov8m
# 自定义NMS置信度阈值
python gradio_yolov8_det.py -conf 0.8
# 自定义NMS IoU阈值
python gradio_yolov8_det.py -iou 0.5
# 设置推理尺寸,默认为640
python gradio_yolov8_det.py -isz 320
# 设置滑块步长,默认为0.05
python gradio_yolov8_det.py -ss 0.01
python gradio_yolov8_det.py -is # 在浏览器中以共享模式打开,https://**.gradio.app/
# 图片输入源切换,默认为图片上传
python gradio_yolov8_det.py -src upload # 图片上传
python gradio_yolov8_det.py -src webcam # webcam拍照
# 输入图片操作模式,默认为图片编辑器
python gradio_yolov8_det.py -it editor # 图片编辑器
python gradio_yolov8_det.py -it select # 区域选择
# 自定义下拉框默认模型名称
python gradio_yolov8_det.py -mn yolov8m
# 自定义NMS置信度阈值
python gradio_yolov8_det.py -conf 0.8
# 自定义NMS IoU阈值
python gradio_yolov8_det.py -iou 0.5
# 设置推理尺寸,默认为640
python gradio_yolov8_det.py -isz 320
# 设置滑块步长,默认为0.05
python gradio_yolov8_det.py -ss 0.01
💡 FastAPI 操作
❤️ 本项目可以内嵌于FastAPI框架
python gyd_fastapi_server.py
📝 项目引用指南
📌 如需引用Gradio YOLOv8 Det v0.2.3,请在相关文章的参考文献中加入下面文字:
曾逸夫, (2023) Gradio YOLOv8 Det (Version 0.2.3).https://gitee.com/CV_Lab/gradio-yolov8-det.git.
💬 技术交流
- 如果你发现任何Gradio YOLOv8 Det存在的问题或者是建议, 欢迎通过Gitee Issues给我提issues。
- 欢迎加入CV Lab技术交流群
正文完
可以使用微信扫码关注公众号(ID:xzluomor)