-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathexperiment.m
More file actions
111 lines (100 loc) · 2.39 KB
/
experiment.m
File metadata and controls
111 lines (100 loc) · 2.39 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
% Import svm library
importDependencies();
% Define class labels
class_labels = { 'airplanes'; 'barrel'; 'bonsai'; 'brontosaurus'; 'camera';
'ceiling_fan'; 'anchor'; 'binocular'; 'brain'; 'butterfly';
'car_side'; 'cellphone'};
% Load data sets
[trainingSet,trainingLabels,testSet,testLabels] = ...
sampleData(getDatabank(class_labels));
requests = {};
% Features to extract
requests{1} = {
@roundness 'Default';
};
requests{2} = {
@elongation 'Default';
};
requests{3} = {
@rectangularity 'Default';
};
requests{4} = {
@solidity 'Default';
};
requests{5} = {
@curveness 'Default'
};
requests{6} = {
@HOG 'Default';
};
requests{7} = {
@roundness 'Default';
@elongation 'Default';
};
requests{7} = {
@elongation 'Default';
@rectangularity 'Default';
};
requests{8} = {
@roundness 'Default';
@elongation 'Default';
@rectangularity 'Default';
};
requests{9} = {
@roundness 'Default';
@elongation 'Default';
@solidity 'Default';
};
requests{10} = {
@roundness 'Default';
@elongation 'Default';
@rectangularity 'Default';
@solidity 'Default';
};
requests{11} = {
@roundness 'Default';
@HOG 'Default';
}
requests{12} = {
@elongation 'Default';
@HOG 'Default';
}
requests{13} = {
@rectangularity 'Default';
@HOG 'Default';
}
requests{14} = {
@HOG 'Default';
@solidity 'Default';
};
requests{15} = {
@roundness 'Default';
@elongation 'Default';
@rectangularity 'Default';
@HOG 'Default';
@solidity 'Default';
};
requests{16} = {
@roundness 'Default';
@elongation 'Default';
@rectangularity 'Default';
@HOG 'Default';
@solidity 'Default';
@curveness 'Default'
}
for i=1:numel(requests)
fprintf('**************************************** EXPERIMENT %d ****************************************\n',i);
request = requests{i};
disp('Request:');
disp(request);
% Extract Features
testFeatures = extractFeature(request, testSet);
trainingFeatures = extractFeature(request, trainingSet);
% Train classifier
classifier = trainsvm(trainingFeatures, trainingLabels, class_labels);
% Predict test
[predLabels, stats] = predictsvm(classifier, testFeatures, ...
testLabels, class_labels);
% Show statistics
showStatistics(stats, class_labels, predLabels, testLabels);
end