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