TensorflowLite 物体检测官方示例排雷记(Android)

  1. 下载官方示例代码
    1. git clone https://github.com/tensorflow/examples.git
  2. 导入源码到Android Studio
    1. 路径 examples\lite\examples\object_detection\android
    2. 导入后,AS会自动下载依赖(雷1:慢或下载失败
  3. 运行APP
    1. 运行时,会自动下载模型文件(雷2:需撞墙<请不要怀疑是HTTPS或SSL问题>)
    2. 模型文件问题处理完成后,可以正常编译了,如果本地没有NDK环境,还会提示下载,照做即可。
  4. 上图
    1. TensorflowLite 物体检测官方示例排雷记(Android)_第1张图片

雷1:

        配置阿里云仓库(最外层:examples/object_detection/android/build.gradle)        

// Top-level build file where you can add configuration options common to all sub-projects/modules.

buildscript {
    repositories {
        maven { url 'https://jitpack.io' }
        maven { url 'https://maven.aliyun.com/repository/public' }
        maven { url 'https://maven.aliyun.com/repository/central' }
        maven { url 'https://maven.aliyun.com/repository/google' }
        maven { url 'https://maven.aliyun.com/repository/public' }
        maven { url 'https://maven.aliyun.com/repository/gradle-plugin' }

        google()
        mavenCentral()
        mavenLocal()
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:4.0.0'
        classpath 'de.undercouch:gradle-download-task:4.0.2'
        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }
}

allprojects {
    repositories {
        maven { url 'https://jitpack.io' }
        maven { url 'https://maven.aliyun.com/repository/public' }
        maven { url 'https://maven.aliyun.com/repository/central' }
        maven { url 'https://maven.aliyun.com/repository/google' }
        maven { url 'https://maven.aliyun.com/repository/public' }
        maven { url 'https://maven.aliyun.com/repository/gradle-plugin' }

        google()
        mavenCentral()
        maven {
            name 'ossrh-snapshot'
            url 'http://oss.sonatype.org/content/repositories/snapshots'
        }
        mavenLocal()
    }
}

task clean(type: Delete) {
    delete rootProject.buildDir
}

雷2:

  •         首先尝试了官网提示的手动下载TensorflowLite 物体检测官方示例排雷记(Android)_第2张图片
  • 文件coco_ssd_mobilenet_v1_1.0_quant_2018_06_29.zip解压后得到detect.tflite和labelmap.txt
  • 复制上面两个文件到app/src/main/assets下,再次运行,万幸,没有报错了
  • 但是,xxx,不好意思,APP闪退,会报错:tflite模型中没有元宇宙~~~不好意思,是元数据。
  • 再看上看的ZIP文件名,2018年...
  • 今年是,额~2021年...快结束了...
  • TFlite的大神们都去研究元宇宙了~~我也放弃了。
  • -------------------------华丽的分隔线---------------------------
  • 回头找找源码,看看在哪里下载的模型
  • 在这:examples\object_detection\android\app\download_model.gradle
  • 地址:
    src 'https://tfhub.dev/tensorflow/lite-model/ssd_mobilenet_v1/1/metadata/2?lite-format=tflite'
  • 随手往迅雷里一丢,我x,还能下~~,下载了个名字叫2的文件
  • 就这样:
  • 这xx是什么意思?说谁呢?
  • 把它手动改成detect.tflite,再丢到app/src/main/assets
  • 再次运行,成了。
  • 整个工程放这了,需要自取:https://note.youdao.com/s/NDdPnNhm

你可能感兴趣的:(深度学习,Android,android,java,apache)