DaisyKit is an easy AI toolkit with face mask detection, pose detection, background matting, barcode detection, and more. This open-source project includes the following:
- DaisyKit SDK - C++, the core of models and algorithms in NCNN deep learning framework.
- DaisyKit Python wrapper for easy integration with Python.
- DaisyKit Android - Example app demonstrates how to use Daisykit SDK in Android.
Links:
- Python Package: https://pypi.org/project/daisykit/.
- Documentation: https://daisykit.nrl.ai/docs.
- Sponsor this project: https://github.com/sponsors/vietanhdev.
Demo Video: https://www.youtube.com/watch?v=zKP8sgGoFMc.
Install packages from Terminal
sudo apt install -y build-essential libopencv-dev
sudo apt install -y libvulkan-dev vulkan-utils
sudo apt install -y mesa-vulkan-drivers # For Intel GPU support
For Windows, Visual Studio 2019 + Git Bash is recommended.
- Download and extract OpenCV from the official website, and add
OpenCV_DIR
to path. - Download precompiled NCNN.
Clone the source code:
git clone https://github.com/nrl-ai/daisykit.git --recursive
cd daisykit
Build Daisykit:
mkdir build
cd build
cmake .. -Dncnn_FIND_PATH="<path to ncnn lib>"
make
Run face detection example:
./bin/demo_face_detector_graph
If you dont specify ncnn_FIND_PATH
, NCNN will be built from scratch.
Build Daisykit:
mkdir build
cd build
cmake -G "Visual Studio 16 2019" -Dncnn_FIND_PATH="<path to ncnn lib>" ..
cmake --build . --config Release
Run face detection example:
./bin/Release/demo_face_detector_graph
Read the coding convention and contribution guidelines here.
- Slow model inference - Low FPS
This issue can happen on development builds. Add -DCMAKE_BUILD_TYPE=Debug
to cmake
command and build again. The FPS can be much better.
This toolkit is developed on top of other source code. Including
- Toolchains setup from ncnn.
- QR Scanner from ZXing-CPP.
- JSON support from nlohmann/json.
- Pretrained AI models from different sources: https://daisykit.nrl.ai/docs/models.