此演示介绍了如何在Matlab中使用袋子功能和机器学习进行场景分类。这随着视频演示以及视频演示://www.tatmou.com/videos/image-recognition-using-machine-learning-122900.html.
Johanna Pingel(2021年)。使用机器学习演示的图像识别(//www.tatmou.com/matlabcentral/fileexchange/62193-image-recognition-using-machine-learning-demo),matlab中央文件exchange。检索到。
我有类似的问题,如Ronny Guendel所描述的。我正在使用一个非常简单的案例,具有三组(类别)的植物图像。我每套大约有50张照片,并且没有“背景噪声”和分心的图像清晰。我得到了非常好的准确性(从90-98%),但它只会在验证期间预测其中一个类别。任何帮助都非常感谢!
我真的很喜欢简单的解释和明确的代码。但是,我有92%的验证准确性,而当我导出我的TROOVERASCLASSIFER时,我确实的精度低于25%的精度,驱使我坚果!所有来自同一个文件夹,因此精度应大致相同。
我认为通过导出模型出错了!
有人可以帮助我还是有类似的问题?
对于所有有TroundClassifier.requirevariables问题的所有人,仔细观察视频。她一次浏览每个代码块(运行和提前),但随后停止MIDWAY培训模型并将其导出到工作区。您收到错误的原因是您没有“TroundClassifier”,或者您已在错误的变量上培训模型。确保将其培训在'speimimagedata'不是'scenedata'上。您可以在工作区中打开Trowclassifier,如果您已正确完成,请参阅属性Resevariables。
希望这可以帮助。
我在这部分收到了错误
无法解析troughclassifier.requirevariables的名称。
Scene_Ictiveification中的错误(第54行)
testscenedata = Array2table(testscenendata,'variablenames',troundclassifier.requiredvariables);
下载的代码使用aliftalscenetype = aliftscenetype = test_set.labels;
但是视频中的代码使用实际级别键=分类(Repelem({test_set.description}',[test_set.count],1));
我收到以下错误
未定义的变量“trounclassifier”或类“trounclassifier.requirevariables”。
scene_identification中的错误(第100行)
testscenedata = Array2table(testscenendata,'variablenames',troundclassifier.requiredvariables);
还,
以下行在提供给我们的代码和您在视频中解释的代码不同
ActualScenetype = test_set.labels;
我收到以下错误
未定义的变量“trounclassifier”或类“trounclassifier.requirevariables”。
scene_identification中的错误(第100行)
testscenedata = Array2table(testscenendata,'variablenames',troundclassifier.requiredvariables);
此代码中存在错误至少两次。代替
%%创建视觉词汇表
Tic.
bag = bagoffeature(training_set,...
'词汇',250,'指点','探测器');
scenedata = double(编码(袋,培训_set));
TOC.
用
%%创建视觉词汇表
Tic.
bag = bagoffeature(imageset(training_set.files),...
'词汇',250,'指点','探测器');
scenedata = double(编码(袋子,iconiageet(training_set.files))));
TOC.