comparison scripts/classify-objects.py @ 791:1158a6e2d28e dev

temporary solution for classification, with corrected svm.cpp and ml.hpp for loading saved classifiers
author Nicolas Saunier <nicolas.saunier@polymtl.ca>
date Fri, 29 Apr 2016 16:07:35 -0400
parents 5b970a5bc233
children b1b624504388
comparison
equal deleted inserted replaced
788:5b970a5bc233 791:1158a6e2d28e
2 2
3 import cvutils, moving, ml, storage 3 import cvutils, moving, ml, storage
4 4
5 import numpy as np 5 import numpy as np
6 import sys, argparse 6 import sys, argparse
7 from cv2 import SVM_RBF, SVM_C_SVC 7 from cv2.ml import SVM_RBF, SVM_C_SVC
8 import cv2 8 import cv2
9 from scipy.stats import norm, lognorm 9 from scipy.stats import norm, lognorm
10 10
11 # TODO add mode detection live, add choice of kernel and svm type (to be saved in future classifier format) 11 # TODO add mode detection live, add choice of kernel and svm type (to be saved in future classifier format)
12 12
33 databaseFilename = params.databaseFilename 33 databaseFilename = params.databaseFilename
34 34
35 params.convertToFrames(3.6) 35 params.convertToFrames(3.6)
36 if params.homography is not None: 36 if params.homography is not None:
37 invHomography = np.linalg.inv(params.homography) 37 invHomography = np.linalg.inv(params.homography)
38 else:
39 invHomography = None
38 40
39 if params.speedAggregationMethod == 'median': 41 if params.speedAggregationMethod == 'median':
40 speedAggregationFunc = np.median 42 speedAggregationFunc = np.median
41 elif params.speedAggregationMethod == 'mean': 43 elif params.speedAggregationMethod == 'mean':
42 speedAggregationFunc = np.mean 44 speedAggregationFunc = np.mean
72 #features = storage.loadTrajectoriesFromSqlite(databaseFilename, 'feature') 74 #features = storage.loadTrajectoriesFromSqlite(databaseFilename, 'feature')
73 intervals = [] 75 intervals = []
74 for obj in objects: 76 for obj in objects:
75 #obj.setFeatures(features) 77 #obj.setFeatures(features)
76 intervals.append(obj.getTimeInterval()) 78 intervals.append(obj.getTimeInterval())
77 timeInterval = moving.unionIntervals(intervals) 79 timeInterval = moving.TimeInterval.unionIntervals(intervals)
78 80
79 capture = cv2.VideoCapture(videoFilename) 81 capture = cv2.VideoCapture(videoFilename)
80 width = int(capture.get(cv2.CAP_PROP_FRAME_WIDTH)) 82 width = int(capture.get(cv2.CAP_PROP_FRAME_WIDTH))
81 height = int(capture.get(cv2.CAP_PROP_FRAME_HEIGHT)) 83 height = int(capture.get(cv2.CAP_PROP_FRAME_HEIGHT))
82 84