Python微信订餐小程序课程视频
https://edu.csdn.net/course/detail/36074
Python实战量化交易理财系统
https://edu.csdn.net/course/detail/35475
本来就想着是对自己第一次跑yolov5的coco128的一个记录,没想到现在准备总结一下的时候,一方面是继续学习了一些,另一方面是学长的一些任务的要求,挖出了更多的东西,所以把名字改为了“从入门到出土“。
00 GitHub访问加速
首先我们要把yolov5框架从GitHub上拉下来,国内如果要快速访问GitHub的话呢,需要把Github的相关域名写入Hosts文件。
00-1 修改hosts的原理
- hosts文件原理
hosts文件是一个用于储存计算机网络中各节点信息的计算机文件。这个文件负责将主机名映射到相应的IP地址。hosts文件通常用于补充或取代网络中DNS的功能。
和DNS不同的是,计算机的用户可以直接对hosts文件进行控制。
关于DNS解析,我在CTF的学习中有所记录
https://blog.csdn.net/Roboduster/p/15575207.html 00-03浏览器。
2. 作用过程
当我们在浏览器中输入一个需要登录的网址时,系统会先检查系自己的Hosts文件中是否有这个域名和IP的映射关系。
如果有,则直接访问这个IP地址指定的网络位置;
如果没有, 再向已知的DNS(Domain Name System,域名系统)服务器提出域名解析请求。
也就是说Hosts的IP解析优先级比DNS解析要高。
3. 我们把github相关IP写入hosts,就能在DNS解析之前通过hosts文件的IP解析访问我们想要访问的域名。
00-2 修改hosts文件
了解了原理,其实就很简单,我们在域名解析网站上搜github相关的IP,找到ttl值小的写入hosts即可。
我们选用http://tool.chinaz.com/dns/这个网站。
搜索以下域名
1 github.global.ssl.fastly.net
2
3 github.com
4
5 codeload.github.com
找到比较小的ttl值的ip,放入hosts文件:
1 sudo gedit /etc/hosts
1 # 然后更新配置
2 sudo /etc/init.d/networking restart
注意ip每隔一段时间会变动,所以每隔一段时间需要更新。
01 YOLOv5框架获取
1 # 用git获取源码 在上一步配置好的情况下 会很快
2 git clone https://github.com/ultralytics/yolov5
3 # 进入yolov5文件夹下
4 cd yolov5
5 # 依据包里的requirements.txt安装 需要的库
6 # 优先考虑清华源下载 不然可能会很慢
7 pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple
8
9 # 这种办法在windows下也可以,通过pycharm打开终端进行命令行的输入
02 测试 / 预测
02-0 目录框架
对于初学者而言,把YOLOv5跑起来的难点之一就是目录结构,这里我简单介绍以下我的项目的目录结构:
再来重点看一下yolov5目录下的data和runs目录,这两个目录下的内容前者将成为yolo框架的输入,后者将作为输出。
02-1 对于图片的detect
在yolov5的目录下(**画重点)**执行:
1 # 运行detect.py
2 python detect.py
3 # 或者
4 python detect.py --source data/images/ --weights ./yolov5s.pt
5 # 解释: 使用权重文件为yolov5s.pt的模型,使用data/images下的图片作为推理图片
6
7 #或者
8 python detect.py --weights yolov5s.pt --img 640 --conf 0.25 --source data/images/
9 # 解释:使用权重文件为yolov5s.pt的