Mercurial Hosting > traffic-intelligence
diff c/Feature.cpp @ 132:45c64e68053c
added drawing function for features
author | Nicolas Saunier <nicolas.saunier@polymtl.ca> |
---|---|
date | Wed, 17 Aug 2011 19:03:25 -0400 |
parents | 4742b2b6d851 |
children | 63dd4355b6d1 |
line wrap: on
line diff
--- a/c/Feature.cpp Wed Aug 17 19:03:11 2011 -0400 +++ b/c/Feature.cpp Wed Aug 17 19:03:25 2011 -0400 @@ -1,15 +1,32 @@ #include "Feature.hpp" #include "opencv2/core/core.hpp" +#include "opencv2/highgui/highgui.hpp" using namespace std; using namespace cv; +FeatureTrajectory::FeatureTrajectory(const int& frameNum, const cv::Point2f& p) { + addPoint(frameNum, p); +} + void FeatureTrajectory::addPoint(const int& frameNum, const Point2f& p) { positions.add(frameNum, p); computeMotionData(frameNum); } +#ifdef USE_OPENCV +/// \todo add option for anti-aliased drawing, thickness +void FeatureTrajectory::draw(Mat& img, const Scalar& color) const { + Point2f p1 = positions[0]; + for (unsigned int i=1; i<positions.size(); i++) { + Point2f p2 = positions[i]; + line(img, p1, p2, color, 1); + p1 = p2; + } +} +#endif + // protected void FeatureTrajectory::computeMotionData(const int& frameNum) {