#ifndef __GRID_CLUSTER_H__ #define __GRID_CLUSTER_H__ #include "slam6d/scan.h" #include "veloslam/gridcell.h" #define CUDE_TYPE_ABOVE_LIDAR 0x00000001 #define CUDE_TYPE_IN_OBSTACLE_RANGE 0x00000002 #define CUDE_TYPE_CONTAIN_SICK 0x00000400 #define CLUSTER_FEATURE_TYPE_OBJECT 0x00000001 #define CLUSTER_TYPE_MOVING_OBJECT 0x00000002 #define CLUSTER_TYPE_MOVING_OBJECT_PEDESTRIAN 0x00000004 #define CLUSTER_TYPE_MOVING_OBJECT_BICYCLE 0x00000008 #define CLUSTER_TYPE_MOVING_OBJECT_CAR 0x00000010 #define CLUSTER_TYPE_MOVING_OBJECT_ BUS 0x00000020 #define CLUSTER_TYPE_STATIC_OBJECT 0x00010000 #define CLUSTER_TYPE_STATIC_OBJECT_BUILDING 0x00020000 #define CLUSTER_TYPE_STATIC_OBJECT_BILLBOARD 0x00040000 #define CLUSTER_TYPE_STATIC_OBJECT_SCULPTURE 0x00080000 #define CLUSTER_TYPE_STATIC_OBJECT_PLANT 0x00100000 #define CLUSTER_TYPE_STATIC_OBJECT_TREE 0x00200000 #define CLUSTER_TYPE_STATIC_OBJECT_SHRUB 0x00400000 class clusterFeature { public: float min_x,min_y,min_z; float max_x,max_y,max_z; float avg_x, avg_y, avg_z; float min_y_x, max_y_x; float size_x,size_y,size_z; float speed_x, speed_y, speed; float theta, radius; int size; float length; float width; float boxDirection; double boxVex[4][2]; int frameNO; //in which scan int selfID; //which number in clusters int trackNO; //which track log it int pointNumber; unsigned int clusterType; }; typedef std::vector cluster; typedef std::vector clusterArray; typedef std::vector clusterFeatureArray; #endif //__GRID_CLUSTER_H__