comparison c/feature-based-tracking.cpp @ 481:b6ad86ee7033

implemented smoothing (requires latest trajectory management library version)
author Nicolas Saunier <nicolas.saunier@polymtl.ca>
date Wed, 02 Apr 2014 01:45:53 -0400
parents f43bc0b0ba74
children 41a72146685e 82c06ad62254
comparison
equal deleted inserted replaced
480:f43bc0b0ba74 481:b6ad86ee7033
168 168
169 if (deleteFeature) { 169 if (deleteFeature) {
170 if (iter->feature->length() >= params.minFeatureTime) { 170 if (iter->feature->length() >= params.minFeatureTime) {
171 iter->feature->setId(savedFeatureId); 171 iter->feature->setId(savedFeatureId);
172 savedFeatureId++; 172 savedFeatureId++;
173 iter->feature->movingAverage(params.nFramesSmoothing);
173 lostFeatures.push_back(iter->feature); 174 lostFeatures.push_back(iter->feature);
174 } 175 }
175 iter = featurePointMatches.erase(iter); 176 iter = featurePointMatches.erase(iter);
176 } else { 177 } else {
177 trackedPts.push_back(currPts[iter->pointNum]); 178 trackedPts.push_back(currPts[iter->pointNum]);
220 std::vector<FeaturePointMatch>::iterator iter = featurePointMatches.begin(); 221 std::vector<FeaturePointMatch>::iterator iter = featurePointMatches.begin();
221 while (iter != featurePointMatches.end()) { 222 while (iter != featurePointMatches.end()) {
222 if (iter->feature->length() >= params.minFeatureTime) { 223 if (iter->feature->length() >= params.minFeatureTime) {
223 iter->feature->setId(savedFeatureId); 224 iter->feature->setId(savedFeatureId);
224 savedFeatureId++; 225 savedFeatureId++;
225 f->write(*trajectoryDB, "positions", "velocities") 226 iter->feature->movingAverage(params.nFramesSmoothing);
227 iter->feature->write(*trajectoryDB, "positions", "velocities");
226 } 228 }
227 iter++; 229 iter++;
228 } 230 }
229 231
230 trajectoryDB->endTransaction(); 232 trajectoryDB->endTransaction();