changeset 202:b0b964ba9489

added early saving of objects
author Nicolas Saunier <nicolas.saunier@polymtl.ca>
date Mon, 05 Mar 2012 02:55:19 -0500
parents f7ddfc4aeb1e
children e2f31813ade6
files c/feature-based-tracking.cpp
diffstat 1 files changed, 7 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/c/feature-based-tracking.cpp	Mon Mar 05 01:52:56 2012 -0500
+++ b/c/feature-based-tracking.cpp	Mon Mar 05 02:55:19 2012 -0500
@@ -255,6 +255,9 @@
   boost::shared_ptr<TrajectoryDBAccessList<Point2f> > trajectoryDB = boost::shared_ptr<TrajectoryDBAccessList<Point2f> >(new TrajectoryDBAccessList<Point2f>());
   //TODO write generic methods for blob and list versions TrajectoryDBAccess<Point2f>* trajectoryDB = new TrajectoryDBAccessBlob<Point2f>();
   bool success = trajectoryDB->connect(params.databaseFilename.c_str());
+  trajectoryDB->createObjectTable("objects", "objects_features");
+  unsigned int savedObjectId=0;
+
   // vector<boost::shared_ptr<Trajectory<Point2f> > > trajectories;
   // cout << trajectories.size() << endl;
   // std::clock_t c_start = std::clock();
@@ -300,6 +303,10 @@
     if (frameNum%10 == 0) {
       featureGraph.connectedComponents(frameNum-maxTrajectoryLength+params.minFeatureTime);
       vector<vector<unsigned int> > featureGroups = featureGraph.getFeatureGroups();
+      for (unsigned int i=0; i<featureGroups.size(); ++i) {
+	trajectoryDB->writeObject(savedObjectId, featureGroups[i], -1, 1, string("objects"), string("objects_features"));
+	savedObjectId++;
+      }
     }
 
     cout << featureGraph.informationString() << endl;