临时起意,想做个图片 OCR,就是把图片中的文字提取出来,然后保存到文件中,这样就可以方便的复制粘贴了。
首先查到,苹果的 Vision 框架提供了这样的功能,而且还是离线的,不需要联网,这样就更方便了。先找了个 demo 跑起来后发现只能识别英文,本来打算换框架了,后来发现可以设置语言,就试了下,果然可以识别中文。
源摘要
Vision を使ってオンデバイスで日本語のテキスト認識を行う
这篇文章由作者れい ZOZO, Inc.撰写,主要介绍了如何使用 Apple 的 Vision 框架进行日本语的文字识别。
内容概述
文章首先介绍了在 iOS 中进行日本语识别的传统方法,通常需要使用外部库或与 Firebase 的文字识别 API 通信。然后,作者强调了 WWDC2022 上 Vision 框架对日本语的支持,使得可以在设备上进行日本语识别,无需使用外部库。
文章接下来比较了三种日本语识别方法:
- 外部库(如 SwiftyTesseract):速度快,精度低
- Firebase 的文字识别 API:速度慢,精度高
- Vision 框架:速度快,精度中等
作者随后提供了使用 Vision 框架进行日本语识别的具体实现代码,并解释了如何通过VNRecognizeTextRequest
类的supportedRecognitionLanguages()
方法和recognitionLanguages
属性来指定日本语。
文章最后提到了 Vision 的手写文字识别精度相当高,并推荐了一个 GitHub 上的日本语 OCR 演示应用。还提到了 WWDC 上发布的 VisionKit,它将相机图像获取和识别的过程内部实现,可能更容易使用。
总结
这篇文章详细介绍了使用 Vision 框架进行日本语文字识别的方法和步骤,以及与其他方法的比较。通过提供具体的代码示例,作者展示了如何在 iOS 设备上实现日本语识别,无需依赖外部库或 API。文章还提供了有关 Vision 框架和新发布的 VisionKit 的额外资源和链接,为有兴趣深入了解和实现日本语文字识别的开发者提供了实用的指导。
其他工具
Releases · hiroi-sora/Umi-OCR · GitHub
还有这个识别率挺高的,Tesseract OCR VS EasyOCR|猩々博士,
GitHub - JaidedAI/EasyOCR: Ready-to-use OCR with 80+ supported languages and all popular writing scripts including Latin, Chinese, Arabic, Devanagari, Cyrillic and etc.
参考
recognitionLanguages
【iOS13】Vision.framework の文字認識 (OCR) で遊んでみる
Vision を使ってオンデバイスで日本語のテキスト認識を行う