我设法将图像转换为视觉词的直方图表示。它可能像下面那样简单(标准化):
[0.1, 0.2, 0, 0.1, 0, 0.05, 0.3, 0, 0, 0, 0.2, 0.05, 0]
最多加1
现在,如果我上面有直方图的许多不同迭代,我想用libsvm对它进行分类。但是我被困在这里,我知道svmtrain的语法:
model=svmtrain(label,training_matrix)
训练矩阵应该只是我所有直方图的m×n矩阵 但是标签怎么样?我知道它应该是+1或-1,但负面图像来自何处? training_matrix中的所有内容都应该是代表班级的正面图像。
我将每个直方图视为一个单独的实例是错误的吗?相反,如果我将每个视觉单词视为一个实例,那么我将从代表该类的单词中得到负面信息。
答案 0 :(得分:0)
我认为,你的课程是具有视觉相似性的图像组。 然后:
我建议您在文本文件中转换直方图,并使用二进制工具和this description进行第一次评估。
然而,如果颜色/强度不是对象的主要区别特征,我认为直方图不会给出好的结果。
如果您的图像只有图像上没有太多背景的小图像,更好的快速解决方案是将图像缩小到例如32x32并使用像素值作为功能。