我正在尝试从图像中识别文本。我正在使用设备上的 API 从包 firebase_ml_vision
中识别文本。
我的代码片段如下:
onTap: () async {
final String recognizedText =
await _initializeVision(
File(separateList[index]));
Navigator.push(
context,
MaterialPageRoute(
builder: (context) =>
TextRecognition(
recognizedText)));
},
Future<String> _initializeVision(File image) async {
final FirebaseVisionImage visionImage = FirebaseVisionImage.fromFile(image);
final TextRecognizer textRecognizer =
FirebaseVision.instance.textRecognizer();
final VisionText visionText =
await textRecognizer.processImage(visionImage);
String text = "";
for (TextBlock block in visionText.blocks) {
for (TextLine line in block.lines) {
_textLines.add(line);
text += line.text + '\n';
}
}
return text;
}
当图片中的文本有英文版本时,代码工作正常,但不适用于其他语言,如印地语、俄语等。
我做错了什么还是设备 API 的限制?
答案 0 :(得分:0)
不幸的是,设备上的识别仅支持拉丁语。 如果您想检测其他语言 - 您必须使用基于云的识别。