任务:我有超过10万张从视频中提取的图像(视频帧),我需要分类出哪些图像包含我列表中的标志。
问题:我创建了一个标志图像库。为了分类任务,我打算使用LIBSVM。我需要将图像转换为SVM数据集的格式。我已经阅读了LIBSVM网站上的材料、FAQ和《支持向量分类实用指南》。但我仍然找不到如何为LIBSVM训练准备数据/图像的答案。我将非常感谢任何帮助。
回答:
你需要将你的数据向量化,使用你选择的基于图像计算的特征集。我不会在这里详细说明所有细节,因为这将占用太多空间,并且与SO的主题无关。
简而言之,最佳的向量化方式在很大程度上取决于你想要检测的形状(例如标志)。霍夫变换几乎总是被使用,因此你可能需要研究一下这一点。
其次,对象检测通常是通过在每张单一图像上运行多个平移/缩放/旋转的分类器来进行的。在这种情况下,你希望使用运行时复杂度非常低的分类器。线性核和交集核通常被使用。LIBSVM不提供交集核,但你可以自己计算。对于复杂度原因,使用LIBLINEAR可能更有趣,它明确构建分离超平面,因此预测的复杂度大大降低。