网站开发购物店,正能量网站,拖拽自助建站系统源码,个人建设网站实验目的
实验要求只需要识别五个简单的手势即可#xff0c;分别对应的一下五个动作
动作对应标签名点赞goodOKok单手比心love数字 5five数字8eight
使用yolov5实现目标检测功能#xff0c;有一下几个主要步骤
环境配置#xff08;包括conda、labelimg、yolov5的下载分别对应的一下五个动作
动作对应标签名点赞goodOKok单手比心love数字 5five数字8eight
使用yolov5实现目标检测功能有一下几个主要步骤
环境配置包括conda、labelimg、yolov5的下载图片标签模型训练模型测试图片视频
附上实验结果
环境配置
Anaconda安装
推荐使用Anconda它是python的一个集成管理工具提供了包管理与环境管理的功能可以很方便地解决多版本python并存、切换以及各种第三方包安装问题。 anconda安装不难很多博主都有教程可以看看他们的不再赘述了 可以参考这个http://t.csdnimg.cn/vpmbv Anconda的使用教程 在Anconda中主要使用的两个程序是Anaconda Prompt 和Anaconda Navigator。 Anaconda Prompt就是我们的cmd以后的创建环境和切换环境和pip安装各种包全在这里。 (可以通过指令创建虚拟环境) python --version 查看python版本
conda create -n env_name python3.8 创建一个python版本为3.8的自命名虚拟环境
conda remove -n env_name --all 移除自命名虚拟环境Anaconda Navigator为可视化管理软件 我们创建的环境和环境里的安装的包可以在Environments里查看,也可以在这里创建虚拟环境和移除虚拟环境还可为每个独立的环境安装需要的包
Pycharm安装
PyCharm是使用最广泛的一种集成开发环境适用于Python编程语言。它对于代码的检索、提示和补全非常友好同时便于跨平台开发。
官网下载地址https://www.jetbrains.com/pycharm/
至于破解版自己想办法咯 注意在使用pycharm进行开发时选择对应的conda环境 yolov5环境配置
步骤一环境创建
打开anaconda prompt 控制台创建一个自己的yolov5环境
conda create -n yolov5 python3.9再输入y安装内容
激活环境
conda activate yolov5步骤二Pytorch安装
Pytorch的安装 安装pytorch之前最好先配置清华镜像源否则下载速度很慢 pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple官网下载地址https://pytorch.org/get-started/locally/ 在官网选择对应的版本在英伟达控制面版左下角的系统信息中的组件里查看自己合适哪个
步骤三yolov5下载
下载yolov5自身环境 Github地址https://github.com/ultralytics/yolov5 将这个GitHub库的文件压缩包下载下来并解压会发现有一个requirements.txt文件
来到yolo-master目录下输入命令安装剩余环境
pip install -r .\requirements.txt将下载好的模型文件yolov5s.pt放到文件夹重新运行测试文件
python detect.py这样就完成了官方案例的检测也证明你配置好了
Labelimg安装 注意要在yolov5的环境下 用gitbash打开运行
git clone https://github.com/tzutalin/labelImg然后
pip install pyqt5下好后直接在.whl文件当前文件夹右键运行cmd执行
pip install PyQt5-5.13.0-5.13.0-cp35.cp36.cp37.cp38-none-win_amd64.whl然后安装lxml
pip install lxml然后打开labelimg的文件夹在cmd中执行
pyrcc5 -o libs/resources.py resources.qrc然后再该文件夹下
python labelImg.py启动labelimg 在使用labelimg的时候不要关闭命令行控制台哦 数据标注
创建一下的文件格式
master--images //存放你要进行打标签的图片--labels //存放标签结果在labelimg中左边选择文件目录为master/images存放目录为master/labels将左侧save下方的东西点成yolov
在上侧选项栏中的view选择自动保存
接下来可以打标签啦 注意 w可以快速进入画框模式d为下一个 a为上一个标签时记得将原有的默认标签换成你自己的在labelimg中的data文件夹的txt文件 模型训练
将yolov5-master的data文件夹中coco128.yaml复制一份并粘贴回该文件夹改个名handSize 并修改内容
# Train/val/test sets as 1) dir: path/to/imgs, 2) file: path/to/imgs.txt, or 3) list: [path/to/imgs1, path/to/imgs2, ..]
path: ../handSize/master # dataset root dir
train: images # train images (relative to path) 128 images
val: images # val images (relative to path) 128 images
test: # test images (optional)# Classes
names:0: good1: five2: eight3: love4: ok将yolov5-master的model文件夹中yolov5s.yaml复制一份并粘贴回该文件夹改个名handSize并修改内容
nc: 5 # number of classes 修改分类数量打开train.py修改这两行 其实就是修改文件路径为刚刚修改的那两个 parser.add_argument(--cfg, typestr, defaultROOT / models/handSize.yaml, helpmodel.yaml path) parser.add_argument(--data, typestr, defaultROOT / data/handSize.yaml, helpdataset.yaml path)修改训练轮数
parser.add_argument(--epochs, typeint, default100, helptotal training epochs)修改为gpu模式
parser.add_argument(--device, default0, helpcuda device, i.e. 0 or 0,1,2,3 or cpu)然后执行train.py 注意环境 训练需要一定时间看大家电脑实力了
在yolov5-master\runs\train中查看训练结果
模型检测
图片检测
将要检测的图片放在data/images中
将刚刚训练的结果best.pt放在yolov5-master中
修改detect.py
parser.add_argument(--weights, nargs, typestr, defaultROOT / best.pt, helpmodel path or triton URL)# 目标图片路径
parser.add_argument(--source, typestr, defaultROOT / data/images, helpfile/dir/URL/glob/screen/0(webcam))parser.add_argument(--data, typestr, defaultROOT / data/handSize.yaml, help(optional) dataset.yaml path)parser.add_argument(--conf-thres, typefloat, default0.25, helpconfidence threshold)运行detect.py
实时视频检测
修改detect.py
parser.add_argument(--source, typestr, default0, helpfile/dir/URL/glob/screen/0(webcam))
# 0 是指电脑默认的摄像头运行detect.py
参考文献
anaconda的安装http://t.csdnimg.cn/nCyrVlabelimg的使用http://t.csdnimg.cn/asZTblabelimg的安装http://t.csdnimg.cn/MmXnk训练教程【【一看就懂一学就会】yolov5保姆级打标签、训练识别教程】https://www.bilibili.com/video/BV1rT411f7Up?vd_source85cf7c918a14ac5619e90f4590db906e视频检测【从0开始运行YOLOV58、YOLOV5使用本机摄像头实时检测】https://www.bilibili.com/video/BV1qe4y1W7n9?vd_source85cf7c918a14ac5619e90f4590db906e