109人参与 • 2024-08-01 • 车联网
这边演示用的环境是win10+pycharm+cpu,gpu使用的环境不进行过多赘述(需要的可以再搜索一下),文章基于安装了anaconda往下说(记录的是我的使用步骤,之前都是用v5,有不同的更好的可以方式步骤提出来,一起进步)。
一、代码获取
1.可以先在本地创建一个空的项目文件夹
2.在v8官网获取url或者直接下载
网址给出: https://github.com/ultralytics/ultralytics
3.(没有用git的同学可以跳过这一步)可以使用第2步图中的1、2、3获取url,在第1步创建的项目文件夹空白处右键选择 git bash here,命令行运行 git clone 你复制的url
,例如 git clone https://github.com/ultralytics/ultralytics.git
即可下载
4.也可以在第2步中进行直接下载,点击图中 download zip。下载完成解压后,将里面的文件移动到第1步中创建的项目文件夹即可。
二、环境搭建
1.用pycharm打开项目文件夹,进入命令行
2.创建一个虚拟环境,并进入
运行命令 conda create -n 虚拟环境名字(自己定) python=python版本(v8好像要求3.8以上,这个注意一下) -y(-y可加可不加,作用是创建过程中yes or no判断默认都是yes)
例如 conda create -n yolov8 python=3.10 -y
,下图表示创建完成
创建完成后可以用命令 conda env list
来查看环境列表,下图红框中yolov8就是我们刚创建的
可以通过命令 conda activate 虚拟环境名字
进行虚拟环境,例如 conda activate yolov8
,进入后我们可以看到命令行开头的环境标识从基础环境(base)变为yolov8,代表进入成功
3.安装v8依赖环境
首先确保检查一下,命令行路径是你的项目文件夹路径
v8将依赖环境都写在项目文件夹下的 requirement.txt 文件中了,我们可以通过 命令 pip install -r requirements.txt
来进行安装(这里提一点,默认源是国外网站,下载安装速度慢的话建议直接换源,这里用清华源举例,例如 pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple
)下图为成功安装
4.安装 ultralytics 包
相比于yolov5,v8需要多安装一个 ultralytics 包,在命令行通过 pip install ultralytics -i https://pypi.tuna.tsinghua.edu.cn/simple
(也是使用了一次性换源)
三、简单运行推理流程,验证环境可行性
1.下载预训练权重。
手动在官网下载预训练模型(不载下也行,运行的时候会自动下,我这边是习惯)这边以yolov8n举例,点击红框内即可下载,网址再给一下:https://github.com/ultralytics/ultralytics
我这边习惯在工作目录(d:\windows\desktop\python projects\test\231025_yolov8\ultralytics
)创建一个文件夹(weights)专门放置权重
这里文件夹(d:\windows\desktop\python projects\test\231025_yolov8\ultralytics\assets
)有两张经典图,我们用来做推理
在命令运行 yolo task=detect mode=predict model="ultralytics/weights/yolov8n.pt" source="ultralytics/assets/bus.jpg" imgsz=640
即可进行推理(这边有没有大佬帮忙看下,为啥生成的runs文件夹会在生成在跟项目文件夹同级)
该配置文件
d:\windows\desktop\python projects\test\231025_yolov8\ultralytics\cfg\default.yaml
中有提到
其中task指任务类型,分类,检测,分割啥的,我们这边选择detect。mode指运行模式训练,检测啥的,我们选择predict。model这边填写预训练权重路径。source填写待预测图像路径,这边是具体到了某一张图像,也可写到文件夹,它会将该文件夹下所有图像都推理一遍)。
看下效果图
四、训练自定义数据集
1.首先要构建自己数据集,按照特定的目录结构放置在项目文件夹中(这边不过多介绍标注流程,与yolov5基本一致)
我这边是在项目文件夹下(d:\windows\desktop\python projects\test\231025_yolov8\ultralytics
)创建一个 my_datasets
,内部结构如图所示(随便找了个数据集就十来张图像)。images内都是jpg图像文件,labels里面都是txt标签文件
2.修改数据集配置文件
文件路径在这里(d:\windows\desktop\python projects\test\231025_yolov8\ultralytics\cfg\datasets
),在该路径下创建一个yaml文件,例如下图中231025.yaml,
这里贴上源文本
path: d:\windows\desktop\python projects\test\231025_yolov8\ultralytics\my_datasets
train: images/train
val: images/val
# number of classes
nc: 4
# class names
names: [
'ok',
'nok',
'cilun',
'ao'
]
在命令行就可以直接运行指令了 yolo task=detect mode=train model="ultralytics/weights/yolov8n.pt" data="ultralytics/cfg/datasets/231025.yaml" epochs=1000 imgsz=960 device=cpu
(这里mode就要换成train,data需要提供我们刚刚弄的数据集配置文件路径,epochs这边习惯1000,输入尺寸960,device这边直接cpu了),运行即可
因为也是第一次使用,有啥不足的地方欢迎提出,嘎嘎听建议
您想发表意见!!点此发布评论
版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。
发表评论