主要内容

深度和语义分割可视化使用虚幻引擎仿真

此示例演示如何在模拟环境中可视化从摄影机传感器捕获的深度和语义分割数据。此环境使用Epic Games®中的Unreal Engine®渲染。

您可以使用深度可视化来验证传感器的深度估计算法。您可以使用语义分割可视化来分析用于从虚幻引擎环境生成合成语义分割数据的分类方案。

模型设置

本例中使用的模型模拟了城市场景中的车辆驾驶。

深度可视化

深度贴图是相机传感器输出的灰度表示。这些贴图以灰度显示相机图像,较亮的像素表示距离传感器较远的对象。您可以使用深度贴图验证传感器的深度估计算法。

这个深度仿真3D摄像机模块的端口输出一个深度图的值范围为0到1000米。在这个模型中,为了更好的能见度,饱和度块将深度输出饱和到最大150米。然后,一个增益块将深度图缩放到范围[0,1],以便to Video Display块可以以灰度显示深度图。

语义分割可视化

语义分割描述将图像的每个像素与类标签关联的过程,例如,建筑物交通标志。在3D仿真环境中,您可以根据标签分类方案生成合成语义分段数据。然后,您可以使用这些标签为无人机飞行应用(如着陆区识别)训练神经网络。通过可视化语义分段数据,您可以验证您的分类方案。

这个标签模拟3D摄影机块的端口为输出摄影机图像中的每个像素输出一组标签。每个标签对应一个对象类。例如,在块使用的默认分类方案中,1.对应于建筑物。的标签0引用未知类的对象并显示为黑色。有关标签ID及其相应对象描述的完整列表,请参阅标签上的端口说明模拟三维摄像机块引用页。

MATLAB®功能块使用label2rgb(图像处理工具箱)函数将标签转换为RGB三元组矩阵以进行可视化。colormap基于CamVid数据集中使用的颜色,如中所示基于深度学习的语义分割(计算机视觉工具箱)实例颜色映射到默认的非真实引擎模拟场景中使用的预定义标签ID。辅助函数sim3dColormap定义颜色映射。检查这些颜色映射值。

打开sim3dColormap.m

模型模拟

运行模型。

模拟(“uav_ue4_depth_imaging.slx”);

当模拟开始时,可视化引擎可能需要几秒钟才能初始化,尤其是在您第一次运行它时马修斯航空公司窗口显示来自场景原点的场景。在该场景中,四旋翼无人机沿一个城市街区飞行一小段距离。

摄像头显示,深度显示和语义分割显示块显示从摄像头传感器的输出。

要更改输出深度数据的可视化范围,请尝试更新饱和度和增益块中的值。

要更改语义分割颜色,请尝试修改sim3dColormap功能。或者,在无人机中label2rgb在MATLAB功能块中,尝试用您自己的颜色映射或预定义的颜色映射替换输入颜色映射。请参阅colormap.

另见

||