你能帮我利用SIFT特征进行图像分类吗?
我想根据SIFT特性对图像进行分类:
我想分类为7组。所以,knnclassify(sample(1*10),trainingset(130*10),group(7*1))
错误是:组的长度必须等于训练中的行数。我能做什么?
发布于 2014-11-12 11:52:13
直接从医生那里:
分类(样本,训练,组)使用最近邻方法将样本中的每一行数据分类为训练中的一组。样本和培训必须是具有相同列数的矩阵。组是用于培训的分组变量。它的唯一值定义组,每个元素定义相应的培训行所属的组。组可以是数字向量、字符串数组或字符串的单元格数组。训练和组必须有相同的行数.
这意味着,group应该是130x1,并且应该指明每个训练样本属于哪个组。在您的情况下,unique(group)应该返回7个值--在您的培训集中表示的七个类别。如果您还没有一个组向量来指定哪些图像属于哪些类别,则可以使用kmeans将您的培训集拆分为7个组:
group = kmeans(trainingset,7);
knnclassify(sample, trainingset, group);https://stackoverflow.com/questions/26843591
复制相似问题