【Machine Learning】【Python】五、Sliding Window + SVM + NMS for Localization ---- 《SVM物体分类和定位检测》
2017-07-05 09:54
435 查看
建议用后面EdgeBoxes做边框预测,比SW快一点准一点。如果大家感兴趣,也建议用faster rcnn SPN层中的anchor技术。
--------------------------------------------------------------------------
《SVM物体分类和定位检测》这一系列博文结束了。
总结一下我用着最好的方法流程吧。
1. 先HoG提取特征feature
2. 用PCA对feature降维然后用PSO优化参数C和gamma,降维的目的是加快PSO运行速度,否则太慢,但分类效果降低
3. 用第一步拿到的feature和第二步拿到的参数训练一个初始SVM模型
4. 用Hard Negative Mining优化SVM模型
5. 用滑窗进行detection,最后用NMS做边框回归
目前2700正样本,2700负样本,只经过PSO优化参数后训练好模型,分类测试准确率84%。测试集1200负样本,700正样本。
但是检测框的精确不高,误检测很多。
------------【2017.07.10 更新】-------------------------------------------------------------------------------------------
对detection代码修改了一点,对数据集进行了一些处理。通过PSO优化参数后的SVM模型测试准确率85.6%左右,以100像素为步长做完HNM后的模型准确率将为83%左右,但是detection误检测降低很多。后来我又以50像素为步长重新HNM,现在的模型做detection效果已经很不错,误检测很少,正确检测虽然不稳定,但是已经满足需求了。我用100像素做步长,最后是对3.9W特征训练SVM模型,模型大小116M。我用50像素做步长,最后是对9W多特征训练SVM,模型大小190M。
多说一嘴,我用HoG对每张图片提取了2900多特征。在做PSO的时候,之前一直是用PCA给降维到500。为了追求更好的效果,后来我都是降维到2000做PSO。虽然会慢很多,但效果好一点。
-------------------------------------------------------------------------------------------------------------------------------------
最新代码Github地址: https://github.com/HandsomeHans/SVM-classification-localization
--------------------------------------------------------------------------
《SVM物体分类和定位检测》这一系列博文结束了。
总结一下我用着最好的方法流程吧。
1. 先HoG提取特征feature
2. 用PCA对feature降维然后用PSO优化参数C和gamma,降维的目的是加快PSO运行速度,否则太慢,但分类效果降低
3. 用第一步拿到的feature和第二步拿到的参数训练一个初始SVM模型
4. 用Hard Negative Mining优化SVM模型
5. 用滑窗进行detection,最后用NMS做边框回归
目前2700正样本,2700负样本,只经过PSO优化参数后训练好模型,分类测试准确率84%。测试集1200负样本,700正样本。
但是检测框的精确不高,误检测很多。
------------【2017.07.10 更新】-------------------------------------------------------------------------------------------
对detection代码修改了一点,对数据集进行了一些处理。通过PSO优化参数后的SVM模型测试准确率85.6%左右,以100像素为步长做完HNM后的模型准确率将为83%左右,但是detection误检测降低很多。后来我又以50像素为步长重新HNM,现在的模型做detection效果已经很不错,误检测很少,正确检测虽然不稳定,但是已经满足需求了。我用100像素做步长,最后是对3.9W特征训练SVM模型,模型大小116M。我用50像素做步长,最后是对9W多特征训练SVM,模型大小190M。
多说一嘴,我用HoG对每张图片提取了2900多特征。在做PSO的时候,之前一直是用PCA给降维到500。为了追求更好的效果,后来我都是降维到2000做PSO。虽然会慢很多,但效果好一点。
-------------------------------------------------------------------------------------------------------------------------------------
最新代码Github地址: https://github.com/HandsomeHans/SVM-classification-localization
相关文章推荐
- 【Machine Learning】【Python】六、Edge Boxes + SVM + NMS for Localization ---- 《SVM物体分类和定位检测》
- 【Machine Learning】【Python】二、HoG + PCA + SVM 物体分类 ---- 《SVM物体分类和定位检测》
- 【Machine Learning】【Python】一、HoG + SVM 物体分类 ---- 《SVM物体分类和定位检测》
- 【Machine Learning】【Python】三、PSO + PCA优化SVM参数C和gamma ---- 《SVM物体分类和定位检测》
- OpenCV中的HOG+SVM物体分类
- OpenCV中的HOG+SVM物体分类
- 车牌识别技术详解五--采用LBP+HOG SVM做目标分类,车牌检测,字符检测等
- OpenCV中的HOG+SVM物体分类
- OpenCV中的HOG+SVM物体分类
- OpenCV中的HOG+SVM物体分类
- 一般物体检测--Binarized Normed Gradients for Objectness Estimation at 300fps
- OpenCV中的HOG+SVM物体分类
- OpenCV中的HOG+SVM物体分类
- OpenCV中的HOG+SVM物体分类
- 【OpenCV学习笔记】【教程翻译】四(车牌检测之SVM分类)
- 图像物体分类与检测算法综述
- OpenCV中的HOG+SVM物体分类
- OpenCV中的HOG+SVM物体检测(添加注释版本)
- OpenCV中的HOG+SVM物体分类
- OpenCV中的HOG+SVM物体分类