私有化部署PaddleOCR图片中文字识别

网极科技9个月前代码笔记259

图片文字识别(OCR)的技术目前已经比较成熟,有很多开源模型可以使用。本文主要以百度开源的PaddleOCR为例,进行私有化部署

为什么要进行文字识别私有化

很多图片是比较隐私的,比方身份证,虽然市面上有很多很优质价格也不高的身份证图片识别API(比方我司也有,点此查看)。但是毕竟是隐私内容,图片识别需要上传到公网,公网那边留存多久呢?我司的身份证识别接口是使用的阿里云对象存储定时删除(24小时),该对象存储不对外访问,在一定程度上杜绝了风险以及隐私泄露的可能。
但是要完全杜绝这种可能,私有化是唯一有效的处理方式。

私有化很贵吗?运维很难吗?

私有化不贵而且运维不难,因为我司已经有了成熟的方案,可以直接部署在阿里云函数计算上面,按调用消耗计费,无需预付,每个小时阿里云自动生成账单,用阿里云余额抵扣。综合成本来看,还要比市面上的商用接口便宜很多。
运维上来说,依托阿里云的自动化流水线,可以自动完成性能配置上的弹性伸缩,基本无需运维。

私有化后原来的API接口替换麻烦吗?

私有化后会有新的API接口,可能与原来的API接口的请求方式和返回参数有所区别,需要开发人员稍微修改一下,不是很复杂。

私有化不能离线使用吗?

离线使用是可以的,但是需要本地服务器有GPU,而且运维来说相对麻烦,只能依赖公司内部人员。所以最优解决方案是在阿里云私有化部署。

私有化部署步骤

部署 PaddleOCR 到本地

# 阿里云的镜像仓库地址
docker run -itd --name ppocr -p 9000:9000 registry.cn-hongkong.aliyuncs.com/llapi/ppocr:1.8 /bin/bash -c "sh /PaddleOCR/start.sh"

# 阿里云的镜像仓库地址 服务器端模型
docker run -itd --name ppocr -p 9000:9000 registry.cn-hongkong.aliyuncs.com/llapi/ppocr:1.6.server /bin/bash -c "sh /PaddleOCR/start.sh"

调用 OCR

计算待识别图片的Base64编码
发送服务请求(发送参数,参考下面命令)

curl -H "Content-Type:application/json" -X POST --data "{\"images\": [\"图片base64\"]}"  http://127.0.0.1:9000/predict/ocr_system

返回结果(如果调用成功,会返回如下结果)
{"msg":"","results":[[{"confidence":0.9853195548057556,"text":"测试图像路径,可以是单张图片路径,也可以是图像集合目录路径","text_region":[[5,10],[466,10],[466,24],[5,24]]}]],"status":"000"}

代码示例

import requests
import base64

def ocr(文件地址):
    with open(文件地址, 'rb') as f:
        data = f.read(-1)
    image = str(base64.b64encode(data), encoding='utf-8')
    data = '{"images":["' + image + '"]}'
    txt = requests.post("http://127.0.0.1:9000/predict/ocr_system", data=data,
                        headers={'Content-Type': 'application/json'})
    return txt.content.decode("utf-8")

print(ocr("./test.png"))

相关文章

将网页文字保存为Word文档的PHP代码

将网页文字保存为Word文档的PHP代码

以下是将网页文字保存为Word文档的PHP代码示例: <?php // 获取网页内容并保存为Word文件 function saveAsWord($url, $fileName) {...

fastadmin对接火车头采集器

fastadmin对接火车头采集器

fastadmin默认没有对接火车头采集器,本文介绍下对接方法: 1、创建获取栏目列表api 因为cms扩展应用中api获取栏目列表需要post提交apikey,在火车头中不支持使用,所以重新创建...

迁移wordpress站点到阿里云函数计算

迁移wordpress站点到阿里云函数计算

wordpress作为一款常用的建站工具,存在大量的老站需要维护升级,本文讲一下如何迁移到阿里云函数计算,使用Serverless架构进行部署wordpress 在函数计算上全新安装wordpres...

table表格css样式

table表格css样式

效果图 table { border-collapse: collapse; margin: 0 auto;...

php绕过cloudfare进行网址数据采集,php网页采集程序

php绕过cloudfare进行网址数据采集,php网页采集程序

程序功能本程序使用浏览器内核,可伪装浏览器,对任意网址进行数据采集,采集结果以php程序进行二次处理。 支持对于单个网址进行采集,可自由设置循环次数。可多开不受限制。程序会调用浏览器内核打开网页...

用伪静态防止恶意下载网站目录下的压缩包

用伪静态防止恶意下载网站目录下的压缩包

起因很多黑客用恶意工具扫描网站目录下的压缩包文件,进行批量下载,导致带宽占满,有时候该压缩包还有可能是网站备份文件,损失不可估量,所以用伪静态的方法,拦截压缩包的后缀,可以起到比较好的效果 抛砖引玉...