主要内容

trainImageCategoryClassifier

训练一个图像分类器

描述

例子

分类器= trainImageCategoryClassifier (洛桑国际管理发展学院)返回图像类别分类器。分类器包含输入的类别数量和类别标签洛桑国际管理发展学院图像。该函数使用输入训练支持向量机(SVM)多类分金宝app类器,一个bagOfFeatures对象。

您必须具有统计学和机器学习工具箱™许可证才能使用此功能。

该函数支持使用多个MATLA金宝appB进行并行计算®工人。使用。启用并行计算计算机视觉工具箱首选项对话框。要打开计算机视觉工具箱™首选项,请在首页选项卡,环境部分中,点击首选项.选择计算机视觉工具箱。

分类器= trainImageCategoryClassifier (洛桑国际管理发展学院名称,值)返回一个分类器对象,其可选输入属性由一个或多个指定名称,值对参数。

例子

全部折叠

加载两个图像类别。

setDir = fullfile (toolboxdir (“愿景”),“visiondata”“imageSets”);imd = imageDatastore (setDir,“IncludeSubfolders”,真的,“LabelSource”...“foldernames”);

将数据集分割为训练数据和测试数据。从每组图像中选取30%作为训练数据,其余70%作为测试数据。

[trainingSet, testSet] = splitEachLabel (imd, 0.3,“随机”);

创造视觉词汇袋。

袋= bagOfFeatures (trainingSet);
创建Bag-Of-Features。------------------------- *图像类别1:书籍*图像类别2:杯子*使用Grid方法选择特征点位置。*从选定的特征点位置提取SURF特征。** GridStep为[8 8],BlockWidth为[32 64 96 128]。*从4张图片中提取特征…完成。提取76800特性。*保留每个类别中80%最强大的功能。*使用K-Means聚类创建500单词的视觉词汇。*特性数量:61440 *集群数量(K): 500 *初始化集群中心…100.00%。完成25/100次迭代(~0.83秒/迭代)…收敛25次迭代。 * Finished creating Bag-Of-Features

用训练集训练分类器。

categoryClassifier = trainImageCategoryClassifier (trainingSet、袋);
训练一个图像分类器用于2个类别。-------------------------------------------------------- * 类别1:书*类别2:杯* 4图片…完成编码功能。*完成分类器的训练。使用evaluate在测试集中测试分类器。

使用测试图像评估分类器。显示混淆矩阵。

confMatrix =评估(categoryClassifier testSet)
评估图像类别分类器为2类。------------------------------------------------------- * 类别1:书*类别2:评估8杯*图片……。*完成所有测试集的评估。*此测试集的混淆矩阵为:PREDICTED KNOWN | books cups -------------------------- books | 0.75 0.25 cups | 0.25 0.75 * Average Accuracy is 0.75。
confMatrix =2×20.7500 0.2500 0.2500 0.7500

找出分类的平均准确率。

意思是(诊断接头(confMatrix))
ans = 0.7500

应用新训练的分类器对新图像进行分类。

img = imread (fullfile (setDir“杯子”“bigMug.jpg”));[labelIdx, score] = predict(分类器,img);

显示分类标签。

categoryClassifier.Labels (labelIdx)
ans =1 x1单元阵列{“杯”}

输入参数

全部折叠

指定为imageDatastore对象。

功能包,指定为bagOfFeatures对象。该对象包含从每个图像类别的代表图像中提取的特征描述符的视觉词汇。

名称-值对的观点

指定可选的逗号分隔的对名称,值参数。的名字参数名和价值为对应值。的名字必须出现在引号内。可以以任意顺序指定多个名称和值对参数Name1, Value1,…,的家

例子:“详细”真正的“详细”到逻辑真正的

使进度显示在屏幕上,指定为逗号分隔的对,由'详细的'和逻辑的真正的

分类器选项,指定为逗号分隔对,包括'LearnerOptions'和返回的学习者选项输出templateSVM(统计学和机器学习工具箱)函数。

例2。例子

调整正则化参数templateSVM(统计学和机器学习工具箱)要设置自定义内核函数,请使用以下语法:

选择= templateSVM (BoxConstraint, 1.1,“KernelFunction”,“高斯”);分类器= trainImageCategoryClassifier (imd,袋子,“LearnerOptions”,选择);

输出参数

全部折叠

图像分类器,返回为imageCategoryClassifier对象。该函数使用纠错输出码(ECOC)框架训练支持金宝app向量机(SVM)多类分类器。

参考文献

[1] Csurka, G., C. R. Dance, L. Fan, J. Willamowski, C. Bray视觉分类与袋的关键点,计算机视觉统计学习研讨会,ECCV 1(1-22), 1-2。

扩展功能

另请参阅

|||(统计学和机器学习工具箱)|(统计学和机器学习工具箱)

介绍了R2014b