yolo

yolov3-keras版本训练自己的数据全过程

本秂侑毒 提交于 2019-12-27 05:35:27
1、下载文件包: https://github.com/qqwweee/keras-yolo3 2、为此模型建立anaconda虚拟环境。 conda creat - n yolo python = 3.6 安装相应的环境,conda install 安装即可 版本号对应: python 3.6.9 cuda 9.2 cudnn 7.3.1 tensorflow-gpu 1.12.0 keras 2.2.4 3、安装依赖 pip install Pillow pip install matplotlib conda install ffmpeg pip install opencv - contrib - python 4、下载权重文件 https://pjreddie.com/media/files/yolov3.weights 也可以用命令行下载: wget https : // pjreddie . com / media / files / yolov3 . weights 如果特别慢可以百度网盘下载:链接:https://pan.baidu.com/s/1vFlOhClLDcyvUfu0JatVtA 提取码:k7lo 5、转化权重为keras模型 将权重文件转换成.h5文件(代码包中有convert.py文件负责,生成的.h5文件在model_data中) 命令行输入:

Yolo v2 Better,Faster,Stronger

丶灬走出姿态 提交于 2019-12-25 05:51:23
(以下内容写于一年前) 以下内容来自作者关于yolov2的原论文及个人理解 Yolov2在Yolov1的基础上进行了许多的改进, 其中包括 Batch Normalization(批标准化):作者在每个卷积层后面都加了一个batch normalization 层,作用是让网络更好的收敛和防止过拟合,添加了Batch Normalization层之后就可以去掉防止过拟合的dropout操作 High Resolution Classifier(更高的分辨率): 将检测图片的分辨率提升到448*448,更全面的提取图片中的特征。 Convolution With Anchor Boxes: 在yolov1中,bounding box的预测是由神经网络自己根据训练集学习得的,没有预先定义bounding box。在yolov2中作者借鉴了Fast RCNN的做法,采用了事先设置bounding box而神经网络要做的预测关于事先设置的bounding box的中心点和长宽的偏移。不过与Fast RCNN的手动选择预定义bound ing box的方法不同,作者使用k-means对训练集的bounding box的相关数据进行归纳获取预定义bounding box的属性。至于为什么选择预定义bounding box,作者的说法是卷积网络预测偏移要比直接预测各个属性坐标要简单。 Fine

Yolo 1

旧巷老猫 提交于 2019-12-25 05:10:02
(以下内容是一年前记录下的) 关于yolo的作者我猜是一个特别有意思(骚)的人,这点从他的网站就可以看出 据说他的简历上也是这些马儿。 以下内容来自原作者关于yolov1的论文及自己的一些理解。 Yolo这个名字是 You only look once的缩写,这是因为yolo只需要将图片输入一次,便可以将相关结果输出,避免了利用滑动窗口和待选区域(region proposal-based) 将原图像分割,分别输入神经网络,将bounding box,classes的判别结合一个神经网络中这也是yolo高速的原因。 首先: 网络的输入是446*446大小的图片,经过24个卷积层与2个全连接层之后输出7*7*30个输出,关于为什么是7*7*30个输出,大部分博客包括作者的论文都将其解释为将原图分为7*7的栅格(grid),如下图,然后如果一个物体的中心落在其中一个格子中,那么这个格子就负责检测这个物体,至于30是因为每个格子有30个属性。这样说实际上是让人挺迷惑的。 我更倾向描述为,在输出节点中分别选出部分节点将其作为原图像一部分的映射训练网络,使这些节点的输出对应相应映射的属性。在此处,7*7代表我们将原图像分为7*7个部分,也就是说我们需要将输出节点分为7*7即49个部分分别作为相应部分的映射,30=20 + 2 *(4+1) 20代表训练时需要判断的类别数, 4+1

YOLO object identification more rapidly and consistently

一曲冷凌霜 提交于 2019-12-25 01:28:11
问题 Using YOLO and p5.js I am trying to identify the objects using my webcam. Even though, I gave permission to access the webcam, following are the problems. Is there any way we can improve the object identification more rapidly and consistently? Once identified the green rectangular is not sticking around consistently. I need to move slightly for object identification. I have test.mp4 video saved locally, how can we do the object identification on saved video. Following is my code: let video; /

What are the parameters input_arrays and output_arrays that are needed to convert a frozen model '.pb' file to a '.tflite' file?

白昼怎懂夜的黑 提交于 2019-12-24 08:07:08
问题 I need to convert my .pb tensorflow model together with my .cpkt file to a tflite model to make it work in Mobile Devices. Is there any straight-forward way to find out how can I find what are the parameters I should use for input_arrays and output_arrays? import tensorflow as tf graph_def_file = "/path/to/Downloads/mobilenet_v1_1.0_224/frozen_graph.pb" input_arrays = ["input"] output_arrays = ["MobilenetV1/Predictions/Softmax"] converter = tf.lite.TFLiteConverter.from_frozen_graph( graph_def

darknet详解

若如初见. 提交于 2019-12-23 16:56:46
darknet详解 个人记录整理,如有转载请注明来源 https://blog.csdn.net/weixin_37731771/article/details/103666068 , 本文中包含的一张图片来源于网络,如有不妥请与我联系。 文章目录 darknet详解 简介 安装 使用 使用预先训练模型测试 训练自己的模型 在Python中整合 详解 yolov3.cfg 参数详解 issues 参考文档 darknet官方文档 Darknet概述 Yolo darknet训练自己的数据集教程(Newest 2016.12.23) 使用darknet识别点选验证码详细过程(附带源码) 简介 速度快,基于YOLO(目前已发展到了yolov3)。 轻量级,由 C 编写,无任何依赖,便于安装。 安装 从 github 中clone源码 git clone https://github.com/pjreddie/darknet.git 编译源码 如需使用 CUDA 进行GPU计算,修改Makefile文件,设置GPU为1。 使用openCV同理 GPU = 1 CUDNN = 0 OPENCV = 0 OPENMP = 0 DEBUG = 0 使用 make 编译 make 清除编译 make clean 使用 使用预先训练模型测试 下载预训练权重 wget https:/

深度剖析YOLO系列的原理

和自甴很熟 提交于 2019-12-22 17:13:31
深度剖析YOLO系列的原理 小说阅读网 https://www.7wx.org/ 本文系作者原创,转载请注明出处:https://www.cnblogs.com/further-further-further/p/12072225.html 目录 1. YOLO的作用 2. YOLO(v1,v2,v3)的技术演化 1. YOLO的作用 yolo是当前目标检测最顶级的算法之一,v1版本是2016年提出来的,v2是2017年提出来的,v3是2018年提出的。 官网地址:https://pjreddie.com/darknet/yolo/ 说它最牛掰,有两点: 一是因为它采用深层卷积神经网络,吸收了当前很多经典卷积神经网络架构的优秀思想,在位置检测和对象的识别方面, 性能达到最优(准确率非常高的情况下还能达到实时检测)。 二是因为作者还将代码开源了。真心为作者这种大公无私的心胸点赞。 美中不足的是:作者虽然将代码开源,但是在论文介绍架构原理的时候比较模糊,特别是对一些重要改进,基本上是一笔带过。 现在在网络上有很多关于YOLO原理的讲解,个人感觉讲得不是很清楚,总感觉有点知其然而不知其所以然。比如: yolo是在什么背景下出现的? v1是在哪个经典网络架构上发展起来的?解决了什么问题?又存在什么问题? v2针对v1的缺点做了哪些改进?改进后效果怎么样?又存在什么问题?

YOLOv1学习与总结

牧云@^-^@ 提交于 2019-12-21 08:52:20
https://blog.csdn.net/hrsstudy/article/details/70305791 You Only Look Once:Unified, Real-Time Object Detection 作者提出了一种新的物体检测方法YOLO。YOLO之前的物体检测方法主要是通过 region proposal 产生大量的可能包含待检测物体的 potential bounding box,再用分类器去判断每个 bounding box里是否包含有物体,以及物体所属类别的 probability或者 confidence,如R-CNN,Fast-R-CNN,Faster-R-CNN等。 YOLO不同于这些物体检测方法,它将物体检测任务当做一个 regression 问题来处理,使用一个神经网络,直接从一整张图像来预测出bounding box 的坐标、box中包含物体的置信度和物体的probabilities。因为YOLO的物体检测流程是在一个神经网络里完成的,所以可以 end to end 来优化物体检测性能。 YOLO检测物体的速度很快,标准版本的YOLO在Titan X 的 GPU 上能达到45 FPS。网络较小的版本Fast YOLO在保持mAP是之前的其他实时物体检测器的两倍的同时,检测速度可以达到155 FPS。 相较于其他的state-of-the

Perform multi-scale training (yolov2)

末鹿安然 提交于 2019-12-21 06:38:11
问题 I am wondering how the multi-scale training in YOLOv2 works. In the paper, it is stated that: The original YOLO uses an input resolution of 448 × 448. ith the addition of anchor boxes we changed the resolution to 416×416. However, since our model only uses convolutional and pooling layers it can be resized on the fly . We want YOLOv2 to be robust to running on images of different sizes so we train this into the model. Instead of fixing the input image size we change the network every few

物体检测方法(1) - YOLO 详解

泄露秘密 提交于 2019-12-20 05:44:27
最近遇到一些卡证识别的检测问题,打算先把理论知识梳理一下,随后还会梳理一版代码注释。   以前的 region+proposal来检测的框架,这一系列速度和精度不断提高,但是还是无法达到实时。存在的主要问题为:速度不够快,主要原因是 proposal比较多,特征进行分类的时候 ,相同区域的特征计算多遍,所以 BGR大神有了最新作品, YOLO,故名思议,就是解决 Faster-RCNN中 proposal重复 look的问题。这一些列代表作有 YOLO和 SSD.首先介绍 YOLO. 作者Joseph Redmon ∗ , Santosh Divvala ∗† , Ross Girshick ¶ , Ali Farhadi,文献[1] 优点,速度快(45fps,小模型快速版本为155fps),缺点,很明显对位置预测不够精确,对小物体效果不够理想。 做法,简单粗暴,网格划分为S*S个网格,对每个网格直接进行回归预测,最后NMS进行处理。 1. YOLO的核心思想 YOLO的核心思想就是利用整张图作为网络的输入,直接在输出层回归bounding box的位置和bounding box所属的类别。 没记错的话faster RCNN中也直接用整张图作为输入,但是faster-RCNN整体还是采用了RCNN那种 proposal+classifier的思想