Git Product home page Git Product logo

ros-structure-from-motion's Introduction

Autonomous 3D Reconstruction with UAVs in ROS using Frontier Exploration with added Randomness

setup

Unmanned Aerial Vehicles (UAVs) are widely used for documenting and monitoring topography. Moreover, conventional transmission-based remote controller are range-limiting and it becomes a challenge to explore large, unknown, and unstructured environments with them. Numerous studies have been carried out to automate the exploration task and one of the most common approaches is to use Frontier Exploration. However, it is subject to the local minima problem and in the field of robotics, this is often mitigated by introducing stochasticity to the system. Therefore, in this project, our objective is to investigate the impact of randomness on frontier guided exploration algorithms, and compared it with respect to the random walk (baseline) and non-autonomous approach. We have achieved 11.13% percentage increase in mesh coverage comparing to the baseline using Frontier Exploration with Randomness in a single target environment. We also concluded that stochasticity is useful for a less congested environment, whereas more complicated structures would require more guidance during exploration. Finally, we hope that our work could provide insights on developing solutions and frameworks for navigation challenge with exploration objective. For details of the research, please refer to MRS_Mini_Project.pdf.

Demo

Demo video available - frontier_exploration_demo.mp4

Run Scheme - Predefined Path

Run the following commands in separate terminal windows.

roslaunch duck_demo duck_flight_gazebo.launch
rosservice call enable_motors true
roslaunch hector_exploration_node exploration_planner.launch 
roslaunch octomap_server octomap_mapping.launch
roslaunch duck_controller action_openloop.launch

Run Scheme - Random Walk

Run the following commands in separate terminal windows.

roslaunch duck_demo duck_flight_gazebo.launch
rosservice call enable_motors true
roslaunch hector_exploration_node exploration_planner.launch 
roslaunch octomap_server octomap_mapping.launch
roslaunch duck_controller action_astar.launch

Run Scheme - Frontier Exploration

Run the following commands in separate terminal windows.

roslaunch duck_demo duck_flight_gazebo.launch
rosservice call enable_motors true
roslaunch hector_exploration_node exploration_planner.launch 
roslaunch octomap_server octomap_mapping.launch
roslaunch duck_controller action_frontier.launch

Code Files

Code files are located at code/src/duck/

Other Remarks

https://gist.github.com/elimkwan/f5e3c09187ee5dbe48e5740af9064707

ros-structure-from-motion's People

Contributors

elimkwan avatar

Stargazers

 avatar  avatar  avatar Ren avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.