Skip to content

autonomus exploration strategy using 2d map segmentation and custom costmap for detect 3d size of object

Notifications You must be signed in to change notification settings

KimHyung/autonomous_exploration

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

28 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Autonomous Exploration


Autonomous exploration package aims to explore unknown areas faster and more efficiently by selecting the most meaningful point as the next goal point. To select the most meaningful point, we created a cost function based on 3 values: 2d map segmentation, the clustering size of the detected frontier, and the A* distance to the point. Also,To safely avoid obstacles being explored, we have created a cost map based on the obstacles explored by yolo and 2d lidar.


Install

  1. ROS-melodic
    sudo apt update
    sudo apt upgrdae
    wget https://raw.githubusercontent.com/ROBOTIS-GIT/robotis_tools/master/install_ros_melodic.sh
    chmod +x ./install_ros_melodic.sh
    ./install_ros_melodic.sh
    sudo apt-get install ros-melodic-joy ros-melodic-teleop-twist-joy \
    ros-melodic-teleop-twist-keyboard ros-melodic-laser-proc \
    ros-melodic-rgbd-launch ros-melodic-depthimage-to-laserscan \
    ros-melodic-rosserial-arduino ros-melodic-rosserial-python \
    ros-melodic-rosserial-server ros-melodic-rosserial-client \
    ros-melodic-rosserial-msgs ros-melodic-amcl ros-melodic-map-server \
    ros-melodic-move-base ros-melodic-urdf ros-melodic-xacro \
    ros-melodic-compressed-image-transport ros-melodic-rqt* \
    ros-melodic-gmapping ros-melodic-navigation ros-melodic-interactive-markers
  1. Tutrtlebot3 simulation pkg Turtlbot3 E-Manual
    sudo apt-get install ros-melodic-dynamixel-sdk
    sudo apt-get install ros-melodic-turtlebot3-msgs
    sudo apt-get install ros-melodic-turtlebot3
    cd ~/catkin_ws/src/
    git clone -b melodic-devel https://github.com/ROBOTIS-GIT/turtlebot3_simulations.git
    cd ~/catkin_ws && catkin_make
  1. 2d map segmentation pkg incremental_DuDe_ROS
    sudo apt-get install libcgal-dev
    sudo apt-get install libmpfr-dev
    cd ~/catkin_ws/src/
    git clone https://github.com/lfermin77/Incremental_DuDe_ROS.git
    cd ~/catkin_ws && catkin_make
  1. autonomous_exploration
    cd ~/catkin_ws/src/
    git clone https://github.com/KimHyung/autonomous_exploration.git
    wstool update -t src
    rosdep install -y -r --from-paths ./turtlebot3_slam_3d/src --ignore-src
    cd ~/catkin_ws && catkin_make

Launch

    //1. Launch Gazebo Simulation
    roslaunch autonomous_exploration maze.launch
    //2. Launch SLAM & Rviz
    roslaunch autonomous_exploration gmapping.launch

    //3-1. Luanch autonomus exploration without yolo
    roslaunch autonomous_exploration autonomous_exploration.launch
    //3-2. Luanch autonomus exploration with yolo
    roslaunch autonomous_exploration yolo.launch
    
    *To launch autonomous_exploration with yolo, you have to set up your environment(nvidia driver, CUDA, cudnn) for YOLO(ref. https://github.com/leggedrobotics/darknet_ros)

Flowchart


Result

simulation

experiment


About

autonomus exploration strategy using 2d map segmentation and custom costmap for detect 3d size of object

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published