首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >【下载】PyTorch 实现的YOLO v2目标检测算法

【下载】PyTorch 实现的YOLO v2目标检测算法

作者头像
WZEARW
发布2018-04-11 17:45:34
1.8K0
发布2018-04-11 17:45:34
举报
文章被收录于专栏:专知专知专知

【导读】目标检测是计算机视觉的重要组成部分,其目的是实现图像中目标的检测。YOLO是基于深度学习方法的端到端实时目标检测系统(YOLO:实时快速目标检测)。YOLO的升级版有两种:YOLOv2和YOLO9000。YOLOv2是针对YOLO算法不足的改进版本,作者使用了一系列的方法对原来的YOLO多目标检测框架进行了改进,在保持原有速度的优势之下,精度上得以提升。近日,Ruimin Shen在Github上发布了YOLO v2的PyTorch实现版本,让我们来看下。

YOLO v2是目前最受欢迎的单一网络目标检测算法之一,由于整个检测流水线是单一网络,因此可以直接对检测性能进行端到端的优化。 本项目是对该算法的代码实现,为了提高效率,项目采用PyTorch开发框架。同时为了更方便的部署在实际应用中,可以利用ONNX将模型转换为Caffe 2支持的格式 。

▌设计



  • 灵活的配置设计。 代码的运行是可配置的,比如可以使用命令行参数进行修改(可以通过配置文件重叠(-c / - 配置选项)或命令编辑(-m / - 修改选项)的方式)。
  • 通过TensorBoard监控损失函数值和调试检测结果图像(例如IoU热图,标准数据集以及预测边界框)。
  • 并行的模型训练设计。 不同的模型被保存到不同的目录中,从而可以同时训练。
  • 使用NoSQL数据库存储具有高维信息的评估结果。这个设计在分析大量的实验结果时非常有用。
  • 基于时间的输出设计。运行信息(例如模型,摘要summaries(由TensorBoard生成)以及评估结果)被定期保存到文件中。
  • 对于检查点Checkpoint的管理。代码会将最近生成的几个检查点文件(.pth)保存在模型目录中,旧的将被删除。
  • NaN调试。当检测到NaN损失时,将导出当前的运行环境(data batch)和模型,用来分析NaN出现的原因。
  • 统一的数据缓存设计。各种数据集通过相应的缓存插件转换为统一的数据缓存。 一些例如PASCAL VOC和MS COCO的插件已经实现。
  • 任意可替换的模型插件设计。主要的深度神经网络(DNN)可以利用配置修改来轻松替换。其中已经包含了Darknet,ResNet,Inception v3、v4,MobileNet和DenseNet等模块。
  • 可扩展的数据预处理插件设计。 原始图像(具有不同大小)和标签通过一系列操作进行处理从而形成一个训练批次(图像大小相同,边界框列表被填充)。 多个预处理插件已经实现, 例如同时处理图像和标签(如随机旋转和随机翻转),将图像和标签的大小批量调整为固定大小(如随机裁剪),增加没有标签的图像等(例如随机模糊,随机饱和度和随机亮度)。

▌项目特点


  • 重现原始文件的训练结果。
  • 多规模训练。
  • 维度集群。
  • Darknet模型文件(.weights)解析器。
  • 从图像和相机检测。
  • 处理视频文件。
  • 多GPU支持。
  • 分布式训练。
  • 焦点损失。
  • 通道模型参数分析仪和修剪器。

▌快速开始


该项目需要使用Python 3去安装依赖库,在终端键入以下命令:

sudo pip3 install -r requirements.txt

quick_start.sh包含执行检测和评估的示例。 运行这个脚本。 将下载多个数据集和模型(原始的Darknet格式,将被转换成PyTorch的格式)。 这些数据集将缓存到不同的数据配置文件中,模型会对缓存的数据进行评估。并用于检测示例图像中的对象,并显示检测结果。

链接:https://github.com/ruiminshen/yolo2-pytorch

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2017-12-28,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 专知 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
云数据库 Redis
腾讯云数据库 Redis(TencentDB for Redis)是腾讯云打造的兼容 Redis 协议的缓存和存储服务。丰富的数据结构能帮助您完成不同类型的业务场景开发。支持主从热备,提供自动容灾切换、数据备份、故障迁移、实例监控、在线扩容、数据回档等全套的数据库服务。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档