【问题标题】:Yolo V3 in Google ColabGoogle Colab 中的 Yolo V3
【发布时间】:2019-11-08 06:25:51
【问题描述】:

我一直在尝试在谷歌 Colab 上使用 Yolo v3 开发一个对象检测系统,而不是我的本地机器,因为它是免费、快速和开源的。但问题是我在学习了一些关于 Yolo V3 设置和开发的教程后迷失了方向,但它们都不是针对谷歌 Colab 的。现在,在 Colab 中安装了所有必需的依赖项后,我已经备货了。

请向我转发有关开发过程的任何好的教程或指导我解决此问题。

我遵循的一些教程是:

  1. How to implement a YOLO (v3) object detector from scratch in PyTorch
  2. Google Colab Free GPU Tutorial
  3. Using Pytourch
  4. YOLO on Google Colab

【问题讨论】:

  • 您可以在 Google Colab 环境中使用 pip 安装软件包。你的其余代码不应该真的那么不同。你面临哪些困难?请更具体。
  • 我确实在那里安装了所有依赖项,但我不知道如何运行。

标签: deep-learning object-detection google-colaboratory setup.py yolo


【解决方案1】:

我在 Google Colab 上写了一篇关于如何使用 Darknet 训练 Yolo 的帖子。 它包含必要的步骤、一些提示和一个包含所有解释的笔记本。

Tutorial

注意:我认为这会有所帮助,但在 StackOverflow 中链接到自己的教程可能不是一个好习惯。提前道歉!

大卫

【讨论】:

  • 抱歉@kriyeng 回复晚了。没有关于使用框架将其集成到应用程序中的适当教程。所以我想可以发布有关该问题的第三方来源。
【解决方案2】:

**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.txtvalid.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

遇到任何问题评论您的问题。

【讨论】:

    猜你喜欢
    • 2021-02-20
    • 1970-01-01
    • 2021-02-12
    • 2018-12-10
    • 2020-11-11
    • 2020-12-16
    • 2021-01-24
    • 2019-04-27
    • 1970-01-01
    相关资源
    最近更新 更多