主要内容

Simulink中用于车道检测的GPU代码生成金宝app

这个例子展示了如何为Simulink®模型生成CUDA®代码,该模型可以检测和输出图像上的车道标记边界。金宝app本例以RGB图像作为输入,并使用imresizergb2grayordfilt2(图像处理工具箱)脚腕(图像处理工具箱)houghpeaks(图像处理工具箱),houghlines(图像处理工具箱)功能,是图像处理工具箱™的一部分,以检测车道标记。下面的例子利用houghlines函数对GPU进行车道检测

这个例子演示了以下概念:

  • 利用图像处理功能在Simulink中模拟车道检测应用。金宝app

  • 配置GPU代码生成的型号。

  • 为Simulink模型生成CUDA可执行文件。金宝app

第三方的先决条件

要求

这个示例生成CUDA MEX,并具有以下第三方需求。

  • CUDA支持NVIDIA®GPU和兼容驱动程序。

可选

对于非mex构建,如静态、动态库或可执行文件,本示例有以下额外需求。

验证GPU环境

要验证运行此示例所需的编译器和库是否正确设置,请使用coder.checkGpuInstall函数。

envCfg = coder.gpuEnvConfig (“主机”);envCfg。BasicCodegen = 1;envCfg。安静= 1;coder.checkGpuInstall (envCfg);

车道检测使用houghlines金宝app仿真软件模型

给出了车金宝app道检测的Simulink模型。

open_system (“lane_detection”);

车道检测子系统包含一个MATLAB函数以强度图像作为输入,并提供检测到的通道作为输出的块。本函数是基于车道检测算法实现使用的houghlines中描述的利用houghlines函数对GPU进行车道检测的例子。当模型运行时,可视化块显示车道检测到的输出图像。

运行仿真

打开“配置参数”对话框。

模拟目标窗格中,选择GPU加速

在正常模式下运行模拟。

set_param (“lane_detection”“SimulationMode”“正常”);sim卡(“lane_detection”);

生成和构建Simulink模型金宝app

代码生成窗格中,选择语言作为c++并使生成GPU的代码

开放模拟目标窗格。在先进的参数,使动态内存分配阈值的MATLAB函数.有关详细信息,请参见MATLAB中的动态内存分配函数(金宝app模型)

开放代码生成> GPU代码窗格。在子类别,使cuBLAScuSOLVERcuFFT

使用Simulink工具在主机GPU上生成并构金宝app建Simulink模型slbuild命令。代码生成器将文件放置在建立文件夹,命名为lane_detection_ert_rtw在当前工作目录下。

状态= evalc (“slbuild (lane_detection)”);

清理

关闭Simulink金宝app模型。

close_system (“lane_detection”);

另请参阅

功能

相关的话题