/GRIP

Program for rapidly developing computer vision applications

Primary LanguageJavaOtherNOASSERTION

logo

Join the chat at https://gitter.im/WPIRoboticsProjects/GRIP Build Status codecov.io Github Releases

GRIP Computer Vision Engine

GRIP (the Graphically Represented Image Processing engine) is an application for rapidly prototyping and deploying computer vision algorithms, primarily for robotics applications. Developing a vision program can be difficult because it is hard to visualize the intermediate results. GRIP simplifies and accelerates the creation of vision systems for experienced users and reduces the barrier to entry for inexperienced users. As a result, many teams with minimal computer vision knowledge have successfully used GRIP since the 2016 FIRST Robotics Competition game.

Features

  • Intuitive drag and drop UI.
  • Active development community.
  • Generates Java, C++, and Python code directly from the pipeline (Example usage here)!
  • Extensible!
  • Deploys and runs headless.
  • Supports various network protocols
  • CUDA acceleration
  • OS Support:
    • Windows
    • OSX
    • Linux (minimum Ubuntu 18.04 or libc version 2.27+)
    • Embedded Linux ARM (NI RoboRIO)

Getting Started

  1. Download the newest release for your operating system.
  2. Run the included installer.
  3. Open GRIP

Check out the release notes and the wiki for more information.

Note for Linux users: GRIP requires GTK2 to be installed. Most Ubuntu-based distributions include it, but some other distros such as Arch may require it to be manually installed. GRIP also requires libc version 2.27 or higher; for Ubuntu-based distributions, this requires Ubuntu 18.04 or newer.

Building GRIP From Source

To build and run, use the included Gradle wrapper script on a Unix System:

./gradlew :ui:run

On Windows:

gradlew :ui:run

If you don't have an internet connection you can build using the --offline flag if you have built GRIP once before.

Running Tests

To do a complete check of functionality of GRIP, use the included Gradle wrapper script on a Unix System:

./gradlew check

On Windows:

gradlew check

CUDA Support

To enable CUDA acceleration, CUDA 10.0 needs to be installed on your computer. CUDA 10.1 may work on Linux systems, but Windows must use 10.0.

When running or building from source, add the Gradle flag -Pcuda to enable CUDA acceleration (eg ./gradlew :ui:run -Pcuda)

Note that CUDA acceleration is not available for all operations.

Code generation does not support CUDA - it is only used for operations running in GRIP.

Contributing

See the guide on setting up build tools in the wiki.