Как обучить нейронную сеть с функциями, извлеченными из LBP и тестировать в Matlab? - PullRequest
0 голосов
/ 30 ноября 2018

Я извлек функции из трех категорий транспортных средств, содержащих 100 изображения в каждой.У меня есть три отдельные папки, включая велосипед, автомобиль и мотоцикл в моем наборе данных.Они находятся в каталоге 'набор данных \ trainSet' .У меня есть 60 изображений в другом каталоге 'dataset \ testSet' для проверки и распознавания транспортного средства.Я искал документацию mathworks.com , но я не понимаю, как использовать нейронную сеть в моем примере кода Matlab.

Теперь мне нужно
1. Обучитьнейронная сеть с функциями, извлеченными с помощью lbp
2. Проверьте каждое изображение из каталога, который я упомянул выше
3. Классифицируйте входное изображение среди трех категорий транспортных средств и распознайте

Ниже приведен пример вывода, которыйМне нужно после распознавания входного изображения:
enter image description here

Ниже приведен мой пример кода ==>

%%Clearing
clear all;
close all;
clc

%input = imread('dataset\testSet\14.JPG');
%%Importing Training Dataset
imSet = imageSet('dataset\trainSet','recursive');
[imSet.Count]

%%Prepare Training Sets
minSetCount = min([imSet.Count]);
trainingSet = partition(imSet, minSetCount, 'randomize');
[trainingSet.Count]

%%Copy to individual category
bicycleData = trainingSet(1);
carData = trainingSet(2);
motorbikeData = trainingSet(3);

% Create a cell array to store features per image.
bicycleFeatures = cell(size(bicycleData.ImageLocation));
image = imread(bicycleData.ImageLocation{1});
bicycleFeatures{1} = extractLBPFeatures(rgb2gray(image));
netBicycleFeatures = bicycleFeatures{1};

carFeatures = cell(size(carData.ImageLocation));
image = imread(carData.ImageLocation{1});
carFeatures{1} = extractLBPFeatures(rgb2gray(image));
netCarFeatures = carFeatures{1};

motorbikeFeatures = cell(size(motorbikeData.ImageLocation));
image = imread(motorbikeData.ImageLocation{1});
motorbikeFeatures{1} = extractLBPFeatures(rgb2gray(image));
netMotorbikeFeatures = motorbikeFeatures{1};

for i = 2:length(bicycleFeatures)
    % Read in individual image, and convert to grayscale to extract features.
    image = imread(bicycleData.ImageLocation{i});
    bicycleFeatures{i} = extractLBPFeatures(rgb2gray(image));

    image = imread(carData.ImageLocation{i});
    carFeatures{i} = extractLBPFeatures(rgb2gray(image));

    image = imread(motorbikeData.ImageLocation{i});
    motorbikeFeatures{i} = extractLBPFeatures(rgb2gray(image));

    netBicycleFeatures = netBicycleFeatures + bicycleFeatures{i};
    netCarFeatures = netCarFeatures + carFeatures{i};
    netMotorbikeFeatures = netMotorbikeFeatures + motorbikeFeatures{i};
end

%inputFeature = extractLBPFeatures(rgb2gray(input));
netBicycleFeatures = netBicycleFeatures / length(bicycleFeatures);
netCarFeatures = netCarFeatures / length(carFeatures);
netMotorbikeFeatures = netMotorbikeFeatures / length(motorbikeFeatures);

%%Display Histogram
bar([netBicycleFeatures; netCarFeatures; netMotorbikeFeatures]','grouped')
title('LBP Features Of Bicycle, Car and Motorbike');
xlabel('LBP Histogram Binaries');
legend('Bicycle TrainingSet','Car TrainingSet','Motorbike TrainingSet');

%Train & Test a neural network and classify the input

Пожалуйста, помогите мне с моим реализованным примером кода.

...