Swift 的 Vision 框架无法识别日文字符
Posted
技术标签:
【中文标题】Swift 的 Vision 框架无法识别日文字符【英文标题】:Swift's Vision framework not recognizing Japanese characters 【发布时间】:2021-12-01 10:21:33 【问题描述】:我想使用 swift 的 Vision 框架从扫描的图像中读取日文字符。但是,当我尝试将VNRecognizeTextRequest
的识别语言设置为日语时,使用
request.recognitionLanguages = ["ja", "en"]
我的程序的输出变成了无意义的罗马字母。对于每个image of japanese text,都有unexpected recognized text 输出。但是,当设置为其他语言(例如中文或德语)时,文本输出与预期相同。是什么导致了看似日本特有的意外输出?
我正在从 github 项目 here 构建。
【问题讨论】:
【参考方案1】:正如他们在 WWDC 2019 视频中所说,Text Recognition in Vision Framework:
首先,一个前提,你需要检查基于语言的校正所支持的语言...
查看supportedRecognitionLanguages
for VNRecognizeTextRequestRevision2
以获得“准确”识别,看起来支持的语言是:
["en-US", "fr-FR", "it-IT", "de-DE", "es-ES", "pt-BR", "zh-Hans", "zh-Hant"]
如果你使用“快速”识别,列表会更短:
["en-US", "fr-FR", "it-IT", "de-DE", "es-ES", "pt-BR"]
如果你回退到VNRecognizeTextRequestRevision1
,它会更短(笑):
["en-US"]
目前看来日语不是受支持的语言。
【讨论】:
以上是关于Swift 的 Vision 框架无法识别日文字符的主要内容,如果未能解决你的问题,请参考以下文章
在 Apple 的 Vision 框架中,我如何判断哪些语言可用于文本识别?
在 Swift 4 上为 Google ML Vision 框架旋转 UIImage