MLkIT 的文本识别不识别非英文文本

The text recognition of MLkIT does not recognize non-english text

我在 IOS 上实现了 MLkit 的文本识别,但它无法识别非英语文本(e.x 阿拉伯文本)。

它只支持英文。

这是文档 https://developers.google.com/ml-kit/vision/text-recognition/ios

我的代码:

        let textRecognizer = TextRecognizer.textRecognizer()
        let visionImage = VisionImage(image: image)

        textRecognizer.process(visionImage) { result, error in
            guard error == nil, let result = result else { return }
            let resultText = result.text
            print("MLKit : " + resultText)
        }

更新:如果不需要完全本地化(设备端无网络),可以试试MLKit for cloud,它支持“100+种不同的语言和脚本”。 Firebase Text Recognition

局部推理: Googles 'MLKit text recognition' 基于 'TensorFlow Lite',它使用本地模型来识别文本。 根据我的研究 Google 并没有说明预定义模型只适用于拉丁字母表。但似乎是这样。 所以你现在有三个选择:

  1. 寻找针对阿拉伯字母训练的自定义“TensorFlow Lite”模型。
  2. 训练您自己的“TensorFlow Lite”模型:TensorFlow Lite Model Maker
  3. Find/Train“Tensor Flow”模型(不是精简版!)并将其转换为“TensorFlow Lite”模型