- Author: ZhangHao
- Reviser: ZhangHao
- Date: 2019/03/08
- Version: 0.1.1
- abstract: SVM分类器
已经完成的是SVM分类器模型的读取输出和训练,视频分割,训练集制作,图片分割,特征向量的提取
修复了一些bug,将视频扫描的部分加入了多尺度变换,可以从原图片的0.25,0.5,1,2,4倍大小进行划窗检测,并且可以基本实现对孤立图片的分类
cutpic -> 被四分后的二维码
cutvideo -> 被裁剪的视频图片,用来作negetive pic
html -> 生成的doxygen文档
model -> *.xml模型
qrpic -> 二维码原图
test -> 测试样例图
- 目前只依赖opencv
SVM输入的是一个n维向量,因此需要对图像提取特征向量,有很多种特征向量的提取方法,这里使用的是hog特征向量,提取的主要是边缘特征。因此为了保证输入到SVM中的向量维数相同,必须使用同样分辨率的图片。
在doxygen生成的文档里面有详细的说明了每个函数的用法,基本流程就是:
- 首先制作一个你需要的正样本集和负样本集(每张图片最好是统一分辨率的,默认为80*80,在构造函数中要初始化每个图像的高度和宽度)
- 然后进行训练 svmTrain
- 然后可以预测一个文件夹中的文件类型(正/负) svmPredict
mkdir build
cd build
cmake ..
make
./MYSVM
- 如果可能的话,对hog函数并行化处理
- 目前制作训练集的技巧还不够娴熟
- 目前阶段的训练集制作的还不够完善,需要升级改进