Performance Evaluation

In this section, we provide the performance statistics with different combinations of delegate and buffer conversion methods for : Object Detection which is introduced above.

../../_images/tools_ai-demo-app_object-detection-pipeline.png

Designed Pipeline for Object Detection

Note

The statistics are roughly recorded on experimental. To obtain exact statistics, you should run the APP on the platform. Performance may vary between different versions of the board image.

Genio 350-EVK

  • Apply different conversion methods for the pipeline. This table only shows the statistics for applying NNAPI delegate, because it has the best performance of all based on the experimental results.

USB Camera (resolution 1920*1080)

YUV camera (resolution 1920*1080)

Conversion Method

FPS

Inference Time(ms)

FPS

Inference Time(ms)

v4l2convert + v4l2convert

14

34

19

30

videoconvert + v4l2convert

14

34

4

33

v4l2convert + videoscale

5

34

5

31

videoconvert + videoscale

16

32

3

31

  • Apply different delegates for the pipeline with the best conversion methods. For USB Camera, is videoconvert + videoscale, and for YUV camera, is v4l2convert + v4l2convert.

USB Camera (resolution 1920*1080)

YUV camera (resolution 1920*1080)

Delegate

FPS

Inference Time(ms)

FPS

Inference Time(ms)

CPU

4

253

4

253

GPU

5

203

5

203

ArmNN(GpuAcc)

10

90

9

80

ArmNN(CpuAcc)

10

90

9

80

NNAPI(VP6)

16

32

19

30

Genio 1200-demo

API: Tensorflow Lite

  • Apply different conversion methods for the pipeline. This table only shows the statistics for applying ARMNN(CpuAcc), because it has the best performance of all based on the experimental results.

USB Camera (resolution 640*480)

YUV camera (resolution 2316*1746)

Convert Method

FPS

Inference Time(ms)

Unsupported yet

v4l2convert + v4l2convert

Unsupported yet

videoconvert + v4l2convert

v4l2convert + videoscale

videoconvert + videoscale

35

20

  • Apply different delegates for the pipeline with the best conversion methods. For USB Camera, is videoconvert + videoscale.

USB Camera (resolution 640*480)

YUV camera (resolution 2316*1746)

Delegate

FPS

Inference Time(ms)

Unsupported yet

CPU

8

125

GPU

30

31

ARMNN(GpuAcc)

31

25

ARMNN(CpuAcc)

35

20

API: Neuron

  • Apply different conversion methods for the pipeline. The model used in this case was compiled with backend:mdla.

USB Camera (resolution 640*480)

YUV camera (resolution 2316*1746)

Convert Method

FPS

Inference Time(ms)

Unsupported yet

v4l2convert + v4l2convert

Unsupported yet

videoconvert + v4l2convert

v4l2convert + videoscale

videoconvert + videoscale

5

30

Note

For how to convert tflite model to dla model, please refer to Neuron Compiler section.