如何在Matlab2018b中将无人机图像数据集分为训练和测试以及有效零件以实现更快的R CNN

时间:2018-12-04 06:08:09

标签: matlab conv-neural-network

我有297张灰度图像,我想将它们分为3部分(训练测试和验证)。

当然,我编写了一些示例代码,例如以下MathWorks中的代码(使用更快的R-CNN深度学习进行对象检测)

    % Split data into a training and test set.
    idx = floor(0.6 * height(vehicleDataset));
    trainingData = vehicleDataset(1:idx,:);
    testData = vehicleDataset(idx:end,:);

但是Matlab 2018a显示以下错误

  

错误:“类型的输入参数的未定义函数'height'   '结构'。”

我想使用“ Faster R CNN”方法检测图像中的对象,并确定它们在图像中的位置。

1 个答案:

答案 0 :(得分:0)

假设您的图像保存在路径“ C:\ Users \ Student \ Desktop \ myImages”中 首先,创建一个imageDataStore对象来管理图像文件的集合。

datapath = "C:\Users\Student\Desktop\myImages";
imds = imageDatastore(datapath);%You may look at documentation for customizations.
[trainds,testds,valds] = splitEachLabel(imds,.6,.2);%Lets say 60% data for training, 20% for testing and 20% for validation

现在,在变量trainds中有训练数据,而变量testds中有测试数据。 您可以使用readimage检索每张图片,例如将火车设置为第5张图片;

im = readimage(trainds,5);