Mercurial Hosting > traffic-intelligence
diff c/feature-based-tracking.cpp @ 391:03dbecd3a887
modified feature grouping to return vectors of pointers to feature trajectories
author | Nicolas Saunier <nicolas.saunier@polymtl.ca> |
---|---|
date | Thu, 25 Jul 2013 18:58:55 -0400 |
parents | 68861b52a319 |
children | c389fae9689a |
line wrap: on
line diff
--- a/c/feature-based-tracking.cpp Thu Jul 25 16:01:12 2013 -0400 +++ b/c/feature-based-tracking.cpp Thu Jul 25 18:58:55 2013 -0400 @@ -314,9 +314,13 @@ int lastInstant = frameNum+params.minFeatureTime-maxTrajectoryLength; if (lastInstant > 0 && frameNum%10==0) { featureGraph.connectedComponents(lastInstant); - vector<vector<unsigned int> > featureGroups = featureGraph.getFeatureGroups(); + vector<vector<FeatureTrajectoryPtr> > featureGroups; + featureGraph.getFeatureGroups(featureGroups); for (unsigned int i=0; i<featureGroups.size(); ++i) { - trajectoryDB->writeObject(savedObjectId, featureGroups[i], -1, 1, string("objects"), string("objects_features")); + vector<unsigned int> featureNumbers; + for (unsigned int j=0; j<featureGroups[i].size(); ++j) + featureNumbers.push_back(featureGroups[i][j]->getId()); + trajectoryDB->writeObject(savedObjectId, featureNumbers, -1, 1, string("objects"), string("objects_features")); savedObjectId++; } } @@ -327,9 +331,13 @@ // save remaining objects featureGraph.connectedComponents(frameNum+maxTrajectoryLength+1); - vector<vector<unsigned int> > featureGroups = featureGraph.getFeatureGroups(); + vector<vector<FeatureTrajectoryPtr> > featureGroups; + featureGraph.getFeatureGroups(featureGroups); for (unsigned int i=0; i<featureGroups.size(); ++i) { - trajectoryDB->writeObject(savedObjectId, featureGroups[i], -1, 1, string("objects"), string("objects_features")); + vector<unsigned int> featureNumbers; + for (unsigned int j=0; j<featureGroups[i].size(); ++j) + featureNumbers.push_back(featureGroups[i][j]->getId()); + trajectoryDB->writeObject(savedObjectId, featureNumbers, -1, 1, string("objects"), string("objects_features")); savedObjectId++; }