主要内容

Bagoffeature

袋视觉词对象

描述

管理您的图像集合并将其分组为培训和验证集。您可以构建一袋视觉单词以用于图像类别分类。培训和分类包括支持并行计算工具箱™。金宝app

创建

描述

例子

bag = bagoffeature(IMDS.返回一袋功能对象。这使用来自的样本生成输出对象IMDS.输入。默认情况下,从图像中提取的冲浪功能创建视觉词汇表IMDS.

bag = bagoffeature(IMDS.,'CoreMextractor.',Extractorfcn.返回一袋功能,该功能使用自定义特征提取器功能来提取图像中的功能IMDS.Extractorfcn.是自定义功能提取功能的函数句柄。

bag = bagoffeature(IMDS.名称,价值使用一个或多个名称值对设置属性。将每个属性名称括在引号中。例如,BAG = BAGOFFEature('verbose',TRUE)

此对象支持使用多个MAT金宝appLAB的并行计算®工人。启用并行计算计算机视觉工具箱首选项对话框。打开计算机Vision Toolbox™首选项标签,在环境部分,点击首选项。然后选择“计算机视觉”工具箱。

输入参数

展开全部

图像,指定为一个imageageAtastore.目的。这Bagoffeature从包含的图像中提取相同数量的最强功能IMDS.目的。

最强的特征数量=每个集合中发现的功能数量) X最强的汇编 (1)
该对象获得了最强的汇编价值来自'strongestfeatures'财产。

自定义特征提取器功能,指定逗号分隔的配对组成'CoreMextractor.'和功能手柄。此自定义功能从输出中提取功能Bagoffeature对象学习对象的视觉词汇。

功能,Extractorfcn.,必须指定为文件的函数句柄:

Extractorfcn = @examplebagoffeaturesextractor;BAG = BAGOFFEature(IMDS,'CoreMExtractor',Extractorfcn)
在哪里examplebagoffeaturesextractor是matlab功能。例如:
功能[功能,featuremetrics] = examplebagoffeaturesextractor(img)...
该函数必须位于路径上或当前工作目录中。

有关自定义提取器功能及其输入和输出要求的更多详细信息,请参阅创建自定义功能提取器

您可以通过在matlab命令行中键入以下命令,打开示例函数文件,并将其用作模板:

编辑('examplebagoffeaturesextractor.m')

特性

展开全部

自定义特征提取器功能,指定为函数的句柄。自定义功能提取器功能提取用于学习视觉词汇的功能Bagoffeature。你必须指定'CoreMextractor.'和功能手柄,Extractorfcn.,到自定义功能提取功能。

功能,Extractorfcn.,必须指定为文件的函数句柄:

Extractorfcn = @examplebagoffeaturesextractor;BAG = BAGOFFEature(IMDS,'CoreMExtractor',Extractorfcn)
在哪里examplebagoffeaturesextractor是一个matlab函数,如:
功能[功能,featuremetrics] = examplebagoffeaturesextractor(img)...
该函数必须位于路径上或当前工作目录中。

有关自定义提取器功能及其输入和输出要求的更多详细信息,请参阅创建自定义功能提取器。您可以通过在matlab命令行中键入以下命令,打开示例函数文件,并将其用作模板:

编辑('examplebagoffeaturesextractor.m')

包括在内的视觉词数Bagoffeature对象,指定为逗号分隔的配对组成词汇'和范围内的整数标量[2,INF.]。这词汇价值对应于K.在里面k-means聚类(统计和机器学习工具箱)用于量化特征到视觉词汇的算法。

最强大的功能,指定为逗号分隔的配对组成最强壮的'和范围的值[0,1]。该值代表了从每个标签中使用的最强功能的分数IMDS.输入。

启用进度显示到屏幕,指定为包含的逗号分隔对。verb'和逻辑真的或者错误的

用于冲浪特征提取的点位置的选择方法,指定为由“逗号分离对”指标'还有'网格'或者'探测器'。特征提取有两个阶段。首先,您选择采摘点位置的方法(冲浪'探测器'或者'网格'),有指标财产。第二阶段提取特征。该特征提取使用冲浪提取器,用于两个点选择方法。

当你设置时指标'探测器',使用加速的鲁棒特征(冲浪)检测器选择特征点。否则,该点在预定义网格上挑选,其具有由“的间距”Gridstep.'。此属性仅在您未指定具有自定义提取器时适用CoreMextractor.财产。

网格步长以像素为单位,指定为逗号分隔的配对组成Gridstep.'和一个1-by-2 [Xy矢量。此属性仅在您设置时适用指标'网格'而且您未指定与此自定义提取器CoreMextractor.财产。阶梯Xy方向定义了均匀网格的间距。网格线的交叉点定义特征提取的位置。

补丁大小以提取直立冲浪描述符,指定为包含的逗号分隔对。BlockWidth.'和一个1-by-N向量的N块宽度。此属性仅在您未指定具有自定义提取器时适用CoreMextractor.财产。矢量的每个元素对应于函数提取直立冲浪描述符的方块的大小。使用多个方形尺寸提取多尺度功能。指定的所有广场都用于网格上的每个提取点。此属性仅在您设置时适用指标'网格'。块宽度对应于特征的比例。最小值BlockWidth.是32像素。

冲浪特征向量的方向,指定为逗号分隔的配对组成直立'和一个逻辑标量。此属性仅在您未指定具有自定义提取器时适用CoreMextractor.财产。将此属性设置为真的当您不需要估计冲浪功能向量的方向时。将它设置为错误的当您需要图像描述符捕获旋转信息时。

对象功能

编码 创建视觉词出现的直方图

例子

全部收缩

加载两个图像集。

setdir = fullfile(toolboxdir('想象'),'VisionData''镜片');imgsets = imageset(setdir,'递归');

从每个图像集中选择前两个图像以创建培训集。

培训率=分区(IMGSets,2);

创建功能袋。这个过程可能需要几分钟。

袋= Bagoffeature(培训,'verbose',错误的);

计算其中一个图像的视觉词出现的直方图。将直方图存储为特征向量。

IMG =读取(IMGSets(1),1);FeatureVector =编码(袋子,IMG);

加载图像集。

setdir = fullfile(toolboxdir('想象'),'VisionData''镜片');imds = imageageataStore(setdir,'insertumbfolders',真的,'labelsource'......'foldernames');

指定自定义功能提取器。

Extractor = @ExampleBagoffeaturesextractor;bag = bagoffeatures(IMDS,'comotomxtractor',提取器)
创建袋子功能。------------------------- *图像类别1:书籍*图片类别2:杯子*使用自定义特征提取功能提取功能:examplebagoffeaturesextractor。*从12张图像中提取功能......完成。提取了230400个功能。*保留每个类别的最强功能的80%。*使用K-means群集创建500字视觉词汇表。*特点数量:184320 *群集数量(k):500 *初始化集群中心...... 100.00%。*聚类...完成20/100迭代(〜1.85秒/迭代)...收敛于20次迭代。*完成创建功能袋
BAG =带有物业的BAGOFFEature:CoreMExtractor:@ExampleBagoffeaturesextractor Vocabularysize:500个最强壮的优势:0.8000

扩展能力

在R2014B中介绍