Giter VIP home page Giter VIP logo

flosdrone's Introduction

flosdrone

Camera tracking with AR.Drone 2.0, ROS and OpenCV

Installation and usage instructions

These instructions assume you don't have previous experience with ROS. If you do, you know what parts you can skip. Installation instructions are for Ubuntu 14.04 and it's the only Linux distribution this software has been tested with.

Install and configure ROS:

  1. Install ROS Indigo Igloo according to instructions (http://wiki.ros.org/indigo/Installation/Ubuntu) and choose the Desktop-Full Install option.
  2. Follow tutorial at http://wiki.ros.org/ROS/Tutorials/InstallingandConfiguringROSEnvironment and create a catkin workspace. Reading the ROS tutorials further is higly recommended, but not required for running and installing this package. It's required only if you want to know what you're doing.

Install flosdrone build dependencies:

  1. Install ardrone-autonomy package by running "apt-get install ros-indigo-ardrone-autonomy"
  2. Install GLFW 3. First download the source package from http://www.glfw.org/download.html e.g. to your home directory. Extract package (e.g. with unzip commmand: "unzip glfw-3.1.1.zip" (your version may vary)). Checkout the compile instructions at www.glfw.org/docs/latest/compile.html and make sure you have all dependencies installed by running "apt-get install xorg-dev libglu1-mesa-dev". Go to the root of the extracted package and run "cmake ." to create makefiles for compiling. Run "make" to compile and "sudo make install" to install glfw. You can now remove the source files.
  3. Install GLM library: "apt-get install libglm-dev".

Compile and test the software:

  1. Clone flosdrone package to ~/catkin_ws/src/flosdrone, and run "catkin_make" at ~/catkin_ws/ to compile the project.
  2. Open an extra terminal window/tab and run command "roscore" in it (in whatever directory). Now change back to the terminal still in ~/catkin_ws/ and run "rosrun flosdrone flosdrone_node" in it to start the flosdrone node (=program). A window with red box at the bottom and a grid at the top should open. The position of drone is plotted to the grid and red box will show the image from the camera. You can rotate the grid view by holding down left mouse button, zoom with the scroll wheel and move the view by holding down the right mouse button.
  3. Open a third terminal and go to ~/catkin_ws/src/flosdrone/bag directory and run "rosbag play test.bag -l" to start a playback of an Ar.Drone data recording. Now change back to the flosdrone window. Video with the found features higlighted in green should now be visible on the right half of the red block. Tracking the drone movement can be started with a left mouse click on the video frame. It initializes the tracking algorithm to the latest video frame. The view used for tracking is now visible in the left side with red lines connecting the matching features between the tracked image and live image.

License

This software is licensed under the GNU General Public License Version 3 (GPLv3), see http://www.gnu.org/licenses/gpl.html.

flosdrone's People

Contributors

ansse avatar

Watchers

James Cloos avatar Dmitriy Borovikov 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.