comparison scripts/train-object-classification.py @ 1228:5654c9173548

merged (bicycle)
author Nicolas Saunier <nicolas.saunier@polymtl.ca>
date Wed, 12 Jul 2023 13:21:08 -0400
parents d478d3122804
children
comparison
equal deleted inserted replaced
1227:eb3936809ea5 1228:5654c9173548
20 parser.add_argument('--confusion-matrix', dest = 'computeConfusionMatrix', help = 'compute the confusion matrix on the training data', action = 'store_true') 20 parser.add_argument('--confusion-matrix', dest = 'computeConfusionMatrix', help = 'compute the confusion matrix on the training data', action = 'store_true')
21 21
22 args = parser.parse_args() 22 args = parser.parse_args()
23 classifierParams = storage.ClassifierParameters(args.configFilename) 23 classifierParams = storage.ClassifierParameters(args.configFilename)
24 24
25 imageDirectories = {'pedestrian': args.directoryName + "/Pedestrians/", 25 imageDirectories = {moving.userTypeNames[2]: args.directoryName + "/Pedestrians/",
26 'bicycle': args.directoryName + "/Cyclists/", 26 moving.userTypeNames[4]: args.directoryName + "/Cyclists/",
27 'car': args.directoryName + "/Vehicles/"} 27 moving.userTypeNames[1]: args.directoryName + "/Vehicles/"}
28 28
29 trainingSamplesPBV = {} 29 trainingSamplesPBV = {}
30 trainingLabelsPBV = {} 30 trainingLabelsPBV = {}
31 trainingSamplesBV = {} 31 trainingSamplesBV = {}
32 trainingLabelsBV = {} 32 trainingLabelsBV = {}
37 37
38 for k, v in imageDirectories.items(): 38 for k, v in imageDirectories.items():
39 print('Loading {} samples'.format(k)) 39 print('Loading {} samples'.format(k))
40 trainingSamples, trainingLabels = cvutils.createHOGTrainingSet(v, moving.userType2Num[k], classifierParams.hogRescaleSize, classifierParams.hogNOrientations, classifierParams.hogNPixelsPerCell, classifierParams.hogBlockNorm, classifierParams.hogNCellsPerBlock) 40 trainingSamples, trainingLabels = cvutils.createHOGTrainingSet(v, moving.userType2Num[k], classifierParams.hogRescaleSize, classifierParams.hogNOrientations, classifierParams.hogNPixelsPerCell, classifierParams.hogBlockNorm, classifierParams.hogNCellsPerBlock)
41 trainingSamplesPBV[k], trainingLabelsPBV[k] = trainingSamples, trainingLabels 41 trainingSamplesPBV[k], trainingLabelsPBV[k] = trainingSamples, trainingLabels
42 if k != 'pedestrian': 42 if k != moving.userTypeNames[2]:
43 trainingSamplesBV[k], trainingLabelsBV[k] = trainingSamples, trainingLabels 43 trainingSamplesBV[k], trainingLabelsBV[k] = trainingSamples, trainingLabels
44 if k != 'car': 44 if k != moving.userTypeNames[1]:
45 trainingSamplesPB[k], trainingLabelsPB[k] = trainingSamples, trainingLabels 45 trainingSamplesPB[k], trainingLabelsPB[k] = trainingSamples, trainingLabels
46 if k != 'bicycle': 46 if k != moving.userTypeNames[4]:
47 trainingSamplesPV[k], trainingLabelsPV[k] = trainingSamples, trainingLabels 47 trainingSamplesPV[k], trainingLabelsPV[k] = trainingSamples, trainingLabels
48 48
49 # Training the Support Vector Machine 49 # Training the Support Vector Machine
50 print("Training Pedestrian-Cyclist-Vehicle Model") 50 print("Training Pedestrian-Cyclist-Vehicle Model")
51 model = ml.SVM(args.svmType, args.kernelType, args.degree, args.gamma, args.coef0, args.cvalue, args.nu, args.svmP) 51 model = ml.SVM(args.svmType, args.kernelType, args.degree, args.gamma, args.coef0, args.cvalue, args.nu, args.svmP)