45 lines
980 B
C
45 lines
980 B
C
|
#pragma once
|
||
|
#include "veloslam/veloscan.h"
|
||
|
#include "veloslam/kalmanfilter.h"
|
||
|
#include <deque>
|
||
|
|
||
|
using namespace std;
|
||
|
|
||
|
struct MoveState
|
||
|
{
|
||
|
ObjectState targetState;
|
||
|
int frameNo;
|
||
|
};
|
||
|
|
||
|
class Tracker
|
||
|
{
|
||
|
public:
|
||
|
Tracker(void);
|
||
|
Tracker(clusterFeature &glu,double rollAngle);//added by yuanjun
|
||
|
Tracker(const Tracker ©Tracker);//added by yuanjun
|
||
|
~Tracker(void);
|
||
|
void TrackerReset();//added by yuanjun
|
||
|
|
||
|
// for log all the cluster for tracking
|
||
|
deque<clusterFeature> statusList;
|
||
|
deque<cluster> dataList;
|
||
|
// log the tracker is or not Matched.
|
||
|
|
||
|
// bool Matched or not;
|
||
|
bool missMatch;
|
||
|
//for log Cluster ID in lastScan.
|
||
|
int matchClusterID;
|
||
|
//show different color.
|
||
|
int colorIdx;
|
||
|
// for log the lift length trackerID
|
||
|
int trackerID;
|
||
|
|
||
|
int missedTime;//added by yuanjun
|
||
|
KalmanFilter kalmanFilter;//added by yuanjun
|
||
|
vector<MoveState> moveStateList;//added by yuanjun
|
||
|
|
||
|
//feature for movement
|
||
|
float moving_distance;
|
||
|
};
|
||
|
|