【发布时间】:2016-05-13 07:35:11
【问题描述】:
我是机器学习的新手,目前正在从事一个项目。该项目是关于基于特征和颜色属性对图像进行分类。
我已经尝试根据OpenCV with Python by Example book 中给出的示例通过特征提取对图像进行分类(密集提取器 SIFT 描述符技术,用于生成码本并训练 SVM 以对提取的特征进行分类),但我还没有尝试将两者结合起来特征和颜色属性,因为在特征提取过程中采样的图像是灰度的。
我的问题是:
- 如果我包含颜色,是否会应用相同的技术,即我将创建一个特征图(灰度;形状属性)和颜色直方图并为这两个属性训练 SVM?
- 或者有没有一种方法可以让 SIFT 在 OpenCV 中同时计算形状和颜色属性?
【问题讨论】:
-
你的特征向量可以是任何你想要的。您可以连接 SIFT 描述符、颜色信息等...您可以在彩色图像上计算颜色特征并在灰度上计算 SIFT 等...在较旧的 OpenCV 版本中,有彩色图像的 SIFT 变体(如对手 SIFT),我不知道它们是否仍然在新版本中可用
-
你好三木。感谢您的回复。我仍在尝试解决该项目。我目前的方法是这样的:我创建了一个代码本,上面有灰度特征。然后,我还为颜色创建了一个单独的文件。现在我被困在如何合并这些特征以使 SVM 学习,因为它们都有不同的形状(大小)。请问这种方法是否正确?或者有没有更简单的方法?谢谢。
-
分类器不介意特征来自灰度、颜色还是其他。每个特征只是表中的一列。根据需要混合它们。 - 如果您提供一段示例代码以更好地理解您的问题,可能会有所帮助。
标签: python opencv machine-learning computer-vision svm