Commit 7c0fd42f authored by yangxue's avatar yangxue

update waytous_perception_msgs

parent 5969f84a
...@@ -35,7 +35,7 @@ include_directories(/usr/include/glog) ...@@ -35,7 +35,7 @@ include_directories(/usr/include/glog)
include_directories(${CMAKE_SOURCE_DIR}/../../deepinfer/include) include_directories(${CMAKE_SOURCE_DIR}/../../deepinfer/include)
link_directories(${CMAKE_SOURCE_DIR}/../../deepinfer/build/src) link_directories(${CMAKE_SOURCE_DIR}/../../deepinfer/build/src)
set(cv_bridge_DIR /usr/local/share/cv_bridge/cmake)
find_package(catkin REQUIRED COMPONENTS find_package(catkin REQUIRED COMPONENTS
cv_bridge cv_bridge
roscpp roscpp
...@@ -56,7 +56,7 @@ include_directories( ...@@ -56,7 +56,7 @@ include_directories(
catkin_package( catkin_package(
INCLUDE_DIRS include INCLUDE_DIRS include
LIBRARIES ${perception_camera_bev} LIBRARIES ${perception_camera_bev}
CATKIN_DEPENDS cv_bridge roscpp sensor_msgs std_msgs geometry_msgs message_runtime roslib CATKIN_DEPENDS cv_bridge roscpp sensor_msgs std_msgs geometry_msgs message_runtime roslib waytous_perception_msgs
) )
set(CMAKE_CUDA_ARCHITECTURES 35 50 72) set(CMAKE_CUDA_ARCHITECTURES 35 50 72)
......
rgb_sub_topic_name: /sensor/camera/front_middle/image/bgr rgb_sub_topic_name: /sensor/camera/inner/image # /sensor/camera/front_middle/image/bgr
pointcloud_sub_topic_name: /total_calib_pointcloud pointcloud_sub_topic_name: /livox/lidar_hap # /total_calib_pointcloud
detection_pub_topic_name: /camera/objects detection_pub_topic_name: /camera/objects
# static_gridmap_pub_topic_name: /perception/camera/bev_static_gridmap # static_gridmap_pub_topic_name: /perception/camera/bev_static_gridmap
creator_id: 0000 creator_id: 0000
......
...@@ -59,6 +59,8 @@ ...@@ -59,6 +59,8 @@
<build_depend>std_msgs</build_depend> <build_depend>std_msgs</build_depend>
<build_depend>geometry_msgs</build_depend> <build_depend>geometry_msgs</build_depend>
<build_depend>image_transport</build_depend> <build_depend>image_transport</build_depend>
<build_depend>waytous_perception_msgs</build_depend>
<build_export_depend>waytous_perception_msgs</build_export_depend>
<build_export_depend>cv_bridge</build_export_depend> <build_export_depend>cv_bridge</build_export_depend>
<build_export_depend>roscpp</build_export_depend> <build_export_depend>roscpp</build_export_depend>
<build_export_depend>roslib</build_export_depend> <build_export_depend>roslib</build_export_depend>
...@@ -74,6 +76,7 @@ ...@@ -74,6 +76,7 @@
<exec_depend>std_msgs</exec_depend> <exec_depend>std_msgs</exec_depend>
<exec_depend>geometry_msgs</exec_depend> <exec_depend>geometry_msgs</exec_depend>
<exec_depend>image_transport</exec_depend> <exec_depend>image_transport</exec_depend>
<exec_depend>waytous_perception_msgs</exec_depend>
<!-- The export tag contains other, unspecified, tags --> <!-- The export tag contains other, unspecified, tags -->
......
...@@ -4,8 +4,8 @@ ...@@ -4,8 +4,8 @@
* @Author: wxin * @Author: wxin
* @Date: 2023-09-03 02:18:07 * @Date: 2023-09-03 02:18:07
* @email: xin.wang@waytous.com * @email: xin.wang@waytous.com
* @LastEditors: wxin * @LastEditors: yangxue xue.yang@waytous.com
* @LastEditTime: 2024-01-18 04:29:42 * @LastEditTime: 2025-03-27 02:21:08
*/ */
...@@ -74,6 +74,7 @@ cameraFramePtr sensorManager::infer() ...@@ -74,6 +74,7 @@ cameraFramePtr sensorManager::infer()
std::cout<< "Error: manager init but multi model engine havenot init."<<std::endl; std::cout<< "Error: manager init but multi model engine havenot init."<<std::endl;
return nullptr; return nullptr;
} }
// 获取最新图像
auto ros_img = getCurImage(); auto ros_img = getCurImage();
if(ros_img == nullptr){ if(ros_img == nullptr){
// std::cout<< "Warning: dont get image or current image frame got same timestamp with the pre one."<<std::endl; // std::cout<< "Warning: dont get image or current image frame got same timestamp with the pre one."<<std::endl;
...@@ -165,7 +166,7 @@ void sensorManager::publishDetection() ...@@ -165,7 +166,7 @@ void sensorManager::publishDetection()
if(point_cloud_ptr != nullptr){ if(point_cloud_ptr != nullptr){
Cloud::Ptr pcl_cloud(new Cloud); Cloud::Ptr pcl_cloud(new Cloud);
pcl::fromROSMsg(*point_cloud_ptr, *pcl_cloud); pcl::fromROSMsg(*point_cloud_ptr, *pcl_cloud);
// 2d->bev,结果保存到vGrid中 // 2d->bev,结果保存到vGrid中 (frame->objs_有track_id, vGrid->vInsObjs没有)
// vision_converter_->Process_objects(frame_ptr->img_src_, pcl_cloud, frame_ptr->objs_, *vGrid); // vision_converter_->Process_objects(frame_ptr->img_src_, pcl_cloud, frame_ptr->objs_, *vGrid);
vision_converter_->Process_objects(frame_ptr->img_src_, frame_ptr->depth_, pcl_cloud, frame_ptr->objs_, *vGrid); vision_converter_->Process_objects(frame_ptr->img_src_, frame_ptr->depth_, pcl_cloud, frame_ptr->objs_, *vGrid);
}else{ }else{
...@@ -286,8 +287,6 @@ void sensorManager::publishDetection() ...@@ -286,8 +287,6 @@ void sensorManager::publishDetection()
} }
} }
}; };
This diff is collapsed.
Header header
grid_map_msgs/GridMap elevation_map #高程图
grid_map_msgs/GridMap flatness_map #平整度信息图
grid_map_msgs/GridMap slope_map #坡度地图
grid_map_msgs/GridMap occupancy_map #可行驶区域
#---------------------fitness_level--------------------
int8 FLATNESS_LEVEL0 = 0
int8 FLATNESS_LEVEL1 = 1
int8 FLATNESS_LEVEL2 = 2
int8 FLATNESS_LEVEL3 = 3
int8 FLATNESS_LEVEL4 = 4
#---------------------occupancy_level--------------------
int8 OCC_UNKNOWN = 0
int8 OCC_FREE = 1
int8 OCC_MOVABLE = 2
int8 OCC_STATIC = 3
Header header
int8 weather_type # 天气
int8 light_type # 光照条件
int8 place_type # 地点
#-------------------weather_type-----------------
int8 WEATHER_UNKNOWN = 0 # 未知
int8 WEATHER_SUNNY = 1 # 晴天
int8 WEATHER_CLOUDY = 2 # 多云
int8 WEATHER_RAINY = 3 # 雨天
int8 WEATHER_HAZE = 4 # 雾霾
int8 WEATHER_SNOWY = 5 # 雪天
int8 LIGHT_DAYTIME = 0 # 白天
int8 LIGHT_DUSK = 1 # 黄昏
int8 LIGHT_NIGHT = 2 # 晚上
#-------------------place_type-----------------
int8 PLACE_COMMON_ROAD = 0
int8 PLACE_PARKING_SPACE = 1
int8 PLACE_CROSSWALK = 2
int8 PLACE_GAS_STATION = 3
int8 PLACE_WEIGHT_STATION = 4
std_msgs/Header header
waytous_perception_msgs/ObjectArray objects
waytous_perception_msgs/DrivableAreaMap maps
waytous_perception_msgs/DrivingScene scene
waytous_perception_msgs/TrafficLight[] trafficlight_array
Header header
grid_map_msgs/GridMap elevation_map #高程图
grid_map_msgs/GridMap flatness_map #平整度信息图
#---------------------fitness_level--------------------
int8 FLATNESS_LEVEL0 = 0
int8 FLATNESS_LEVEL1 = 1
int8 FLATNESS_LEVEL2 = 2
int8 FLATNESS_LEVEL3 = 3
int8 FLATNESS_LEVEL4 = 4
int8 id # 车辆ID, required
int8 property # 车辆归属, required
int16 weight # 车辆重量
geometry_msgs/Pose pose # 车辆定位, required
geometry_msgs/Vector3 dimensions # 车辆大小
geometry_msgs/Vector3 velocity # 车辆速度, required
geometry_msgs/Vector3 accelerate # 车辆加速度
int8[] next_map_id # 未来行驶的路径ID
float32[] id_probs # 预测可能性
#---------------------property--------------------
int8 PROPERTY_OUTSIDER = 0 # 缺省为非系统内车辆
int8 PROPERTY_MGV = 1 # 系统内有人车
int8 PROPERTY_UGV = 2 # 系统内无人车
std_msgs/Header header
FleetObject[] fleet_object_list
\ No newline at end of file
Header header
float32 ogmwidth #二维栅格地图宽
float32 ogmheight #二维栅格地图高
int16 vehicle_x #车辆在栅格图中的水平位置
int16 vehicle_y #车辆在栅格图中的竖直位置
float32 rectangle_minx #拟合矩形左边界
float32 rectangle_maxx #拟合矩形右边界
float32 rectangle_miny #拟合矩形下边界
float32 rectangle_maxy #拟合矩形上边界
float32 slopeupdegree #坡度值
float32 slopedestination #斜坡方向(0-360度)
bool vehiclepositionflag #斜坡类型(可用来判断是否为斜坡点,及正坡/负坡)
geometry_msgs/Vector3 normal #normal
sensor_msgs/PointCloud2 pointcloud_with_normal
int8 sensor_type # Object sensor source, required
int8 id # Object ID, required int8 id # Object ID, required
int8 property # vehicle property, optional int8 label_type # Classification, optional
float32 exist_prob # exist probability
############### 2D Rect ############### 2D Rect
waytous_perception_msgs/Rect obb2d # [x,y,w,h,orientation], required jsk_recognition_msgs/Rect rect # [x,y,w,h], required
float32 orientation # Radian [-pi, pi], orientation of the object, optional
############### 3D Dimension ############### 3D Dimension
geometry_msgs/Pose pose # the pose of the center of the object, position is required, quaternion is optional geometry_msgs/Pose pose # the pose of the centerof the object, position is required, quaternion is optional
geometry_msgs/Vector3 dimensions # required geometry_msgs/Vector3 dimensions # required
sensor_msgs/PointCloud2 pointcloud # the points in the object, optional
geometry_msgs/Polygon convex_hull # the hull of the obejct, required geometry_msgs/Polygon convex_hull # the hull of the obejct, required
sensor_msgs/PointCloud2 cloud # the cloud of the obejct, option ############### confidence use in common
############### classification info float64 score # required
int8 type # major type, optional
float32[] type_probs
int8 sub_type # sub type, optional
float32[] sub_type_probs
############### tracking info ############### tracking info
int8 track_id # required int8 track_id # required
geometry_msgs/Vector3 velocity # required geometry_msgs/Vector3[] velocity # required
float32[] velocity_covariance # optional float64[9] velocity_covariance # required
geometry_msgs/Vector3 accelerate # required float64 velocity_confidence # required
geometry_msgs/Vector3[] trace # optional int8 motion_state # optional
geometry_msgs/Vector3[] trajectory # optional geometry_msgs/Vector3[] trace # required
FleetObject fleet_object # optional
#---------------------sensor_type--------------------
int8 SENSOR_INVALID = 0
#---------------------major_type-------------------- int8 SENSOR_CAMERA = 1
int8 SENSOR_LIDAR = 2
int8 SENSOR_RADAR = 3
#---------------------label_type--------------------
int8 TYPE_UNKNOWN = 0 int8 TYPE_UNKNOWN = 0
int8 TYPE_PEDESTRIAN = 1 int8 TYPE_PEDESTRIAN = 1
int8 TYPE_BICYCLE = 2 int8 TYPE_CAR = 2
int8 TYPE_VEHICLE = 3 int8 TYPE_TRUCK = 3
int8 TYPE_MACHINERY = 4 int8 TYPE_DUMPER = 4
int8 TYPE_UNKNOWN_MOVABLE = 5 int8 TYPE_EXCAVATOR = 5
int8 TYPE_UNKNOWN_STATIC = 6 int8 TYPE_FLUSHER = 6
#---------------------sub_type-------------------- int8 TYPE_GRADER = 7
int8 SUBTYPE_UNKNOWN = 0 int8 TYPE_DOZER = 8
int8 SUBTYPE_CAR = 1 #---------------------motion--------------------
int8 SUBTYPE_VAN = 2 int8 MOTION_UNKNOWN = 0
int8 SUBTYPE_TRUCK = 3 int8 MOTION_MOVING = 1
int8 SUBTYPE_DUMPER = 4 int8 MOTION_STATIONARY = 2
int8 SUBTYPE_FLUSHER = 5
int8 SUBTYPE_DOZER = 6
int8 SUBTYPE_EXCAVATOR = 7
int8 SUBTYPE_CYCLIST = 8
int8 SUBTYPE_MOTORCYCLIST = 9
int8 SUBTYPE_TRICYCLIST = 10
int8 SUBTYPE_PEDESTRIAN = 11
int8 SUBTYPE_TRAFFIC_CONE = 12
int8 SUBTYPE_UNKNOWN_MOVABLE = 13
int8 SUBTYPE_UNKNOWN_STATIC = 14
#---------------------property--------------------
int8 PROPERTY_OUTSIDER = 0
int8 PROPERTY_MGV = 1
int8 PROPERTY_UGV = 2
Header header Header header
int8 sensor_type # Object sensor source, required
sensor_msgs/Image image
waytous_perception_msgs/Object[] foreground_objects waytous_perception_msgs/Object[] foreground_objects
waytous_perception_msgs/Object[] background_objects waytous_perception_msgs/Object[] background_objects
waytous_perception_msgs/Scene current_scene
\ No newline at end of file
#---------------------sensor_type--------------------
int8 SENSOR_INVALID = 0
int8 SENSOR_RADAR = 1
int8 SENSOR_LIDAR = 2
int8 SENSOR_CAMERA = 4
int8 SENSOR_VEHICLE = 8
int8 SENSOR_V2X = 16
int8 SENSOR_FLEET = 32
\ No newline at end of file
Header header
sensor_msgs/Image roi_image
waytous_perception_msgs/ObjectTemp[] foreground_objects
waytous_perception_msgs/ObjectTemp[] background_objects
waytous_perception_msgs/Scene current_scene
int8 id # Object ID, required
int8 property # vehicle property, optional
float32 exist_prob # exist probability
############### 2D Rect
waytous_perception_msgs/Rect obb2d # [x,y,w,h,orientation], required
############### 3D Dimension
geometry_msgs/Pose pose # the pose of the center of the object, position is required, quaternion is optional
geometry_msgs/Vector3 dimensions # required
geometry_msgs/Polygon convex_hull # the hull of the obejct, required
sensor_msgs/PointCloud2 cloud # the cloud of the obejct, option
############### classification info
int8 type # major type, optional
float32[] type_probs
int8 sub_type # sub type, optional
float32[] sub_type_probs
############### tracking info
uint32 track_id # required
geometry_msgs/Vector3 velocity # required
float32[] velocity_covariance # optional
geometry_msgs/Vector3 accelerate # required
geometry_msgs/Vector3[] trace # optional
geometry_msgs/Vector3[] trajectory # optional
FleetObject fleet_object # optional
#---------------------major_type--------------------
int8 TYPE_UNKNOWN = 0
int8 TYPE_PEDESTRIAN = 1
int8 TYPE_BICYCLE = 2
int8 TYPE_VEHICLE = 3
int8 TYPE_MACHINERY = 4
int8 TYPE_UNKNOWN_MOVABLE = 5
int8 TYPE_UNKNOWN_STATIC = 6
#---------------------sub_type--------------------
int8 SUBTYPE_UNKNOWN = 0
int8 SUBTYPE_CAR = 1
int8 SUBTYPE_VAN = 2
int8 SUBTYPE_TRUCK = 3
int8 SUBTYPE_DUMPER = 4
int8 SUBTYPE_FLUSHER = 5
int8 SUBTYPE_DOZER = 6
int8 SUBTYPE_EXCAVATOR = 7
int8 SUBTYPE_CYCLIST = 8
int8 SUBTYPE_MOTORCYCLIST = 9
int8 SUBTYPE_TRICYCLIST = 10
int8 SUBTYPE_PEDESTRIAN = 11
int8 SUBTYPE_TRAFFIC_CONE = 12
int8 SUBTYPE_UNKNOWN_MOVABLE = 13
int8 SUBTYPE_UNKNOWN_STATIC = 14
#---------------------property--------------------
int8 PROPERTY_OUTSIDER = 0
int8 PROPERTY_MGV = 1
int8 PROPERTY_UGV = 2
int8 MOTION_UNKNOWN = 0
int8 MOTION_MOVING = 1
int8 MOTION_STATIONARY = 2
float64 x
float64 y
float64 w
float64 h
float64 orientation
int8 label int8 label
geometry_msgs/Vector3[] points geometry_msgs/Vector3[] points
#---------------------label-------------------- #---------------------label--------------------
int8 TYPE_ROAD = 0 int8 TYPE_ROAD = 0
int8 TYPE_ROAD_EDGE = 1 int8 TYPE_ROAD_EDGE = 1
......
Header header Header header
waytous_perception_msgs/Road[] road_list waytous_perception_msgs/Road[] road_list
Header header Header header
int8 type int8 type
waytous_perception_msgs/Rect rect jsk_recognition_msgs/Rect[] rect
float64 reliable float64[] reliable
#---------------------type-------------------- #---------------------type--------------------
int8 TYPE_NORMAL = 0 int8 TYPE_NORMAL = 0
int8 TYPE_FOG = 1 int8 TYPE_FOG = 1
int8 TYPE_DUST = 2 int8 TYPE_DUST = 2
int8 TYPE_RAIN = 3 int8 TYPE_RAIN = 3
int8 TYPE_SNOW = 4 int8 TYPE_SNOW = 4
int8 TYPE_DARK = 5 int8 TYPE_DARK = 4
int8 TYPE_TRAFFIC_LIGHT_GREEN = 6
int8 TYPE_TRAFFIC_LIGHT_RED = 7
int8 TYPE_TRAFFIC_LIGHT_YELLOW = 8
int8 TYPE_TRAFFIC_LIGHT_UNKNOWN = 9
std_msgs/Header header
string id # 地图红绿灯ID
int8 sensor_type # 信息来源
int8 color # 红绿灯颜色
waytous_perception_msgs/Rect rect # 红绿灯二维位置
geometry_msgs/Polygon polygon # 红绿灯三维位置
int8 confidence # 检测置信度
float32 remaining_time # 剩余时间
#----------------sensor_type--------------------------
int8 SENSOR_INVALID = 0
int8 SENSOR_CAMERA = 1
int8 SENSOR_V2X = 2
#----------------color--------------------------
int8 COLOR_UNKNOWN = 0
int8 COLOR_RED = 1
int8 COLOR_YELLOW = 2
int8 COLOR_GREEN = 3
int8 COLOR_BLACK = 4
std_msgs/Header header
int16 ogmwidth #二维栅格地图宽
int16 ogmheight #二维栅格地图高
int16 vehicle_x #车辆在栅格图中的水平位置
int16 vehicle_y #车辆在栅格图中的竖直位置
float32 ogmresolution #栅格分辨率
int16[] data #栅格点(像素为1和2的栅格为挡墙)
\ No newline at end of file
...@@ -7,7 +7,7 @@ ...@@ -7,7 +7,7 @@
<!-- One maintainer tag required, multiple allowed, one person per tag --> <!-- One maintainer tag required, multiple allowed, one person per tag -->
<!-- Example: --> <!-- Example: -->
<!-- <maintainer email="jane.doe@example.com">Jane Doe</maintainer> --> <!-- <maintainer email="jane.doe@example.com">Jane Doe</maintainer> -->
<maintainer email="yul@todo.todo">yul</maintainer> <maintainer email="guo@todo.todo">guo</maintainer>
<!-- One license tag required, multiple allowed, one license per tag --> <!-- One license tag required, multiple allowed, one license per tag -->
...@@ -19,7 +19,7 @@ ...@@ -19,7 +19,7 @@
<!-- Url tags are optional, but multiple are allowed, one per tag --> <!-- Url tags are optional, but multiple are allowed, one per tag -->
<!-- Optional attribute type can be: website, bugtracker, or repository --> <!-- Optional attribute type can be: website, bugtracker, or repository -->
<!-- Example: --> <!-- Example: -->
<!-- <url type="website">http://wiki.ros.org/waytous_perception_msgs</url> --> <!-- <url type="website">http://wiki.ros.org/msgs</url> -->
<!-- Author tags are optional, multiple are allowed, one per tag --> <!-- Author tags are optional, multiple are allowed, one per tag -->
...@@ -49,34 +49,26 @@ ...@@ -49,34 +49,26 @@
<!-- Use doc_depend for packages you need only for building documentation: --> <!-- Use doc_depend for packages you need only for building documentation: -->
<!-- <doc_depend>doxygen</doc_depend> --> <!-- <doc_depend>doxygen</doc_depend> -->
<buildtool_depend>catkin</buildtool_depend> <buildtool_depend>catkin</buildtool_depend>
<build_depend>geometry_msgs</build_depend>
<build_depend>message_generation</build_depend> <build_depend>message_generation</build_depend>
<build_depend>message_runtime</build_depend> <build_depend>geometry_msgs</build_depend>
<build_depend>nav_msgs</build_depend> <build_depend>jsk_recognition_msgs</build_depend>
<build_depend>roscpp</build_depend> <build_depend>roscpp</build_depend>
<build_depend>rospy</build_depend>
<build_depend>sensor_msgs</build_depend> <build_depend>sensor_msgs</build_depend>
<build_depend>tf</build_depend>
<build_depend>tf2</build_depend>
<build_depend>grid_map_msgs</build_depend>
<build_depend>std_msgs</build_depend> <build_depend>std_msgs</build_depend>
<build_export_depend>geometry_msgs</build_export_depend> <build_export_depend>geometry_msgs</build_export_depend>
<build_export_depend>grid_map_msgs</build_export_depend> <build_export_depend>jsk_recognition_msgs</build_export_depend>
<build_export_depend>nav_msgs</build_export_depend>
<build_export_depend>roscpp</build_export_depend> <build_export_depend>roscpp</build_export_depend>
<build_export_depend>rospy</build_export_depend>
<build_export_depend>sensor_msgs</build_export_depend> <build_export_depend>sensor_msgs</build_export_depend>
<build_export_depend>tf</build_export_depend>
<build_export_depend>tf2</build_export_depend>
<build_export_depend>std_msgs</build_export_depend> <build_export_depend>std_msgs</build_export_depend>
<exec_depend>geometry_msgs</exec_depend>
<exec_depend>grid_map_msgs</exec_depend>
<exec_depend>message_runtime</exec_depend> <exec_depend>message_runtime</exec_depend>
<exec_depend>nav_msgs</exec_depend> <exec_depend>geometry_msgs</exec_depend>
<exec_depend>jsk_recognition_msgs</exec_depend>
<exec_depend>roscpp</exec_depend> <exec_depend>roscpp</exec_depend>
<exec_depend>rospy</exec_depend>
<exec_depend>sensor_msgs</exec_depend> <exec_depend>sensor_msgs</exec_depend>
<exec_depend>tf</exec_depend>
<exec_depend>tf2</exec_depend>
<exec_depend>std_msgs</exec_depend> <exec_depend>std_msgs</exec_depend>
<exec_depend>message_generation</exec_depend>
<!-- The export tag contains other, unspecified, tags --> <!-- The export tag contains other, unspecified, tags -->
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment