balanceBoxLabels
平衡边界框标签对象检测
语法
描述
平衡边界框标签,locationSet
= balanceBoxLabels (boxLabels
,blockedImages
,blockSize
,numObservations
)boxLabels
,过采样的图像块包含少类中包含了图像对象的集合blockedImages
。numObservations
所需数量的块位置,blockSize
指定的块大小。
指定额外的方面选择的块使用名称-值参数。locationSet
= balanceBoxLabels (boxLabels
,blockedImages
,blockSize
,numObservations
,名称,值
)
例子
样本块集用于阻止图像目标检测
负载箱标签数据,包含一个图像的盒子和标签。每个盒子的高度和宽度(20、20)。
d =负载(“balanceBoxLabelsData.mat”);boxLabels = d.BoxLabels;
创建一个屏蔽的图像的大小[500500]
。
blockedImages = blockedImage (0 ([500500]));
选择每一个观察的图像大小。
blockSize = (50,50);
可视化使用直方图来识别任何类不平衡的盒子标签。
建筑物= boxLabelDatastore (boxLabels);datasetCount = countEachLabel(建筑物);图;h1 =直方图(“类别”datasetCount.Label,“BinCounts”datasetCount.Count)
h1 =直方图的属性:数据:[0 x0直言]价值观:[1 1 1 1 1 1 1 1 1 1 1 11]NumDisplayBins: 12类:{1}x12细胞DisplayOrder:“手动”正常化:“计数”DisplayStyle:“酒吧”FaceColor:“汽车”EdgeColor:[0 0 0]显示所有属性
测量的分布盒标签。如果变异系数大于1,然后是类不平衡。
cvBefore =性病(datasetCount.Count) /意味着(datasetCount.Count)
cvBefore = 1.5746
选择启发式值数量的观察,发现每个类项的均值,乘以类的数量。
numClasses =身高(datasetCount);numObservations =意味着(datasetCount.Count) * numClasses;
一盒可以减少使用数量控制OverlapThreshold
。使用一个较低的阈值将物体边界的一块。增加这个值减少一个对象可以夹在边境,牺牲的不平衡箱标签。
ThresholdValue = 0.5;
平衡boxLabels
使用balanceBoxLabels
函数。
locationSet = balanceBoxLabels (boxLabels blockedImages blockSize,…numObservations,“OverlapThreshold”,ThresholdValue);
(= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =]100%厉螨(= = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = = =]100%的运行时间:就是估计剩余时间:就是平衡箱标签完成。
数的标签中包含的图像块。
bldsBalanced = boxLabelDatastore (boxLabels locationSet);balancedDatasetCount = countEachLabel (bldsBalanced);
覆盖另一个直方图与原来的标签数箱标签是否平衡。如果标签似乎不平衡通过查看直方图,增加的值numObservations
。
持有在;balancedLabels = balancedDatasetCount.Label;balancedCount = balancedDatasetCount.Count;h2 =直方图(“类别”balancedLabels,“BinCounts”,balancedCount);标题(h2.Parent,“平衡类标签(OverlapThreshold:“+ ThresholdValue +“)”);传奇(h2.Parent, {“之前”,“后”});
测量的分布新baanced盒标签。
cvAfter =性病(balancedCount) /意味着(balancedCount)
cvAfter = 0.4588
输入参数
boxLabels
- - - - - -标记边界框数据
表有两列
标记边界框数据,指定为一个表有两列。
第一列包含边界框,必须一个细胞向量。每个元素包含在细胞中向量米4矩阵的格式(x,y,宽度,高度]米盒子。
第二列必须是一个细胞向量包含标签名称对应于每一个边界框。每个元素必须是在细胞中向量米1分类或字符串向量。
创建一个盒子标签从地面实况数据表,
创建一个边界框标签数据存储使用
objectDetectorTrainingData
函数。你可以获得
boxLabels
从LabelData
属性的标签返回的数据存储objectDetectorTrainingData
,(blds.LabelData
)。
blockedImages
- - - - - -贴上了照片
的数组blockedImage
对象
标签屏蔽图片,指定为数组blockedImage
对象包含像素标签图片。
blockSize
- - - - - -块大小
双元素行向量的正整数
读取数据块大小,指定为一个双元素行向量的正整数,(numrows,numcols]。第一个元素指定的行数。第二个元素指定的列数。
numObservations
- - - - - -块的位置
正整数
块的位置返回的数量,指定为一个正整数。
名称-值参数
指定可选的双参数作为Name1 = Value1,…,以=家
,在那里的名字
参数名称和吗价值
相应的价值。名称-值参数必须出现在其他参数,但对的顺序无关紧要。
R2021a之前,用逗号来分隔每一个名称和值,并附上的名字
在报价。
例子:”OverlapThreshold
”,' 1 '
水平
- - - - - -每个图像的分辨率水平
1
(默认)|正整数标量|B1的正整数向量
数组中的每个图像的分辨率水平blockedImage
对象,指定为一个正整数标量或B1的正整数向量,B数组的长度是blockedImage
对象。
OverlapThreshold
- - - - - -重叠的阈值
1
(默认)|标量在[0,1]
重叠的阈值,指定为一个积极的标量范围[0,1]。当边界框之间的重叠和裁剪窗口大于阈值,箱子的boxLabels
输入剪到图像块窗口边界。重叠小于阈值时,箱子被丢弃。当你降低阈值,对象可以丢弃的一部分。减少一个对象可以夹在边境,增加阈值。增加阈值也可能导致不那么均衡的盒子标签。
边界框之间的搭接量和被定义为一个裁剪窗口。
详细的
- - - - - -显示进度信息
真正的
或1
(默认)|假
或0
显示进度信息,指定为一个数字或逻辑1
(真正的
)或0
(假
)。将此属性设置为真正的
显示信息。
输出参数
locationSet
——平衡箱标签
blockLocationSet
对象
平衡箱标签,作为一个返回blockLocationSet
对象。对象包含numObservations
平衡块的位置,每个大小blockSize
。
算法
版本历史
介绍了R2020aR2021a:bigLabeledImages
观点是不可取的
不推荐在R2021a开始
的bigLabeledImages
参数,支持金宝appbigimage
对象,不推荐。使用blockedImages
观点相反,支持金宝appblockedImage
对象。的blockedImage
对象提供了几个优势包括扩展一天处理,一个更简单的接口,和自定义支持阅读和写作标准图像格式。金宝app
虽然有不打算删除bigLabeledImages
参数在这个时候,切换到blockedImages
参数利用额外的功能和灵活性。
更新你的代码,请执行以下步骤:
取代
bigimage
对象输入与blockedImage
对这个函数的第二个参数对象的输入。如果你想选择块的图片以外的分辨率级别1,然后指定的
水平
“名称-值参数。你要选择时可以省略这个论点块屏蔽图片分辨率级别1。
如何更新的表给出一个示例代码。
不使用 | 建议更换 |
---|---|
本例中选择块的分辨率级别1 boxLabels =负载(“balanceBoxLabelsData.mat”).BoxLabels;bim = bigimage (0 ([500500]));blockSize = (50 50);numObservations = 20;locationSet = balanceBoxLabels (boxLabels bim 1,…blockSize numObservations); |
这是等价的代码,输入替换 boxLabels =负载(“balanceBoxLabelsData.mat”).BoxLabels;bim = blockedImage (0 ([500500]));blockSize = (50 50);numObservations = 20;locationSet = balanceBoxLabels (boxLabels,荡妇,…blockSize numObservations); |
打开举例
你们possedez一个版本modifiee de cet(中央东部东京)为例。Souhaitez-vous打开cet(中央东部东京)为例用vos修改吗?
对MATLAB
你们有派对在联合国留置权,对应这个对MATLAB:
倒实行la对saisissez-la在fenetre德对MATLAB。Les navigateurs web不sup金宝appportent Les MATLAB命令。
你也可以从下面的列表中选择一个网站:
表现最好的网站怎么走吗
选择中国网站(中文或英文)最佳站点的性能。其他MathWorks国家网站不优化的访问你的位置。