RAD (Research And Development) is a C++ library that serves as a platform for rapid development of R&D applications in computer vision. It supports the following workflows:
- Image processing through OpenCV,
- Parallel development through oneAPI's TBB,
- Inference of neural networks through ONNXRuntime.
RAD requires a minimum version of 3.30 and supports the following platforms and compilers:
Platform (Compiler) | Version |
---|---|
Windows (MSVC) | 19.41 |
Linux (GCC) | 14.0.1 |
Linux (LLVM Clang) | 18.1 |
Warning
RAD does not support Apple platforms.
Library | Version |
---|---|
Zeus | 1.5.0 |
OpenCV | 4.10.0 |
TBB | 2021.13.0 |
ONNXRuntime | 1.19.2 |
Note
ONNXRuntime is an optional dependency that may be removed when the library is built.
There are three ways in which you can contribute to RAD:
- If you find a bug, please open an issue. Similarly, if you have a question about how to use it, or if something is unclear, please post an issue so it can be addressed.
- If you have a fix for a bug, or a code enhancement, please open a pull request. Before you submit it though, make sure to abide by the rules written below.
- If you have a feature proposal, you can either open an issue or create a pull request. If you are submitting a pull request, it must abide by the rules written below. Note that any new features need to be approved by me.
If you are submitting a pull request, the guidelines are the following:
- Ensure that your code follows the standards and formatting of the framework.
The coding standards can be seen throughout the code, and the formatting is
handled through the
.clang-format
file located at the root of the directory. Any changes that do not follow the style and format will be rejected. - Ensure that all unit tests are working prior to submitting the pull request. If you are adding a new feature that has been approved, it is your responsibility to provide the corresponding unit tests (if applicable).
RAD is published under the BSD-3 license and can be viewed here.