带有图形工具包的 SVM 和 ANN 库

Posted

技术标签:

【中文标题】带有图形工具包的 SVM 和 ANN 库【英文标题】:Library for SVM and ANN with graphical toolkit 【发布时间】:2014-03-15 01:41:22 【问题描述】:

大家好。我正在做一个项目,其中包括使用 kinect 和 svm 和 ann 机器学习检测对象。我想是否可以使用图形工具为 svm 和 ann 提供库的名称,因为我只想使用该库训练 ann 并保存在 .xml 中,然后使用 opencv 加载 .xml!

【问题讨论】:

ANN 和 SVM 的 OpenCV 实现有什么问题? 嗨..问题是我不知道如何将图像转换为 svm 和 ann 的输入!我读到要使用正片和负片图像用于 svm,但我不明白如何将这些图像转换为输入,我读了有关 ann 并说我需要输入图像和输出图像并搜索关系但我不知道如何转换要输入的图像 看来您需要阅读 SVM 和 ANN 理论。他们需要特征作为输入,而不是图像。图像强度可以是特征,但它们通常是最基本的特征,效果不佳.总之,您需要针对问题中的数据集提供特征,然后使用这些特征来训练您的分类器。 【参考方案1】:

SVM 是一种分类器,用于根据样本的特征向量对样本进行分类。因此,您的任务是将图像转换为可被 SVM 用于训练和测试的特征向量。

好的,要从您的图像创建特征向量有几种可能性,我将提到一些非常常见的技术:

    一个非常简单的方法是为每个图像创建标准化的色调直方图。比方说,您创建了带有 5 个 bin 的色调直方图。因此,根据您的图像颜色,这 5 个 bin 中会有一些值。假设这些值看起来像这样 0.32 0.56 0 0 0.12 。所以,现在这是您的一个 5 维输入向量(即箱数)。您必须对所有训练样本执行相同的程序,然后您也将对测试图像执行此操作。

    从输入样本中提取一些特征(例如,通过使用 SIFT、SURf),然后使用 SIFT/SURF 创建描述符。然后,您可以使用这些描述符作为 SVM 的输入进行训练。

【讨论】:

啊好的我明白了!!如果我希望我的软件检测到苹果并且我使用 SURF 和 VSM 来训练大量图像,并且如果我的苹果图像小于我提供给训练的图像,我的软件可以检测到这是一个苹果,但是小号??? 是的..它会的。这就是 SURF/SIFT 最棒的地方。 SIFT 是尺度不变和方向不变的。如果对您有用,请接受我上面的回答。 好的..!!!但是 SURF 将是 SIFT 的最佳选择!!我知道 SURF 是否比 SIFT 更快更健壮?? 是的,我想是的。但我还没有和 ANN 合作过。您可能已经看过这个链接,但仍然 qtandopencv.blogspot.de/2013/10/…> 是的……我在一个应用程序中使用了 SURF 和 SVM(这并不容易),我得到了很好的结果。

以上是关于带有图形工具包的 SVM 和 ANN 库的主要内容,如果未能解决你的问题,请参考以下文章

SVM 和神经网络

OpenCV3 SVM ANN Adaboost KNN 随机森林等机器学习方法对OCR分类

各常用分类算法的优缺点总结:DT/ANN/KNN/SVM/GA/Bayes/Adaboosting/Rocchio

c语言使用GTK+,是个什么?

大型数据集 - ANN

Java的图形用户界面的基本工具