Android 工程示例
人脸检测是Paddle-Lite提供的人像检测demo。在移动端上提供了高精度、实时的人脸检测能力,能处理基于人脸检测的业务场景。在移动端预测的效果图如下:
人像分割是Paddle-Lite 提供的图像分割demo ,在移动端上提供了实时的人像分割能力,可以应用证件照自动抠图、面积测量、智能交通(标记车道和交通标志)等场景。 在移动端预测的效果图如下:
图像分类是Paddle-Lite 提供的图像处理demo ,在移动端上提供了实时的物体识别能力,可以应用到生产线自动分拣或质检、识别医疗图像、辅助医生肉眼诊断等场景。在移动端预测的效果图如下:
物体检测是Paddle-Lite 提供的图像识别demo ,在移动端上提供了检测多个物体的位置、名称、位置及数量的能力。可以应用到视频监控(是否有违规物体或行为)、工业质检(微小瑕疵的数量和位置)、医疗诊断(细胞计数、中药识别)等场景。在移动端预测的效果图如下:
下面我们以 目标检测示例(object_detection_demo) 为例讲解如何部署。
需要的环境: Android Studio、Android手机(开启USB调试模式)、下载到本地的Paddle-Lite-Demo工程
预先要求:如果您的Android Studio尚未配置NDK,请根据Android Studio用户指南中的内容,预先配置好NDK。您可以选择最新的NDK版本,或者与Android编译环境配置中的NDK版本保持一致。
部署步骤:
1、目标检测的Android示例位于
2、用Android Studio 打开object_detection_demo工程 (本步骤需要联网)。
3、手机连接电脑,打开USB调试和文件传输模式,在Android Studio上连接自己的手机设备(手机需要开启允许从 USB安装软件权限)
Android_studio
注意: 如果您在导入项目、编译或者运行过程中遇到NDK配置错误的提示,请打开 File > Project Structure > SDK Location,修改 “Andriod NDK location” 为您本机配置的NDK所在路径。如果您是通过Andriod Studio的SDK Tools下载的NDK (见本章节”预先要求”),可以直接点击下拉框选择默认路径。如果以上步骤仍旧无法解决NDK配置错误,请尝试根据Andriod Studio官方文档中的章节,尝试更新Android Gradle plugin版本。
成功后效果如下,图一:APP安装到手机 图二: APP打开后的效果,会自动识别图片中的物体并标记
Android 示例的代码结构如下图所示:
1、 Predictor.java: 预测代码
2、 model.nb : 模型文件 (opt 工具转化后Paddle-Lite模型);pascalvoc_label_list:训练模型时的labels
文件
3、 libpaddle_lite_jni.so、PaddlePredictor.jar:Paddle-Lite Java 预测库与Jar包
4、 build.gradle : 定义编译过程的 gradle 脚本。(不用改动,定义了自动下载Paddle-Lite预测和模型的过程)
Android 示例基于Java API 开发,调用Paddle-Lite Java API包括以下五步。更详细的API 描述参考: Paddle-Lite Java API。