DUO3D-SDK-v0.5.6.0 Preview - This may change with updates, please make sure to use the latest examples shipped with our SDK as our build environment is activly updated.
##Overview
The DUO SDK provides APIs, examples and tooling for working with multi-view vision systems. Built on elegant image processing algorithms which leverage the latest technologies from Intel/AMD (SSE, AVX) and parallel computing methods. This is a highly optimized architecture for image acquisition and processing. DUO Developers can leverage this framework to build and deploy their own applications.
These samples require the latest SDK from http://duo3d.com/downloads
###Features
- Pure C API
- C++/OpenCV Samples
- 100% Cross Platform
- Pre-compiled solutions
- Optional Qt5 Integration
- Roll your own algorithms
- Robust & stable processing
- Optimized imaging pipeline
- Middleware APIs in the works
###Libraries Summary
Here are the key libraries you will interact when working with the SDK:
- DUOLib - The DUO API provides low level access to the device allowing for control, configuration and device information.
##Compilation
We use the cross platform CMake tool to generate IDE/compiler specific projects. To compile the samples you will need to install the latest CMake and use either the command line or GUI to configure and generate the projects. We also provide examples that use OpenCV which you can download from their website. If you wish to bypass the OpenCV install simply remove Sample-06 from the CMakeLists.txt before generating your build files.
####Build Environment
Windows:
- Visual Studio 2010 SP1 Recommenced
- Download and install CMake installer (Select the "Add to the PATH" option)
- Download and extract OpenCV 2.4.7.2 into C:\OpenCV\2.4.7.2
- Add
C:\OpenCV\2.4.7.2
to the system PATH variable
OSX:
- Install XCode and make sure developer mode is enabled
- Download and install CMake
- Download and build/install OpenCV 2.4.7 from source
- Extract the zip and open a new terminal
- In the terminal and navigate to the OpenCV folder
- Use Cmake command line or GUI to generate UNIX Makefiles (should generate a build folder)
- Type 'cd build' and then
sudo make install
commands to install OpenCV - This will install OpenCV into
/usr/local
Linux:
- Install build-essential
- Download and install CMake
- Install
libgtk2.0-dev
- Download and build OpenCV 2.4.7 from source (similar to OSX)
- Install OpenCV to default path
/usr/local
####Building the Samples
We provide a build script in the samples directory which you can run to quickly generate the sample binaries. The executable files will be generated in the bin folder. You can also use Cmake to generate for specific IDE/compiler such as Visual Studio/XCode/etc.
Windows:
Double-click or run BuildAll.cmd
from command prompt
Linux/OSX:
In terminal type: sh ./BuildAll.sh
##Samples
Included with the SDK are several examples to help developers get started. We will also publish more here as we update.
Sample 01 - Shows how to capture and debut the DUO minilx motion data. Sample 02 - Shows how to capture the DUO image frame data from CMOS sensors. Sample 03 - Shows how to configure the programmable LED Array. Sample 04 - Shows how to pass sequences the programmable LED Array. Sample 05 - Demonstrates polling mechanism for capturing frames. Sample 06 - Demonstrates polling mechanism and displays captured frames using OpenCV.
##Structure
%DUO_PATH% | \---DUO3D-SDK | | \---Developers | +---DUOLib | | | +---bin | | DUOLib.dll // DUO Shared Library (Windows) | | libduo.so // DUO Shared Library (Linux) | | libduo.dylib // DUO Shared Library (OSX) | | | +---include | | DUOLib.h // DUO Header Include | | | \---lib | DUOLib.lib // DUO Library | \---Samples | +---CMakeLists.txt +---bin | +---Sample-01 | Sample.h | Sample.cpp | CMakeLists.txt | +---Sample-02 | +---Sample-03 | +---Sample-04 | +---Sample-05 | +---Sample-06 | \---Sample-** // As we continue to add samples.