添加链接
link管理
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接

一起养成写作习惯!这是我参与「掘金日新计划 · 4 月更文挑战」的第27天, 点击查看活动详情

想着组合两种针对灰度图像提取特征再使用SVM进行分类,这里选用了LBP结合GLCM组合成特征向量,对特征向量进行SVM分类,输出混淆矩阵。

处理的数据集是 kth_tips_col_200x200 这个数据集

数据集介绍

kth_tips_col_200x200数据集总共类别是10类,内容为常见物体的表面图。

LBP和GLCM

在MATLAB中依靠 extractLBPFeatures 函数可以提取图像LBP特征,不过需要注意的事,这个函数是需要对灰度图进行提取特征,如果读取的图是三通道图像的话,需要转为单通道图像;同理在MATLAB中可以依靠 graycomatrix 对图像可以提取GLCM特征。

在处理 kth_tips_col_200x200 数据集的时候需要注意的是该数据集的图像像素大小已被固定为 200x200 但是该数据集为三通道的图像,所以在进行特征提取的时候需要将图像转化为单通道图像。

在对提取到特征矩阵(LBP+glcm)进行svm分类标签为提取到图像特征的类别名称。在MATLAB里 使用 fitcecoc 可以进行多分类的SVM分类;这里需要注意的是fitcecoc的使用方法,大家注意特征向量和标签相对应即可。

  • 清空工作区变量
  • 采用目录式读取数据集图像
  • 对读取数据打乱进行训练:测试 = 8:2
  • 获取训练集的数量
  • 构建for循环依次提取图像的LBP和GLCM特征向量
  • 组合LBP和GLCM特征向量
  • 提取被提取图像的标签名称并组合成向量
  • 对特征向量和标签向量进行SVM分类
  • 输出混淆矩阵
  • 结果展示:

    这里的单类的数量是65,通过混淆矩阵可以看出结果相对可以。

    大家在提取特征的时候由于LBP和GLCM的矩阵维度不一致,大家需要转换一下矩阵维度,在组合总的特征向量的时候需要把两种特征横向地拼接起来,两个向量行数一致,列数可以不一样。

  • 从尤雨溪这两天微博募捐,思考开源如何赚大钱
  • 复盘:前端岗位的寒冬,用这3点进行自救
  • 🔥我说MySQL每张表最好不超过2000万数据,面试官让我回去等通知?
  • Web3.0对前端很友好?
  •