Я хочу создать текстовое приложение ocr, и я использовал flutter и firebase ml vision.
Я столкнулся с исключением, когда хочу прочитать текст.
I 'я перенес мое приложение на androidx и проверил FireBase и версию Gradle.
Я могу создать приложение без каких-либо проблем с Gradle, и приложение также запускается.
, но, как я уже упоминал выше, проблеманачинается при чтении текста.
Ниже вы можете увидеть мой код и ошибку.
, пожалуйста, помогите мне, потому что я пытался исправить это более 6 часов.
Мой код:
Future pickImage() async {
File pickedImage = await ImagePicker.pickImage(
source: ImageSource.gallery,
);
setState(() {
fileImage = pickedImage;
isImageLoaded = true;
});
}
Future readText() async {
FirebaseVisionImage ourImage = FirebaseVisionImage.fromFile(fileImage);
TextRecognizer recognizeText = FirebaseVision.instance.textRecognizer();
VisionText readText = await recognizeText.processImage(ourImage);
for (TextBlock block in readText.blocks) {
for (TextLine line in block.lines) {
for (TextElement word in line.elements) {
print(word.text);
}
}
}
}
Ошибка:
[ERROR:flutter/lib/ui/ui_dart_state.cc(148)] Unhandled Exception: PlatformException(textRecognizerError, Waiting for the text recognition model to be downloaded. Please wait., null)
E/flutter (14595): #0 StandardMethodCodec.decodeEnvelope (package:flutter/src/services/message_codecs.dart:569:7)
E/flutter (14595): #1 MethodChannel.invokeMethod (package:flutter/src/services/platform_channel.dart:316:33)
E/flutter (14595): <asynchronous suspension>
E/flutter (14595): #2 MethodChannel.invokeMapMethod (package:flutter/src/services/platform_channel.dart:344:48)
E/flutter (14595): <asynchronous suspension>
E/flutter (14595): #3 TextRecognizer.processImage (package:firebase_ml_vision/src/text_recognizer.dart:40:38)
E/flutter (14595): <asynchronous suspension>
E/flutter (14595): #4 _MyHomePageState.readText (package:text_ocr/main.dart:57:47)
E/flutter (14595): <asynchronous suspension>
E/flutter (14595): #5 _MyHomePageState.build.<anonymous closure> (package:text_ocr/main.dart:100:25)
E/flutter (14595): <asynchronous suspension>
E/flutter (14595): #6 _InkResponseState._handleTap (package:flutter/src/material/ink_well.dart:654:14)
E/flutter (14595): #7 _InkResponseState.build.<anonymous closure> (package:flutter/src/material/ink_well.dart:729:32)
E/flutter (14595): #8 GestureRecognizer.invokeCallback (package:flutter/src/gestures/recognizer.dart:182:24)
E/flutter (14595): #9 TapGestureRecognizer._checkUp (package:flutter/src/gestures/tap.dart:365:11)
E/flutter (14595): #10 TapGestureRecognizer.handlePrimaryPointer (package:flutter/src/gestures/tap.dart:275:7)
E/flutter (14595): #11 PrimaryPointerGestureRecognizer.handleEvent (package:flutter/src/gestures/recognizer.dart:455:9)
E/flutter (14595): #12 PointerRouter._dispatch (package:flutter/src/gestures/pointer_router.dart:75:13)
E/flutter (14595): #13 PointerRouter.route (package:flutter/src/gestures/pointer_router.dart:102:11)
E/flutter (14595): #14 GestureBinding.handleEvent (package:flutter/src/gestures/binding.dart:218:19)
E/flutter (14595): #15 GestureBinding.dispatchEvent (package:flutter/src/gestures/binding.dart:198:22)
E/flutter (14595): #16 GestureBinding._handlePointerEvent (package:flutter/src/gestures/binding.dart:156:7)
E/flutter (14595): #17 GestureBinding._flushPointerEventQueue (package:flutter/src/gestures/binding.dart:102:7)
E/flutter (14595): #18 GestureBinding._handlePointerDataPacket (package:flutter/src/gestures/binding.dart:86:7)
E/flutter (14595): #19 _rootRunUnary (dart:async/zone.dart:1136:13)
E/flutter (14595): #20 _CustomZone.runUnary (dart:async/zone.dart:1029:19)
E/flutter (14595): #21 _CustomZone.runUnaryGuarded (dart:async/zone.dart:931:7)
E/flutter (14595): #22 _invoke1 (dart:ui/hooks.dart:263:10)
E/flutter (14595): #23 _dispatchPointerDataPacket (dart:ui/hooks.dart:172:5)
E/flutter (14595):