Coder Social home page Coder Social logo

see-and-avoid's Introduction

See and Avoid

Project created by Andy Morgan and Zach Jones Auburn REU on SMART UAVs 2016

Research Coordinator: Dr. Richard Chapman

REU Director: Dr. Saad Biaz

What is this repository for?

This project seeks to develop a robust "See and Avoid" system for autonomous UAVs. An OpenGL environment is used to render a sample cockpit video. The OpenGL rendering is fed into a vision processing algorithm that uses the OpenCV library. Aircraft and other obstacles are identified and tracked using the vision processing algorithm. When an obstacle is determined to be a collision threat, an avoidance maneuver will be attempted.

This work was done in accordance to "see and avoid" regulations set forth by Federal Aviation Administration (FAA). The system is intended for use as a secondary avoidance system. Other systems including use of TCAS or ADS-B provide additional information needed for efficient avoidance.

The project has been supported by the NSF REU site at Auburn University 2016.

How do I get set up?

To get started, download and install the latest version of MS Visual Studio. This project was created in MSVC 2015 Update 2 and has been successfully run on Update 1 and Update 3. The solution contains required OpenCV and OpenGL library files. To run, open the .sln file. Build the project in x86 Release mode. OpenCV does not allow run in Debug mode due to a missing .dll file (that CMake cannot build).

The project successfully links required files to the project in the project folders. There is one Environment value you will need to change in Visual Studio. Source control does not track this variable since it is unique to each user.

To change the required variable, do:

  • Make sure you have "see-and'avoid" selected in the Solution Explorer (ensures proper change of properties)
  • Project -> Properties
  • Debugging -> Environment -> Edit
  • In the top text field insert: PATH=%PATH%;$(ProjectDir)dlls;

NOTE: The Evaluated value field will update. Click OK and save. Compile using x86 Release.

Program Specifics

  • All units are based on the measurement of 1 foot
  • All speeds are in ft/s
  • Two threads run in parallel: one for OpenGL Rendering, one for OpenCV Processing

Contribution guidelines

Want to contribute? Contact Dr. Richard Chapman at Auburn University. Department of Computer Science and Software Engineering

Contributors

  • Zach Jones
  • Andy Morgan

see-and-avoid's People

Contributors

asmorgan24 avatar zachdj 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.