CMS智能图片管理之图片文本的识别和提取(OCR )
CMS对图片管理之前有介绍过,包括图库的应用,比如作品展览,还有一些业务应用,比如用户发票上传,车牌识别等,涉及到用户上传就要对图片进行审核、分类、标记,更多的包括图片的检索,这些工作人工一般要花费不少时间,那么如何智能处理呢?
本文介绍一下图片的文字识别功能OCR,全称Optical Character Recognition,翻译过来就是图像文字识别。
通过开源库的OCR解决方案
OCR文字识别的本身有很多开源方案,对于识别过程一般分为三个阶段,
- 文本定位检测
- 文字矫正
- 文字识别
其中第一步是最耗时的,检测文本区域,从网上找了一张图,参考一下整个流程。
通过云服务解决方案
除了自建的OCR解决方案,目前比较流行的就是开源的OCR服务,使用云服务对中小企业来说都比自建好,因为一般自建的效果不一定好,另外研发、服务器等投入会非常大。
提供云服务的厂商比较多,比如腾讯、百度、阿里等,对比了几个厂商的方案和API之后,我们推荐采用阿里云和微软的Asure服务。
阿里云文字识别的优势
- 功能强大,支持各种格式,比如发票、身份证、护照、表格、单据等等
- 收费方便,按次收费,比如发票识别一万次一千多块,费用不算贵
- 对接方便,阿里云提供强大的API,有官方说明文档,有测试Demo地址方便使用
- 中文支持,对中文天生良好的支持
阿里的测试地址:
https://duguang.aliyun.com/experience
微软的Azure文字识别的优势
- 功能强大,以微软作为背书提供的服务
- 海外支持,如果服务器在海外,微软的服务好一些,阿里云目前还没有测试是否支持海外调用
- 中文支持,英文支持自然不必说,微软的Azure也支持中文简体,不但支持中文,也支持法语、西班牙语等多语种
微软API的测试地址: https://portal.vision.cognitive.azure.com/demo/extract-text-from-images
基于Drupal现有解决方案
Drupal本身已经有了Azure API的对接,之前讲过通过Drupal的模块可以实现AI服务,包括人脸识别和文字识别,所以如果采用Drupal管理图片可以直接使用相关模块。
具体模块的介绍可以参考我们之前的文章,Drupal的AI功能模块助力网站智能化里面讲解一些Drupal的AI模块。
文本分析和语义提取模块 https://www.drupal.org/project/azure_text_analytics_api
其中,视觉识别模块,就能实现Azure的对接,调用微软Azure云服务来完成文字识别,具体可以参考这个link
https://www.drupal.org/project/azure_vision_api
这样就实现了图片的文字识别功能,当然除了对图片提取文字之外,Drupal还有很多很多对图片的管理模块,比如裁剪模块、压缩优化模块、懒加载模块、自适应模块,图片展览等等功,因此Drupal对图片的管理功能是很强大的,可以参考之前的一些介绍。
5. CMS+AI 落地应用之 Drupal CMS的RAG应用
6. PHP开源 CMS Drupal 对接国产数据库之达梦数据库
参考:
Using Azure Cognitive Services to support my children with their Chinese homework
Azure 认知服务 (4) 计算机视觉API - 读取图片中的文字 (OCR)