主要内容

使用GoogLeNet对Simulin万博1manbetxk中的图像进行分类

这个例子展示了如何在Simulink®中使用万博1manbetx图像分类器块。该示例使用经过训练的深度卷积神经网络GoogLeNet进行分类。

Pretrained GoogLeNet网络

google网络已经训练了超过100万张图像,并可以将图像分类为1000个对象类别(如键盘、咖啡杯、铅笔和许多动物)。网络已经学会了各种各样的图像的丰富特征表示。该网络以一幅图像作为输入,然后输出图像中对象的标签,以及每种对象类别的概率。

网= googlenet;inputSize = net.Layers (1) .InputSize;一会= net.Layers .ClassNames(结束);numClasses =元素个数(类名);disp(类名(randperm (numClasses 10)))
{“快艇”}{“窗口”}{“等足类”}{“木勺”}{“唇膏”}{“鸭子”}{“鬣狗”}{“哑铃”}{“草莓”}{“奶油苹果”}

读取和调整图像大小

阅读并展示您想要分类的图像。

我= imread (“peppers.png”);图imshow(我)

要将这些数据导入Simulink模型,需要指定一个包含输入万博1manbetx图像数据和空时间矢量的结构变量。

思敏。时间= [];simin.signals.values =我;simin.signals.dimensions =大小(I);

万博1manbetxSimulink预测模型

给出了图万博1manbetx像分类的Simulink模型。模型使用从工作空间块来加载输入的图像图像分类器从对输入进行分类的“深度神经网络”库中提取数据块,并且显示块来显示预测输出。

模型=“googlenet_classifier”;open_system(模型);

运行仿真

要验证Simulink模型,请运万博1manbetx行仿真。

set_param(模型,“SimulationMode”,“正常”);sim(模型);

该网站将这张图片归类为“灯笼椒”。

显示前预测

以直方图的形式显示前5个预测标签及其相关概率。由于该网络将图像划分为如此多的对象类别,而且许多类别是相似的,因此在评估网络时,通常会考虑前五名的准确性。该网络将该图像归类为极有可能的甜椒。

成绩= yout.signals (1) . values (:,: 1);标签= yout.signals (2) . values (:,: 1);[~, idx] =排序(分数,“下”);idx = idx (5: 1:1);scoresTop =分数(idx);labelsTop =分裂(字符串(标签(idx)),“_”);labelsTop = labelsTop (:: 1);图imshow(I)标题(labelsTop(5) +”、“+ num2str (100 * scoresTop (5) +“%”));figure barh(scoresTop) xlim([0 1]) title(“5大预言”)包含(“概率”) yticklabels (labelsTop)