darknet

原创文章点击这里

1 安装和使用

1.1 安装

安装平台:linux

# 代码下载
git clone https://github.com/pjreddie/darknet.git
 
# 修改Makefile,在里面更改编译选项,看是否需要GPU、opencv
cd darknet
sed -i '1s/GPU=0/GPU=1/' Makefile
sed -i '2s/CUDNN=0/CUDNN=1/' Makefile
sed -i '3s/OPENCV=0/OPENCV=1/' Makefile
 
# 安装
make
 
# 下载预训练的模型,先下载第一个,用来测试
wget https://pjreddie.com/media/files/yolo.weights
wget https://pjreddie.com/media/files/tiny-yolo-voc.weights
wget http://pjreddie.com/media/files/yolov1.weights
wget http://pjreddie.com/media/files/tiny-yolo.weights
wget http://pjreddie.com/media/files/tiny-coco.weights
wget http://pjreddie.com/media/files/yolo-coco.weights

1.2 测试

在darknet文件夹下执行命令:

./darknet detect cfg/yolov2.cfg yolo.weights data/dog.jpg

参数说明:

  • detect:表示该命令用于“目标检测”

  • cfg/yolo.cfg:yolo模型的配置文件,包含它的网络结构(路径自定义)

  • yolo.weights:训练好的权重分布,路径自定义(路径自定义)

  • data/dog.jpg:要测试的图片(路径自定义)

还可以增加参数:

./darknet detect cfg/yolov2.cfg yolo.weights data/dog.jpg -thresh 0.1

-thresh表示阈值,可以设置;

Temp

三个参数:

  • epoch
    所有数据传入网络完成一次前向计算及反向传播称为一个epoch(个人理解为训练的次数),随着epoch的数量增多,模型的输出会这样变化:
    Created with Raphaël 2.2.0 欠拟合 拟合 过拟合
  • batch size
    把数据集分成n个batch,每个batch所读应的数目就是batch size(即:总数/n),分批次训练,如果数据量少,还是不要分批次;
  • iterations
    就是完成一次epoch所需要的batch个数;

举个例子:有2000个数据,分成4个batch,那么batch size就是500,因为一个epoch要运行所有的数据,所以1个epoch需要4次iterations;

相关文件

  • cfg/coco.data
    指定了一些变量名
    classes= 80
    train  = /home/pjreddie/data/coco/trainvalno5k.txt
    valid  = coco_testdev
    #valid = data/coco_val_5k.list
    names = data/coco.names
    backup = /home/pjreddie/backup/
    eval=coco
    
  • data/coco.names
    存放不同的类别名称,比如下面这些:
    person
    bicycle
    car
    motorbike
    aeroplane
    bus
    train
    truck
    boat
    traffic light
    fire hydrant
    stop sign
    parking meter
    bench
    bird
    ...
    
  • cfg/yolov2.cfg
    网络模型的配置文件
    [net]
    # Testing
    batch=1
    subdivisions=1
    # Training
    # batch=64
    # subdivisions=8
    width=608
    height=608
    channels=3
    momentum=0.9
    decay=0.0005
    angle=0
    saturation = 1.5
    exposure = 1.5
    hue=.1
    
    learning_rate=0.001
    burn_in=1000
    max_batches = 500200
    policy=steps
    steps=400000,450000
    scales=.1,.1
    
    [convolutional]
    batch_normalize=1
    filters=32
    size=3
    stride=1
    pad=1
    activation=leaky
    ...
    
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值