# keras-yolov4
[![license](https://img.shields.io/github/license/mashape/apistatus.svg)](LICENSE)
## Introduction
来源于AlexeyAB大佬的框架 [https://github.com/AlexeyAB/darknet](https://github.com/AlexeyAB/darknet).
框架来源于qqwweee大佬的 [https://github.com/qqwweee/keras-yolo3](https://github.com/qqwweee/keras-yolo3)
之前看到有人做了个Test的,但其实并不完整,这个版本我加入了可以通过Camera和图片的检测,使项目较为完整
![yolov4](./font/1.png)
## 环境
- Python3.7.3
- keras2.2.5
- tensorflow1.14.0
- CUDA10.1
---
## 直接开始玩
1. 从谷歌下载Darknet的权重文件 [yolov4.weights](https://drive.google.com/open?id=1cewMfusmPjYWbrnuJRuKhPMwRe_b9PaT).
2. 把Darknet的.weights文件转换为keras的h5文件
3. 开始检测
```
python convert.py
python yolo_video.py --input [video_path] --output [output_path (optional)] #视频
python yolo_video.py --image #图片
```
## 全部用法
>移步到qqwweee大佬的仓库
[https://github.com/qqwweee/keras-yolo3](https://github.com/qqwweee/keras-yolo3)
## 训练
>其实个人建议还是用Darknet进行训练效率和效果都是更好的,但是可能大家计算机基础不太一样,还是写写keras版本的训练方法吧。
1. 数据集的制作用imagelabel,会产生xml文件,并且文件名和图片名是对应的
2. 将xml文件全部放入到VOCdevkit/VOC2007/Annotations,把图片放到VOCdevkit/VOC2007/JPEGImages
3. 在VOCdevkit/VOC2007/ImageSets中创建三个文件夹Layout,Main,Segmentation(这里已经帮你创建好了,自行删除每个文件夹的temp)
4. 在VOCdevkit/VOC2007/目录下创建gen.py,并执行gen.py文件生成VOC2007数据说明文本文件(train.txt,val.txt,test.txt)
5. 修改voc_annotation.py:在第六行的classes项中修改成自己训练样本的名字
6. 执行voc_annotation.py生成可供该框架使用的数据集文件(在根目录生成2007_train.txt,2007_test.txt,2007_val.txt)
7. 修改参数文件yolo4.cfg如下图
8. 修改model_data/voc_classes.txt,为自己需要训练的类别
9. 开冲!文件模型保存在logs/000/里面,后面运行的时候记得,在yolo.py里面修改名字
![cfg](./font/cfg.png)
```
# gen.py
import os
import random
trainval_percent = 0.2
train_percent = 0.8
xmlfilepath = 'Annotations'
txtsavepath = 'ImageSets\Main'
total_xml = os.listdir(xmlfilepath)
num = len(total_xml)
list = range(num)
tv = int(num * trainval_percent)
tr = int(tv * train_percent)
trainval = random.sample(list, tv)
train = random.sample(trainval, tr)
ftrainval = open('ImageSets/Main/trainval.txt', 'w')
ftest = open('ImageSets/Main/test.txt', 'w')
ftrain = open('ImageSets/Main/train.txt', 'w')
fval = open('ImageSets/Main/val.txt', 'w')
for i in list:
name = total_xml[i][:-4] + '\n'
if i in trainval:
ftrainval.write(name)
if i in train:
ftest.write(name)
else:
fval.write(name)
else:
ftrain.write(name)
ftrainval.close()
ftrain.close()
fval.close()
```
没有合适的资源?快使用搜索试试~ 我知道了~
精品--学习深度学习的搬砖.zip
共36个文件
py:12个
temp:6个
txt:6个
需积分: 5 0 下载量 17 浏览量
2024-02-05
17:52:17
上传
评论
收藏 1.07MB ZIP 举报
温馨提示
精品--学习深度学习的搬砖
资源推荐
资源详情
资源评论
收起资源包目录
精品--学习深度学习的搬砖.zip (36个子文件)
ahao2
voc_annotation.py 1KB
yolo_video.py 2KB
font
1.png 975KB
cfg.png 10KB
FiraMono-Medium.otf 124KB
SIL Open Font License.txt 4KB
LICENSE 1KB
coco_annotation.py 1KB
model_data
yolo_anchors.txt 76B
yolo4_anchors.txt 85B
coco_classes.txt 625B
tiny_yolo_anchors.txt 50B
voc_classes.txt 135B
convert.py 7KB
.idea
keras-yolo4.iml 284B
vcs.xml 180B
misc.xml 288B
inspectionProfiles
profiles_settings.xml 174B
modules.xml 274B
.gitignore 38B
VOCdevkit
VOC2007
ImageSets
Main
temp 0B
Layout
temp 0B
Segmentation
temp 0B
Annotations
temp 0B
JPEGImages
temp 0B
yolo4
utils.py 4KB
__init__.py 0B
model.py 30KB
yolov4.cfg 12KB
logs
000
temp 0B
kmeans.py 3KB
train.py 7KB
test.py 6KB
README.md 3KB
yolo4.py 8KB
yolo.py 8KB
共 36 条
- 1
资源评论
码农阿豪
- 粉丝: 1w+
- 资源: 1754
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功