关于Efficient Subwindow Search 的小测试
2010-01-26 17:39
405 查看
关于Efficient Subwindow Search 的小测试
ESS 是 Beyond Sliding Windows: Object Localization by Efficient Subwindow Search( CVPR 2008 ) 中提到的一种快速定位算法,ESS要解决的问题很简单,给出一个classifier function, 找出使classifier function 值最大的subwindow.对于一张图片,我们可以把它看作是一个二维矩阵,如果图片中的每个像素对应的classifier function值是固定的(或者说可以提前计算出的),那么很显然,ESS就等同于最大子矩阵问题.
对于最大子矩阵问题,经典的DP算法复杂度是O(N^3),而这篇paper提到ESS在实际运行中相当于O(N^2)的效率。
ESS的本质是 Branch - and - Bound Search, 将问题的解空间用[T,B,L,R](对应矩形的上下左右4条轴)4 个区间来表示,每次选取最长的一个区间split,并计算解空间的分数上限(空间内最大矩形的正值和 + 空间内最小矩形的负值和),并以此进行priority search.
作者提到的O(N^2)的复杂度实在是很诱人,于是我决定测试一下ESS. 分别实现了最大子矩阵的DP和ESS版本,然后随机生成了一个1000*1000的矩阵,结果DP跑了2妙多,而ESS等了许久爆内存了(估计是搜的点太多了)。上网找了作者的源码包,用包里的数据测试了一下,ESS的确很快!一看数据我就明白了,矩阵相当稀疏(其实一张图片的特征点对应像素点是很稀疏).之后我又对几组稀疏程度不同的矩阵做了测试,以下是测试结果
1000*1000的矩阵,DP的平均时间为2.58s
ESS 的结果
稀疏度 time(s)
0.001 0.063
0.002 0.186
0.003 0.322
0.004 0.807
0.005 0.758
0.006 1.764
0.007 2.051
0.008 2.004
0.009 3.936
0.010 3.223
由此可以看出ESS是依赖于矩阵中数据分布的,对一般化的最大子矩阵问题并不一定适用.
Efficient Algorithms for Subwindow Search in Object Detection and Localization.
文章对其进行了改进,减少了运算时间。
相关文章推荐
- xjc-beyond sliding windows-Object Localization by Efficient Subwindow Search 论文的算法和知识点
- 高效子窗口检测定位(Object Localization by Efficient Subwindow Search)
- Beyond sliding windows-Object Localizationby Efficient Subwindow Search论文阅读
- xjc-beyond sliding windows-Object Localization by Efficient Subwindow Search
- Window Server 2003 关于DNS的委派测试.
- 关于window script component(简称wsc)的装入效率测试。
- 首页文章分类 关于 Search private(私有)方法单元测试无法覆盖?那就用反射调用来测试private(私有)方法
- 关于SubclassWindow()和SubclassDlgItem
- 关于控制台打印Unicode字符的测试
- 正则函数--search/match/findall/sub/split
- 关于in_array() foreach array_search() 的性能对比
- 关于在FireFox 3.0 中showModalDialog的页面刷新window.dialogArguments引用丢失的解决方法
- 关于VSCO Cam的可用性测试
- 关于XML解析的测试
- 测试IndexSearch检索时采用了QueryParser与不采用QueryParser的区别即在检索时使用分析器给检索结果带来的影响
- 关于js中"window.location.href"、"location.href"、"parent.location.href"、"top.location.href"的用法
- 关于div嵌套margin-top影响父div的解决办法及各种情况测试
- 关于软件编写的规范测试
- 关于js中"window.location.href"、"location.href"、"parent.location.href"、"top.location.href"的用法
- 关于range search 和kd树