2014-01-11 38 views
1

Viola and Jones's论文第5.6节中,作者提到他们整合了检测器在检测图像中的脸部时进行的多次检测。在这种情况下,检测仅仅是位于检测器认为脸部存在的图像上方的矩形区域。积分是重叠矩形区域的简单组合。这很有用,因为检测器可能会在扫描图像时在单个脸部周围产生很多检测结果。高效整合检测结果

请注意,许多检测可能不会与其他检测重叠,因此可能有多个集成检测。例如,考虑具有两个面的图像,即AB。还要考虑图像的区域为CD,它们与面非常相似,但不是面。在这种情况下,检测器可以产生脸部A的3个重叠检测,面部B的5个重叠检测,区域C的1个检测以及区域D的10个重叠检测。考虑到一个区域的检测与另一个区域的检测不重叠,整合程序应该产生一个面部最终检测A,面部B的另一个检测,区域C的另一个单独检测和区域D的另一个单一检测。这4个综合检测结果应该显示给用户。

因此,要整合检测,有必要将它们分为重叠检测的子集。但是我们应该在子集中添加任何与任何检测重叠的检测。对检测列表进行简单迭代的性能会很差(Ω(n²))。

我的问题是:什么数据结构和算法允许快速集成检测?请提供一些关于您提及的方法的文学证据(例如论文或书籍参考资料)。

+0

您最想忍受哪种错误? – stark

+0

@stark不确定你的意思。根据这篇论文,所有重叠的检测都集成到一次检测中。这发生在真正的肯定和误报上。 – Ramiro

+0

如果他们都是同样有效的,那么随便选一个 – stark

回答

-1

我认为R-trees应该解决这个问题。

+0

请详细说明。 – Ramiro

+0

R树用于空间索引。在你的情况下,每个节点将是一个矩形。你可以从中制作一棵R树。这是一个不错的链接http://www.cs.sfu.ca/CourseCentral/454/jpei/slides/R-Tree.pdf – Budhapest

+2

我怀疑R-trees会有所帮助。它们是一个面向磁盘的数据结构。在每个页面中,您仍然可以进行O(n^2)比较,并且在8k页面中可以适合很多像素矩形。 –

0

你有基准吗?

重叠检测真的是性能瓶颈吗?不要太早优化。

你有没有考虑用x坐标排列矩形数据?重叠检测应该相当便宜。