基于YOLOv5开源项目实现垃圾分类功能(1)

一、垃圾分类目标检测数据集—Pascal Voc数据集

参考学习(必看):https://blog.csdn.net/u013832707/article/details/80060327

假设一张图片的宽为1000,高为654:
在这里插入图片描述
标记方式一:bbx的左上角坐标,右下角坐标
标记方式二:bbx的中心点坐标以及该点到矩形框底边和侧边的距离
在这里插入图片描述

可以用python代码实现两种标记格式的转换:
def convert(size, box):
	dw = 1./size[0]
	dh = 1./size[1]
	x = (box[0] + box[1])/2.0
	y = (box[2] + box[3])/2.0
	w = box[1] - box[0]
	h = box[3] - box[2]
	x = ×*dw
	w = w*dw
	y = y*dh
	h = h*dh
	return (x,y,w,h)

box[0]: xmin
box[1]: xmax
box[2]: ymin
box[3]: ymax

二、对数据集进行分析

首先利用脚本pascal_voc_xml2json.py 产生 trash_instances.json(coco数据集一般会提供)
使用Jupyter Notebook和eda_trash.ipynb进行探索性数据集分析

在这里插入图片描述

三、开发环境搭建及项目代码初步使用

1、安装一个python集成开发环境,如PyCharm Community Edition或者Anaconda3

pycham安装教程:https://www.runoob.com/w3cnote/pycharm-windows-install.html

注:这个教程中有添加环境变量的选项,但是在我安装python 3.8.2过程中界面有添加
环境变量的选项,并不用按照这个教程中的方法去添加,大家安装完成后可在windows命
令行终端(win+r 输入cmd)测试,安装成功则如下所示:

在这里插入图片描述

https://blog.csdn.net/ITLearnHall/article/details/81708148

2、从Github下载代码到本地进行初步使用,大家可在windows端安装一个Git Bash软件,便于下载代码到本地,至于Git的使用方法,我相信看到我文章的朋友已经不是一个软件小白了,应该懂git的基本使用(如若不会,请百度搜索《廖雪峰git》自行学习)

1) 克隆yolov5项目
安装Git软件(https://git-scm.com/downloads),克隆项目到本地:

	git clone https://github.com/ultralytics/yolov5.git

这样一般下载的新版本,或者直接下载YOLOv5的5.0版本的代码(我使用的是该版本,
不同版本代码文件略有区别)

在这里插入图片描述
在这里插入图片描述

2)根据该项目的配置文件安装该项目运行所需要的库,在命令行进入改项目文件夹所在的目录下,即在yolov5路径下执行(和我不同版本的项目代码可能需要删除一个项目自带的
setup.cfg文件,否则下边命令无法执行成功):

pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple

-i https://pypi.tuna.tsinghua.edu.cn/simple:指定镜像下载源为清华源,下载速度
较快相比于python官方源的地址

此外在命令执行过程中还可能遇到错误如:
(1)解决ModuleNotFoundError: No module named ‘pip‘问题:
https://blog.csdn.net/haihonga/article/details/100168691

(2)Microsoft Visual C++ 14.0 is required”或者“unable to find vcvarsall.
bat”的问题:
https://blog.csdn.net/u013085021/article/details/105960079?spm=1001.2101.3001.6650.3&utm_medium=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-3.pc_relevant_default&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2%7Edefault%7ECTRLIST%7ERate-3.pc_relevant_default&utm_relevant_index=6
(该博客评论中有解决问题的关键,提供了离线文件)
3) 下载预训练权重文件
下载yolov5s.pt,yolov5m.pt,yolov5l.pt,yolov5x.pt,yolov5s6.pt等权重文件,
并放置在weights文件夹下(若无该文件则自行创建一个)

下载链接:https://github.com/ultralytics/yolov5/releases/tag/v5.0
4)进行测试项目代码
在yolov5路径下执行:
	python detect.py --source ./data/images/ --weights weights/yolov5s.pt --conf-thres 0.4

成功执行的效果如下所示:

在这里插入图片描述
在这里插入图片描述
本文章参考了百度百科,他人技术文章以及哔哩哔哩免费教程,综合整理而来,如有侵权联系删除,小白一个,欢迎大家指导交流!

  • 5
    点赞
  • 70
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 10
    评论
评论 10
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小嵌同学

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值