YoloV3学习笔记(六)—— YoloV3-tiny

YoloV3学习笔记(六)—— YoloV3-tiny

yolov3-tiny中,共有两个输出层(yolo层),分别为13x13和26x26,每个网格可以预测3个bounding box,共有80个分类数。所以最后的yolo层的尺寸为:13x13x255和26x26x255。

一、网络架构

yolov3-tiny网络层结构如下:

在这里插入图片描述

可以看出,yolov3-tiny共有23层网络,其中包含五种不同的网络层:卷积层convolutional(13个),池化层maxpool(6个),路由层route(2个),上采样层upsample(1个),输出层yolo(2个)。Yolov3-tiny中,除了Yolo层之前的那个卷积层,每个卷积层之后都有BN层,且每个卷积层之后都有激活函数LEAKY(yolo层之前是linear)。

二、总结

相比于yolov3, yolov3-tiny版本将网络压缩了许多,没有使用res层(残差层),只使用了两个不同尺度的yolo输出层,但总体思路还是可以借鉴yolov3的。而且该网络被广泛应用于行人、车辆检测等,可以在很多硬件上实现。

参考文献: 此文献是C版本

### YOLOv3-Tiny 的概述 YOLOv3-Tiny 是 YOLO (You Only Look Once) 家族中的轻量化版本之一,旨在减少计算成本的同时尽可能保留原始模型的性能。此变体特别适合于资源受限环境下的应用开发,比如移动设备或嵌入式系统上的实时目标检测任务[^1]。 ### 构建与训练流程 对于希望构建并训练自己数据集上的 YOLOv3-Tiny 模型的研究者来说,可以从开源社区获取预训练权重以及相应的配置文件作为起点。这些资料通常包含了完整的安装指南、依赖项列表及具体操作步骤说明文档。例如,在给定的一个 GitHub 项目中提供了详细的指导来帮助开发者快速上手 PyTorch 版本的 YOLOv3-Tiny 实现[^3]。 ### 配置调整要点 当针对特定应用场景定制化 YOLOv3-Tiny 时,可能需要根据实际需求调整网络架构参数: - **卷积层设置**:`filters` 参数应设为 `(类别数量 + 5) * 3` ,其中 `5` 表示边界框坐标加置信度得分;而 `classes` 则直接对应所关心的对象分类数目。 - **锚点框优化**:为了提高不同尺度下物体检测的效果,特别是小型物品,可以通过聚类分析自定义一组更适合当前任务特性的 anchor boxes 尺寸集合[^5]。 ### 权重提取功能扩展 除了基本的功能外,某些改进版实现了额外特性以增强灵活性和可维护性。例如通过添加 `.get_weights()` 方法使得能够方便地导出各层卷积核参数值,这对于后续迁移学习或是进一步调优非常有用处[^4]。 ```python # Python代码片段展示如何保存YOLOv3-Tiny模型的卷积层权重 import torch def save_conv_weights(model, path='weights.pth'): conv_layers = [] for name, module in model.named_modules(): if isinstance(module, torch.nn.Conv2d): conv_layers.append((name,module.weight.data)) torch.save(conv_layers, path) save_conv_weights(your_yolov3_tiny_instance) ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

聪 ~smart

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

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

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

打赏作者

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

抵扣说明:

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

余额充值