AR module for QML
This module allows to add an AR component to your QML application simply by importing our library. The framework uses Random dot markers by Hideaki Uchiyama, which are chosen over other possibilities due to their small negative visual impact on the scene they are put on.
Gallery:
Android:
Linux:
Prerequisites (Common)
- Qt 5 (tested with 5.10.0) and Qt Creator (tested with 4.5.0), tested on Desktop and Android kits
- git
Prerequisites (Linux)
- OpenCV for Desktop (tested with bf418ba34)
- Tested on 4xAMD A8-7410 APU (GPU not used)
Prerequisites (Android)
- OpenCV for Android (tested with 3.3.1)
- Android SDK (tested with r22.3) and NDK (tested with r15c), need to be set up with Qt
- Android device (tested with Samsung Galaxy SM-T810 running on cyanogenmod) Up to 5 cores required, GPU is used for image rendering
Installation
git submodule init && git submodule update
- Create a symlink called
opencv-android
pointing to the OpenCV for Android mkdir build_linux; cd build_linux; qmake ..; make -j10 install
- Same for Android, also
export ANDROID_NDK_ROOT=/path/to/ndk
required - Open Qt Creator, open
example/ar-chest.pro
, compile and run on Desktop/Android
Running
- Download pdf and print the example file with markers:
- Attach camera to your PC (device 1 is used by default). Point camera towards the printed sheet
- A chest from Qt examples and a cuboid should appear
Application Structure
Adding markers to your scene
You can add random dot markers to your svg
file by using our tool: qml-ar-inkscape
Contact
Sergei Volodin, Wafa Johal, EPFL, CHILI lab