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

Public Member Functions

 Blob (Blob *)
 
 Blob (int i_xleft, int i_xright, int i_top, int y_bottom)
 
void clean ()
 
Blobcopy ()
 
BlobcopyWithLists ()
 
void setRectangle (int i_xleft, int i_xright, int i_ytop, int i_ybottom)
 
Bloboperator= (const Blob &b)
 
BlobverticalSplitBlob (int x2d)
 
BlobhorizontalSplitBlob (int y2d)
 
void mergeBlob (Blob *blob)
 
bool isPixBelongsToBlob (int x, int y)
 
bool isBlobOccluded ()
 
bool isBlobTopOccluded ()
 
bool isBlobBottomOccluded ()
 
int get3DBBox (SceneModel *smodel, double h, double alpha)
 
int compute3DBBoxNormalCase (SceneModel *smodel, double h, double alpha, double V[4][4], int limits[4][4], int eq_relations[4][4], int in_height[4])
 
bool set3DBBox (SceneModel *smodel, double *X, double *Y, double h)
 
int compute3DBBoxSpecialCases (SceneModel *smodel, double h, double alpha, double V[4][4], int limits[4][4], int nlimits[4], int eq_relations[4][4], int in_height[4])
 
void setInHeightGivenPosition (int position, int *in_height)
 
int getPositionRelativeToCamera (SceneModel *smodel)
 
int getPositionRelativeToCameraOld (SceneModel *smodel)
 
void setReal3DPosition ()
 
void setEstimated3DPosition (SceneModel *smodel)
 
void setPositionAtCenterBottom (SceneModel *smodel)
 
double horizontalDistanceToPoint (double X2Dfpoint)
 
double verticalDistanceToPoint (double Y2Dfpoint)
 
Shape3DDatagetBestS3D (bool &lastUnknown, ObjectType best_type, double classifThreshold)
 

Static Public Member Functions

static void copyBlobList (std::vector< Blob > &list, std::vector< Blob > &new_list)
 
static BlobabsorbBlob (Blob *blob1, Blob *blob2)
 
static BlobmergeBlob (Blob *blob1, Blob *blob2)
 
static BlobgetBiggest2D (std::vector< Blob > &blobs)
 
static ObjectType getTypeFromName (std::string name)
 
static std::string getNameFromType (ObjectType type)
 
static ObjectSubtype getSubtypeFromName (std::string name)
 
static std::string getNameFromSubtype (ObjectSubtype subtype)
 
static DetectionProblemType getDPTypeFromName (std::string name)
 
static std::string getNameFromDPType (DetectionProblemType octype)
 
static std::string getDPNameFromTypeDetailed (DetectionProblemType octype)
 
static double computeOverlapRatio (Blob *b1, Blob *b2)
 
static double computeIntersectRatio (Blob *b1, Blob *b2)
 
static double computeOverlapRatioStrict (Blob *b1, Blob *b2)
 
static bool isBlob1OverlapBlob2 (Blob *b1, Blob *b2)
 
static void whichBlobsPixelBelongsTo (std::list< Blob * > &list, std::vector< Blob > &blobs, int x, int y)
 
static bool isBlob1InsideBlob2 (Blob *b1, Blob *b2)
 
static bool same2DBlob (Blob *b1, Blob *b2)
 
static void set2Dand3Dbboxes (SceneModel *smodel, double *x, double *y, Rectangle< int > *bb2D, Parallelpiped *bb3D, double h)
 
static void orderByProximityToPoint (std::vector< Blob > &blobs, double x, double y)
 
static void orderBlobsAscending (double *values, std::vector< Blob > &blobs, int top, int bottom)
 
static int getMiddle (double *values, std::vector< Blob > &blobs, int top, int bottom)
 
static void copyBlobData (Blob *blob1, Blob *blob2)
 

Public Attributes

int id
 
int component_label
 
ObjectType type
 
ObjectSubtype subtype
 
DetectionProblemType dp_type
 
BoundingBox bbox
 
Parallelpiped _3Dbbox
 
densityData ddata
 
char * moving_pixels
 
double w
 
double l
 
double h
 
double alpha
 
int position
 
bool occlusion
 
double beta
 
int beta_direction
 
double gP
 
double gR
 
double gPR
 
double gDP
 
double R [3]
 
double P [3]
 
Position3D position3D
 
std::map< ObjectType, Shape3DData > * normal_data
 
std::map< ObjectType, Shape3DData > * occ_data
 
Shape3DDatabest_data
 
bool reduced_size
 
bool excesive_size
 
int frameNumber
 
int currentTimeDiffMilliSeconds
 
double maxDistanceFactor
 

Friends

std::ostream & operator<< (std::ostream &, const Blob &)
 

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