前言、相关知识
1.闭集和开集
- 开集:识别训练集不存在的样本类别。
- 闭集:识别训练集已知的样本类别。
2.多模态信息融合
文本和图像,文本的语义信息映射成词向量,形成词典,嵌入到n维空间。
图片内容信息提取特征,形成n维向量,嵌入到n维空间。
文本和图像的特征距离要尽量近一点,这样文本信息和图像内容信息特征相似。可以根据一种模态输入获得另一模态类型的输出。
3. 计算机视觉任务
- 分类问题
- 语义分割
- 物体检测
- 示例分割
一、目标检测基础知识
1. 目的:输入彩色RGB图像,输出检测的物体。
2. 过程:分类+定位
3. 最新的目标检测技术:文本 + 图像,制定类别检测
4. 现有方法分类:
1. 一步法(SSD、YOLO):仅使用一个卷积神经网络CNN直接预测不同目标和位置
2. 两步法(R-CNN、Fast R-CNN、Faster R-CNN)
step1:先生成候选框(利用Region Proposal Network(RPN))
step2:根据候选框分类+精调
二、目标检测——R-CNN(regional with cnn feature)
![R-CNN论文](https://img-blog.csdnimg.cn/direct/587d375e082d4b0aa1605822a0031212.png #pic_center=50%x50%)
R-CNN算法步骤
- 用selective search划分出候选区域(1k-2k),区域之间可能会有重合。
- 对每一个候选区域,使用深度网络提取特征
- 每一个特征送入SVM分类器,判断是否属于该类别(ps:非极大值抑制剔除就是将重合区域最大的区域删除)
ps:非最大值抑制剔除IOU
- 使用回归器(最小二乘)精细调整候选框位置
- R-CNN框架:划分区域——ss算法,特征提取——CNN网络,分类器——SVM支持向量机、回归期——最小二乘法。
)
- R-CNN缺点:速度慢、空间占用多
三、目标检测—— Fast R-CNN( fast regional with cnn feature)
Fast R-CNN是R-CNN作者在原有基础上的改善,对于推理速度,准确率,训练时间都远远超于R-CNN。
%)
Fast R-CNN算法步骤
- 一张图像生成多个候选区域(1K~2K)使用selective search 方法。
- 通过深度卷积神经网络,将图像输入之后得到相应的图像,将SS算法生成的候选框投影到特征图上获得相应的特征矩阵。
ps:此处和R-CNN的区别,R-CNN将候选框输入到卷积神经网络得到特征,Fast R-CNN直接将整幅图像给卷积神经网络,在根据特征网络进行计算特征,避免了计算重复的区域。 - 将特征矩阵根据ROI pooling 缩放到7*7大小的特征图,然后通过一系列全连接层得到结果。
每一个区域的有很多像素,对于像素上的特征数据进行最大池化或者平均池化就会得到比较规整的图像。 - Fast R- Cnn分类器介绍
假如有n个类别,如果没有满足这n个类别,那么他就是背景,所以一共有n+1个类别的概率,我们根据每个类别的概率,概率最大的类别就是最终预测的类别。
- Fast R- Cnn回归器介绍
Fast R- Cnn分类器是根据缩放来实现的。
%)
- Fast R- Cnn损失函数介绍
Fast R- Cnn论文中提出了一种新的损失函数SmoothL1Loss损失函数,改善了欧氏距离L1 loss和L2 loss损失函数。主要改善的地方在于其他两个损失函数对于离群点的梯度变化过于敏感或者是不够精细,SmoothL1Loss损失函数能够: - 当预测值与真实值误差过大时,梯度值不至于过大;
- 当预测值与真实值误差很小时,梯度值足够小。
想详细了解差异可看这篇文章:目标检测三种损失函数
未完,待更新……
参考文献:陈万军(西安理工大学)——《目标检测》课件