yolo

【论文阅读笔记】YOLOv3: An Incremental Improvement

橙三吉。 提交于 2020-02-19 20:37:36
YOLOv3: An Incremental Improvement (一)论文地址: (二)核心思想: (三)DarkNet-53: (四)Class Prediction: (五)Predictions Across Scales: (六)实验结果: (一)论文地址: https://arxiv.org/abs/1804.02767 (二)核心思想: ‘Sometimes you just kinda phone it in for a year, you know?’ 作者说他一年大部分时间去刷 Twitter 了,然后玩了(play around)一阵子 GAN,正好剩下一点时间,就改进了一下 YOLO 算法,提出了 YOLO v3; (作者有点皮呀) (三)DarkNet-53: 作者在 DarkNet-19 的基础上加入了残差结构,使得它在 ImageNet 上的表现跟 ResNet-101 相差无几,但是处理速度却快得多; (四)Class Prediction: 这里由于 YOLO 使用了多层 label,因此使用了 Logistic 回归和 binary cross-entropy 损失函数; (五)Predictions Across Scales: 这里每个区域使用了 3 个不同大小的 Anchor,其余设置跟 YOLO v2 相同; 并且作者使用了跟 FPN

opencv DNN模块之YOLO(Darknet)对象检测

我只是一个虾纸丫 提交于 2020-02-10 22:14:03
原理 自行百度,本人不擅长 YOLO 来自darknet对象检测框架 基于COCO数据集,能检测80个类别 YOLO V3版本 https://pireddie.com/darknet/yolo 每种网络模型对应的输入数据 可以查看每种模型的模型二进制文件名称,网络描述文件名称,中至化处理参数,数据样本尺寸,描述label文件名称,rgb通道顺序以及典型应用场景等信息 链接地址:https://github.com/opencv/opencv/blob/master/samples/dnn/models.yml ################################################################################ # Object detection models. ################################################################################ 。。。 # YOLO object detection family from Darknet (https://pjreddie.com/darknet/yolo/) # Might be used for all YOLOv2, TinyYolov2 and YOLOv3 yolo : model

Windows 10 YOLO v3-PyTorch 复现

梦想与她 提交于 2020-02-09 03:29:28
代码来源于Github: https://github.com/eriklindernoren/PyTorch-YOLOv3 环境配置:Windows 10+CUDA 9.2+PyTorch 1.1.0+python 3.6.2 网上关于环境配置有很多教程,这里不再赘述。环境配置成功,接下来就是按照代码包中READEME.md进行安装。README.md 安装 部分内容如下: 一、Clone and install requirements(下载代码和一些需要的包) 1.git clone https://github.com/eriklindernoren/PyTorch-YOLOv3(下载代码) 首先利用命令行进入到你想要下载代码的文件位置,接着利用指令下载代码。以本人为例,按照如下操作即可(前提是电脑已经安装了git)。 2.cd PyTorch-YOLOv3/(cd到该目录) sudo pip3 install -r requirements.txt(安装requirement文件里指定的各种包)这一步应该在Ubuntu系统一个指令就搞定了,但是现在只能自己一个一个下载了。 打开requirement.txt,有如下9个包: 我用的anaconda,就是进入到PyTorch环境中,利用如下指令挨个安装 conda install numpy 二、Download

box[:, [0,2]] = box[:, [0,2]]*nw/iw + dx IndexError: too many indices for array

与世无争的帅哥 提交于 2020-02-06 20:12:37
generator_output = next ( self . _generator ) File "train.py" , line 175 , in data_generator image , box = get_random_data ( annotation_lines [ i ] , input_shape , random = True ) File "F:\yolo\keras-yolo3-voc\yolo3\utils.py" , line 109 , in get_random_data box [ : , [ 0 , 2 ] ] = box [ : , [ 0 , 2 ] ] * nw / iw + dx IndexError : too many indices for array 关于Keras实现yolo v3的数据集错误 在文件夹的根目录中,运行voc_annotation.py文件会生成yolo格式对应的数据集格式,生成2007_train,2007_val,2007_trainval三个文件。 但是我在没有改变voc_annotation.py源代码的情况下生成了三个文件。但是打开其中的2007_train.txt文件会发现,有的图片后面并没有bbox数据,像这样 刚开始我以为是不是代码有些bug.我自己手动把bbox的信息手动添加上了!!!

YOLOv3目标检测使用自己的数据集详细流程。

一笑奈何 提交于 2020-02-06 06:01:01
YOLOv3的具体的概念与流程这里不再介绍,下面直接讲解实现的步骤。 计算机环境 :Win10 + Python3.6 + tensorflow-gpu 1.12.0 + keras-gpu 2.2.4 + cuda9.0 IDE :PyCharm + Anaconda 目录 一 制作数据集 1.1 LabelImg 标记图片 1.2 VOC 数据集格式介绍 1.3 转化成VOC数据集 1.4 生成ImageSets 二 代码修改 2.1 修改`voc_annocation.py` 2.2 修改`yolo3.cfg` 2.3 修改voc_classes.txt 2.4 修改train.py 2.5 修改yolo.py 一 制作数据集 制作数据集的工程量较为巨大,如果你有几千张图片,就要一一为这些图片做标记。如果不是做实际的工程项目或是比赛,此步骤可以跳过,在互联网上直接下载已经标记好的数据集。 著名的数据集: 1 CIFAR-10 and CIFAR-100 datasets 已经处理好的数据,无法看到原图片。 2 PASCAL VOC 可直接查看原图片,数据集采用VOC格式 本文的数据集: 安全帽—百度网盘 采用VOC格式 1.1 LabelImg 标记图片 标记图片就是对图片中的待识别目标进行标记,如果识别的目标时猫、狗,那就用方块标记出猫或狗,它们的标签分别为cat、dog

YOLO 论文阅读

我是研究僧i 提交于 2020-02-05 09:19:35
YOLO( Y ou O nly L ook O nce)是一个流行的目标检测方法,和Faster RCNN等state of the art方法比起来,主打检测速度快。截止到目前为止(2017年2月初),YOLO已经发布了两个版本,在下文中分别称为 YOLO V1 和 YOLO V2 。YOLO V2的代码目前作为 Darknet 的一部分开源在 GitHub 。在这篇博客中,记录了阅读YOLO两个版本论文中的重点内容,并着重总结V2版本的改进。 Update@2018/04: YOLO v3 已经发布!可以参考我的博客 论文 - YOLO v3 。 YOLO V1 这里不妨把YOLO V1论文 “You Only Look Once: Unitied, Real-Time Object Detection” 的摘要部分意译如下: 我们提出了一种新的物体检测方法YOLO。之前的目标检测方法大多把分类器重新调整用于检测(这里应该是在说以前的方法大多将检测问题看做分类问题,使用滑动窗提取特征并使用分类器进行分类)。我们将检测问题看做回归,分别给出bounding box的位置和对应的类别概率。对于给定输入图像,只需使用CNN网络计算一次,就同时给出bounding box位置和类别概率。由于整个pipeline都是同一个网络,所以很容易进行端到端的训练。 YOLO相当快。base

Yolo v3 model output clarification with keras

折月煮酒 提交于 2020-02-04 01:46:27
问题 I'm using yolo v3 model with keras and this network is giving me as output container with shape like this: [(1, 13, 13, 255), (1, 26, 26, 255), (1, 52, 52, 255)] So I found this link Then I understand the value 255 in each of the 3 containers, I also understand that there is 3 containers because there is 3 different image scaling for bounding boxes creation. But I did not understand why in the output vector there are 13 * 13 lists for the first scaling rate then 26 *26 lists for the second

目标检测之YOLO v1

前提是你 提交于 2020-01-29 01:31:13
本文 转载自简书 ,仅用于个人学习,侵删 YOLO(You Only Look Once)是一种基于深度神经网络的对象识别和定位算法,其最大的特点是运行速度很快,可以用于实时系统。 现在YOLO已经发展到v3版本,不过新版本也是在原有版本基础上不断改进演化的,所以本文先分析YOLO v1版本。 关于 YOLOv2/YOLO9000 的分析理解请移步 YOLO v2 / YOLO 9000 。 对象识别和定位 输入一张图片,要求输出其中所包含的对象,以及每个对象的位置(包含该对象的矩形框)。 图1 对象识别和定位 对象识别和定位,可以看成两个任务:找到图片中某个存在对象的区域,然后识别出该区域中具体是哪个对象。 对象识别这件事(一张图片仅包含一个对象,且基本占据图片的整个范围),最近几年基于CNN卷积神经网络的各种方法已经能达到不错的效果了。所以主要需要解决的问题是,对象在哪里。 最简单的想法,就是遍历图片中所有可能的位置,地毯式搜索不同大小,不同宽高比,不同位置的每个区域,逐一检测其中是否存在某个对象,挑选其中概率最大的结果作为输出。显然这种方法效率太低。 RCNN/Fast RCNN/Faster RCNN RCNN开创性的提出了候选区(Region Proposals)的方法,先从图片中搜索出一些可能存在对象的候选区(Selective Search),大概2000个左右

YOLO 3 Assertion '0' failed error - NOT CRLF error

穿精又带淫゛_ 提交于 2020-01-24 19:33:09
问题 I'm looking to train my own object detector using YOLO 3 for a single class. Basically, it needs to detect whether the test images have the object or not. I face an error where the training doesn't begin and exits with an assertion '0' failed. I checked other answers which say that the CRLF must be encoded as LF for it to work on linux. But that solution doesn't work either. I'm following all the steps outlined in pjreddie's website! 回答1: The error happens due to image size or with batch size

Convert YoloV3 output to coordinates of bounding box, label and confidence

筅森魡賤 提交于 2020-01-24 18:50:08
问题 I run YoloV3 model and get detections - dictionary of 3 entries: "detector/yolo-v3/Conv_22/BiasAdd/YoloRegion" : numpy.ndarray with shape (1,255,52,52), "detector/yolo-v3/Conv_6/BiasAdd/YoloRegion" : numpy.ndarray with shape (1,255,13,13), "detector/yolo-v3/Conv_14/BiasAdd/YoloRegion" : numpy.ndarray with shape (1,255,26,26). I know that each entry in dictionary is other size of object detection. Conv_22 is for small objects Conv_14 is for medium objects Conv_6 is for big objects How can I