Mercurial > hg > nsaunier > traffic-intelligence
comparison include/Motion.hpp @ 180:3a4eef37384f
method to add features and vertices to graph
| author | Nicolas Saunier <nicolas.saunier@polymtl.ca> |
|---|---|
| date | Tue, 01 Nov 2011 00:12:33 -0400 |
| parents | 4f10e97cb677 |
| children | 6c48283a78ca |
comparison
equal
deleted
inserted
replaced
| 179:4f10e97cb677 | 180:3a4eef37384f |
|---|---|
| 86 /** Class to group features: Beymer et al. 99/Saunier and Sayed 06 | 86 /** Class to group features: Beymer et al. 99/Saunier and Sayed 06 |
| 87 \todo create various graph types with different parameters, that accept different feature distances or ways to connect and segment features */ | 87 \todo create various graph types with different parameters, that accept different feature distances or ways to connect and segment features */ |
| 88 class FeatureGraph { | 88 class FeatureGraph { |
| 89 public: | 89 public: |
| 90 //FeatureGraph(float _minDistance, float _maxDistance) : minDistance (_minDistance), maxDistance(_maxDistance) {} | 90 //FeatureGraph(float _minDistance, float _maxDistance) : minDistance (_minDistance), maxDistance(_maxDistance) {} |
| 91 FeatureGraph(float _connectionDistance, float _segmentationDistance) : connectionDistance (_connectionDistance), segmentationDistance(_segmentationDistance) {} | 91 FeatureGraph(float _connectionDistance, float _segmentationDistance, unsigned int _minFeatureTime) : connectionDistance (_connectionDistance), segmentationDistance(_segmentationDistance), minFeatureTime(_minFeatureTime) {} |
| 92 | 92 |
| 93 void addFeature(const FeatureTrajectoryPtr& ft); | 93 void addFeature(const FeatureTrajectoryPtr& ft); |
| 94 | 94 |
| 95 // add vertex, includes adding links to current vertices | 95 // add vertex, includes adding links to current vertices |
| 96 // find connected components, check if old enough, if so, remove | 96 // find connected components, check if old enough, if so, remove |
| 97 | |
| 98 std::string informationString(void); | |
| 97 | 99 |
| 98 protected: | 100 protected: |
| 99 struct FeatureConnection { | 101 struct FeatureConnection { |
| 100 float minDistance; | 102 float minDistance; |
| 101 float maxDistance; | 103 float maxDistance; |
| 107 | 109 |
| 108 typedef boost::adjacency_list <boost::listS, boost::listS, boost::undirectedS, VertexInformation, FeatureConnection> UndirectedGraph; | 110 typedef boost::adjacency_list <boost::listS, boost::listS, boost::undirectedS, VertexInformation, FeatureConnection> UndirectedGraph; |
| 109 | 111 |
| 110 float connectionDistance; | 112 float connectionDistance; |
| 111 float segmentationDistance; | 113 float segmentationDistance; |
| 114 unsigned int minFeatureTime; | |
| 112 // float minDistance; | 115 // float minDistance; |
| 113 // float maxDistance; | 116 // float maxDistance; |
| 114 | 117 |
| 115 UndirectedGraph graph; | 118 UndirectedGraph graph; |
| 116 | 119 |
