yolov3-tiny训练自己的数据集(重在步骤,不究原理)

简介

YOLOv3是一种基于深度神经网络的对象识别和定位算法,其最大的特点是运行速度很快,可以用于实时系统。而YOLOv3-tiny是YOLOv3的简化版。

YOLOv3-tiny网络结构图

layer     filters    size              input                output
0 conv     16  3 x 3 / 1   416 x 416 x   3   ->   416 x 416 x  16  0.150 BFLOPs
1 max          2 x 2 / 2   416 x 416 x  16   ->   208 x 208 x  16
2 conv     32  3 x 3 / 1   208 x 208 x  16   ->   208 x 208 x  32  0.399 BFLOPs
3 max          2 x 2 / 2   208 x 208 x  32   ->   104 x 104 x  32
4 conv     64  3 x 3 / 1   104 x 104 x  32   ->   104 x 104 x  64  0.399 BFLOPs
5 max          2 x 2 / 2   104 x 104 x  64   ->    52 x  52 x  64
6 conv    128  3 x 3 / 1    52 x  52 x  64   ->    52 x  52 x 128  0.399 BFLOPs
7 max          2 x 2 / 2    52 x  52 x 128   ->    26 x  26 x 128
8 conv    256  3 x 3 / 1    26 x  26 x 128   ->    26 x  26 x 256  0.399 BFLOPs
9 max          2 x 2 / 2    26 x  26 x 256   ->    13 x  13 x 256
10 conv    512  3 x 3 / 1    13 x  13 x 256   ->    13 x  13 x 512  0.399 BFLOPs
11 max          2 x 2 / 1    13 x  13 x 512   ->    13 x  13 x 512
12 conv   1024  3 x 3 / 1    13 x  13 x 512   ->    13 x  13 x1024  1.595 BFLOPs
13 conv    256  1 x 1 / 1    13 x  13 x1024   ->    13 x  13 x 256  0.089 BFLOPs
14 conv    512  3 x 3 / 1    13 x  13 x 256   ->    13 x  13 x 512  0.399 BFLOPs
15 conv    255  1 x 1 / 1    13 x  13 x 512   ->    13 x  13 x 255  0.044 BFLOPs
16 yolo
17 route  13
18 conv    128  1 x 1 / 1    13 x  13 x 256   ->    13 x  13 x 128  0.011 BFLOPs
19 upsample            2x    13 x  13 x 128   ->    26 x  26 x 128
20 route  19 8
21 conv    256  3 x 3 / 1    26 x  26 x 384   ->    26 x  26 x 256  1.196 BFLOPs
22 conv    255  1 x 1 / 1    26 x  26 x 256   ->    26 x  26 x 255  0.088 BFLOPs
23 yolo

环境条件

  • Window 10
  • GTX1050 2G
  • Python 3.6.7
  • Opencv 3.4.0
  • Tensorflow-gpu 1.14.0

源码获取

https://github.com/FreemanTang/yolov3_tiny_tensorflow
# 或者
https://gitee.com/freemantang/yolov3_tiny_tensorflow

项目结构

在这里插入图片描述

准备数据

将所有标注的图片放到VOCdevkit/VOC2007/JPEGImages目录下,如下图。
在这里插入图片描述
将所有标注的XML文件放到VOCdevkit/VOC2007/Annotations目录下,如下图。
在这里插入图片描述
运行VOCdevkit/VOC2007/ImageName_to_txt.py代码,如下图。
在这里插入图片描述
运行成功,会在VOCdevkit/VOC2007/ImageSets/Main目录下,生成4个TXT文件,如下图。
在这里插入图片描述
编辑yolov3_tiny_tensorflow/voc_annotation.py代码,将classes = []改成自己标注的类别名,如classes = [“head”,“car”,“cat”],如下图。
在这里插入图片描述
运行yolov3_tiny_tensorflow/voc_annotation.py代码,如下图。
在这里插入图片描述
运行成功,会在yolov3_tiny_tensorflow目录下生成3个TXT文件,如下图。
在这里插入图片描述
将其重命名为train.txt,test.txt,val.txt,如下图。
在这里插入图片描述
3个txt文件,内容格式,如下图。
在这里插入图片描述

相关配置

将/data/COCO.name用记事本打开,输入自己所标注的类名,如下图。
在这里插入图片描述

训练

运行yolov3_tiny_tensorflow/train.py代码,如下图。
在这里插入图片描述

python train.py --batch_size 1 --total_epoches 50

在这里插入图片描述
训练完成,在yolov3_tiny_tensorflow/checkpoint/yolov3_tiny_COCO已保存训练好的模型文件,如下图。
在这里插入图片描述
将最新保存的文件名改为yolov3_tiny_my.cpkt,如下图。
在这里插入图片描述

测试

Window系统下测试

图片测试

python test_single_image_yolov3_tiny.py --input_image ./imgs/test.jpg

视频测试

python camera_or_video_test_yolov3_tiny.py --input_video ./videos/test_video.mp4

摄像头测试

python camera_or_video_test_yolov3_tiny.py --input_video 0

在这里插入图片描述

Jetson Nano下测试

图片测试

python3 test_single_image_yolov3_tiny.py --input_image ./imgs/test.jpg

视频测试

python3 camera_or_video_test_yolov3_tiny.py --input_video ./videos/test_video.mp4

摄像头测试

python3 CSI_camera_test_yolov3_tiny.py

在这里插入图片描述

每天前100人再送5门编程课! AI+5门300元课程+社群闭门分享会源码开源下载:https://github.com/DjangoPeng/keras-101/tree/master/code_samples 【为什么学AI】 归功于近年来大规模数据和硬件计算能力的大幅度提升,人工智能的概念近两年一直是市场追捧的对象。目前各大厂都争先恐后地布局AI,落地各类AI的的商业应用,也随之打响了一场激烈的人才争夺战。长远来看,越快将 AI 用于自己的工作中就能越早体会到AI带来的收益。 【讲师介绍】 彭靖田 Google Developer Experts。 曾为 TensorFlow Top级 的贡献者,著书《深入理解TensorFlow》,是国内第一本深度剖析 Google AI 框架的畅销书。 曾从0到1深入参与了华为 2012 实验室深度学习平台和华为深度学习云服务的设计与研发工作。 【课程设计】 课程内容基于最新的Keras版本(你也可以使用 TensorFlow 2 的 tf.keras 模块),其中有大量独家解读、案例,以及不少讲师一线实战多年的方法论和深度思考。同时,在层次划分上,难易兼顾,循序渐进。既有核心的基础知识,也有高级的进阶操作,尽量做到“老少皆宜”。 课程分为基础篇、入门篇和实战篇: 一、基础篇: 主要讲解人工智能发展史和深度学习脱颖而出的原由,以及神经网络的基础概念、理论实现、优化原理和计算方法。 二、入门篇: 主攻快速上手,通过7个小节让你从0到1实现环境搭建、模型优化,直接试水2个实战项目。同时,增强AI的理论学习,系统掌握机器学习3大分支、模型评估方法、数据预处理常用手段与过拟合问题的解决方案。 三、实战篇: 通过4个实战全面掌握深度学习理论与实现,涵盖目标检测、图像分类、可视化和可解释性学习、迁移学习、特征提取、数据增强等。带你综合运用前面所学的所有知识,逐渐熟练AI开发流程与技能。 课程包含思维导图上的所有内容(价值199元)前500名立减100元,仅99元买完就能学!
评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

FriendshipT

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值