Deep Learning and Simulink

3 views (last 30 days)
How can I create a block in Simulink that keeps a CNN already trained to classify? I wish it had photos of an Android camera as input.
  2 Comments
Pierclaudio Savino
Pierclaudio Savino on 22 May 2020
My problem is how to import a pretrained CNN in Simulink.

Sign in to comment.

Accepted Answer

Arkadiy Turevskiy
Arkadiy Turevskiy on 18 Oct 2021
Edited: Arkadiy Turevskiy on 28 Oct 2021
Starting with R2020b you can use Image Classifier block that ships with Deep Learning Toolbox.
For more information on how to use deep learning in Simulink, please see Deep Learning with Simulink doc page.
HTH.
Arkadiy

More Answers (1)

Dinesh Yadav
Dinesh Yadav on 24 Mar 2020
This can be done by adding a MATLAB function block to simulink model and inside that function block writing the implemenatation of your Deep Learning CNN architecture and then train the model for classification. As of now there are no pretrained models for Deep Learning in Simulink.
  1 Comment
Pierclaudio Savino
Pierclaudio Savino on 23 May 2020
I used the MATLAB function with the following code:
function out=mynetwork_predict(in)
out=zeros(1,3);
persistent mynet
if isempty(mynet)
mynet=coder.loadDeepLearningNetwork('crackNetwork.mat','crackNetwrok');
end
im=imresize(in,[227 227]);
out=mynet.predict(im);
When I try to simulate the model there are these errors:
Undefined function or variable 'dltargets.cudnn'.
P-code function 'DeepLearningNetwork.p' produced an error.
Component:MATLAB Function | Category:Coder error
Function call failed.
Function 'loadDeepLearningNetwork.m' (#42.3569.3643), line 100, column 15:
"coder.DeepLearningNetwork(coder.const(matfile), coder.const(''), param{:})"
Launch diagnostic report.
Component:MATLAB Function | Category:Coder error
Function call failed.
Function 'MATLAB Function' (#45.94.158), line 5, column 11:
"coder.loadDeepLearningNetwork('crackNetwork.mat','crackNetwrok')"
Launch diagnostic report.
Component:MATLAB Function | Category:Coder error
Persistent variable 'mynet' must be assigned before it is used. The only exception is a check using 'isempty(mynet)' that can be performed prior to assignment.
Function 'MATLAB Function' (#45.195.200), line 8, column 5:
"mynet"
Launch diagnostic report.
Component:MATLAB Function | Category:Coder error
Errors occurred during parsing of MATLAB function 'untitled/MATLAB Function'
Component:MATLAB Function | Category:Coder error
Errors occurred during parsing of MATLAB function 'untitled/MATLAB Function'

Sign in to comment.

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!