39.2. TensorFlowLiteMicro-FaceDetection
39.2.1. Overview
The TFLM example demos the use of a camera to capture an image, perform face detection via the integrated TFLM machine learning platform, and display the results on screen
39.2.2. Configurations
Connect the camera device to the CAM interface on the board
Click LCD-800480W070TC section and connect
39.2.3. Toolchain Requirements
This example requires a DSP-enabled toolchain to utilize hardware DSP instructions for neural network acceleration:
IDE: Segger Embedded Studio (or other IDEs with DSP toolchain support)
GCC Toolchain: Andes RISC-V toolchain with DSP extension support or ZCC toolchain with DSP extension support
Note
Standard GCC toolchains without DSP extensions will not be able to compile and run this demo correctly. The DSP instructions are essential for efficient neural network inference.
39.2.4. Code Options
Add code before find_package to the project’s CMakeLists.txt to get a higher performance
set(RV_ABI "ilp32d")
set(RV_ARCH "rv32gc")
set(CONFIG_HPM_MATH_NN_RVP32 1)
Compiling with zcc libnn 3.2.5 requires the following changes in the hpm_math.h file at the tpt_elementwise_add_s8 function call:
Add negative sign for in_rshift1 parameter Add a negative sign to the in_rshift2 parameter.
return tpt_elementwise_add_s8(out, out_offset, out_scale, -out_rshift, act_min,
act_max, in_tensor1, in_tensor2, in_offset1, in_scale1,
-in_rshift1, in_offset2, in_scale2, -in_rshift2,
lshift, size);
39.2.5. Running the example
When the example runs successfully, The LCD will display the live screen, the processed image and the recognition result