GitHub YOLOv5 开源代码项目运行

2023-11-13

本专栏将从安装到实例运用全方位系列讲解 GitHub YOLOv5 开源代码。
专栏地址:GitHub YOLOv5 开源代码项目系列讲解

 

目 录

1 源码下载及环境配置

2 利用 Yolov5 进行预测

2.1 对项目提供图片进行预测 

2.2 对自己收集的图片进行预测

2.3 对自己收集的视频进行预测

3 训练 Yolov5 神经网络

4 制作和训练自己的数据集 


1 源码下载及环境配置

首先在 GitHub 上找到 Yolov 5 v5.0 版本的开源项目源码下载到本地。

YOLOv5 开源代码项目下载地址:https://github.com/ultralytics/yolov5

这是我在本地的下载位置及 PyCharm Tree。

想要运行该项目需要配有正确的环境。

安装环境方面的问题可参考我的另一篇博文:https://blog.csdn.net/IT_charge/article/details/118942281

2 利用 Yolov5 进行预测

利用 yolov5 进行预测用到的是开源项目源码中的 detect.py

我们可对其 main 函数的红框部分进行调整参数。

2.1 对项目提供图片进行预测 

直接运行即可得到结果,用到的是项目作者提供的训练好的 yolov5s.py 模型进行的预测

原图及路径

目标检测运行结果及保存路径

2.2 对自己收集的图片进行预测

只需修改图片保存路径参数即可

这是另外收集的 4 张图片

这是检测之后的效果 

2.3 对自己收集的视频进行预测

修改视频保存路径,直接运行会将目标视频按照每一帧进行处理,然后保存。

若想在处理每一帧后及时在窗口显示目标检测结果,可将  '--view-img' 参数添加到 'Edit Configurations' --> ‘Parameters’ 中,即可实时显示啦。

这是处理每一帧的图片,显示了目标识别出的物体及数目等信息。

下图显示为实时播放目标检测画面。 

3 训练 Yolov5 神经网络

利用 yolov5 进行训练神经网络用到的是开源项目源码中的 train.py

我们可对其 main 函数的红框部分进行调整参数。

 :强烈建议将

        中的 'default=8' 调整为 'default=0' 。

 不修改任何参数跑出来的结果是这样的


按照训练好的模型保存路径指示,我们便可很容易地找到它们。 

4 制作和训练自己的数据集 

 具体细节在 GitHub 项目的这个位置有讲到:https://github.com/ultralytics/yolov5/wiki/Train-Custom-Data

简言之,通过 https://www.makesense.ai/ 网站即可在线上轻易完成数据标注工作。

至于训练自己标注好的数据集,将目标下载到源码中指定位置,运行 train.py 即可。当然,这一部分在本专栏接下来的博文中也会详细进行讲解,期待你的关注!

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

GitHub YOLOv5 开源代码项目运行 的相关文章

  • 如何计算 pandas datetime 对象的均值和方差?

    如何计算 YYYY MM DD 形式的 python 日期时间对象的汇总统计数据 均值和标准差 我想对具有不同 ID 的不同日期时间对象组执行此操作 数据如下 import datetime as dt df pd DataFrame Da
  • 类的 IPython 表示

    我正在使用我创建的模块尝试 IPython 但它没有显示类对象的实际表示 相反 它显示类似的内容 TheClass module TheClass name I heavily在这个模块中使用元类 我有真正有意义的类表示 应该向用户显示 是
  • Pandas set_levels,如何避免标签排序?

    我使用时遇到问题set levels多索引 from io import StringIO txt Name Height Age Metres A 1 25 B 95 1 df pd read csv StringIO txt heade
  • 计算另一个字符串中多个字符串的出现次数

    在 Python 2 7 中 给定以下字符串 Spot是一只棕色的狗 斑点有棕色的头发 斑点的头发是棕色的 查找字符串中 Spot brown 和 hair 总数的最佳方法是什么 在示例中 它将返回 8 我正在寻找类似的东西string c
  • 我应该使用 Python 双端队列还是列表作为堆栈? [复制]

    这个问题在这里已经有答案了 我想要一个可以用作堆栈的 Python 对象 使用双端队列还是列表更好 元素数量较少还是数量较多有什么区别 您的情况可能会根据您的应用程序和具体用例而有所不同 但在一般情况下 列表非常适合堆栈 append is
  • Django Rest Framework 是否有第三方应用程序来自动生成 swagger.yaml 文件?

    我有大量的 API 端点编写在django rest framework并且不断增加和更新 如何创建和维护最新的 API 文档 我当前的版本是 Create swagger yaml文件并以某种方式在每次端点更改时自动生成 然后使用此文件作
  • 为什么 web2py 在启动时崩溃?

    我正在尝试让 web2py 在 Ubuntu 机器上运行 所有文档似乎都表明要在 nix 系统上运行它 您需要下载源代码并执行以下操作 蟒蛇 web2py py 我抓住了source http www web2py com examples
  • 更好地相当于这个疯狂的嵌套 python for 循环

    for a in map for b in map a for c in map b for d in map c for e in map d print a b c d e 上面的代码用于创建图中一定长度的所有路径 map a 表示从
  • 如何将特定范围内的标量添加到 numpy 数组?

    有没有一种更简单 更节省内存的方法可以单独在 numpy 中执行以下操作 import numpy as np ar np array a l r ar c a a 0 l ar tolist a r 它可能看起来很原始 但它涉及获取给定数
  • python的shutil.move()在linux上是原子的吗?

    我想知道python的shutil move在linux上是否是原子的 如果源文件和目标文件位于两个不同的分区上 行为是否不同 或者与它们存在于同一分区上时的行为相同吗 我更关心的是如果源文件和目标文件位于同一分区上 shutil move
  • 当字段是数字时怎么说...在 mongodb 中匹配?

    所以我的结果中有一个名为 城市 的字段 结果已损坏 有时它是一个实际名称 有时它是一个数字 以下代码显示所有记录 db zips aggregate project city substr city 0 1 sort city 1 我需要修
  • Python GTK+ 画布

    我目前正在通过 PyGobject 学习 GTK 需要画布之类的东西 我已经搜索了文档 发现两个小部件似乎可以完成这项工作 GtkDrawingArea 和 GtkLayout 我需要一些基本函数 如 fillrect 或 drawline
  • 如何使用 Python 3 检查目录是否包含文件

    我到处寻找这个答案但找不到 我正在尝试编写一个脚本来搜索特定的子文件夹 然后检查它是否包含任何文件 如果包含 则写出该文件夹的路径 我已经弄清楚了子文件夹搜索部分 但检查文件却难倒了我 我发现了有关如何检查文件夹是否为空的多个建议 并且我尝
  • 找到一个数字所属的一组范围

    我有一个 200k 行的数字范围列表 例如开始位置 停止位置 该列表包括除了非重叠的重叠之外的所有类型的重叠 列表看起来像这样 3 5 10 30 15 25 5 15 25 35 我需要找到给定数字所属的范围 并对 100k 个数字重复该
  • PySpark groupByKey 返回 pyspark.resultiterable.ResultIterable

    我试图找出为什么我的 groupByKey 返回以下内容 0
  • 每当使用 import cv2 时 OpenCV 都会出错

    我在终端上使用 pip3 install opencv contrib python 安装了 cv2 并且它工作了 但是每当我尝试导入 cv2 或运行导入了 cv2 的 vscode 文件时 在 python IDLE 上它都会说 Trac
  • 如何将 Django 中的权限添加到模型并使用 shell 进行测试

    我在模型中添加了 Meta 类并同步了数据库 然后在 shell 中创建了一个对象 它返回 false 所以我真的无法理解错误在哪里或者缺少什么是否在其他文件中可能存在某种配置 class Employer User Employer in
  • 如何使用 PrimaryKeyRelatedField 更新多对多关系上的类别

    Django Rest 框架有一个主键相关字段 http www django rest framework org api guide relations primarykeyrelatedfield其中列出了我的 IDmany to m
  • JSON:TypeError:Decimal('34.3')不是JSON可序列化的[重复]

    这个问题在这里已经有答案了 我正在运行一个 SQL 查询 它返回一个小数列表 当我尝试将其转换为 JSON 时 出现类型错误 查询 res db execute SELECT CAST SUM r SalesVolume 1000 0 AS
  • NLTK:查找单词大小为 2k 的上下文

    我有一个语料库 我有一个词 对于语料库中该单词的每次出现 我想获取一个包含该单词之前的 k 个单词和该单词之后的 k 个单词的列表 我在算法上做得很好 见下文 但我想知道 NLTK 是否提供了一些我错过的功能来满足我的需求 def size

随机推荐

  • mock.js文档详解1及下载(数据模板)

    作用 生成随机数据 拦截Ajax请求 mock数据模板的书写规则 属性名 规则 属性值 规则共有七种 1 name min max value 针对value的不同类型会有不同意义 2 name count value 3 name min
  • 手机按键失灵怎么修复_手机触摸屏失灵了怎么办,六种方法自己就能修好它!...

    你是否碰到这种抓狂的时候 手机屏幕总是要按多几下才能反应过来 有时点了好几下也依然没反应 其实 发生这样的触屏失灵的问题 也是有多方面的原因造成 有时是外在的客观原因引起 有时是个人的主观因素导致 如今 我们的手机绝大多数都是电容屏的 而电
  • 2022全国高校计算机能力挑战赛决赛python组编程计挑赛决赛3

    输入格式 一个日期 格式 年 月 日 1 算法中要能够自动对输入的日期进行判断 若年份不是2022年或月份不是1月份至8月份中的某一个月份值 则输出 数据输入错误 2 算法中能够对输入的 日 的数字进行判断 要按照实际情况进行判断 如1 3
  • ChatGLM2-6B! 我跑通啦!本地部署+微调(windows系统)

    ChatGLM2 6B 我跑通啦 windows系统 1 跑通了啥 2 咋跑通的 2 1 ChatGLM2 6B本地部署 2 2 ChatGLM2 6B本地微调 2 3 小结 3 打算做什么 1 跑通了啥 记录一下此时此刻 2023年7月8
  • pythonSDK安装+Visual Studio Code

    安装PythonSDK 点击去下载python的SDK https www python org 去下载 双击 下载好的安装包 等待安装可能会很慢 如何验证是否成功安装了python的SDK Windows电脑 打开 CMD 窗口 如何打开
  • iOS开发之动画篇-基础篇1

    基础篇 一 制作动画的原理 十二个基本的动画原理 网页动画的十二原则 参考全部开源的HTML和CSS代码实现 二 寻找灵感 1 知名设计师共享平台 Dribbble相当于程序员的gitHub 2 pttrns 手机设计较多 三 制作动画的基
  • 2019零基础如何学好Python?学习Python的策略是什么?

    跟几个IT界的大佬提起python 他们说零基础学好python很简单 python进阶需要花费写气力 都说Python简单易学 那么零基础如何学好Python 有哪些必须学的知识 学习的策略技巧有哪些 今天这篇文章将会给你启发 Pytho
  • PHP学习笔记-MVC框架

    MVC学习笔记 1 什么使MVC框架 MVC是一种软件开发框架 MVC将程序分为三个部分 模型层 M 视图层 V 和控制层 C 对不同的层进行分层管理和控制 方便程序的修改和扩展 2 为什么使用MVC框架 在PHP中使用MVC框架 可以实现
  • GM-MCMC高斯混合马尔科夫-蒙特卡洛算法(Matlab实现)

    GM MCMC高斯混合马尔科夫 蒙特卡洛算法 Matlab实现 地震反演是一种重要的地球物理学方法 通过对震源机制 地球物质介质和地下结构等方面的研究 可以揭示地球内部构造和动力学过程 而线性地震反演则是其中比较基础的一种反演方法 它将地下
  • 错误处理-OSError: Failed to open file b‘C:\\Users\\\xe6\x96\x87...\\ AppData\\Local\\Temp\\scipy-xxxxx

    有人说是中文文件路径的问题 我改了 重启了 没用 而且之前一直好好的 安装scipy 1 6 2 然后 from sklearn model selection import train test split 这样导入就好了 莫名奇妙的错误
  • 【无标题】MySQL左连接出现空数据

    今天检查供应商档案错误的时候 遇到一个与左连接右连接相关的问题 已知 用左连接时 放于前面的表 只要其数据符合where及之后的条件 则该数据会全部查出 而放于后面的表如果有符合左连接条件的数据 则显示其数据 如果没有 则对应行显示空 例如
  • Qt5中 Lambda 表达式的使用

    在Qt中信号的槽函数可以使用Lamba表达式来代替 作为槽函数的替代函数 Lambda是C 11添加的内容 在Qt5中使用需要在项目文件中添加CONFIG c 11 Lambda的基本类型为 与普通函数void change 相比 只有括号
  • 云智慧刘洪涛:中国AIOps正走向深水区

    做企业要有危机意识 特别是TO B企业 要能从当下找到问题 找到自己的短板 作者 斗斗 编辑 皮爷 出品 产业家 干练精神 思路清晰 这是刘洪涛给我们的第一感觉 创业是孤独的 他告诉产业家 如今 云智慧正迎来特殊的时刻 7月份 云智慧刚刚宣
  • c语言程序代码分享,一些简单的C语言程序代码(最新整理)

    一些简单的C语言程序代码 最新整理 由会员分享 可在线阅读 更多相关 一些简单的C语言程序代码 最新整理 17页珍藏版 请在人人文库网上搜索 1 由键盘任意输入 1 个 4 位数整数 分别输出其中的个位 十位 百位 千位 expe 3 10
  • 01_配置yum源-银河麒麟V10(Kylin Linux Advanced Server V10 (Tercel))操作系统

    本文章收录于 国产银河服务器安装文档集 将详细的讲解 国产银河服务器操作系统各种软件的部署与说明 目录 配置yum源的两种方式 一 配置外网 yum 源 1 查看yum源 2 备份yum源 3 配置外网yum源 4 查看yum源 5 使yu
  • ValueError: x and y must have same first dimension, but have shapes (2,) and (1,)

    我的模型的epoch是从1开始训练的 画图的时候出现 ValueError x and y must have same first dimension but have shapes 2 and 1 ax1 plot np arange
  • NO.49-------Unity播放背景音乐不受场景切换影响

    原理就是在场景中放置一个预制体 设置标签为sound 挂载audio source组件 同时挂载一个场景切换时自身不会销毁的脚本 using System Collections using System Collections Gener
  • 深度学习垃圾分类数据集

    随着科技的发展 人工智能逐渐走进我们的生活 在这个过程中 数据集的重要性不言而喻 为了推动环保事业的发展 我们需要更多高质量的垃圾分类数据集 今天 我们将探讨一个包含2500 样本的垃圾分类数据集 它涵盖了6大类别 纸板 玻璃 金属 纸张
  • 从零开始的ESP8266探索(04)-连接/建立网络

    文章目录 目的 连接到网络 建立新网络 更多方式 总结 目的 使用ESP8266主要就是为了用它的网络功能 使用网络功能首先的就是需要连接到一个现有的网络 STA模式 或是建立一个网络 soft AP模式 连接到网络 在Arduino fo
  • GitHub YOLOv5 开源代码项目运行

    本专栏将从安装到实例运用全方位系列讲解 GitHub YOLOv5 开源代码 专栏地址 GitHub YOLOv5 开源代码项目系列讲解 目 录 1 源码下载及环境配置 2 利用 Yolov5 进行预测 2 1 对项目提供图片进行预测 2