对于英语以外的其他语言,文本识别失败 [firebase ml vision]

时间:2021-02-04 06:30:25

标签: firebase flutter dart

我正在尝试从图像中识别文本。我正在使用设备上的 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 的限制?

1 个答案:

答案 0 :(得分:0)

不幸的是,设备上的识别仅支持拉丁语。 如果您想检测其他语言 - 您必须使用基于云的识别。

相关问题