**YOLO V3 - 15 分钟内**
步骤 - 1
克隆仓库!git clone https://github.com/pjreddie/darknet.git
设置当前目录!cd darknet
查看当前目录-!pwd
注意 - 如果!cd 不起作用,则使用,
import os
os.chdir("path")
步骤 - 2
双击打开darknet/makefile。
编辑文件,更改值GPU = 1
向下滚动
ARCH= -gencode arch=compute_30,code=sm_30 \
-gencode arch=compute_35,code=sm_35 \
-gencode arch=compute_50,code=[sm_50,compute_50] \
-gencode arch=compute_52,code=[sm_52,compute_52]
-gencode arch=compute_20,code=[sm_20,sm_21] \ This one is deprecated?
在第一行将compute_30,code=sm_30 更改为compute_50,code=sm_50
通过CTRL + S保存此文件
步骤 - 3
现在创建一个文件夹darknet/data/Image 并将您的数据集移动到其中。
Image 文件和 Annotation 文件。
示例 - image.jpg 和 image.txt
在不将数据移动到不同文件夹的情况下拆分您的数据集,只需创建两个 txt 文件并使用该路径存储图像名称。
示例 - data/Images/image.jpg
您可以使用代码在 txt 文件中写入名称。
https://gist.github.com/sainisatish/1328a1d29273e32a5821cfbc38127fbe
train.txt 和valid.txt 将这些文件放在darknet/data 文件夹中
步骤 - 4
现在打开配置文件darknet/cfg/yolov3.cfg并编辑它。(双击它)
这是模型架构。
首先更改启动参数,如Batch = 64,subdivision = 16
max_batches = 2000*n ,这里 n 是类数
如果你有 2 节课,那么 max_batches = 4000.
step 是 max_batches 的百分比,我们可以使用 80% 和 90%
step = 80% of max_batches, 90% of max batches
step = 3200,3600
向下滚动到底部并更改两个参数
在[yolo]层变化-classes
和
在[convolutional]层(仅在[yolo]层之上)更改filters。
classes = (c) 你的班级数
过滤器 = (c+5)*3
注意 - 这里只有 3 [yolo] 层
保存文件
步骤 - 5
现在创建两个文件
在darknet/data 中创建一个扩展名为.names 的文件并保存你的类名。
cat
dog
在darknet/cfg 中创建另一个扩展名为.data 的文件并保存以下详细信息。
classes= 2
train = data/train.txt
valid = data/test.txt
names = data/obj.names
backup = backup/
现在所有工作都完成了。
只需运行此命令
!make
下载这个权重文件
!wget https://pjreddie.com/media/files/darknet53.conv.74
成功完成命令后
通过运行此命令训练暗网模型
!./darknet detector train cfg/obj.data cfg/yolov3.cfg darknet53.conv.74 | tee -a log.txt
测试你的模型
./darknet detector test cfg/obj.data cfg/yolov3.cfg backup/your weight file address
遇到任何问题评论您的问题。