SSD算法原理
Paper: https://arxiv.org/pdf/1512.02325.pdf
SSD用神经网络(VGG)提取多层feature map ,来实现对不同大小物体的检测。如下图所示:
We use the VGG-16 network as a base, but other networks should also produce good results.

Train:
损失函数=位置误差(locatization loss, loc)+alpha*置信度误差(confidence loss, conf)
其中:
- 解决负样本过多的问题,仅保留损失函数最大的K个FPs,即只保留K个最像正阳本的背景。
- 运用Data augmentation技术,提高鲁棒性。
Detect/Predict:
- 对于每个预测框,根据类别置信度确定其类别(置信度最大者)与置信度值。
- 根据置信度阈值(如0.5)过滤掉阈值较低的预测框。
- 对于留下的预测框进行解码,根据先验框得到其真实的位置参数(解码后一般还需要做clip,防止预测框位置超出图片)。
- 解码之后,一般需要根据置信度进行降序排列,然后仅保留top-k(如400)个预测框。
- 最后就是进行NMS算法,过滤掉那些重叠度较大的预测框。最后剩余的预测框就是检测结果了。
本文参考了下面两篇文章:
https://zhuanlan.zhihu.com/p/33544892
https://blog.csdn.net/remanented/article/details/79943418
SSD算法原理的更多相关文章
- object detection api调参详解(兼SSD算法参数详解)
一.引言 使用谷歌提供的object detection api图像识别框架,我们可以很方便地重新训练一个预训练模型,用于自己的具体业务.以我所使用的ssd_mobilenet_v1预训练模型为例,训 ...
- Bagging与随机森林算法原理小结
在集成学习原理小结中,我们讲到了集成学习有两个流派,一个是boosting派系,它的特点是各个弱学习器之间有依赖关系.另一种是bagging流派,它的特点是各个弱学习器之间没有依赖关系,可以并行拟合. ...
- RSA算法原理
一直以来对linux中的ssh认证.SSL.TLS这些安全认证似懂非懂的.看到阮一峰博客中对RSA算法的原理做了非常详细的解释,看完之后茅塞顿开,关于RSA的相关文章如下 RSA算法原理(一) RSA ...
- LruCache算法原理及实现
LruCache算法原理及实现 LruCache算法原理 LRU为Least Recently Used的缩写,意思也就是近期最少使用算法.LruCache将LinkedHashMap的顺序设置为LR ...
- MySQL索引背后的数据结构及算法原理【转】
本文来自:张洋的MySQL索引背后的数据结构及算法原理 摘要 本文以MySQL数据库为研究对象,讨论与数据库索引相关的一些话题.特别需要说明的是,MySQL支持诸多存储引擎,而各种存储引擎对索引的支持 ...
- OpenGL学习进程(13)第十课:基本图形的底层实现及算法原理
本节介绍OpenGL中绘制直线.圆.椭圆,多边形的算法原理. (1)绘制任意方向(任意斜率)的直线: 1)中点画线法: 中点画线法的算法原理不做介绍,但这里用到最基本的画0<=k ...
- 支持向量机原理(四)SMO算法原理
支持向量机原理(一) 线性支持向量机 支持向量机原理(二) 线性支持向量机的软间隔最大化模型 支持向量机原理(三)线性不可分支持向量机与核函数 支持向量机原理(四)SMO算法原理 支持向量机原理(五) ...
- 分布式缓存技术memcached学习(四)—— 一致性hash算法原理
分布式一致性hash算法简介 当你看到“分布式一致性hash算法”这个词时,第一时间可能会问,什么是分布式,什么是一致性,hash又是什么.在分析分布式一致性hash算法原理之前,我们先来了解一下这几 ...
- Logistic回归分类算法原理分析与代码实现
前言 本文将介绍机器学习分类算法中的Logistic回归分类算法并给出伪代码,Python代码实现. (说明:从本文开始,将接触到最优化算法相关的学习.旨在将这些最优化的算法用于训练出一个非线性的函数 ...
随机推荐
- 最小覆盖问题-POJ3041-P1129
POJ3041 这道题正解对于像我这种蒟蒻来说比较难以想到. 我们发现每次覆盖的只是一条线上的所有点.那么我们可以把它想象成一个二分图,两个集合分别是横轴和纵轴. 想一想,这实际上是不是就是x轴轴和纵 ...
- Qt Creator 入门
Qt 的入门我觉得可以直接从窗口开始,而不是什么"Hello World!".因为Qt 是一个基于图形界面的编程软件,图形界面编程是其核心所在.很久以前,那时候还是Shell编程, ...
- Zabbix中Agent自动注册
目录 Active agent自动注册 以下情况,自动注册会自动运行: 配置 服务端配置 客户端配置 Active agent自动注册 zabbix Active agent可以实现自动注册,进而服务 ...
- OpenGL学习笔记(五)变换
目录 变换 向量 向量的运算 向量与标量运算 向量取反 向量加减 求向量长度 向量的单位化 向量相乘 点乘(Dot Product) 叉乘 矩阵 矩阵的加减 矩阵的数乘 矩阵相乘 矩阵与向量相乘 与单 ...
- ECDSA高性能硬件实现——算法详解与模块划分
ECDSA全称椭圆曲线数字签名算法,它是基于素数域的椭圆曲线对信息进行加签与验签.其核心在于对信息的加签,及对加签的信息进行验签,那么下面介绍该算法流程. 假设Alice希望对消息m进行签名,并将消息 ...
- Python中strip()、lstrip()、rstrip()函数的用法
Python中使用函数strip().lstrip().rstrip()来剔除字符串前后的特定字符 函数语法为:str.strip(chars) 返回值是一个新的字符串,不更改源字符串 其中,参数ch ...
- DVWA靶场练习-Command Injection命令注入
Command Injection 原理 攻击者通过构造恶意参数,破坏命令的语句结构,从而达到执行恶意命令的目的.
- Java基础(一):I/O多路复用模型及Linux中的应用
IO多路复用模型广泛的应用于各种高并发的中间件中,那么区别于其他模式他的优势是什么.其核心设计思想又是什么.其在Linux中是如何实现的? I/O模型 I/O模型主要有以下五种: 同步阻塞I/O:I/ ...
- ES6与ES2015、ES2016以及ECMAScript的区别
1. ECMAScript 和 JavaScript 的关系 ECMAScript 和 JavaScript 的关系是,前者是后者的规格,后者是前者的一种实现. javascript是netscape ...
- VNC远程重装CentOS7
适用于云服务器,远程安装纯净版的CentOS7.9 脚本执行完成后使用VNC客户端连接 一键重装脚本 #!/bin/bash #Net Reinstall Centos System red='\03 ...