如何解决Matlab-使用经过训练的网络测试其他图像
| 我已经使用前馈神经网络训练了古代硬币图像。现在,我想使用经过训练的网络来测试图像。我做了如下:load net.mat;
load Features.mat; %this is the test image\'s features file
testInputs = features_set\';
out = sim(net,testInputs);
[dummy,I]=max(out);
if (I == 1)
h = msgBox(\'type 1\',\'Description\',\'none\');
elseif (I == 2)
h = msgBox(\'type 2\',\'none\');
else
h = msgBox(\'unclassified\',\'none\');
end;
问题是,即使当我输入其他图像时,例如说一个人的脸,它也会说类型1或类型2。它不会显示未分类。始终为任何图像指定类型1或类型2,不仅对于硬币图像。
有人可以帮帮我吗?
解决方法
我想,您只用硬币训练了神经网络。
那就是问题所在。如果您希望神经网络对不是硬币的事物进行分类。您必须使用非硬币图像来训练它。这是一个大问题,因为有无数张不是硬币的图像。尽管名称令人误解,但神经网络仅与您的训练数据一样聪明。
更简单的方法是在使用神经网络之前提出一些算法,对不是硬币的事物进行分类。 (例如,您可以检测图像中是否有圆圈)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。