clc; clear all; close all;
warning off all;
% 获取字符集
fd = fullfile(pwd, 'images', 'dbx');
imds = imageDatastore(fd, ...
'IncludeSubfolders',true,'LabelSource','foldernames');
classes = categories(imds.Labels);
[imdsTrain,imdsValidation] = splitEachLabel(imds,rateTrainFiles,'randomize');
% 输入输出设置
image_size = [117 117 1];
class_number = length(classes);
% 数据维数对应
inputSize = layers(1).InputSize;
imdsTrain = augmentedImageDatastore(inputSize(1:2),imdsTrain,'ColorPreprocessing','rgb2gray');
augimdsValidation = augmentedImageDatastore(inputSize(1:2),imdsValidation,'ColorPreprocessing','rgb2gray');
% 设置训练参数
MaxEpochs = 10;
InitialLearnRate = 0.001;
MiniBatchSize = 50;
% 设置训练环境
ExecutionEnvironment = 'auto';
options_train = trainingOptions('sgdm',...
'MaxEpochs',MaxEpochs,...
'Verbose',true,'MiniBatchSize', MiniBatchSize,...
'Plots','training-progress',...
'ValidationData',augimdsValidation , ...
'ValidationFrequency',10, ...
'ExecutionEnvironment', ExecutionEnvironment);
net_file = 'cnn_net.mat';
if exist(net_file, 'file')
load(net_file);
else
% 训练保存
net = trainNetwork(imdsTrain, layers, options_train);
% 存储网络
save(net_file, 'net');
end
% 测试
while 1
filePath = OpenImageFile();
if isequal(filePath, 0)
break;
end
im = imread(filePath);
x = im;
% 维度对应
inputSize = layers(1).InputSize;
if ~isequal(size(x), inputSize(1:2))
x = imresize(x, inputSize(1:2), 'bilinear');
end
xw = zeros(inputSize(1),inputSize(2), 1, 1);
xw(:,:,1,1) = x(:,:,1);
t1 = cputime;
% 评测
yw = classify(net,xw);
t2 = cputime;
res = sprintf('\s\n识别结果为%s', t2-t1, char(yw));
figure(1); clf; imshow(im); title(res, 'FontSize', 16);
pause(1);
end
%% 欢迎沟通交流Q:3752243968
%% 欢迎沟通交流Q:3752243968
%% 欢迎沟通交流Q:3752243968
matlab基于CNN卷积神经网络猫狗猪动物识别系统.zip代码102
需积分: 1 196 浏览量
2024-04-21
13:26:56
上传
评论
收藏 791KB ZIP 举报
Matlab程序设计
- 粉丝: 15
- 资源: 105
最新资源
- html+css+'青春献礼二十大 红色旅游助乡村'为主题的网页设计 2022年参与学校网页设计比赛时完成的
- Unity 模型布尔运算插件
- eCANtools工具,CAN资料包
- 129335283047061xiazaigongjuxiang(去重软件).apk
- Android环境检测工具,检测ksu,lsp,magisk等
- WordPress后台美化插件QuarterAdmin分享
- PCB_Project单片机绘制 (2024-5-11 22-22-13).zip
- nccl-local-repo-ubuntu2204-2.21.5-cuda12.4-1.0-1-amd64
- STM32移植LVGL源码工程 stm32移植GUI-Guider源码 LVGL移植源码
- Screenshot_20240522_084328_com.tencent.mm.jpg
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈