您好,我有一个在 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 analyze
MLKit操作后的函数
这里的小片段
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(使用前将#替换为@)