SSD目标检测算法原理(上)
目录
- 一、目标检测概述
- 1.1 项目演示介绍
- 1.2 图片识别背景
- 1.3 目标检测定义
- 二、目标检测算法原理
- 2.1 任务描述
- 2.2 目标检测算法必备基础
- 2.3目标检测算法模型输出
- 目标检测 -overfeat模型
- R-CNN模型
- 候选区域
- 特征提取
- 非极大抑制 (NMS)
- 修正候选区域
- R-CNN的训练过程
- R-CNN的测试过程
一、目标检测概述
1.1 项目演示介绍
项目架构
数据采集层: 数据标注、数据的存储格式
深度模型层:数据预处理,GPU训练得到模型
- tensorflow serving 进行模型部署
- web后台
用户层: 网页、小程序、检测识别结果
项目安排三阶段
1.2 图片识别背景
图片识别常见示例
图像识别的三大任务:
- 目标识别: 输出类别
- 目标检测: 输出类别已经在物体在图片当中的位置
- 目标分割: 把物体形状描述出来,背景进行剔除
图像识别的发展
- 通用场景: 谷歌、阿里、百度提供的API,普及范围比较广,一般性的图像识别
- 垂直场景:
– 医疗领域:医疗影像的检测
– 林木产业:木板树种的检测
– 其他垂直领域:轮胎类型等。。。。
1.3 目标检测定义
识别图片中有哪些物体以及物体的位置(坐标位置)
位置信息的表示
极坐标表示示例
中心点坐标 表示示例
格式: x_center | y_center | box_weight | box_height
目标检测的发展历史
二、目标检测算法原理
2.1 任务描述
- 目标
–了解目标洁厕算法分类
–知道目标检测常见指标IoU
–了解目标定位的简单实现方式
2.2 目标检测算法必备基础
两步走的目标检测: 先进性区域推荐,而后进行目标分类
– 代表:R-CNN SPP-net Fast R-CNN Faster R-CNN端到端的目标检测: 采用一个网络一步到位
– 代表:YOLO SSDpass:
卷积层
是深度学习中的一种基础层,最主要的功能是:
特征提取:卷积层可以通过卷积核在输入数据上进行卷积操作,从而提取出数据中的特征。这些特征可以表示数据的局部信息,如图像中的边缘、角点等。
池化层
:
平均池化:计算图像区域的平均值作为该区域池化后的值。
最大池化:选图像区域的最大值作为该区域池化后的值。
主要功能:降维,特征压缩,减少网络模型计算量,可以扩大感受野
常见的模型
图片分类
评估指标 acc
目标检测
评估指标 IOU
目标的位置框 :Bounding box
在目标检测中,有两种框:
- Ground-trurh bounding box:图片中真是标记的框
- Predicted bounding box: 预测的时候标记的框
IoU(交并比)的解释:
两个区域的重叠程度overlap
简述: 交集/并集
2.3目标检测算法模型输出
在原有基础上增加一个全连接层
- FC1: 作为类别的输出
- FC2:作为这个物体位置数值的输出
对于分类概率的评价指标,使用的是交叉熵损失 softmax
对于位置信息的回归评价指标,使用的是MSE均方误差损失 L2损失
存在问题
图片中假设存在多个物体的时候,你的网络输出多少不确定,全连接层回归
输出几个坐标不确定。
目标检测 -overfeat模型
目标检测的暴力方法,是从左到右,从上到下滑动窗口,利用分类识别目标。
为了在不同观察距离处检测不同的目标类型,我们使用不同大小的宽高比的窗口。如下图所示:
模型构造大致如下: 滑动窗口大小为k
取出子图,并标记是否是数据
overfeat模型总结
R-CNN模型
完整的R-CNN的结构
步骤
pass:
CNN提取2000×4096维的矩阵
20个SVM分类器,获得2000×20维的矩阵
NMS对每一列(列对应的类)进行非极大抑制,剔除重叠的建议框
候选区域
选择性搜索 SelectiveSearch – SS
warp比crop缩放后失真程度更小
步骤一
中:
通过选择性搜索(SS)算法,进行预选框的筛选
大小统一的框使用的是 warp图片缩放的方式
特征提取
步骤二
中:
CNN提取特征,用的是AlexNet的结构,输入要求 277×277
提取的特征会保存在磁盘中
数据维度 (2000,4096) 如下图所示
20个类别是指,你训练的数据集一共就有20个类别,根据你的数据集的类别数量进行调整
列是候选区域,行是类别特征
非极大抑制 (NMS)
非极大抑制的过程
修正候选区域
预测值是A,目标是G,进行修正后得到 G’
如下图所示:
R-CNN的训练过程
正负样本准备+预训练+微调网络+训练SVM+训练边框回归器
正负样本准备
预训练
CNN模型层数多,模型容量大,通常会采用2012年的AlexNet来学习特征,包含5个卷积层和2个全连接,比如著名的ImageNet比赛的数据集,来训练AlexNet,保存其中的模型参数
微调
类似于迁移学习
总结:
- 正负样本标记
- 预训练:别人已经在大数据集上训练好的CNN网络模型model1
- 微调: 利用标记好的样本,输入到model1当中,继续训练,得出model2
R-CNN的测试过程
- 输入一张图片,利用selective search得到2000个region proposal
- 对说有的region proposal变换得到固定尺寸,并作为预训练好的CNN网络输入,每个候选框得到4096的特征
- 对已经训练好的每个类别的svm分类器对提取到的特征打分,所以SVM的weight matrix是4096 N,N是类别数
- 采用NMS(非极大抑制)去除候选框
- 得到region proposal进行回归预测,微调
R-CNN在VOC2007数据集上平均精确度达到66%
缺点:
SSD目标检测算法原理(上)相关推荐
- 基于神经网络的目标检测论文之目标检测方法:改进的SSD目标检测算法
4.2 改进的SSD 上一章我们了解到,物体识别检测算法是在传统CNN算法基础上加上目标区域建议策略和边框回归算法得到的.前辈们的工作主要体现在目标区域建议的改进策略上,从最开始的穷举建议框,到划分图 ...
- 三维目标检测算法原理
三维目标检测算法原理 输入输出接口 Input: (1)图像视频分辨率(整型int) (2)图像视频格式(RGB,YUV,MP4等) (3)左右两边的车道线位置信息摄像头标定参数(中心位置(x,y) ...
- 基于Grad-CAM与KL损失的SSD目标检测算法
基于Grad-CAM与KL损失的SSD目标检测算法 人工智能技术与咨询 来源:<电子学报>,作者侯庆山等 摘 要: 鉴于Single Shot Multibox Detector (SSD ...
- 层与特征融合_【计算机系统应用】(第122期)感受野特征增强的 SSD 目标检测算法...
点击上方"蓝字",关注我们吧! 目标检测是计算机视觉领域的一项重要任务, 是 生活中如实例分割[1] , 面部分析[2] , 汽车自动驾驶[3].视 频分析[4] 等各种视觉应用的 ...
- [RCNN]-[YOLO]-[SSD]目标检测算法
原文链接:http ://chuansong.me/n/353443351445 转载自深度学习大讲堂公众号 开始本文内容之前,我们先来看一下上边左侧的这张图,从图中你看到了什么物体?他们在什么 ...
- 一文弄懂SSD目标检测算法
SSD是YOLO之后又一个引人注目的目标检测结构,它沿用了YOLO中直接回归 bbox和分类概率的方法,同时又参考了Faster R-CNN,大量使用anchor来提升识别准确度.通过把这两种结构相结 ...
- 笔记《基于无人驾驶方程式赛车的传感器融合目标检测算法研究及实现》
论文结构 关键字:无人驾驶方程式赛车,相机,激光雷达,目标检测,传感器融合 一.绪论 1. 感知技术研究现状 1.1.1 基于相机的目标检测技术研究现状 1.1.2 基于激光雷达的目标检测技术研究现状 ...
- 目标检测算法实战综述
目录 一.目标检测问题定义 二.目标检测问题方法 三.常见传统目标检测算法 3.1 Viola-Jones (人脸检测) 3.2 HOG+SVM (行人检测.Opencv实现) 3.3 DPM (物体 ...
- Pytorch搭建SSD目标检测平台
学习前言 什么是SSD目标检测算法 源码下载 SSD实现思路 一.预测部分 1.主干网络介绍 2.从特征获取预测结果 3.预测结果的解码 4.在原图上进行绘制 二.训练部分 1.真实框的处理 2.利用 ...
最新文章
- Opencv-python 图像处理基础知识
- 初级JavaScript程序员的绝佳进阶书
- Qt Creator创建UI
- 深度学习之循环神经网络(12)预训练的词向量
- gl.vertexAtteib3f P42 讲数据传给location参数指定的attribute变量
- 通过一个例子介绍 IDA pro 的简单使用
- XP下,文件夹添加右键命令行
- WPF依赖属性(续)(1)
- 每天进步一点点《ML - DBSCAN》
- Java 集合 之 Set
- Linus Torvalds 命名 [ 冰封荒原 ] 版 Linux 内核的思考
- php 命令设计模式示例,php设计模式(十九)命令模式-Fun言
- java的酒店房间管理系统
- 常用的3D三维建模软件大全有哪些?
- 2021-08-14
- 【菜鸟小屁的成长日记】之ElasticSearch中的TimeStamp时间戳篇
- 哈工大计算机考研复试考纲,哈尔滨工业大学考研复试大纲
- 帝国cms会员中心1.2
- Linux安装rsync命令失败,rsync 常见错误与解决方法整理
- js插件的经典写法与总结
热门文章
- gs 服务器文件,服务器gs
- android 在状态栏耳机图标显示图标显示图标显示图标,Android 通知栏图标
- Python知道cos值求角度_机械臂正运动学-DH参数-Python快速实现
- 搜集网络上比较好的中文语料库
- 北航计算机学院吉祥物,北航软件学院吉祥物征集令
- Ubuntu16.04安装搜狗输入法的正确姿势
- 视觉运控平台软件框架(6)---脚本编辑器Qsci
- linux断掉crt、xshell依然运行命令?查找命令执行是否完成?
- Sql Server数据库被置疑后解决方法
- 虚拟机装系统出现 ntldr is missing(NTLDR丢失)、无法正常开机、解决方法