首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >目标检测-算法建议

目标检测-算法建议
EN

Stack Overflow用户
提问于 2012-04-17 12:37:15
回答 3查看 386关注 0票数 3

我正在尝试在C++中进行图像检测。我有两张照片:

图片场景: 1024x786人: 36x49

我需要从现场认出这个人。我试过使用相关性,但图像太吵,因此不能给出正确的/准确的结果。

我一直在思考/研究最能解决这一问题的方法,这些方法似乎是最符合逻辑的:

  • 高斯滤波器
  • 卷积
  • FFT

基本上,我想在图像周围移动噪声,这样我就可以使用相关性来更有效地找到那个人。

我知道FFT将很难实现和/或可能是缓慢的,特别是对于我所使用的图像的大小。

有人能为解决这个问题提供任何建议吗?最好的技术/算法是什么?

EN

回答 3

Stack Overflow用户

发布于 2012-04-17 12:49:17

在Andrew的机器学习课中,我们使用神经网络和滑动窗口完成了这个精确的问题:

  1. 训练一个神经网络来识别你想要的特定特征,使用一个36x49窗口(或者其他你想要的大小),使用带有标签的数据来识别图像。
  2. 为了识别一个新的图像,取36x49矩形并将其滑动到图像上,在每个位置进行测试。当您移动到一个新的位置时,将窗口向右移动一定数量的像素,将其称为jump_size (例如5个像素)。当您到达图像的右侧时,返回到0,并通过y增加窗口的jump_size

神经网络对此有好处,因为噪音不是什么大问题:你不需要去除它。这也是很好的,因为它可以识别类似于以前看到的图像,但略有不同(脸部的角度不同,灯光略有不同,等等)。

当然,缺点是您需要培训数据来完成它。如果你没有一组预先标记的图片,那么你可能会运气不好--尽管如果你有一个Facebook账户,你可能可以写一个脚本来提取你和你朋友的所有标签照片并使用它。

票数 2
EN

Stack Overflow用户

发布于 2012-04-17 12:47:46

只有当您已经使用kd-树或层次树对图像进行排序时,FFT才有意义。我建议将图像2d rgb值映射到一维曲线,并在频率分析之前降低一些复杂性。

票数 0
EN

Stack Overflow用户

发布于 2012-08-07 21:46:21

由于我发现目标检测方法在很大程度上取决于具体情况,所以我没有提出精确的算法。相反,我有一些建议和建议。下面是我的建议:找到目标的特定特性,并围绕目标设计代码。

例如,如果您可以访问彩色图像,请使用Wally没有多少绿色和蓝色的事实。从红色图像中减去蓝色和绿色的平均值,你就有了一个更好的起点。(对图像和目标应用相同的操作。)但是,如果噪声是与颜色有关的(即:在每种颜色上都是不同的),这是行不通的。

然后,您可以在转换后的图像上使用相关性,取得更好的效果。负的相关点是,它将只对第一幅图像进行精确的裁剪.如果你需要找到目标来帮助你找到目标,那就不是很有用了!相反,我认为目标的平均版本(许多Wally图片的组合)会在某一点上起作用。

我的最后一个建议是:在我处理噪声图像的个人经验中,频谱分析通常是一件好事,因为噪音往往只污染一个特定的尺度(希望这个尺度与沃利的不同!)此外,相关性在数学上相当于比较你的图像和目标的光谱特征。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10191397

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档