machine-learning - 识别标志(品牌)的图像识别技术

标签 machine-learning pattern-matching image-recognition feature-detection haar-classifier

几天前我开始学习图像识别,我想做一个需要识别 Android 中不同品牌 Logo 的项目。

例如:如果我在 Android 设备中拍摄 Nike 标志的照片,那么它需要显示“Nike”。

  • 低计算时间是我的主要标准。

为此,我做了一些工作并开始学习 OpenCV 示例。

最适合我的图像识别是什么。

1) 我从模板匹配中了解到,它们的适用性主要受到可用计算能力的限制,因为识别大而复杂的模板可能非常耗时。 (所以我不想使用它)

2)基于特征的检测器,例如 SIFT/SURF/STAR(据我所知,这对我来说是更好的选择)

3) 深度学习和模式识别概念怎么样? (我正在研究这个,不知道这是否适合我)。你们中的任何人都可以告诉我我是否可以使用这个以及为什么与 1 和 2 相比它对我来说是更好的选择。

4)Haar 级联分类器(从 SO 中的一篇文章中,我了解到通过使用 Haar 它在旋转和尺度不变中不起作用,所以我没有太关注这一点)。如果我专注于,这对我来说是更好的选择吗?

最佳答案

我现在正在运行我的一个宠物项目,它需要面部识别 - 检测照片上有面部的区域(如果它存在于 Raspberry pi 中),所以我对此任务做了一些分析

我发现this方法。关键思想是避免扫描整个图片,以帮助扫描不同大小的窗口,就像在 OpenCV 中一样,而是将整张照片划分为 49 (7x7) 个正方形,并训练模型,不仅用于检测每个正方形中是否存在某个类正方形,还可用于确定检测物体的位置和大小

训练模型仅运行 49 次,因此我认为即使在非最先进的智能手机上也可以在不到一秒的时间内执行此操作。无论如何,这将是准确性和性能之间的权衡 关于型号

我将使用vgg –类似模型,可能比 vgg11A 还要简单一些。

就我而言,已经准备好数据集 exists 。所以我可以用它训练卷积网络

为什么深度学习方法比你提到的1-3更好?因为它对于此类任务的准确性更高。这是经过实践证明的。您可以在kaggle查看。大多数分类竞赛的顶级模型都是基于卷积网络

对您来说唯一的缺点 - 可能需要创建自己的数据集来训练模型

关于machine-learning - 识别标志(品牌)的图像识别技术,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38739303/

相关文章:

Haskell 递归函数返回一个 bool 值

image-recognition - 开源对象识别算法

scala - Spark 2逻辑回归删除阈值

machine-learning - 朴素贝叶斯概率估计中的 m 应该被视为什么

machine-learning - HTK 扬声器适配

apache-spark - 来自 RDD 的 PySpark LDA 模型密集向量

regex - 当模式(不)包含带括号的组时,为什么 expr match 输出不同的东西?

java - 如何从这样的字符串中提取 double

image-processing - 如何使用 OpenCV 查找图像上一个点与另一个点的坐标

image - 识别音乐符号的程序