小编saw*_*dis的帖子

物体检测+分割

我试图找到一种可接受的复杂性的有效方法

  • 检测图像中的对象,以便将其与周围环境隔离开来
  • 将对象分段到其子部分并标记它们,以便我可以随意获取它们

自从我进入图像处理世界已经有3个星期了,我已经阅读过如此多的算法(筛选,蛇,更多蛇,与傅里叶相关等),以及我不知道从何处开始的启发式算法和哪一个算法对于我想要达到的目标来说,它是"最好的".考虑到感兴趣的图像数据集非常大,我甚至不知道是否应该使用在OpenCV中实现的某些算法,或者我是否应该实现自己的算法.

总结:

  • 我应该关注哪种方法?为什么?
  • 我应该将OpenCV用于那种东西,还是有其他"更好"的选择?

先感谢您.

编辑 - 有关数据集的更多信息

每个数据集由共享相同的80K产品图像组成

  • 概念,例如T恤,手表,鞋子
  • 尺寸
  • 方向(90%)
  • 背景(95%)

显然,每个数据集中的所有图片看起来几乎与产品本身完全相同.为了使事情更加清晰,我们只考虑"监视数据集":

集合中的所有图片看起来几乎都是这样的:

在此输入图像描述

(再次,除了手表本身).我想提取表带和表盘.事实上,有许多不同的手表风格,因此形状.从我到目前为止所读到的,我认为我需要一种模板算法,允许弯曲和拉伸,以便能够匹配不同风格的带子和表盘.

而不是创建三个不同的模板(表带的上半部分,表带的下部,表盘),仅创建一个并将其分成3个部分是合理的.这样,我就可以确信每个部件都是相互检测到的,例如在表带的下部不会检测到表盘.

从我遇到的所有算法/方法中,活跃的形状模型似乎是最有希望的.不幸的是,我没有设法找到一个下降实现,我不能确信这是最好的方法,以便继续自己写一个.

如果有人能指出我应该寻找的东西(算法/启发式/库/等),我会非常感激.如果您再次认为我的描述有点模糊,请随时要求更详细的描述.

opencv image image-processing object-detection

15
推荐指数
1
解决办法
2738
查看次数

实时检测事件频率的峰值

在Web应用程序中,每次事件发生时都会触发一个触发器.我想检测"暴力"频率峰值,这可能转化为异常行为.

我可以想到实现这两点的两种天真的方法:

  • 固定阈值 - "如果一分钟内发生超过500个事件,那可能是错误的".除非应用程序可以定期调整阈值,否则此方法无法处理平滑的阈值违规或稳定增加的流量.

  • 与窗口相关的启发式 - 将窗口划分为N个相等(?)的间隔.当N> 0时,计算[now-(N*interval_length),now]中发生的事件的频率.将其保存在列表中.将N减少1.重复.检测列表异常值.如果有一个异常值大于[now-window_length,现在]的平均频率,那可能是错误的."

我想知道是否存在针对此问题的通用/标准解决方案,或者您是否可以考虑任何更有效或更优雅的解决方案.

先感谢您.

编辑 - 另一个建议

我的一位朋友建议用Holt-Winters预测异常行为检测.您可以在以下链接中找到有关此方法的更多信息:

http://www.hpl.hp.com/news/events/csc/2005/jake_slides.pdf

http://www.usenix.org/events/lisa00/full_papers/brutlag/brutlag_html/

events design-patterns frequency outliers

5
推荐指数
1
解决办法
369
查看次数