主要内容

writeFrames

地面实况信号帧数据写入到磁盘

自从R2020a

描述

文件名= writeFrames (gTruth,signalNames,位置)写到地面真实信号的帧源指定的文件夹位置。函数返回包含框架编写的文件的名称。文件名包含一个指定的文件名/信号signalNamesgroundTruthMultisignal指定的对象gTruth

使用这些写框架和相关的标签从地面真理gatherLabelData函数作为机器学习的训练数据或深度学习模型。

例子

文件名= writeFrames (gTruth,signalNames,位置,时间戳)指定要写信号帧的时间戳。获得信号的时间戳,可以使用gatherLabelData函数。

文件名= writeFrames (___,名称,值)使用一个或多个名称-值对参数指定选项,除了任何输入参数组合从以前的语法。例如,您可以指定前缀和文件类型扩展名的文件名写框架。

例子

全部折叠

收集标签数据的视频信号和激光雷达点云序列信号从一个groundTruthMultisignal对象。写相关的信号帧标签数据到磁盘和可视化框架。

添加点云序列MATLAB®文件夹路径搜索路径。视频已经在MATLAB搜索路径。

pcSeqDir = fullfile (toolboxdir (“开车”),“drivingdata”,“lidarSequence”);目录(pcSeqDir);

加载一个groundTruthMultisignal对象,该对象包含标签数据的视频和激光雷达点云序列。

data =负载(“MultisignalGTruth.mat”);gTruth = data.gTruth;

指定要收集标签数据的信号。

signalNames = [“video_01_city_c2s_fcw_10s”“lidarSequence”];

视频包含矩形标签,而激光雷达点云序列包含长方体标签。收集矩形标签从视频和长方体标签从激光雷达点云序列。

(labelType labelTypes =。矩形labelType.Cuboid];[labelData,时间戳]= gatherLabelData (gTruth、signalNames labelTypes);

显示标签的前八行数据从两个信号。这两个信号包含数据标签。在视频中,标签是被描绘成一个矩形边界框。在激光雷达点云序列标签是被描绘成一个长方体包围盒。

videoLabelSample =头(labelData {1}) lidarLabelSample =头(labelData {2})
videoLabelSample =表车_________________ {[299 213 42 33]}lidarLabelSample =表车____________________________________________________ {[17.7444 6.7386 3.3291 3.6109 3.2214 3.5583 0 0 0]}

写与聚集相关联的信号帧标签数据到临时文件夹位置,用一个文件夹/信号。使用返回的时间戳gatherLabelData编写函数来表示信号帧。

outputFolder = fullfile (tempdir, (“videoFrames”“lidarFrames”]);文件名= writeFrames (gTruth, signalNames outputFolder,时间戳);
写2帧从以下信号:* video_01_city_c2s_fcw_10s * lidarSequence

加载视频信号帧使用写的imageDatastore对象。通过使用加载矩形标签相关的数据boxLabelDatastore对象。

imd = imageDatastore(文件名{1});建筑物= boxLabelDatastore (labelData {1});

加载写框架通过使用激光雷达信号fileDatastore对象。通过使用一个负载相关的长方体标签数据boxLabelDatastore对象。

fds = fileDatastore(文件名{2},“ReadFcn”,@pcread);cld = boxLabelDatastore (labelData {2});

可视化视频帧用写的vision.VideoPlayer对象。可视化书面通过使用激光雷达帧pcplayer对象。

放像机= vision.VideoPlayer;ptCloud =预览(fds);ptCloudPlayer = pcplayer (ptCloud.XLimits ptCloud.YLimits ptCloud.ZLimits);hasdata (imd)%读视频和激光雷达帧。我=读(imd);ptCloud =阅读(fds);%可视化视频和激光雷达帧。放像机(我);视图(ptCloudPlayer ptCloud);结束

删除点云序列文件夹的路径。

rmpath (pcSeqDir);

输入参数

全部折叠

Multisignal地面实况数据,指定为一个groundTruthMultisignal对象或向量的groundTruthMultisignal对象。

的名字写的信号帧,指定为一个特征向量,字符串标量,单元阵列的特征向量,或字符串向量。中存储的信号名称必须是有效信号名称输入multisignal地面实况数据,gTruth

获得的信号从一个名字groundTruthMultisignal对象,使用这种语法,gTruth是对象的变量名:

gTruth.DataSource.SignalName

例子:“video_01_city_c2s_fcw_10s”

例子:“video_01_city_c2s_fcw_10s”

例子:{“video_01_city_c2s_fcw_10s”、“lidarSequence”}

例子:[" video_01_city_c2s_fcw_10s”“lidarSequence”)

文件夹的位置写框架,作为一个指定——- - - - - -N字符串或一个矩阵——- - - - - -N单元阵列的特征向量,地点:

  • 的数量是groundTruthMultisignal对象gTruth

  • N信号的数量吗signalNames

  • 位置(m, n)(对于矩阵输入)或位置{m, n}(单元阵列输入)包含的frame-writing文件夹位置nth的信号signalNames这是在thgroundTruthMultisignal的对象gTruth

您可以指定文件夹位置相对路径或完整的文件路径。如果不存在任何指定文件夹的位置,writeFrames函数创建文件夹。所有文件夹的位置必须是唯一的。如果文件已经存在于一个指定的文件夹位置,和现有的文件是可写的,那么writeFrames功能覆盖它们。

时间戳的框架写,指定为一个持续时间向量或一个——- - - - - -N单元阵列的持续时间向量,地点:

  • 的数量是groundTruthMultisignal对象gTruth

  • N信号的数量吗signalNames

  • 时间戳{m, n}包含的时间戳nth的信号signalNames这是在thgroundTruthMultisignal的对象gTruth

如果你是只有一个信号,一个写作框架groundTruthMultisignal对象,指定时间戳作为一个单独的持续时间向量。

默认情况下,writeFrames函数写所有信号帧。当一个信号没有一个框架在指定时间戳,函数写框架之前最近的时间戳。

名称-值参数

指定可选的双参数作为Name1 = Value1,…,以=家,在那里的名字参数名称和吗价值相应的价值。名称-值参数必须出现在其他参数,但对的顺序无关紧要。

R2021a之前,用逗号来分隔每一个名称和值,并附上的名字在报价。

例子:“NamePrefix”,“视频”“激光”,“文件类型”,(“png”“厚度”)写视频帧的文件名格式video_001.png,video_002.png等等,和写激光雷达帧格式的文件名lidar_001.ply,lidar_002.ply,等等。

为每个信号文件名前缀signalNames,指定为逗号分隔两人组成的“NamePrefix”和一个特征向量,字符串标量,单元阵列的特征向量,或字符串向量。

的每个元素“NamePrefix”指定文件类型的信号在相应的位置signalNames。默认情况下,“NamePrefix”每个信号的名称吗signalNames

文件类型为每个信号signalNames,指定为逗号分隔两人组成的“文件类型”和一个特征向量,字符串标量,单元阵列的特征向量,或字符串向量。

的每个元素“文件类型”指定文件类型的信号在相应的位置signalNames。使用这个名称-值对参数来指定文件扩展名的书面文件的名字。

支持的文万博1manbetx件类型信号取决于信号的类型图像PointCloud

信号类型 万博1manbetx支持的文件类型
图像 所有支持的文件类型万博1manbetximwrite函数
PointCloud

“纤毛运动”“厚度”

点云数据(PCD)和多边形(厚度)文件编写使用二进制编码。这些文件格式的更多细节,请参阅pcwrite函数。

查看信号类型存储在一个信号groundTruthMultisignal对象,gTruth使用这段代码:

gTruth.DataSource.SignalType

例子:“文件类型”、“png”

例子:“文件类型”,“png”

例子:“文件类型”,{“png”、“厚度”}

例子:“文件类型”,(“png”“厚度”)

显示在MATLAB写作进展信息®命令行指定为逗号分隔组成的“详细”和逻辑1(真正的)或0()。

输出参数

全部折叠

文件的名字写框架,作为一个返回——- - - - - -N单元阵列的字符串向量,地点:

  • 的数量是groundTruthMultisignal对象gTruth

  • N信号的数量吗signalNames

  • 文件名{m, n}包含文件名的帧nth的信号signalNames这是在thgroundTruthMultisignal的对象gTruth

每个信号返回的文件名字符串列向量,其中每个行包含文件名写框架。如果你指定的输入时间戳写,然后每个文件的名字代表了一个帧的时间戳在相应的位置时间戳

每个输出文件命名NamePrefix_UID文件类型,地点:

  • NamePrefix是文件名前缀。设置文件名前缀,使用“NamePrefix”名称-值对的论点。

  • UID是独特的整数索引为每个框架写的。的writeFrames这些指数函数生成。

  • 文件类型是文件类型扩展名。设置文件类型扩展,使用“文件类型”名称-值对的论点。

版本历史

介绍了R2020a