主要内容

image

显示图像

需要附加功能:此功能需要 MATLAB Coder Support Package for NVIDIA Jetson and NVIDIA DRIVE Platforms 附加功能。

说明

image(imDispObj,img) 在 NVIDIA DRIVE® 或 Jetson™ 目标桌面上显示图像 img。此功能需要在目标平台上安装 Simple DirectMedia Layer (SDL) 库。有关详细信息,请参阅为 NVIDIA 板生成代码的前提条件

当在 MATLAB® 环境中的仿真期间使用 image 函数时,它使用 imshow (Image Processing Toolbox) 函数在主机上显示图像。

示例

示例

全部折叠

此示例说明如何使用 imageDisplay 在 NVIDIA® Jetson TX2 目标上显示图像。此示例需要连接到 NVIDIA 目标的 USB 摄像头。

使用 jetson 函数创建一个从 MATLAB 软件到 NVIDIA 硬件的实时硬件连接。要创建一个实时硬件连接对象,请提供目标板的主机名或 IP 地址、用户名和密码。例如:

hwobj = jetson('jetson-board-name','ubuntu','ubuntu');

创建一个 MATLAB 函数 liveCapture.m,该函数连接到 Jetson TX2 板上的网络摄像头并在板上显示图像。此函数充当代码生成的入口函数

function liveCapture() %#codegen

% To enable code generation for hardware interfaces
hwobj = jetson;
w = webcam(hwobj,1,[1280 800]);
d = imageDisplay(hwobj);

for k = 1:2000
    % Capture the image from the webcam on hardware.
    img = snapshot(w);
    % Display image.
    image(d,img);
end

创建一个用于生成可执行文件的 GPU 代码配置对象。使用 coder.hardware 函数为 Jetson 平台创建一个配置对象,并将其赋给代码配置对象 cfgHardware 属性。

cfg = coder.gpuConfig('exe');
cfg.GenerateReport = true;
cfg.Hardware = coder.hardware('NVIDIA Jetson');
cfg.GenerateExampleMain = 'GenerateCodeAndCompile';

main.cu 文件作为代码生成过程的一部分生成。对于此示例,您可以直接使用此文件而无需修改。

要生成 CUDA 代码,请使用 codegen 命令并传递 GPU 代码配置对象以及 liveCapture 入口函数。在主机上进行代码生成后,生成的文件将被复制到目标并在其上进行编译。

codegen -config cfg liveCapture

使用 runApplication 函数在 TX2 板上启动可执行文件。

runApplication(hwobj,'liveCapture');

输入参数

全部折叠

System object™ 用于在目标桌面上显示图像。要显示图像,请使用 imDispObj 对象的 image 函数。

输入图像,指定为 m×nm×n×3 数值数组。当图像是二维矩阵 m×n 时,图像以灰度显示。

数据类型: uint8

扩展功能

全部展开

C/C++ 代码生成
使用 MATLAB® Coder™ 生成 C 代码和 C++ 代码。

GPU 代码生成
使用 GPU Coder™ 为 NVIDIA® GPU 生成 CUDA® 代码。

版本历史记录

在 R2018b 中推出