clc;
clear;
close all;
warning off;
addpath(genpath(pwd));
rng('default');
digitDatasetPath = fullfile('NewData');
digitData = imageDatastore(digitDatasetPath,'IncludeSubfolders',true,'LabelSource','foldernames');
figure;
perm = randperm(3000,20);
for i = 1:20
subplot(4,5,i);
imshow(digitData.Files{perm(i)});
end
trainNumFiles = 0.85;
[trainDigitData,valDigitData] = splitEachLabel(digitData,trainNumFiles);
%Define the convolutional neural network architecture.
layers = [
imageInputLayer([48 12 1])
convolution2dLayer(3,16,'Padding',1)
batchNormalizationLayer
reluLayer
maxPooling2dLayer(2,'Stride',2)
%dropoutLayer(0.5)
convolution2dLayer(3,32,'Padding',1)
batchNormalizationLayer
reluLayer
maxPooling2dLayer(2,'Stride',2)
%dropoutLayer(0.5)
convolution2dLayer(3,64,'Padding',1)
batchNormalizationLayer
reluLayer
maxPooling2dLayer(2,'Stride',2)
convolution2dLayer(3,128,'Padding',1)
batchNormalizationLayer
reluLayer
fullyConnectedLayer(9)
softmaxLayer
classificationLayer];
options = trainingOptions('sgdm',...
'MaxEpochs',20, ...
'ValidationData',valDigitData,...
'ValidationFrequency',30,...
'Verbose',false,...
'Plots','training-progress');
net = trainNetwork(trainDigitData,layers,options);
predictedLabels = classify(net,trainDigitData);
valLabels = trainDigitData.Labels;
accuracy = sum(predictedLabels == valLabels)/numel(valLabels) *100
%test
digitDatasetPath = fullfile('NewData');
digitData = imageDatastore(digitDatasetPath,'IncludeSubfolders',true,'LabelSource','foldernames');
real_labels=digitData.Labels;
figure;
perm = randperm(3000,20);
for i = 1:20
subplot(4,5,i);
imshow(digitData.Files{perm(i)});
realL=real_labels(perm(i));
I=imread(digitData.Files{perm(i)});
predictedLabels = classify(net,I);
Lidx=double(predictedLabels);
Label={'1','2','3','4','5','6','7','8','9'};
title(['CNN=',Label{Lidx}])
ylabel(['Real=',Label{realL}])
end
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
1.领域:matlab,CNN卷积神经网络的目标分类算法 2.内容:基于CNN卷积神经网络的目标分类训练和测试matlab仿真【含操作视频】 3.用处:用于CNN卷积神经网络的目标分类算法编程学习 4.指向人群:本硕博等教研学习使用 5.运行注意事项: 使用matlab2021a或者更高版本测试,运行里面的Runme_.m文件,不要直接运行子函数文件。运行时注意matlab左侧的当前文件夹窗口必须是当前工程所在路径。 具体可观看提供的操作录像视频跟着操作。
资源推荐
资源详情
资源评论
收起资源包目录
基于CNN卷积神经网络的目标分类训练和测试matlab仿真【含操作视频】 (2000个子文件)
操作录像0030.avi 8.01MB
234.jpg 609B
65.jpg 609B
210.jpg 609B
2.jpg 609B
199.jpg 609B
15.jpg 609B
92.jpg 609B
248.jpg 609B
181.jpg 609B
138.jpg 609B
49.jpg 609B
87.jpg 609B
253.jpg 609B
188.jpg 609B
133.jpg 609B
352.jpg 609B
252.jpg 609B
103.jpg 609B
14.jpg 609B
174.jpg 609B
178.jpg 609B
59.jpg 609B
222.jpg 609B
277.jpg 609B
48.jpg 609B
349.jpg 609B
99.jpg 609B
8.jpg 609B
367.jpg 609B
213.jpg 609B
206.jpg 609B
142.jpg 609B
110.jpg 609B
354.jpg 609B
27.jpg 609B
113.jpg 609B
219.jpg 609B
306.jpg 609B
109.jpg 609B
273.jpg 609B
315.jpg 609B
144.jpg 609B
223.jpg 609B
26.jpg 609B
130.jpg 609B
61.jpg 609B
364.jpg 609B
205.jpg 609B
358.jpg 609B
43.jpg 609B
118.jpg 609B
344.jpg 609B
238.jpg 609B
265.jpg 609B
226.jpg 609B
1.jpg 609B
377.jpg 609B
35.jpg 609B
145.jpg 609B
139.jpg 609B
63.jpg 609B
177.jpg 609B
62.jpg 609B
6.jpg 609B
165.jpg 609B
276.jpg 609B
182.jpg 609B
100.jpg 609B
208.jpg 609B
209.jpg 609B
60.jpg 609B
321.jpg 609B
69.jpg 609B
317.jpg 609B
97.jpg 609B
42.jpg 609B
25.jpg 609B
212.jpg 609B
336.jpg 609B
215.jpg 609B
186.jpg 609B
316.jpg 609B
155.jpg 609B
132.jpg 609B
200.jpg 609B
294.jpg 609B
166.jpg 609B
375.jpg 609B
5.jpg 609B
288.jpg 609B
249.jpg 609B
279.jpg 609B
168.jpg 609B
356.jpg 609B
340.jpg 609B
83.jpg 609B
263.jpg 609B
86.jpg 609B
304.jpg 609B
共 2000 条
- 1
- 2
- 3
- 4
- 5
- 6
- 20
fpga和matlab
- 粉丝: 17w+
- 资源: 2621
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
- 1
- 2
前往页