开始接触svm分类器是opencv中的使用起来很方便,后来根据实际需要需要使用matlab版的,以前没怎么接触过,开始有点头大,不知从何下手,查阅相关例子后,就开始

开始接触svm分类器是opencv中的使用起来很方便,后来根据实际需要需要使用matlab版的,以前没怎么接触过,开始有点头大,不知从何下手,查阅相关例子后,就开始训练了自己所需分类器了,也很方便.其中hog源程序参考

准备工作

1:创建正阳本文件夹“pos”将正阳本放入

2:创建负样本文件夹“neg”将负样本放入

3:制作正阳本文件列表pos_list.txt

4:制作负样本文件列表neg_list.txt

5:执行下面程序进行训练,测试

clear ;

%% 训练阶段

ReadList1 = textread('pos_list.txt','%s','delimiter','\n');%载入正样本列表

sz1=size(ReadList1);

label1=ones(sz1(1),1); %正阳本标签

ReadList2 = textread('neg_list.txt','%s','delimiter','\n');%载入负样本列表

sz2=size(ReadList2);

label2=zeros(sz2(1),1);%负样本标签

label=[label1',label2']';%标签汇总

total_num=length(label);

data=zeros(total_num,1764);

%读取正样本并计算hog特征

for i=1:sz1(1)

name= char(ReadList1(i,1));

image=imread(name);

im=imresize(image,[64,64]);

img=rgb2gray(im);

hog =hogcalculator(img);

data(i,:)=hog;

end

%读取负样本并计算hog特征

for j=1:sz2(1)

name= char(ReadList2(j,1));

image=imread(name);

im=imresize(image,[64,64]);

img=rgb2gray(im);

hog =hogcalculator(img);

data(sz1(1)+j,:)=hog;

end

[train, test] = crossvalind('holdOut',label);

cp = classperf(label);

svmStruct = svmtrain(data(train,:),label(train));

save svmStruct svmStruct

classes = svmclassify(svmStruct,data(test,:));

classperf(cp,classes,test);

cp.CorrectRate

%% 训练完成后保存 svmStruct即可对新输入的对象进行分类了无需再执行上面训练阶段代码

load svmStruct

test=imread('test2.jpg');

im=imresize(test,[64,64]);

figure;

imshow(im);

img=rgb2gray(im);

hogt =hogcalculator(img);

classes = svmclassify(svmStruct,hogt);%classes的值即为分类结果

hog svm 视频 matlab,matlab版hog+svm图像二分类相关推荐

  1. python基于sklearn的SVM和留一法(LOOCV)进行二分类

    基于sklearn的SVM和留一法(LOOCV)进行二分类 需要的导入包 import numpy as np from sklearn.model_selection import LeaveOne ...

  2. ML:基于自定义数据集利用Logistic、梯度下降算法GD、LoR逻辑回归、Perceptron感知器、SVM支持向量机、LDA线性判别分析算法进行二分类预测(决策边界可视化)

    ML:基于自定义数据集利用Logistic.梯度下降算法GD.LoR逻辑回归.Perceptron感知器.支持向量机(SVM_Linear.SVM_Rbf).LDA线性判别分析算法进行二分类预测(决策 ...

  3. 图像分类matlab结果,libsvm图像二分类后,分类的图像结果如何显示?

    这是训练后的分类器. ------- %% 训练阶段 ReadList1  = textread('P.txt','%s','delimiter','\n');%载入云样本列表 sz1=size(Re ...

  4. 机器学习之支持向量机SVM之python实现ROC曲线绘制(二分类和多分类)

    目录 一.ROC曲线 二.TP.FP.TN.FN 三. python绘制ROC曲线(二分类) 1.思路 2.关键代码 3.完整代码 四. python绘制ROC曲线(多分类) 五.参考文献 一.ROC ...

  5. 基于SVM的图像二分类算法

    本实验是用的python代码实现图像的二分类问题,我是在eclipse中搭建python环境. 一.数据集处理 我采用的是甜椒叶数据集(我忘了下载地址在哪里,我只用了一部分数据集),其中健康叶片有37 ...

  6. hog matlab,matlab hog+svm代码

    使用MATLAB来对于hog+svm进行使用 这边使用的是getfile函数来对于文件夹来进行遍历以及进行hog来进行变换,返回图片数量以及hog以后的矩阵allimage. 主函数使用的是MATLA ...

  7. matlab图像处理 支持向量机,Matlab图像处理滑动窗口SVM

    我正在尝试创建一个对象检测SVM,它可以检测在地板上慢慢滚动的远程控制调用.我在matlab中使用HOG cpp脚本(通过mex)和SVM-Light库(http://svmlight.joachim ...

  8. hog 行人检测 matlab,hog+svm_行人检测matlab程序

    转自: hog+svm_行人检测matlab程序[仅供大家理解用] 关于这个matlab程序,需要说明的是: 1.检测时的运行速度超级慢,以16个像素作为扫描时的步长,从1000*1000的大图里检测 ...

  9. SVM分类器讨论 matlab

    SVM分类器讨论 1.1 题目的主要研究内容 (1)通过PPT及视频的方式,介绍了SVM分类器的原理及推导过程.SVM的算法流程,并总结SVM分类器的优缺点.了解SVM的应用.通过Matlab和Pyt ...

最新文章

  1. 2022-2028年中国液化石油气(LPG)行业投资分析及前景预测报告
  2. Cisco与Linux的NAT
  3. 【HAOI2015】树上染色
  4. 所有OSGi套件的通用CXF请求拦截器
  5. Python与机器视觉(x)windows下import cv2报错dll
  6. python同时发送与接收_Python如何发送与接收大型数组
  7. python关于文件的一些记录
  8. 程序员跳槽面试刷题必备,微软工程师放大招!| 程序员硬核评测
  9. awk的基本使用方法
  10. java sqlite 密码保护_密码保护SQLite数据库 . 可能吗?
  11. 怎么用几何画板画底数a在变化的指数函数图像
  12. vue点击图片放大功能
  13. 阿里p6和p7的主要区别是什么?
  14. php对接石基crs系统,IDeaS 收益管理系统与石基昆仑CRS 3.10成功对接
  15. 433M、2.4G无线模块
  16. python均值方差模型_马科维茨的均值一方差组合模型
  17. PCM 与WAV相互转换代码
  18. Python面试简历技能点写法总结
  19. HBuilderX快捷键大全
  20. LTE PWS CMAS CBS消息

热门文章

  1. ajax id sort,ajax返回的json内容进行排序使用sort()方法实现
  2. fota mcsync洛达检测_【科普篇】华强北洛达1536U芯片下的苹果Airpods,与正品差距还有多少...
  3. 【Python】Cookie 和 Session
  4. LoadRunner 参数模拟——快速得到并发用户的进场规则
  5. Python if条件判断
  6. 第二章:2.6 使用 runserver 命令把项目运行起来
  7. 初接触php,遇到一个低级问题
  8. 5 个最受人喜爱的开源 Django 包
  9. Java模拟双色球彩票
  10. windows socket----select模型