学习如何使用Simulink金宝app®设计复杂的系统,包括决策逻辑、控制器、传感器融合、车辆动力学和3D可视化组件。
从版本2020b开始,您可以将深度学习网络合并到您的Simulink模型中,以执行系统级模拟和部署。金宝app
学习如何在ARM上的Simulink中使用基于YOLO v2的深度学习网络运行车道和车辆检测器的模拟金宝app®皮质®-A和英特尔®cpu。Simu金宝applink模型包括预处理和后处理组件,用于执行调整传入视频大小、检测坐标和在检测到的车辆周围绘制边界框等操作。使用相同的Simulink模金宝app型,您可以使用ARM计算库或Intel mml - dnn (oneDNN)生成优化的c++代码,以针对ARM Cortex-A和Intel cpu。
金宝appSimulink是一个值得信赖的工具,可用于设计复杂系统,包括决策逻辑和控制器、传感器融合、车辆动力学和3D可视化组件。从2020b版本开始,您可以将深度学习网络合并到您的Simulink模型中,以执行系统级仿真和部署。金宝app如果我们看一下车辆车道检测子系统,我们会看到两个深度学习网络的使用。现在输入视频就会进去。我们将做一些预处理来调整图像的大小。
从那里,它被发送到车道检测器,我们可以看到车道检测器在mat文件中被定义。从那里,我们将发送它进行一些后处理,以检测坐标,然后在输出视频中绘制左右车道。现在,并行地,输入视频也将被发送到第二个深度学习网络,yolov2网络,在这里你可以看到在MATLAB函数块中的mat文件中定义。从那里,我们将再次发送它来做一些注释,以在检测到的车辆周围绘制边界框。这是一个在CPU上运行的模拟。
帧速率有点低,但输入视频在左边,输出视频在右边。你可以看到我们正在检测左右车道,用绿色突出显示,并在我们看到的车辆周围画出边界框。现在,我们已经为代码生成做好了准备,因此我们可以启动Simulink Coder或Embedded Coder应用程序。金宝app在本例中,我们将启动嵌入式编码器,并进入配置参数。在顶部,您将看到适当的系统目标文件。
我们将深度学习网络的语言设置为c++,在这里的底部,你可以看到我们正在使用Microsoft Visual c++工具链。在接口下,我们可以指定深度学习网络。目标库,我们可以选择mml - dnn的英特尔cpu或ARM计算库的ARM Cortex-A处理器。在这种情况下,我们会保留mml - dnn这样我们就可以在英特尔CPU上运行它,然后生成代码。这是代码生成报告。
我们先来看阶跃函数。我往下滚动一点。在这里你可以看到我们为两个深度学习网络中的第一个调用推理的部分代码。现在让我们来看看深度学习网络是如何定义的。这是一个用于LaneNet的,在这里你可以看到一组公共和私有方法——设置、预测和清理。
现在我们还可以看看第二个深度学习网络,yolov2网络。这里我们有一组类似的公共和私有方法——设置、预测、额外激活和清除。如果我们愿意,我们可以查看设置内部,它在程序开始时被加载一次。在这里,你可以看到深度学习网络一次被加载在一个层中。当我们处理每一层时,我们也加载了权重和偏差。
以上就是在Simulink中为cpu(如Intel和ARM处理器)从深度学习网络生成代码的简单介绍。金宝app欲了解更多信息,请查看下面的链接。
您也可以从以下列表中选择一个网站:
选择中国站点(中文或英文)以获得最佳站点性能。其他MathWorks国家站点没有针对您所在位置的访问进行优化。