This guide will help you set up the PaperScope Manager on both Windows and Mac.
- Git
- Visual Studio 2022
- Select "Desktop Development with C++"
- Qt Framework
- see instructons
- QT 6.8.x
- CMake (Windows)
- Homebrew (Mac)
Download the OpenCV (min v4.10) source code from the OpenCV GitHub repository and the OpenCV extra modules.
Open your console and navigate into the OpenCV repository folder:
cd opencv-4.10
Create a build directory and navigate to it:
mkdir build && cd build
Configure the build with CMake and if necessary replace path to OpenCV extra modules ('opencv_contrib'):
cmake -G "Visual Studio 17 2022" -A x64 -DCMAKE_BUILD_TYPE=Release -DBUILD_SHARED_LIBS=ON -DOPENCV_EXTRA_MODULES_PATH=../../opencv_contrib/modules ..
Build OpenCV:
cmake --build . --config Release
or alternatively
cmake --build . --config Debug
If compiling OpenCV doesn't work, you can use the precompiled files available in the thirdparty/opencv directory. For a detailed setup guide visit https://jinscott.medium.com/build-opecv-on-windows-with-cuda-f880270eadb0
Install OpenCV and pkg-config using Homebrew:
brew install opencv pkg-config
Ensure that pkg-config can find OpenCV:
export PKG_CONFIG_PATH=/usr/local/opt/opencv/lib/pkgconfig
You can verify the installation by running:
pkg-config --modversion opencv4
If the installation is successful, you should see the version number of OpenCV.
Open the Qt Creator application and the PaperScope project via the PaperScopeManager.pro file located in the root directory of the repository.
Configure the project to use the appropriate Qt kit for your platform.
The PaperScope Manager application relies on several external dependencies, including OpenCV and TensorFlow Lite. These dependencies need to be properly configured in the PaperScopeManager.pro file to ensure the application builds and runs correctly.
Ensure that the paths to the OpenCV and TensorFlow Lite libraries and include directories are correctly set according to your system's configuration. This setup will allow the PaperScope Manager to utilize these external dependencies effectively.
# use precompiled OpenCV or use your own dependency
OPENCV_LIBS = $$PWD/thirdparty/opencv/lib/win/release
OPENCV_BINS = $$PWD/thirdparty/opencv/bin/release
OPENCV_VERSION = 4100
Additionally, the necessary DLL files will be automatically copied to the build folder during the build process, ensuring that all required binaries are available for the application to run.
Depending on your system's hardware, you need to configure TensorFlow Lite for either Intel chips or Apple Silicon.
BundleFiles.files += \
$$PWD/thirdparty/tensorflow-lite/lib/mac/libtensorflowlite.dylib \
#$$PWD/thirdparty/tensorflow-lite/lib/mac/libtensorflowlite_intel.dylib \
Build the project by clicking on the "Build" button or selecting Build > Build Project from the menu.
Run the application by clicking on the "Run" button or selecting Build > Run from the menu.
Qt offers a CLI deployment tool that simplifies the creation of standalone applications. For more details, please refer to the Qt documentation.
Windows: Mac: https://doc.qt.io/qt-6/macos-deployment.html#the-mac-deployment-tool
- If you want to sync tracked data with a visualizer instance, you need to enter a valid project ID.
- Select your preferred webcam and resolution/framerate settings. You can switch between different cameras by clicking the "Open camera" button..
- Select a tracking mode.
There are two calibration modes available:
Calibration Matrix: This mode uses an OpenCV checkerboard pattern to remove your webcam lens distortion.
Manual Calibration: This mode allows you to manually set the desired tracking area in the webcam view.
- Use the selectbox "Active Calibration Mode" to switch between modes.
- To set your calibration click the button "Calibrate".
The PaperScope Tracking Pipeline is separated into 5 stages.
First, the webcam view is transformed into a 2d plane.
Use the four slider in the "Processing" view to optimize the webcam image input.
Threshold Dark: darken background pixels
Threshold Light: Increase contrast of drawn shapes for better shape detection.
Smoothing: When using the "Calibration Matrix" mode you can smooth out perspective tracking errors and reduce jitter.
The "Tresholding" view should display all desired shapes.
The "Bounding Boxes" view shows all classified shapes from our ai model.
The "Contours" view shows the final shapes that will be sent to the visualizer.







