diff --git a/docs/cn/build_and_install/android.md b/docs/cn/build_and_install/android.md index fb945ed3a..184ea3f16 100644 --- a/docs/cn/build_and_install/android.md +++ b/docs/cn/build_and_install/android.md @@ -7,8 +7,6 @@ FastDeploy当前在Android仅支持Paddle-Lite后端推理,支持armeabi-v7a |ENABLE_LITE_BACKEND|OFF|编译Android库时需要设置为ON| - | |WITH_OPENCV_STATIC|OFF|是否使用OpenCV静态库| - | |WITH_LITE_STATIC|OFF|是否使用Lite静态库| 暂不支持使用Lite静态库 | -|WITH_LITE_FULL_API|ON|是否使用Lite Full API库| 目前必须为ON | -|WITH_LITE_FP16|OFF|是否使用带FP16支持的Lite库| 目前仅支持 arm64-v8a 架构| 更多编译选项请参考[FastDeploy编译选项说明](./README.md) @@ -47,12 +45,6 @@ FASDEPLOY_INSTALL_DIR="${BUILD_DIR}/install" mkdir build && mkdir ${BUILD_ROOT} && mkdir ${BUILD_DIR} cd ${BUILD_DIR} -# Check fp16 support (only support arm64-v8a now) -WITH_LITE_FP16=ON -if [ "$ANDROID_ABI" = "armeabi-v7a" ]; then - WITH_LITE_FP16=OFF -fi - # CMake configuration with Android toolchain cmake -DCMAKE_TOOLCHAIN_FILE=${TOOLCHAIN_FILE} \ -DCMAKE_BUILD_TYPE=MinSizeRel \ @@ -63,7 +55,6 @@ cmake -DCMAKE_TOOLCHAIN_FILE=${TOOLCHAIN_FILE} \ -DANDROID_TOOLCHAIN=${ANDROID_TOOLCHAIN} \ -DENABLE_LITE_BACKEND=ON \ -DENABLE_VISION=ON \ - -DWITH_LITE_FP16=${WITH_LITE_FP16} \ -DCMAKE_INSTALL_PREFIX=${FASDEPLOY_INSTALL_DIR} \ -Wno-dev ../../.. @@ -83,6 +74,7 @@ make install └── third_libs # 第三方依赖库 └── install ├── opencv + ├── flycv └── paddlelite ``` 在examples/vision目录下可查看Android C++ SDK 使用案例: diff --git a/docs/cn/build_and_install/download_prebuilt_libraries.md b/docs/cn/build_and_install/download_prebuilt_libraries.md index 105e0f0e7..742f71573 100755 --- a/docs/cn/build_and_install/download_prebuilt_libraries.md +++ b/docs/cn/build_and_install/download_prebuilt_libraries.md @@ -75,7 +75,7 @@ pip install fastdeploy-python==0.0.0 -f https://www.paddlepaddle.org.cn/whl/fast ## C++ SDK安装 -Release版本(当前最新0.7.0,Android为0.4.0 pre-release) +Release版本(当前最新0.7.0,Android为0.8.0 pre-release) | 平台 | 文件 | 说明 | | :--- | :--- | :---- | @@ -84,7 +84,15 @@ Release版本(当前最新0.7.0,Android为0.4.0 pre-release) | Mac OSX x64 | [fastdeploy-osx-x86_64-0.7.0.tgz](https://bj.bcebos.com/fastdeploy/release/cpp/fastdeploy-osx-x86_64-0.7.0.tgz) | clang++ 10.0.0编译产出| | Mac OSX arm64 | [fastdeploy-osx-arm64-0.7.0.tgz](https://bj.bcebos.com/fastdeploy/release/cpp/fastdeploy-osx-arm64-0.7.0.tgz) | clang++ 13.0.0编译产出 | | Linux aarch64 | - | 自行编译,可集成ONNX Runtime、Paddle Lite后端 | -| Android armv7&v8 | [fastdeploy-android-0.4.0-shared.tgz](https://bj.bcebos.com/fastdeploy/release/android/fastdeploy-android-0.4.0-shared.tgz) | NDK 25及clang++编译产出, 支持arm64-v8a及armeabi-v7a | +| Android armv7&v8 | [fastdeploy-android-0.8.0-shared.tgz](https://bj.bcebos.com/fastdeploy/release/android/fastdeploy-android-0.8.0-shared.tgz) | NDK 25及clang++编译产出, 支持arm64-v8a及armeabi-v7a | + +## Java SDK安装 + +Release版本(Java SDK 目前仅支持Android,版本为0.8.0 pre-release) + +| 平台 | 文件 | 说明 | +| :--- | :--- | :---- | +| Android Java SDK | [fastdeploy-android-sdk-0.8.0.aar](https://bj.bcebos.com/fastdeploy/release/android/fastdeploy-android-sdk-0.8.0.aar) | NDK 20 编译产出, minSdkVersion 15,targetSdkVersion 28 | Develop版本(Nightly build) diff --git a/java/android/README.md b/java/android/README.md index e73443506..e0368ff46 100644 --- a/java/android/README.md +++ b/java/android/README.md @@ -4,8 +4,13 @@ FastDeploy Android SDK 目前支持图像分类、目标检测、OCR文字识别 - 调用`predict`接口 - 可视化验证(可选) -## 目录 +|图像分类|目标检测|OCR文字识别|人像分割|人脸检测| +|:---:|:---:|:---:|:---:|:---:| +|||||| +## 内容目录 + +- [下载及配置SDK](#SDK) - [图像分类API](#Classification) - [目标检测API](#Detection) - [语义分割API](#Segmentation) @@ -15,8 +20,41 @@ FastDeploy Android SDK 目前支持图像分类、目标检测、OCR文字识别 - [RuntimeOption说明](#RuntimeOption) - [可视化接口API](#Visualize) - [模型使用示例](#Demo) +- [App示例工程使用方式](#App) -## 图像分类 +## 下载及配置SDK +
+ +### 下载 FastDeploy Android SDK +Release版本(Java SDK 目前仅支持Android,当前版本为0.8.0 pre-release) + +| 平台 | 文件 | 说明 | +| :--- | :--- | :---- | +| Android Java SDK | [fastdeploy-android-sdk-0.8.0.aar](https://bj.bcebos.com/fastdeploy/release/android/fastdeploy-android-sdk-0.8.0.aar) | NDK 20 编译产出, minSdkVersion 15,targetSdkVersion 28 | + +更多预编译库信息,请参考: [download_prebuilt_libraries.md](../../docs/cn/build_and_install/download_prebuilt_libraries.md) + +### 配置 FastDeploy Android SDK + +首先,将fastdeploy-android-sdk-xxx.aar拷贝到您Android工程的libs目录下,其中`xxx`表示您所下载的SDK的版本号。 +```shell +├── build.gradle +├── libs +│ └── fastdeploy-android-sdk-xxx.aar +├── proguard-rules.pro +└── src +``` + +然后,在您的Android工程中的build.gradble引入FastDeploy SDK,如下: +```java +dependencies { + implementation fileTree(include: ['*.aar'], dir: 'libs') + implementation 'com.android.support:appcompat-v7:28.0.0' + // ... +} +``` + +## 图像分类API @@ -54,7 +92,7 @@ public boolean release(); // 释放native资源 public boolean initialized(); // 检查是否初始化成功 ``` -## 目标检测 +## 目标检测API @@ -91,7 +129,7 @@ public boolean release(); // 释放native资源 public boolean initialized(); // 检查是否初始化成功 ``` -## OCR文字识别 +## OCR文字识别API @@ -133,7 +171,7 @@ public boolean release(); // 释放native资源 public boolean initialized(); // 检查是否初始化成功 ``` -## 语义分割 +## 语义分割API @@ -166,7 +204,7 @@ public boolean release(); // 释放native资源 public boolean initialized(); // 检查是否初始化成功 ``` -## 人脸检测 +## 人脸检测API @@ -388,3 +426,122 @@ option.enableLiteFp16(); model.init(modelFile, paramFile, configFile, option); // Bitmap读取、模型预测、资源释放 同上 ... ``` + +## App示例工程使用方式 + + +FastDeploy在java/android/app目录下提供了一些示例工程,以下将介绍示例工程的使用方式。由于java/android目录下同时还包含JNI工程,因此想要使用示例工程的用户还需要配置NDK,如果您只关心Java API的使用,并且不想配置NDK,可以直接跳转到以下详细的案例链接。 + +- [图像分类App示例工程](../../examples/vision/classification/paddleclas/android) +- [目标检测App示例工程](../../examples/vision/detection/paddledetection/android) +- [OCR文字识别App示例工程](../../examples/vision/ocr/PP-OCRv2/android) +- [人像分割App示例工程](../../examples/vision/segmentation/paddleseg/android) +- [人脸检测App示例工程](../../examples/vision/facedet/scrfd/android) + +### 环境准备 + +1. 在本地环境安装好 Android Studio 工具,详细安装方法请见[Android Stuido 官网](https://developer.android.com/studio)。 +2. 准备一部 Android 手机,并开启 USB 调试模式。开启方法: `手机设置 -> 查找开发者选项 -> 打开开发者选项和 USB 调试模式` + +**注意**:如果您的 Android Studio 尚未配置 NDK ,请根据 Android Studio 用户指南中的[安装及配置 NDK 和 CMake ](https://developer.android.com/studio/projects/install-ndk)内容,预先配置好 NDK 。您可以选择最新的 NDK 版本,或者使用 FastDeploy Android 预测库版本一样的 NDK + +### 部署步骤 + +1. App示例工程位于 `fastdeploy/java/android/app` 目录 +2. 用 Android Studio 打开 `fastdeploy/java/android` 工程,注意是`java/android`目录 +3. 手机连接电脑,打开 USB 调试和文件传输模式,并在 Android Studio 上连接自己的手机设备(手机需要开启允许从 USB 安装软件权限) + +
+
+
+
+