An open API service indexing awesome lists of open source software.

https://github.com/qengineering/tensorflow_lite_pose_jetson-nano

TensorFlow Lite Posenet on a Jetson Nano at 15.2 FPS
https://github.com/qengineering/tensorflow_lite_pose_jetson-nano

aarch64 cpp gpu-acceleration gpu-delegate jetson-nano posenet tensorflow-examples tensorflow-lite

Last synced: 5 months ago
JSON representation

TensorFlow Lite Posenet on a Jetson Nano at 15.2 FPS

Awesome Lists containing this project

README

          

# TensorFlow_Lite_Pose_Jetson-Nano
![output image]( https://qengineering.eu/images/Pose_Jetson.webp )

## TensorFlow Lite Posenet running on a Jetson Nano
[![License](https://img.shields.io/badge/License-BSD%203--Clause-blue.svg)](https://opensource.org/licenses/BSD-3-Clause)


A fast C++ implementation of TensorFlow Lite Posenet on a Jetson Nano.

Once overclocked to 2015 MHz, the app runs at 15.2 FPS.
Special made for a Jetson Nano see [Q-engineering deep learning examples](https://qengineering.eu/deep-learning-examples-on-raspberry-32-64-os.html)

------------

Papers: https://medium.com/tensorflow/real-time-human-pose-estimation-in-the-browser-with-tensorflow-js-7dd0bc881cd5

------------

## Benchmark.
| CPU 2015 MHz | GPU 2015 MHz | CPU 1479 MHz | GPU 1479 MHZ | RPi 4 64os 1950 MHz |
| :------------: | :-------------: | :-------------: | :-------------: | :-------------: |
| 15.2 FPS | 11.8 FPS | 12 FPS | 11 FPS | 9.4 FPS |

------------

## Dependencies.

To run the application, you have to:
- TensorFlow Lite framework installed. [Install TensorFlow Lite](https://qengineering.eu/install-tensorflow-2-lite-on-jetson-nano.html)

- Optional OpenCV installed. [Install OpenCV 4.5](https://qengineering.eu/install-opencv-4.5-on-jetson-nano.html)

- Code::Blocks installed. (```$ sudo apt-get install codeblocks```)

------------

## Installing the app.
To extract and run the network in Code::Blocks

$ mkdir *MyDir*

$ cd *MyDir*

$ wget https://github.com/Qengineering/TensorFlow_Lite_Pose_Jetson-Nano/archive/refs/heads/main.zip

$ unzip -j master.zip

Remove master.zip, LICENSE 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

posenet_mobilenet_v1_100_257x257_multi_kpt_stripped.tflite

TestTensorFlow_Lite_Pose.cpb

Pose_single.cpp

------------

## Running the app.
Run TestTensorFlow_Lite.cpb with Code::Blocks.

You may need to adapt the specified library locations in *TestTensorFlow_Lite.cpb* to match your directory structure.


With the `#define GPU_DELEGATE` uncommented, the TensorFlow Lite will deploy GPU delegates, if you have, of course, the appropriate libraries compiled by bazel. [Install GPU delegates](https://qengineering.eu/install-tensorflow-2-lite-on-jetson-nano.html)


See the RPi 4 movie at: https://www.youtube.com/watch?v=LxSR5JJRBoI

------------

[![paypal](https://qengineering.eu/images/TipJarSmall4.png)](https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=CPZTM5BB3FCYL)