Darknet YOLO图像大小

问题描述 投票:5回答:3

我正在尝试在Darknet YOLO v2 https://pjreddie.com/darknet/yolo/中训练自定义对象分类器

我收集了一个图像数据集,其中大部分都是6000 x 4000像素和一些较低的分辨率。

我需要在训练前调整图像的大小才能平方吗?

我发现配置使用:

[net]
batch=64
subdivisions=8
height=416
width=416
channels=3
momentum=0.9
decay=0.0005
angle=0
saturation = 1.5
exposure = 1.5
hue=.1

这就是为什么我想知道如何将它用于不同大小的数据集。

tensorflow machine-learning image-recognition darknet yolo
3个回答
11
投票

您不必调整大小,因为Darknet会代替您而不是!

这意味着您真的不需要这样做,并且您可以在训练期间使用不同的图像大小。您上面发布的内容只是网络配置。还应该有完整的网络定义。高度和宽度告诉你什么是网络分辨率。它还保持纵横比,检查例如this


3
投票

在训练之前调整图像大小是很常见的。 416x416略大于普通。大多数imagenet模型调整大小并将图像平方为256x256。所以我希望在这里也一样。试图在6000x4000上进行训练需要一个GPU场。标准过程是将图像平方到最大尺寸(高度或宽度),在短边上用0填充,然后使用像PIL这样的标准图像大小调整工具调整大小。


1
投票

您无需调整图像大小,可以直接更改darknet.cfg文件中的值。

  1. 当你打开darknet.cfg(yolo-darknet.cfg)文件时,你可以全部 超参数及其值。
  2. 如您的cfg文件中所示,图像尺寸为(416,416) - >(重量,高度),您可以更改值,以便暗网在训练前自动调整图像大小。
  3. 由于图像尺寸较大,您可以调整批次和细分值(降低值32,16,8。它必须是2的倍数),这样暗网不会崩溃(内存分配错误)
© www.soinside.com 2019 - 2024. All rights reserved.