Probabilistic_semantic_mapping
Stacks include:
aizo_quadrotor_slam: 2D SLAM based on CaroGrapher and TEB motion planningoj_detection: tracker and extracted object, real-time object detection using the Ultralytics YOLO- The
object_detector_nodeprovides real-time object detection on incoming ROS image messages using the Ultralytics YOLO model. - The
tracker_with_cloud_nodeprovides functionality for 3D object detection by integrating 2D detections, LiDAR data, and camera information. Check each package for more details.
input image |
point cloud |
tracker object |
cluster point |
traditional map |
semantic map |
|---|---|---|---|---|---|
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
Citation:
Object-Oriented Semantic Mapping for Reliable UAVs Navigation, ICCAIS 2023
$ cd ~/catkin_ws/src
$ git clone https://github.com/NguyenCanhThanh/probabilistic_semantic_mapping.git
$ python3 -m pip install -r oj_detection/requirements.txt
$ cd ~/catkin_ws
$ rosdep install -r -y -i --from-paths .
$ catkin build
Requirements
ros(indigo+)gazebo(2.2+)gazebo_ros(2.2+)quadrotor_controlKumarRoboticsqudrotor_msgsKumarRoboticswaypoint_navigation.aizo_quadrotorNCT
- CartoGrapher build static map
roslaunch aizo_quadrotor_slam 2dslam.launch
- Move based navigation using TEB
roslaunch aizo_quadrotor_slam move_base.launch
-
yolo_model: Pre-trained Weights.
For yolov8, you can chooseyolov8*.pt,yolov8*-seg.pt,yolov8*-pose.pt.YOLOv8 
YOLOv8-seg 
YOLOv8-pose 
See also: https://docs.ultralytics.com/models/
-
image_topic: Topic name for image. -
detection_topic: Topic name for 2D bounding box. -
conf_thres: Confidence threshold below which boxes will be filtered out. -
iou_thres: IoU threshold below which boxes will be filtered out during NMS. -
max_det: Maximum number of boxes to keep after NMS. -
tracker: Tracking algorithms. -
classes: List of class indices to consider.
See also: https://github.com/ultralytics/ultralytics/blob/main/ultralytics/datasets/coco128.yaml -
debug: If true, run simple viewer. -
debug_conf: Whether to plot the detection confidence score. -
debug_line_width: Line width of the bounding boxes. -
debug_font_size: Font size of the text. -
debug_labels: Font to use for the text. -
debug_font: Whether to plot the label of bounding boxes. -
debug_boxes: Whether to plot the bounding boxes.
- Subscribed Topics:
- Image data from
image_topicparameter. (sensor_msgs/Image)
- Image data from
- Published Topics:
- Debug images to
/debug_imagetopic. (sensor_msgs/Image) - Detected objects(2D bounding box) to
detection_topicparameter. (vision_msgs/Detection2DArray)
- Debug images to
camera_info_topic: Topic name for camera info.point_topic: Topic name for point cloud.detection2d_topic: Topic name for 2D bounding box.detection3d_topic: Topic name for 3D bounding box.cluster_tolerance: Spatial cluster tolerance as a measure in the L2 Euclidean space.min_cluster_size: Minimum number of points that a cluster needs to contain.max_cluster_size: Maximum number of points that a cluster needs to contain.
- Subscribed Topics:
- Camera info from
camera_info_topicparameter. (sensor_msgs/CameraInfo) - Lidar data from
point_topicparameter. (sensor_msgs/PointCloud2) - Detected objects(2D bounding box) from
detection2d_topicparameter. (vision_msgs/Detection2DArray)
- Camera info from
- Published Topics:
- Detected cloud points to
/detection_cloudtopic. (sensor_msgs/PointCloud2) - Projected cloud points to
/projection_cloudtopic. (sensor_msgs/PointCloud2) - Detected objects(3D bounding box) to
detection3d_topicparameter. (vision_msgs/Detection3DArray) - Visualization markers to
/detection_markertopic. (visualization_msgs/MarkerArray)
- Detected cloud points to






