Почему я не могу использовать TensorFlow Lite с привязкой модели ML в своем проекте Android?Android

Форум для тех, кто программирует под Android
Ответить
Anonymous
 Почему я не могу использовать TensorFlow Lite с привязкой модели ML в своем проекте Android?

Сообщение Anonymous »

Я создаю приложение для Android, используя TensorFlow Lite с привязкой модели ML. Я выполнил необходимые настройки, но не могу заставить модель TensorFlow Lite работать в моей MainActivity. В частности, IDE не распознает сгенерированный класс привязки или методы для загрузки модели.
Вот мой файл build.gradle:

Код: Выделить всё

    plugins {
id("com.android.application")
id("org.jetbrains.kotlin.android")
}

android {
namespace = "com.riya.measurify"
compileSdk = 35

androidResources {
noCompress.add("tflite") /
}

defaultConfig {
applicationId = "com.riya.measurify"
minSdk = 26
targetSdk = 34
versionCode = 1
versionName = "1.0"

testInstrumentationRunner =      "androidx.test.runner.AndroidJUnitRunner"
}

buildFeatures {
mlModelBinding = true
dataBinding = true
viewBinding = true
}

buildTypes {
release {
isMinifyEnabled = false
proguardFiles(
getDefaultProguardFile("proguard-android-    optimize.txt"),
"proguard-rules.pro"
)
}
}

compileOptions {
sourceCompatibility = JavaVersion.VERSION_1_8
targetCompatibility = JavaVersion.VERSION_1_8
}

kotlinOptions {
jvmTarget = "1.8"
}
}

dependencies {
implementation("org.tensorflow:tensorflow-lite:2.12.0")
implementation("org.tensorflow:tensorflow-lite-task-vision:0.4.2")
implementation("androidx.core:core-ktx:1.15.0")
implementation("androidx.appcompat:appcompat:1.7.0")
implementation("com.google.android.material:material:1.12.0")
implementation("androidx.constraintlayout:constraintlayout:2.2.0")
testImplementation("junit:junit:4.13.2")
androidTestImplementation("androidx.test.ext:junit:1.2.1")
androidTestImplementation("androidx.test.espresso:espresso-core:3.6.1")
}
Файл .tflite помещен в папку src/main/assets.
Убедился, что mlModelBinding включен в buildFeatures в файле build.gradle.
Включен необходимый TensorFlow Зависимости Lite в блоке зависимостей.
Несколько раз пересобирал проект для регенерации классов привязки.
Проверил IDE на наличие ошибок, но четких подсказок нет.
Что я ожидал
Я ожидал, что Android Studio IDE автоматически сгенерирует класс привязки для модели TensorFlow Lite (например, YourModelNameBinding), когда я добавлю файл .tflite в папку ресурсов и включу mlModelBinding. . Используя эту привязку, я смогу загрузить модель и использовать ее для вывода в MainActivity.
Что произошло
Класс привязки не создается, и я не могу используйте модель TensorFlow Lite в своем проекте.
Что может быть причиной этой проблемы и как ее исправить?

Подробнее здесь: https://stackoverflow.com/questions/793 ... roid-proje
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Android»