Track ArUco markers and output movement commands to re-center the marker.
ArUco Tracker Filter
Add to a video source to generate camera gimbal direction output used to re-center the marker.
Generate and Print markers from here: ArUco Marker generator, use the 4x4 dictionary.
Find an example Marker in the
- openCV 4
Use the included PKGBUILD
For installation from source (Linux):
Required: OpenCV and OBS-Studio + dev packages
git clone https://github.com/dunkelstern/obs-aruco-tracker cd obs-aruco-tracker mkdir build cd build cmake .. -DSYSTEM_INSTALL=0 make make install
for local installation or
cmake .. -DSYSTEM_INSTALL=1 for system installation
Installation from Source (OSX):
Plugin has not been portet to OSX yet, if you want to try, start with the Linux version.
Installation from Source (Windows):
You will need a working build of obs:
Required: Visual Studio 2017, CMake
- Checkout the source from https://github.com/obsproject/obs-studio
- Create build directory
- Download dependencies from https://obsproject.com/downloads/dependencies2017.zip
- Create Visual Studio solution with CMake:
cd build cmake .. -DDepsPath=/path/to/deps -DDISABLE_UI=1 -G "VisualStudio 15 2017 64bit"
- Build OBS
You will need a working build of openCV:
Required: Visual Studio 2017 or 2019, CMake
- Get VcPkg https://github.com/microsoft/vcpkg (follow the quick start guide)
- Compile openCV:
vcpkg install opencv[contrib]
- Export openCV
vcpkg export opencv --zip
- Unpack the zip somewhere where you can find it
Now we can build the plugin:
Required: Visual Studio 2019, CMake
cd obs-aruco-tracker mkdir build cd build cmake .. \ -DSYSTEM_INSTALL=0 \ -DCMAKE_TOOLCHAIN_FILE="$HOME\Code\obs-aruco-tracker\build\opencv\scripts\buildsystems\vcpkg.cmake" \ -DLIBOBS_LIB="$HOME\Code\obs-studio\build\libobs\Debug\obs.lib" \ -DLIBOBS_INCLUDE_DIR="$HOME\Code\obs-studio\libobs" -DW32_PTHREADS_LIB="$HOME\Code\obs-studio\build\deps\w32-pthreads\Debug\w32-pthreads.lib" -G "Visual Studio 16" -A x64
As you can see I build my stuff in
$HOME\Code\*, I unpacked the
VcPkg zip directly into the build dir and renamed it to
The Arduino sketch is used for controlling a camera gimbal (nicknamed "Klein Glotzi").
You will need the Library PWMServo for the sketch to work. Before flashing the Sketch make sure that the calibration values are good for your Servos. (See the Sketch for more information)
"Klein Glotzi" Camera gimbal
- The plans for the Gimbal can be seen here: Klein Glotzi on OnShape CAD
- The STL Files for 3D-Printing the gimbal are in the STL Subfolder.
- In addition to an Arduino Uno (or Nano) you will need some wires and two Tower SG90 Micro Servos.
- The Gimbal mount is built for a MS Lifecam, so you probably want one of those too.