BING算法——思路整理(目标检测算法)
来源:互联网 发布:车载蓝牙软件下载 编辑:程序博客网 时间:2024/06/03 16:35
BING 算法最终是帮忙找到图像当中的候选的物体区域, Box表示为:Get potential bounding boxes, each of which isrepresented by a Vec4i for (minX, minY, maxX, maxY).将图像归一化到一个相同的尺度(例如:8*8)上,一般对象的封闭轮廓和梯度范数之间具有强联系。能够在识别一个对象之前察觉它,非常接近自底向上的视觉显著性。
大致的操作:
1. 对整张图像求梯度,然后由线性SVM训练得到一个BING特征;
2. 计算每一个候选区域的得分:sl
sl =<w,gl> (1)
l=(i,x,y) (2)
其中,sl代表过滤器得分,gl代表NG特征,l表示坐标,i表示尺度,(x,y)表示窗口位置。所以(1)表示:在训练好的模型w上面,特征gl 的一个得分值。运用非极大值抑制(NMS),我们为每个尺度提供一些建议窗口。相对于其他窗口(例如:100*100),一些尺度(例如:10*500)的窗口包含对象的可能性是很小的。因此我们定义对象状态得分(校准过滤器得分):
ol = vi*sl+ti (3)
其中vi,ti∈ R,是针对不同尺度i的窗口,学习到的一个参数。我们由这些得分值就得到各个窗口。
具体的操作:
1. 输入一张图象,其中红框是物体,绿框不是物体
2.首先将输入图像重置为不同尺度的,在不同的尺度下计算梯度。然后再隔点取8*8大小的框,作为一个对应图像的64维的NG特征(该特征优势:1.归一化了支持域,所以无论对象窗口如何改变位置,尺度以及纵横比,它对应的NG特征基本不会改变。也就是说,NG特征是对于位置,尺度,纵横比是不敏感的;2. NG特征的紧凑性,使得计算和核实更加有效率,而且能够很好的应用在实时应用程序中)
3. 使用线性SVM分类器,在NG特征上训练一个64维的分类器
而在训练的过程当中,最最核心的就是 这个64位的特征就直接用一个64位的数表示,那对特征的操作表示为对位的操作。大大的降低了时间复杂度。
使用作者的代码已经训练好了一个特征模型,接下来使用它进行检测。我简化了整个代码框架,使得可以直接用到工程上,大家可以下载:http://download.csdn.net/detail/u012192662/9367779。整个工程在VS2013 X64工程上完成,需要Opencv库进行读入操作。
- BING算法——思路整理(目标检测算法)
- BING算法——思路整理(目标检测算法)
- 目标检测算法(一)——常见算法比较
- 运动目标检测算法
- ViBe目标检测算法
- 目标检测算法汇总
- 目标检测算法汇总
- 运动目标检测算法
- 算法——bing字典问题
- 目标检测(一)--Objectness算法总体理解,整理及总结
- 目标检测——CodeBook 算法测试代码
- 深度学习目标检测算法——Faster-Rcnn
- 运动目标检测——ViBe算法代码分析
- YOLO——基于回归的目标检测算法
- 经典目标检测算法—背景差分法、帧差法和三帧差法
- 【目标检测】RCNN 算法详解(上)
- 【目标检测】RCNN 算法详解(中)
- 【目标检测】RCNN算法详解(下)
- Java List 总结
- overview_java(一)
- Openfire 的安装和配置
- localStorag简单用法
- Linux 常用实用命令整合
- BING算法——思路整理(目标检测算法)
- Android->build.gradle->dataBinding,dexOptions,lintOptions
- 简单实用的CRM系统-可灵活自定义设计的crm系统
- 启用Spring MVC
- java集合之ArrayList解析
- usbmouse的注释
- “System.StackOverflowException”类型的未经处理的异常在 MySql.Data.dll 中发生”的错误处理
- 导入约束
- 企业怎么看培训出来的人,这个问题太简单了