这个例子展示了如何为Simulink®模型生成CUDA®代码,该模型可以检测和输出图像上的车道标记边界。金宝app本例以RGB图像作为输入,并使用imresize
,rgb2gray
,ordfilt2
(图像处理工具箱),脚腕
(图像处理工具箱),houghpeaks
(图像处理工具箱),houghlines
(图像处理工具箱)功能,是图像处理工具箱™的一部分,以检测车道标记。下面的例子利用houghlines函数对GPU进行车道检测.
这个例子演示了以下概念:
利用图像处理功能在Simulink中模拟车道检测应用。金宝app
配置GPU代码生成的型号。
为Simulink模型生成CUDA可执行文件。金宝app
要求
这个示例生成CUDA MEX,并具有以下第三方需求。
CUDA支持NVIDIA®GPU和兼容驱动程序。
可选
对于非mex构建,如静态、动态库或可执行文件,本示例有以下额外需求。
英伟达工具包。
编译器和库的环境变量。有关详细信息,请参见第三方硬件和设置必备产品下载188bet金宝搏.
要验证运行此示例所需的编译器和库是否正确设置,请使用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”);
在代码生成窗格中,选择语言作为c++并使生成GPU的代码.
开放模拟目标窗格。在先进的参数,使动态内存分配阈值的MATLAB函数.有关详细信息,请参见MATLAB中的动态内存分配函数(金宝app模型)
开放代码生成> GPU代码窗格。在子类别库,使cuBLAS,cuSOLVER和cuFFT.
使用Simulink工具在主机GPU上生成并构金宝app建Simulink模型slbuild
命令。代码生成器将文件放置在建立文件夹,命名为lane_detection_ert_rtw
在当前工作目录下。
状态= evalc (“slbuild (lane_detection)”);
关闭Simulink金宝app模型。
close_system (“lane_detection”);
open_system
(金宝app模型)|load_system
(金宝app模型)|save_system
(金宝app模型)|close_system
(金宝app模型)|bdclose
(金宝app模型)|get_param
(金宝app模型)|set_param
(金宝app模型)|sim卡
(金宝app模型)|slbuild
(金宝app模型)