Mercurial Hosting > traffic-intelligence
diff python/storage.py @ 417:a2ff03a52b73
added basic logging capability for debugging
author | Nicolas Saunier <nicolas.saunier@polymtl.ca> |
---|---|
date | Thu, 26 Sep 2013 17:07:44 -0400 |
parents | 6567fee37c16 |
children | f6415f012640 |
line wrap: on
line diff
--- a/python/storage.py Wed Sep 25 16:13:27 2013 -0400 +++ b/python/storage.py Thu Sep 26 17:07:44 2013 -0400 @@ -4,7 +4,7 @@ import utils, moving, events, indicators -import sqlite3 +import sqlite3, logging __metaclass__ = type @@ -105,10 +105,14 @@ try: if trajectoryType == 'feature': trajectoryIdQuery = getTrajectoryIdQuery(objectNumbers, trajectoryType) - cursor.execute('SELECT * from '+tableName+' '+trajectoryIdQuery+'order by trajectory_id, frame_number') + queryStatement = 'SELECT * from '+tableName+' '+trajectoryIdQuery+'order by trajectory_id, frame_number' + cursor.execute(queryStatement) + logging.debug(queryStatement) elif trajectoryType == 'object': objectIdQuery = getTrajectoryIdQuery(objectNumbers, trajectoryType) - cursor.execute('SELECT OF.object_id, P.frame_number, avg(P.x_coordinate), avg(P.y_coordinate) from '+tableName+' P, objects_features OF where P.trajectory_id = OF.trajectory_id '+objectIdQuery+'group by OF.object_id, P.frame_number order by OF.object_id, P.frame_number') + queryStatement = 'SELECT OF.object_id, P.frame_number, avg(P.x_coordinate), avg(P.y_coordinate) from '+tableName+' P, objects_features OF where P.trajectory_id = OF.trajectory_id '+objectIdQuery+'group by OF.object_id, P.frame_number order by OF.object_id, P.frame_number' + cursor.execute(queryStatement) + logging.debug(queryStatement) else: print('no trajectory type was chosen') except sqlite3.OperationalError as error: @@ -134,10 +138,7 @@ return objects def loadTrajectoriesFromSqlite(filename, trajectoryType, objectNumbers = -1): - '''Loads nObjects or the indices in objectNumbers from the database - TODO: load feature numbers and not average feature trajectories - TODO: other ways of averaging trajectories (load all points, sorted by frame_number and leave the agregation to be done in python) - ''' + '''Loads nObjects or the indices in objectNumbers from the database''' connection = sqlite3.connect(filename) # add test if it open objects = loadTrajectoriesFromTable(connection, 'positions', trajectoryType, objectNumbers) @@ -156,7 +157,9 @@ try: # attribute feature numbers to objects objectIdQuery = getTrajectoryIdQuery(objectNumbers, trajectoryType) - cursor.execute('SELECT P.trajectory_id, OF.object_id from positions P, objects_features OF where P.trajectory_id = OF.trajectory_id '+objectIdQuery+'group by P.trajectory_id order by OF.object_id') # order is important to group all features per object + queryStatement = 'SELECT P.trajectory_id, OF.object_id from positions P, objects_features OF where P.trajectory_id = OF.trajectory_id '+objectIdQuery+'group by P.trajectory_id order by OF.object_id' # order is important to group all features per object + cursor.execute(queryStatement) + logging.debug(queryStatement) featureNumbers = {} for row in cursor: