A fast C++ implementation of person detection and pose estimation with the ncnn framework on a bare Raspberry Pi 4 64-bit OS.
Once overclocked to 1825 MHz, the app runs at 7.1 FPS without any hardware accelerator. Thanks dog-qiuqiu for all the hard work.
Special made for a Raspberry Pi 4 see Q-engineering deep learning examples
Papers: https://arxiv.org/abs/1804.06208
To run the application, you have to:
- A raspberry Pi 4 with a 32 or 64-bit operating system. It can be the Raspberry 64-bit OS, or Ubuntu 18.04 / 20.04. Install 64-bit OS
- The Tencent ncnn framework installed. Install ncnn
- OpenCV 64 bit installed. Install OpenCV 4.5
- Code::Blocks installed. (
$ sudo apt-get install codeblocks
)
To extract and run the network in Code::Blocks
$ mkdir MyDir
$ cd MyDir
$ wget https://github.com/Qengineering/ncnn_Pose_RPi_64-bits/archive/refs/heads/master.zip
$ unzip -j master.zip
Remove master.zip and README.md as they are no longer needed.
$ rm master.zip
$ rm README.md
Your MyDir folder must now look like this:
Dance.mp4
person_detectord.bin
person_detectord.param
Ultralight-Nano-SimplePose.bin
Ultralight-Nano-SimplePose.param
ncnn_pose.cpb
ncnn_pose.cpp
Run ncnn_pose.cpb with Code::Blocks. More info or
if you want to connect a camera to the app, follow the instructions at Hands-On.
I fact you can run this example on any aarch64 Linux system.