Android MLKit - 执行 Firebase ML 任务时发生内部错误

2024-02-05

您好,我有一个在 Android 应用程序中使用的自定义模型,但是当我尝试运行它时,会引发 MLkit 异常,所述错误的日志输出如下:

Internal error has occurred when executing Firebase ML tasks

我的应用程序的 java 代码如下所示:

FirebaseLocalModel localModel = new FirebaseLocalModel.Builder("local_places_recommend")
                .setAssetFilePath("recsys.tflite").build();

FirebaseModelManager.getInstance().registerLocalModel(localModel);



FirebaseModelOptions options = new FirebaseModelOptions.Builder()
                .setLocalModelName("local_places_recommend")
                .build();

FirebaseModelInterpreter firebaseInterpreter = FirebaseModelInterpreter.getInstance(options);

FirebaseModelInputOutputOptions inputOutputOptions =
       new FirebaseModelInputOutputOptions.Builder()
                .setInputFormat(0, FirebaseModelDataType.FLOAT32, new int[]{1, 3})
                .setOutputFormat(0, FirebaseModelDataType.FLOAT32, new int[]{1, 1, 34})
                .build();

float[][] input = new float[1][3];

input[0][0] = d1;
input[0][1] = d2;
input[0][2] = d3;


FirebaseModelInputs inputs = new FirebaseModelInputs.Builder()
                .add(input)
                .build();

每当我尝试运行 FirebaseModelInterpreter 时,我都会收到该错误,仅此而已。

输入张量和输出张量的形状分别如下:

[1 3]
<class 'numpy.float32'>
[ 1  1 34]
<class 'numpy.int64'>

有关此问题的任何帮助或见解将不胜感激。


如果您正在使用 CameraX,您可能会收到此错误。

I/CameraXBasic: Internal error has occurred when executing ML Kit tasks 

请确保关闭ImageProxy and image in analyzeMLKit操作后的函数

这里的小片段

override fun analyze(imageProxy: ImageProxy) {

     val image:Image? = imageProxy.image

     image?.let {img->
               val iImage = InputImage
                 .fromMediaImage(img,imageProxy.imageInfo.rotationDegrees)
                textRecognizer.process(iImage)
                    .addOnSuccessListener { listener(it)}
                    .addOnFailureListener { Log.i(TAG,it.toString()) }
                    .addOnCompleteListener {
                        image.close()
                        imageProxy.close() }
     }

}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Android MLKit - 执行 Firebase ML 任务时发生内部错误 的相关文章

随机推荐

  • 更深入地理解Python对象机制

    我想更好地理解 Python 3 x 数据模型 但我没有找到 Python 对象行为的完整和精确的解释 我正在寻找参考资料 如果我下面展示的每个案例都可以链接到 Python API 参考资料或 PEP 或任何其他有价值的资料 那就太好了
  • NavHostFragment 无法从 XML 访问

    我想尝试新的导航库 关注后本指南 https developer android com topic libraries architecture navigation navigation implementing我在运行时遇到错误 Ca
  • 如何解决在同一页面上包含文件上传和其他文本输入的

    我的表格需要帮助 我想将输入 文本区域和文件上传混合到数据库中 我在 中使用什么 我是否使用正常形式属性
  • Eclipse 继续崩溃

    今天我的 Eclipse 继续崩溃并向我显示以下消息 A fatal error has been detected by the Java Runtime Environment SIGSEGV 0xb at pc 0x00007f9d6
  • 链接静态库,共享另一个静态库

    我目前有一个用于非常大的代码库的 Xcode 项目 我将其称为X计划 我将其分为一堆子项目 项目A B C 到目前为止 每个项目都可以自行编译 效果很好 它们都生成静态库 项目B and 项目C依赖于生成的静态库项目A为了建造 我有另一个
  • 在 Golang 中导入包的本地更改而不推送代码

    我现在正在学习 Golang 而且还是个新手 我有一个关于包裹的问题 考虑以下场景 假设我有一个包裹github com ilatif A我正在其中导入另一个包github com ilatif B like import github c
  • 收到推送通知时添加新通知(不替换之前的通知)

    我在我的应用程序中使用推送通知 我需要在发送推送通知时显示通知 如果我发送另一个通知 没有清除之前的通知 它将替换旧的通知 这是我使用的代码 NotificationManager mNotificationManager Notifica
  • 谷歌应用程序脚本中的 CopyTo 将无法完成超过 1000 行的执行

    I am using originalRange copyTo rangeToCopyTo to basically pull down functions for the number of rows of data I have Cop
  • PHP - 我们应该在会话中包含哪些数据?

    这是一个初学者的问题 在网站中 会话中应该或不应该包含什么类型的数据 我了解我不应包含任何需要保证安全的信息 我对编程最佳实践更感兴趣 例如 可以在会话中包含一些数据 否则这些数据将作为依赖项注入从一个页面发送到另一个页面 这不是相当于创建
  • 如何在 Python 中将 CIDR 前缀转换为点分四组网络掩码?

    如何在 Python 中将 CIDR 前缀转换为点分四组网络掩码 例如 如果前缀是12我需要返回255 240 0 0 这是一个较轻松的解决方案 没有模块依赖项 netmask join str 0xffffffff lt lt 32 le
  • 如何将指针设置到第零位置?

    据我所知 在预处理阶段 代码中所有出现的 NULL 都会被 0 替换 然后在编译期间 指针上下文中出现的所有 0 都将替换为在该机器上表示 NULL 的适当值 因此 编译器必须知道该特定机器的 NULL 值 现在 这意味着每当我在指针上下文
  • R 中的合并命令

    我一直在使用 R 中的合并命令 并试图找出如何使用 SUFFIX 参数 在线文档并没有很好地解释它 我想做的是导入一些 csv 文件 data1 lt read csv fileA header T data2 lt read csv fi
  • 我想一次滚动多个回收器视图如何实现

    我想滚动多个RecyclerView一次如何实现该 Exp 我有 3RecyclerView水平方向 当我第一次滚动时RecyclerView那么第二个和第三个也应该滚动怎么办 答案很简单 你必须从一个回收视图获取滚动反馈并将其传递给其他回
  • python中的return和break有什么区别?

    python中的return和break有什么区别 请解释一下它们在循环和函数中到底做了什么 谢谢 break用于提前结束循环 whilereturn是用于将返回值传递回函数调用者的关键字 如果不带参数使用它 它只会结束函数并返回到之前执行
  • Angular 6:从后端服务器获取文件对象后下载文件

    我有一个结构为 type Buffer data Array 702549 的文件对象类型 我需要在 Angular 6 中做什么才能在浏览器中下载此文件 我从这个函数得到我的回应 getMarketingProposalById id s
  • 查找数组中出现次数最多的第 N 个数字

    Find the nth most frequent number in array There is no limit on the range of the numbers 我想我们可以 i 使用 C 中的映射存储每个元素的出现情况 i
  • 从 Facelets 调用 servlet 的正确方法?

    使用带有提交按钮的表单从 Facelets 文件调用 servlet 的正确方法是什么 是否需要特定表格 只需使用纯 HTML
  • 我想使用 jquery 操作 iframe 内的 html

    我想我可以通过将 jQuery 函数的上下文设置为 iframe 的文档来做到这一点 如下所示 function document ready some selector frames nameOfMyIframe document doS
  • 如何将字符串转换为长整型而不丢失前导零[重复]

    这个问题在这里已经有答案了 在我的网络服务方法中 我有一个输入类型Long 我应该在左边添加两个零 所以我将其转换为String 我连接了两个零 然后我应该再次转换为Long 我发现java中的Long类型忽略左零 如何在 Long 值中保
  • Android MLKit - 执行 Firebase ML 任务时发生内部错误

    您好 我有一个在 Android 应用程序中使用的自定义模型 但是当我尝试运行它时 会引发 MLkit 异常 所述错误的日志输出如下 Internal error has occurred when executing Firebase M