使用支持向量机进行分类的标注功能?

时间:2014-04-13 20:47:46

标签: matlab svm

我想问一些事情......

如果我从单元格大小为8且方向bin = 8的图像中提取HOG特征,我将获得N X M X 32矩阵。 现在,我想用SVM训练它,每行会给出一个标签..

我如何将这个3d矩阵变成一行,所以我可以在该行中给出一个标签。此外,该矩阵及其标签将在SVM中进行训练

这是我的例子: label1 - >第1行(图像1 N X M X32的特征) label2 - >第2行(图像2 N X M X32的特征) 。 。 。 等等

任何想法??

1 个答案:

答案 0 :(得分:1)

这很简单。更改3D矩阵,使其成为矢量。这样,您可以为每个训练标签定义其相关的HOG特征矩阵,从而定义变换后的矢量。您现在可以将这些训练标签和相关矢量放入SVM模型创建中。

假设R是您的N x M x 32矩阵。如果你这样做了:

x = R(:);

这将创建一个长N x M x 32个元素的向量。它将逐块切割矩阵的每一列,并将其叠加,使其成为单个向量。

如果对所有HOG特征矩阵重复此操作,则会有特征向量,因此可以将这些与训练标签相关联。这应该适用于HOG,我建议您在将数据转换为相关的超空间时选择某种径向基函数作为内核。