YOLOv5(PyTorch)目标检测实战:Flask Web部署

bai666ai 2023-01-13 00:37:41

课程名称适应人群
YOLOv5(PyTorch)目标检测实战:Flask Web部署希望学习YOLOv5目标检测部署方法的学员

PyTorch版的YOLOv5是轻量而高性能的实时目标检测方法。利用YOLOv5训练完自己的数据集后,如何向大众展示并提供落地的服务呢? 

 

本课程将提供相应的解决方案,具体讲述如何使用Web应用程序框架Flask进行YOLOv5的Web应用部署。用户可通过客户端浏览器上传图片,经服务器处理后返回图片检测数据并在浏览器中绘制检测结果。 

 

本课程的YOLOv5使用ultralytics/yolov5,在Ubuntu系统上做项目演示,并提供在Windows系统上的部署方式文档。

本项目采取前后端分离的系统架构和开发方式,减少前后端的耦合。课程包括:YOLOv5的安装、 Flask的安装、YOLOv5的检测API接口python代码、 Flask的服务程序的python代码、前端html代码、CSS代码、Javascript代码、系统部署演示、生产系统部署建议等。

 

本人推出了有关YOLOv5目标检测的系列课程。请持续关注该系列的其它视频课程,包括:

《YOLOv5(PyTorch)目标检测实战:训练自己的数据集》

Ubuntu系统 https://edu.csdn.net/course/detail/30793

Windows系统 https://edu.csdn.net/course/detail/30923

《YOLOv5(PyTorch)目标检测:原理与源码解析》https://edu.csdn.net/course/detail/31428

《YOLOv5(PyTorch)目标检测实战:Flask Web部署》https://edu.csdn.net/course/detail/31087

《YOLOv5(PyTorch)目标检测实战:TensorRT加速部署》https://edu.csdn.net/course/detail/32303

yolov5部署演示

系统架构

...全文
13353 182 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
182 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复

学习后能在win端访问ubuntu的程序么? 上传文件时时Ubuntu的文件还是win的文件?

苏苏苏卡 2024-10-11
  • 举报
回复
@雪落无痕颂千殇 你找到课件和代码了吗。。。我这里什么都没有,只有视频
奋斗的草莓熊 2024-04-11
  • 打赏
  • 举报
回复

老师,请问怎么下载课件呢?现在视频上方点不了

奋斗的草莓熊 2024-04-11
  • 打赏
  • 举报
回复

现在怎么视频上方的课件链接点不进去,下载不了课件啊

2301_78999371 2024-03-07
  • 打赏
  • 举报
回复

老师,如果用yolov7需要改什么?

如何水paper 2024-03-05
  • 打赏
  • 举报
回复

我这个用的是copy过来的yolov5 6.0版本代码;但自己的训练模型是7.0,下面时出现的问题
(pytorch) D:\myspace\yolov5-7.0>python flask_app.py
Serving HTTP on :: port 8888 (http://[::]:8888/) ...
Traceback (most recent call last):
File "flask_app.py", line 9, in
from backend.predict import predict
File "D:\myspace\yolov5-7.0\backend\predict.py", line 9, in
from utils.general import check_img_size, non_max_suppression, scale_coords, xyxy2xywh
ImportError: cannot import name 'scale_coords' from 'utils.general' (D:\myspace\yolov5-7.0\utils\general.py)

超级加号君 2023-10-05
  • 打赏
  • 举报
回复

怎么用cpu跑?检测API接口代码做哪些改动?

lovable677 2023-09-07
  • 打赏
  • 举报
回复

只能显示本地的图片和视频 不能实时检测rtmp的视频流吗?? 能在web上实时看见检测的结果

小菜鸡aaa 2023-06-30
  • 打赏
  • 举报
回复

模型预测结果显示始终为空,也没报错~

Harper_Chen 2023-04-21
  • 打赏
  • 举报
回复

你好老师,我在替换自己的yolo模型文件后,运行程序报错如下,有办法解决吗?
Flask Config : {'weights': 'weights/best.pt', 'device': '0', 'source': 'frontend/static/images', 'output': 'frontend/static/output', 'imgsz': 640, 'conf_thres': 0.25, 'iou_thres': 0.45, 'view_img': False, 'save_img': True, 'save_txt': True, 'classes': None, 'agnostic_nms': False, 'augment': False, 'update': False}
Traceback (most recent call last):
File "flask_app.py", line 23, in
model = attempt_load(opt['weights'], map_location=device)
File "/home/hongyuan/Documents/yolov5-6.0-flask/models/experimental.py", line 94, in attempt_load
ckpt = torch.load(attempt_download(w), map_location=map_location) # load
File "/home/hongyuan/anaconda3/envs/pytorch/lib/python3.8/site-packages/torch/serialization.py", line 712, in load
return _load(opened_zipfile, map_location, pickle_module, **pickle_load_args)
File "/home/hongyuan/anaconda3/envs/pytorch/lib/python3.8/site-packages/torch/serialization.py", line 1049, in _load
result = unpickler.load()
File "/home/hongyuan/anaconda3/envs/pytorch/lib/python3.8/site-packages/torch/serialization.py", line 1042, in find_class
return super().find_class(mod_name, name)
AttributeError: Can't get attribute 'DetectionModel' on <module 'models.yolo' from '/home/hongyuan/Documents/yolov5-6.0-flask/models/yolo.py'>

Harper_Chen 2023-04-21
  • 打赏
  • 举报
回复

你好老师,我在替换自己的yolo模型文件后,运行程序报错如下,有办法解决吗?
Flask Config : {'weights': 'weights/best.pt', 'device': '0', 'source': 'frontend/static/images', 'output': 'frontend/static/output', 'imgsz': 640, 'conf_thres': 0.25, 'iou_thres': 0.45, 'view_img': False, 'save_img': True, 'save_txt': True, 'classes': None, 'agnostic_nms': False, 'augment': False, 'update': False}
Traceback (most recent call last):
File "flask_app.py", line 23, in
model = attempt_load(opt['weights'], map_location=device)
File "/home/hongyuan/Documents/yolov5-6.0-flask/models/experimental.py", line 94, in attempt_load
ckpt = torch.load(attempt_download(w), map_location=map_location) # load
File "/home/hongyuan/anaconda3/envs/pytorch/lib/python3.8/site-packages/torch/serialization.py", line 712, in load
return _load(opened_zipfile, map_location, pickle_module, **pickle_load_args)
File "/home/hongyuan/anaconda3/envs/pytorch/lib/python3.8/site-packages/torch/serialization.py", line 1049, in _load
result = unpickler.load()
File "/home/hongyuan/anaconda3/envs/pytorch/lib/python3.8/site-packages/torch/serialization.py", line 1042, in find_class
return super().find_class(mod_name, name)
AttributeError: Can't get attribute 'DetectionModel' on <module 'models.yolo' from '/home/hongyuan/Documents/yolov5-6.0-flask/models/yolo.py'>

qq_56715552 2023-04-19
  • 打赏
  • 举报
回复

老师我运行predict.py为什么一只报错ModuleNotFoundError: No module named 'wsgi'啊
该怎么解决呢

ssss10222 2022-11-26
  • 打赏
  • 举报
回复
应该怎么部署到服务器啊 用WSGI 只能127.0.0.1访问
qq_54369767 2022-09-22
  • 打赏
  • 举报
回复
老师您好,我想问一下您如何修改css里面的内容让输入图片位于页面的左侧,输出结果位于页面右侧,按钮位于中间。因为我的检测图片长度比较大,上下的话图片会超出网页页面太多,谢谢您了。
bai666ai 2022-09-26
  • 举报
回复
@qq_54369767 <p>这个要自己查下html和css的资料来改下了</p>
  • 打赏
  • 举报
回复
url = protocol + '//' + host + ":5000/predict/"代表传输回去的url是127.0.0.1/predict,那么为什么网页还是在127.0.0.1上运行的
bai666ai 2022-09-26
  • 举报
回复
@中南大学苹果实验室 <p>是在windows上运行吗?ubuntu上"//"改为"/"</p>
bai666ai 2022-09-26
  • 举报
回复
@中南大学苹果实验室 <p>是在windows上运行吗?ubuntu上"//"改为"/"</p>
bai666ai 2022-09-26
  • 举报
回复
@中南大学苹果实验室 <p>是在windows上运行吗?ubuntu上"//"改为"/"</p>
  • 打赏
  • 举报
回复
请问在win系统下pycharm中直接运行flask_app.py 出现404问题 127.0.0.1 - - [15/Sep/2022 16:01:04] "GET / HTTP/1.1" 404 -
bai666ai 2022-09-26
  • 举报
回复
@中南大学苹果实验室 <p>不用pycharm试一下</p>
tjau_hjx 2023-07-06
  • 举报
回复
@中南大学苹果实验室 请问这个问题解决了吗
西伯利亚卷王 2022-07-28
  • 打赏
  • 举报
回复
File "D:\yolov5-6.0-flask\backend\predict.py", line 104, in predict results = {"results": boxes_detected} UnboundLocalError: local variable 'boxes_detected' referenced before assignment 127.0.0.1 - - [28/Jul/2022 21:20:44] "POST /predict/ HTTP/1.1" 500 -
bai666ai 2022-10-26
  • 举报
回复
@西伯利亚卷王 <p>先检查下文件夹放置目录有没有问题</p>
西伯利亚卷王 2022-07-28
  • 打赏
  • 举报
回复
前端跨域出错 has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource.
bai666ai 2022-08-01
  • 举报
回复
@西伯利亚卷王 <p>可能是跨域的问题,你先搜下这个错误信息。我没有遇到过这个错误</p>
西伯利亚卷王 2022-07-27
  • 打赏
  • 举报
回复
Failed to load resource: the server responded with a status of 404 (Not Found) index.html:1 Access to XMLHttpRequest at 'http://localhost:5000/predict/' from origin 'http://localhost:63342' has been blocked by CORS policy: No 'Access-Control-Allow-Origin' header is present on the requested resource. :5000/predict/:1 Failed to load resource: net::ERR_FAILED
西伯利亚卷王 2022-07-27
  • 举报
回复
@西伯利亚卷王 这是运行html后的报错,而且8888端口进不去。
bai666ai 2022-08-01
  • 举报
回复
@西伯利亚卷王 <p>可能是跨域的问题,你先搜下这个错误信息。我没有遇到过这个错误</p>
YUAN+H 2022-05-21
  • 打赏
  • 举报
回复
运行结果及报错内容 : assert torch.cuda.is_available(), f'CUDA unavailable, invalid device {device} requested' # check availability 尝试过的方法和想要达到的结果: 你好,我的电脑没有英伟达显卡,装不了cuda和cudnn,我只能装CPU版本的PyTorch,运行detect.py是可以得到结果的。请问您的Flask Web项目如何修改代码来使用CPU进行预测呢?
bai666ai 2022-05-21
  • 举报
回复
@YUAN+H <p>flask_config.json中    "device" : "0",改为    "device" : "cpu", 试试</p>
二月的XUE 2022-05-20
  • 打赏
  • 举报
回复
flask服务启动起来后,页面打开只有原图,没有识别图,控制台没任何信息输出,上传图片也是没有识别图,控制台没信息 界面刷新返回:"GET / HTTP/1.1" 304 -
bai666ai 2022-05-21
  • 举报
回复
@二月的XUE <p>你看下命令窗口还有有什么输出信息</p>
加载更多回复(72)

5

社区成员

发帖
与我相关
我的任务
社区描述
人工智能技术专家
社区管理员
  • bai666ai
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧