hossamsoliuman / laravel-ocr
使用 Laravel 进行最优字符识别
Requires
- php: ^8.0
- laravel/framework: ^9.0
- thiagoalessio/tesseract_ocr: ^2.12
README
该 Laravel OCR 包为 Laravel 应用程序提供最优字符识别功能。它集成了 Tesseract OCR,并提供了离线 OCR、语言选择等功能。
目录
包依赖
此包依赖于 Tesseract OCR。在使用 Laravel OCR 包之前,您必须在您的服务器上安装 Tesseract OCR。您可以在 Tesseract OCR 页面上找到各种操作系统的安装说明 https://github.com/tesseract-ocr/tesseract。
安装
软件安装
对于 Windows 用户,我们在截图提供了安装指南。请点击https://github.com/tesseract-ocr 在您的 Windows 机器上安装 Tesseract OCR。
对于一般用户(不仅限于 Windows),您可以去https://tesseract-ocr.cn/tessdoc/Installation.html
包安装
要安装 Laravel OCR 包,您可以使用 Composer
composer require hossamsoliuman/laravel-ocr
用法
路由和控制器
路由
此包提供 OCR 处理的路由和控制器。您可以通过以下路由访问 OCR 功能
-
POST /api/offline-ocr/image:对图像执行离线 OCR。
- 接受
image
(图像文件)和lang
(语言选择)参数。 - 可选的
user_words
参数用于用户特定单词(见用户单词)。
- 接受
-
GET /languages:检索 OCR 可用的语言列表。
请确保根据需要将这些路由包含在您的 Laravel 应用程序中。您还可以自定义路由和控制器以满足应用程序的需求。
可用语言
您可以通过在请求时使用 lang
参数来选择 OCR 处理的语言(们)。默认情况下使用英语(eng
)。您可以将多个语言指定为逗号分隔的列表,例如 eng,ara
。
要获取可用语言的列表,您可以访问 /languages
路由。
用户单词
在处理技术术语或行话时,您可以通过提供用户特定单词文件来提高 OCR 准确性。要使用用户单词,在执行 OCR 请求时包含 user_words
参数,并提供包含所需单词的文本文件。
示例用法:
curl -X POST -F "image=@image.png" -F "user_words=@user-words.txt" http://your-app.com/offline-ocr/image
当前和即将推出的功能
以下表格详细说明了 Laravel OCR 包的当前和即将推出的功能
贡献
欢迎贡献!我们感谢您对改进此包的兴趣。要开始贡献,请阅读我们的 贡献指南。您的贡献可以帮助使此包变得更好。
许可证
此包是开源软件,根据MIT 许可证授权。您可以根据 MIT 许可证的条款自由使用、修改和分发此软件。有关详细信息,请参阅LICENSE 文件。