MATLAB Answers

Loading a DAGNetwork file from the workspace to Simulink

2 views (last 30 days)
Hassan Alkomy
Hassan Alkomy on 22 Jul 2021
Commented: Hassan Alkomy on 27 Jul 2021
After training YOLO v2, I have a DAGNetwork in the workspace. I want to send this to Simulink. I can't do this at all. All (From Workspace, Frome File, ... etc) options do not work.

Answers (1)

Pratyush Roy
Pratyush Roy on 27 Jul 2021
Hi Hassan,
Getting a deep network into Simulink in R2020a requires the use of Legacy Code Tool and S-functions. In order to make sure you have the appropriate support packages, you can install both of these:
Then, you can refer to this workflow:
for an example of how to get the 'detect_lane' function into Simulink. You can replace 'detect_lane' with a function which executes your neural network to import it into Simulink.
If you are interested in trying out the updated workflows in R2020b, you can simply load your deep networks as-normal from inside a MATLAB Function block. For example, to load YOLO inside a function block in R2020b, I would simply execute:
​​​​​​​persistent detectionnet;
if isempty(detectionnet)
detectionnet = coder.loadDeepLearningNetwork('yolo_tsr.mat','Detection');
end
The net is declared as persistent to ensure we do not load the net repeatedly each time the block is executed.
Hope this helps!
  1 Comment
Hassan Alkomy
Hassan Alkomy on 27 Jul 2021
Thank you, Pratyush.
Ok, let's say that I want to load the DAGNetwork and have it detect and classify different objects in real-time (Using a video capture block or soemthing similar). Would the S-functions and Legacy Code allow for real-time applications of deep learning or is there a specific code or function that is needed for this implementation?

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!