VAT  3.0
Video Analysis Tool
Public Member Functions | Static Public Member Functions | Public Attributes | Static Public Attributes | Friends | List of all members
MobileObject2D Class Reference

Public Member Functions

 MobileObject2D (SpMobileObject2D)
 
void initUsedBlobs ()
 
void initInvolvedBlobs ()
 
void initMaps ()
 
void insertNewBlob (Blob *blob)
 
void insertNewBlob (Blob *blob, int lastMilliSecondsDifference)
 
void setMobileId (unsigned long i_id)
 
void setRMobileId (unsigned long i_id)
 
void setNewMobileFromBlob (Blob *blob, unsigned long mobile_id, unsigned long rmobile_id)
 
void setNumberOfFramesNotSeen (int num)
 
void incrementNumberOfFramesNotSeen ()
 
void incrementNumberOfFramesSinceFirstTimeSeen ()
 
void setGlobalProbability ()
 
BlobdetermineMostLikelyBlob ()
 
unsigned long getMobileId ()
 
unsigned long getRMobileId ()
 
int getNumberOfFramesNotSeen ()
 
int getNumberOfFramesSinceFirstTimeSeen ()
 
double getGlobalProbability ()
 
void getMobileTolerances (double &, double &)
 
void updateMobilePath (Blob *blob)
 
void updateMobileData ()
 
double DimensionalCoherenceReliability (double sigma_dim, double min, double max)
 
double dimensional2DReliability (double blobW, double blobH)
 
double position2DReliability (double distance2D)
 
double get2DDistanceToFocalPoint (Blob *blob)
 
double get2DDistanceToFocalPoint (Rectangle< int > *rectangle)
 
double get2DDistanceToFocalPoint (double X, double Y)
 
bool mobile2DCoherenceIsAcceptable ()
 
bool mobile2DVelocityCoherenceIsAcceptable ()
 
void incorporateNewInformation ()
 
void incrementalUpdateCooling (int bufferSize)
 
void incrementalUpdateOrientation (int bufferSize, Shape3DData **data, DetectionProblemType *dpFlags, double *visualSupport)
 
void incrementalUpdate2DPosition (int bufferSize, Rectangle< int > *bboxesToAnalyze, DetectionProblemType *dpFlags, double *visualSupport, double maxDistanceFactor)
 
void incrementalUpdate2DDimensions (int bufferSize, Rectangle< int > *bboxesToAnalyze, DetectionProblemType *dpFlags, double *visualSupport, double maxDistanceFactor)
 
void getCurrentBoundingBoxForMobile (Rectangle< int > *bbox)
 
void getCurrentBoundingBoxForMobileKeepingSize (Rectangle< int > *bbox)
 
void improveBBoxSupport (Rectangle< int > *improvedBBox, Rectangle< int > *estimatedBBox, Rectangle< int > *visualEvidence)
 
bool mobileOutOfScene ()
 
void generateFirstClassifiedSequence ()
 
void generateMostCoherentSequence (std::deque< SpBlob >::iterator first_blob_it, int newBufferSize, int frame_index)
 
double probabilisticCoherenceReliability (double data, double mean, double sigma, double acuity)
 
double normalisedSigmaCoherenceReliability (double sigma, double acuity)
 
void setSpecialBBoxToAnalyze (Rectangle< int > *bboxResult, Rectangle< int > *realBBox, double visualSupport)
 
void setInitialNormalList (Blob *current_blob)
 

Static Public Member Functions

static double coolingFunction (double x)
 
static double NormalizeOrientation (double)
 
static double minimalAngularDistance (double alpha1, double alpha2)
 
static double NormalizeVelocityAngle (double)
 

Public Attributes

unsigned long mobile_id
 
unsigned long rmobile_id
 
ObjectType best_type
 
ObjectSubtype best_subtype
 
double P
 
bool ensureMode
 
bool productionMode
 
int numberOfFramesNotSeen
 
int numberOfFramesSinceFirstTimeSeen
 
int numberOfFound
 
int previousBufferSize
 
int currentBufferSize
 
Rectangle< int > * bboxesToAnalyze
 
double * visualSupport
 
DetectionProblemType * dpFlags
 
DetectionProblemType currentVisualState
 
bool * foundSupport
 
int debug_data_flag
 
double RFoundSolutions
 
double RVFoundSolutions
 
double P2D
 
double R2D
 
double PV2DC
 
double RV2DC
 
tracking2DimensionalData t2DDimData
 
tracking2DSpatialData t2DSpatialData
 
IncrementalExtraGeneralData2D iGData
 
IncrementalExtra2DData i2DData
 
blobBuffer blobHistory
 
Trajectory trajectory2D
 
bool * usedBlobs
 
int numUsed
 
int usedLength
 
bool * involvedBlobs
 
int numInvolved
 
bool accepted_solution
 
bool comparedMobile
 
bool toErase
 
std::deque< int > currentlyMergedBlobs
 

Static Public Attributes

static double ONE_OVER_SQRT_2_TIMES_PI = 1.0 / sqrt(2 * M_PI)
 
static QImage * m_pSegmentation = NULL
 
static int m_currentTrackingBlobsNumber = 0
 
static double m_lambda = 1000
 
static int m_blobsBufferSize = 5
 
static int m_trajectoryMaxSize = 0
 
static bool m_firstFrame = true
 
static double m_SpatialCoherenceReliabilityThreshold = 0.1
 
static double m_SpatialCoherenceProbabilityThreshold = 0.5
 
static double m_DimensionalCoherenceReliabilityThreshold = 0.1
 
static double m_DimensionalCoherenceProbabilityThreshold = 0.5
 
static double m_MinimalHistoryProbability
 
static double * secDiffSequence = NULL
 
static double * secDiffToCurrent = NULL
 
static double * coolingValue = NULL
 
static double m_probabilityToEnsureMode = 0.8
 
static double * g_secDiffSequence
 
static double * g_coolingValue
 
static double * g_secDiffToCurrent
 
static tracking2DimensionalDatag_t2DDimData
 
static tracking2DSpatialDatag_t2DSpatialData
 
static IncrementalExtraGeneralData2Dg_iGData
 
static IncrementalExtra2DDatag_i2DData
 
static Rectangle< int > * g_newBBoxesToAnalyze
 
static double * g_newVisualSupport
 
static DetectionProblemType * g_newDPFlags
 
static int g_currentBufferSize
 
static double zeroTolerance = 0.00001
 
static double m_minimalTolerance = 4
 
static int m_pixelAcuity = 3
 
static double m_max2DSpeed = 100
 
static double m_reliableObjectLength = 50
 

Friends

std::ostream & operator<< (std::ostream &, SpMobileObject2D)
 

The documentation for this class was generated from the following files: