wico 发表于 2018-12-22 15:31:52

Android8.1神经网络硬件加速TfLiteSSDDemo开放源码(支持Firefly下的RK3399平台)

Firefly-RK3399/AIO-3399J Android8.1固件支持Android Neural Networks API (NNAPI) ,充分调用神经网络API进行硬件加速,使RK3399的AI运算性能大幅提升。适用基于主流模型架构衍生开发的各类应用,例如:商品识别、疲劳检测等。
      此SDK为基于 RK3399 Android8.1 的 AndroidNN GPU 加速方案,可以为采用 AndroidNN API开发的 AI 相关应用提供通用加速支持。
支持AndroidNN的两种方式
在上述 Android 平台依赖满足的情况下,支持两种使用 AndroidNN 的方式

[*]1) 根据 AndroidNN1.0 API 的规范编写 AI 应用。
[*]2) 基于 Tensorflow Lite 开发应用,Tensorflow Lite 自动调用 Rockchip AndroidNN 加速接口。


目前提供的两个 Demo 均基于 Tensorflow Lite 的开发,分别为:
TfLiteSSDDemo:基于 TensorflowLite 的目标检测 Demo,使用 MobileNet-SSD 模型 ...
详细可见技术案例Firefly Android8.1 神经网络硬件加速

APP以及源码下载地址:百度云


jewes 发表于 2018-12-22 21:49:28

沙发,希望Ubuntu上也能支持一下

jewes 发表于 2018-12-24 10:47:03

你们是把ssd模型的inference写到native库里面,这样貌似也就只能跑ssd的模型。直接在java代码里面调用tflite的模型能达到相同的fps吗?

梁开东 发表于 2018-12-24 15:48:27

在java代码中直接调用tflite模型,这得看tflite模型复杂度,不同的模型耗时是不一样的,这个主要由模型算法决定。如果两个模型算法一样,那么直接在java代码里面调用tflite的模型一般都可以达到相同的fps。还有tflite提供的一些接口不一定支持。

jewes 发表于 2018-12-26 13:57:35

梁开东 发表于 2018-12-24 15:48
在java代码中直接调用tflite模型,这得看tflite模型复杂度,不同的模型耗时是不一样的,这个主要由模型算法 ...

我之前曾经测试过,直接用java调用tflite的mobilenet ssd模型,fps达不到官方demo的速度。

梁开东 发表于 2018-12-27 14:37:03

本帖最后由 梁开东 于 2018-12-27 18:03 编辑

jewes 发表于 2018-12-26 13:57
我之前曾经测试过,直接用java调用tflite的mobilenet ssd模型,fps达不到官方demo的速度。
请问: 你是用tensorflew提供的demo在RK3399平台运行速度达不到的官方所说的速度吗?还是你自己写的demo比tensorflew提供的demo运行速度慢?

还有你用的是7.1系统还是8.1系统。8.1系统和7.1系统在处理类似于像素转换for循环操作,在java上运行速度差别很大。因为类似for循环耗时操作,在不同的系统和不同的开发板上运行速度不一样的,所以这部分代码你都用jni实现,可能速度会提升很多。但是也有可能rk3399对tflite支持还不太完善,导致fps达不到官方速度。

williamzhang 发表于 2018-12-29 09:07:20

赞,满满的黑科技赶脚

LiCheng 发表于 2018-12-29 10:39:26

您好~我将TFLiteSSDDemo编译之后生成apk,在RK3399上运行,发现并没有检测目标,并且在Android Studio上打印出recognitions,发现为空,请问该如何解决?

我使用的是Android Studio2.2 + NDK R16b,其他源码部分没有改变。

lkd 发表于 2018-12-29 15:48:05

我怀疑是相关的so库没有打包到apk中。你看build.gradle的配置对了没有,官方TFLiteSSDDemo用的是androidstudio3.1.3版本。可能是版本对so库的引用不一样。

LiCheng 发表于 2018-12-29 15:55:05

lkd 发表于 2018-12-29 15:48
我怀疑是相关的so库没有打包到apk中。你看build.gradle的配置对了没有,官方TFLiteSSDDemo用的是androidstu ...

这是生成的apk中所包含的.so库。
页: [1] 2 3 4
查看完整版本: Android8.1神经网络硬件加速TfLiteSSDDemo开放源码(支持Firefly下的RK3399平台)