YOLO end-to-end】的更多相关文章

YOLO detection darknet框架使用 YOLO 训练自己的数据步骤,宁广涵详细步骤说明…
参考列表 Selective Search for Object Recognition Selective Search for Object Recognition(菜菜鸟小Q的专栏) Selective Search for Object Recognition(Surge) Selective Search for Object Recognition(原始论文) Efficient Graph-Based Image Segmentation(快速图像分割) Homepage of K…
1.下载darknet git clone https://github.com/pjreddie/darknet.git 2.修改make GPU= CUDNN= OPENCV= DEBUG= 3.编译 cd darknet make 4.测试 下载yolo.weights. ./darknet detect cfg/yolo.cfg yolo.weights data/dog.jpg 视频测试. ./darknet detector demo cfg/coco.data cfg/yolo.c…
1 YOLO 创新点: 端到端训练及推断 + 改革区域建议框式目标检测框架 + 实时目标检测 1.1 创新点 (1) 改革了区域建议框式检测框架: RCNN系列均需要生成建议框,在建议框上进行分类与回归,但建议框之间有重叠,这会带来很多重复工作.YOLO将全图划分为SXS的格子,每个格子负责中心在该格子的目标检测,采用一次性预测所有格子所含目标的bbox.定位置信度以及所有类别概率向量来将问题一次性解决(one-shot). 1.2 Inference过程 YOLO网络结构由24个卷积层与2个全…
YOLO官方框架使用C写的,性能杠杠的,YOLO算法,我就不做过多介绍了.先简单介绍一下这个框架如何使用.这里默认是yolo2,yolo1接近过时.环境 推荐ubuntu 或者centos YOLO是一个近实时的框架,在1核cpu下,对一张图片的识别大概在6s-12s之间,其实还是在没有缓存的环境下运行的,如果是在摄像头实时采集识别估计也能达到10s左右的处理速度.如果用GPU来处理,当然时间短很多了.在看官网的信息时,有些名词看不太懂,但号称在titanX 上的处理速度是每秒40-60张图片,…
CVPR2016: You Only Look Once:Unified, Real-Time Object Detection 转载请注明作者:梦里茶 YOLO,You Only Look Once,摒弃了RCNN系列方法中的region proposal步骤,将detection问题转为一个回归问题 网络结构 输入图片:resize到448x448 整张图片输入卷积神经网络(24层卷积+2层全连接,下面这张示意图是Fast YOLO的) 将图片划分为SxS个格子,S=7 输出一个SxS大小的…
YOLO算法(You Only Look Once) 比如你输入图像是100x100,然后在图像上放一个网络,为了方便讲述,此处使用3x3网格,实际实现时会用更精细的网格(如19x19).基本思想是,使用图像分类和定位算法,然后将算法应用到9个格子上.更具体一点,你需要这样定义训练标签,对于9个格子中的每一个都指定一个标签y,其中y是一个8维向量(与前面讲述的一样,分别为Pc,bx,by,bh,bw,c1,c2,c3,其中Pc=1表示含有目标,Pc=0表示为背景:c1,c2,c3表示要分类的3个…
运行步骤 1.从 YOLO 官网下载 YOLOv3 权重 wget https://pjreddie.com/media/files/yolov3.weights 下载过程如图: 2.转换 Darknet YOLO 模型为 Keras 模型 python convert.py yolov3.cfg yolov3.weights model_data/yolo.h5 转换过程如图: 3.运行YOLO 目标检测 python yolo.py 需要下载一个图片,然后输入图片的名称,如图所示: 我并没有…
封面图是作者运行图,我在 ubuntu 环境下只有文字预测结果. Detection Using A Pre-Trained Model 使用训练好的模型来检测物体 运行一下命令来下载和编译模型 git clone https://github.com/pjreddie/darknet cd darknet make 运行一下模型来下载预训练权重 wget https://pjreddie.com/media/files/yolo.weights 运行以下命令来测试模型 ./darknet de…
目标检测是很多计算机视觉任务的基础,不论我们需要实现图像与文字的交互还是需要识别精细类别,它都提供了可靠的信息.本文对目标检测进行了整体回顾,第一部分从RCNN开始介绍基于候选区域的目标检测器,包括Fast R-CNN.Faster R-CNN 和 FPN等.第二部分则重点讨论了包括YOLO.SSD和RetinaNet等在内的单次检测器,它们都是目前最为优秀的方法. 一.基于候选区域的目标检测器 1.1  滑动窗口检测器 自从 AlexNet 获得 ILSVRC 2012 挑战赛冠军后,用 CN…
前面介绍的R-CNN系的目标检测采用的思路是:首先在图像上提取一系列的候选区域,然后将候选区域输入到网络中修正候选区域的边框以定位目标,对候选区域进行分类以识别.虽然,在Faster R-CNN中利用RPN网络将候选区域的提取以放到了CNN中,实现了end-to-end的训练,但是其本质上仍然是提取先提取候选区域,然后对候选区域识别,修正候选区域的边框位置.这称为tow-stage的方法,虽然在精度已经很高了,但是其速度却不是很好.造成速度不好的主要原因就是候选区域的提取,这就需要一种网络能够直…
YOLO V2 YOLO V2是在YOLO的基础上,融合了其他一些网络结构的特性(比如:Faster R-CNN的Anchor,GooLeNet的\(1\times1\)卷积核等),进行的升级.其目的是弥补YOLO的两个缺陷: YOLO中的大量的定位错误 和基于区域推荐的目标检测算法相比,YOLO的召回率(Recall)较低. YOLO V2的目标是:在保持YOLO分类精度的同时,提高目标定位的精度以及召回率.其论文地址: YOLO 9000:Better,Faster,Stronger. YO…
YOLO: 1. YOLO的网络结构 YOLO v1 network (没看懂论文上的下图,看下面这个表一目了然了) 24层的卷积层,开始用前面20层来training, 图片是224x224的,然后用448x448 再train 后面4层,最后得到的model 是24层的model. 最后输出7x7个grid cell, 30 表示 2个bounding box (每个5个数字) 加上 20 classes ┌────────────┬────────────────────────┬────…
You Only Look Once: Unified, Real-Time Object Detection Joseph Redmon, CVPR, 2016 1. 之前的目标检测工作将分类器用作检测,而YOLO将检测问题看做回归问题,用一个网络端对端地执行检测任务(包括边界框位置和相应的类别概率预测),这使得YOLO可以直接对检测的表现进行优化. 2. YOLO具有如下优点: 速度快且mAP高,YOLO45帧每秒,fast YOLO 155帧每秒(两倍于其他实时检测系统的mAP) 对背景的…
yolo为you only look once. 是一个全卷积神经网络(FCN),它有75层卷积层,包含跳跃式传递和降采样,没有池化层,当stide=2时用做降采样. yolo的输出是一个特征映射(feature map) Yolo是将输入图像划分为sxs个格子,每个格子越策b个bounding box,每个bbx有5个系数. s的取值为输出特征映射的最低维度,例如输入图像为416X416,则输出特征映射为13x13(具体算法为416,208,104,52,26,13,每次降采样相当于图像大小减…
1 引言 深度学习目前已经应用到了各个领域,应用场景大体分为三类:物体识别,目标检测,自然语言处理.本文着重与分析目标检测领域的深度学习方法,对其中的经典模型框架进行深入分析. 目标检测可以理解为是物体识别和物体定位的综合,不仅仅要识别出物体属于哪个分类,更重要的是得到物体在图片中的具体位置. 为了完成这两个任务,目标检测模型分为两类.一类是two-stage,将物体识别和物体定位分为两个步骤,分别完成,这一类的典型代表是R-CNN, fast R-CNN, faster-RCNN家族.他们识别…
每当听到有人问“如何入门计算机视觉”这个问题时,其实我内心是拒绝的,为什么呢?因为我们说的计算机视觉的发展史可谓很长了,它的分支很多,而且理论那是错综复杂交相辉映,就好像数学一样,如何学习数学?这问题似乎有点笼统.有点宽泛.所以我都会具体问问你想入门计算机视觉的哪个话题,只有顺着一个话题理论联合实际,才有可能扩展到几个话题. yolo类算法,从开始到现在已经有了3代,我们称之为v1.v2.v3,一路走来,让人能感觉到的是算法的性能在不断的改进,以至于现在成为了开源通用目标检测算法的领头羊(ps:…
1.R-CNN回顾 适应全卷积化CNN结构,提出全卷积化设计 共享ResNet的所有卷积层 引入变换敏感性(Translation variance) 位置敏感分值图(Position-sensitive score maps) 特殊设计的卷积层 Grid位置信息+类别分值 位置敏感池化(Position-sensitive RoI pooling) 无训练参数 无全连接网络的类别推断 R-FCN的位置敏感卷积层 使用k2(C+1)个通道对(位置,类别)组合进行编码 类别:C个物体类+1个背景类…
问题1 TypeError: function takes exactly 1 argument (3 given) 报错说PIL库中的函数只接收到一个参数,应该给三个,自己在这里记录下解决方法,出错的地方在yolo.py中,在yolo中在测试时需要对检测到的区域进行画出标记框和类别数字,因为作者测试的coco等图库都是RGB图像,会有三个参数输入给rectangle函数,不会发生报错,而在测试图像为灰度图时,就会出错.在解决错误是参考了参考文献[1]中的提示,很感谢! 对于这个错误原因,个人认…
事件叙述: 缘起:yolo检测框,在项目开始之前由于在一些场景下观察到yolo的框在大车检测的时候,回归的位置不好,一些车辆的尾部会被漏掉,特别是车牌部分,恰好被框在外面的时候,在后续就无法进行车牌检测与识别等操作,因此为了临时解决,将yolo的框进行了1/15的下移操作: 改观:首先车牌的问题在很早的时候就解决掉了,方法是在进行车牌检测+识别时对yolo框进行下移,其他模块不进行该操作(因此这里需要注意,在车牌识别的模块(不仅仅是这个模块,其他类似的操作)在设计接口的时候,一定不要设计成单张图…
1. R-CNN:Rich feature hierarchies for accurate object detection and semantic segmentation 技术路线:selective search + CNN + SVMs Step1:候选框提取(selective search) 训练:给定一张图片,利用seletive search方法从中提取出2000个候选框.由于候选框大小不一,考虑到后续CNN要求输入的图片大小统一,将2000个候选框全部resize到227*…
网络细节资料很多,不做赘述,主要总结演化思路和解决问题. 一.YOLO 1.网络简介 YOLO网络结构由24个卷积层与2个全连接层构成,网络入口为448x448(v2为416x416),图片进入网络先经过resize,输出格式为: 其中,S为划分网格数,B为每个网格负责目标个数,C为类别个数.B表示每个小格对应B组可能的框,5表示每个框的四个坐标和一个置信度,C表示类别,同时也说明B个框只能隶属于同一个类别. 2.损失函数 损失函数有四部分组成, 上文中的红圈符号表示是否开关,比如第一个符号表示…
之前作者用滑动窗口和HOG来进行船体监测,在开放水域和港湾取得了不错的成绩,但是对于不一致的复杂背景,这个方法的性能会下降.为了解决这个缺点,作者使用YOLO作为物体检测的流水线,这个方法相比于HOG提高了对背景的辨别力,并且可以快速的在不同尺度和多样传感器上进行快速检测. Review ImageNet上的目标检测和卫星图像上的检测有以下四个方面的不同: 1.卫星图像的目标检测通常都很小(~20像素),而输入图像通常很大.缺少用于训练的卫星图像. 2.卫星图像中所检测的物体的物理和像素大小通常…
yolo: 通过聚类产生5个不同比例的anchors.最后一个特征层的输出(x,y,w,h)与这些不同比列的相乘,将网络层的输出转化为bbox(小尺寸),再通过(H,W)还原成原图大小.一共有5个bbox.最后选出与gt box IOU最大的那个与gt做回归. faster rcnn: 直接在最后网络层输出的那个点上产生9个anchors,选出最大的iou与gtbox 做回归.…
一.YOLO v1 1.网络结构 (1)最后一层使用线性激活函数: (2)其他各层使用leaky ReLU的激活函数: 2.Training (1) 将原图划分为SxS的网格.如果一个目标的中心落入某个格子,这个格子就负责检测该目标,即Pr(object)=1.S取7: (2) 每个网格要预测C个类别概率Pr(classi|object),C为20(不需要表示背景这一类,因为这20类概率都为0即表示为背景).用于训练用的每个网格类别标签为,如果实际bounding box的中心在该网格上,且是第…
以下都是基于yolo v2版本的,对于现在的v3版本,可以先clone下来,再git checkout回v2版本. 玩了三四个月的yolo后发现数值相当不稳定,yolo只能用来小打小闹了. v2训练的权重用v3做预测,结果不一样. 我的环境是 window 10 + cuda9.0 + opencv 3.4.0 + VS2015 先在这个地方下源文件:https://github.com/AlexeyAB/darknet 下好后,先打开用文本编辑器打开 darknet.vcxproj,将两处 c…
将YOLO应用于视频流对象检测 首先打开 yolo_video.py文件并插入以下代码: # import the necessary packages import numpy as np import argparse import imutils import time import cv2 import os # construct the argument parse and parse the arguments ap = argparse.ArgumentParser() ap.a…
计算机视觉领域中,目标检测一直是工业应用上比较热门且成熟的应用领域,比如人脸识别.行人检测等,国内的旷视科技.商汤科技等公司在该领域占据行业领先地位.相对于图像分类任务而言,目标检测会更加复杂一些,不仅需要知道这是哪一类图像,而且要知道图像中所包含的内容有什么及其在图像中的位置,因此,其工业应用比较广泛.那么,今天将向读者介绍该领域中表现优异的一种算算法——“你只需要看一次”(you only look once,yolo),提出该算法的作者风趣幽默可爱,其个人主页及论文风格显示了其性情,目前该…
目录 darknet优化经验 1. AlexeyAB改进项 2. Linux下编译选项 3. 训练经验 4. 提升检测效果 5. 总结 6. AlexeyAB大神改进 darknet优化经验 主要来自于:AlexeyAB 版本darknet 1. AlexeyAB改进项 提供window支持 相较于原版pjreddie版本darknet提升了训练速度 添加了二值化网络,XNOR(bit) ,速度快,准确率稍低https://github.com/AlexeyAB/darknet/blob/mas…
1.图片数据集收集 共 16种 集装箱船 container ship 散货船 bulker 油船 tanker 游轮 / 客轮 / 邮轮 passenger liner 渔船 fishing boat 滚装船 Ro/Ro ship 引航船 pilot boat LNG船 LNG ship LPG船 LPG ship 公务船 / 执法船  official ship 渡轮  ferry 拖船 tug 帆船 sailing boat 工程船 engineering ship 驳船 / 内河船 /江…