SVM Scratch

训练代码使用Python,测试代码将使用C++重写

1. SVM的参考代码

参考sklearn的Python和C++的代码实现了SVM测试部分的python代码,基本无任何包依赖,可较方便地改写为C++代码集成到项目中,主要参考代码如下:

2. Hog的参考代码

另外还参考了skimage的Python和C++的代码实现了hog的python代码,主要参考代码如下:

3. 使用方法

  • 运行data2npy.py生成训练测试数据
  • 运行svm_origin.py会训练与测试SVM模型并保存模型参数,调用的是sklearn的代码
  • 运行svm_ldy.py会加载模型参数进行测试,调用的是自行编写的代码
  • 运行bin_to_cpp_header.cpp,生成实际测试所需的c++头文件
  • 数据集默认路径为dataset,模型参数默认保存路径为model

4. 对比

  • 原版的SVM

  • 自行实现的SVM