本文实现在windows平台下依靠现有资源来搭建一个图片文字识别的WebAPI,便于其他项目通过Post方式将图片进行Base64编码后传到该API,能够得到图片中的文字信息
第一步:安装Python环境
第二步:安装 opencv-python
第三步:安装 paddleocr
第四步:安装 paddlepaddle
第五步:安装 Flask
第六步:安装 DateTime
第七步:编写 PaddleOCR.py 文件,并放在D盘根目录中,文件内容如下:
第八步:启动API服务
我安装的是 python-3.8.8-amd64.exe 版本,不要用最新的版本,3.11的版本环境搭建不起来
双击进行安装,安装时勾选添加环境变量
接下来,打开cmd,安装依赖包,安装过程中用了国内的镜像,速度会快不少
1 |
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple opencv-python |
1 |
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple paddleocr |
1 |
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple paddlepaddle |
1 |
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple Flask |
1 |
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple DateTime |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 |
import io from pickle import DICT import paddleocr import json import base64 import DateTime from flask import Flask, request,jsonify import numpy as np from PIL import Image app=Flask(__name__) @app.route("/WebAPI/PaddleOCR",methods=["POST"]) def PaddleOCR(): if(request.data == "" or request.data.decode('utf-8') == ""): return "request data is empty" data=json.loads(request.data) imgbase64=data["image"] imgbyte=base64.b64decode(imgbase64) image=io.BytesIO(imgbyte) temp= Image.open(image) img=np.array(temp)[:,:,:3] info= ppocr.ocr(img) if(info[0] == None): return "ocr failed" result={"TextBlocks":[]} for textblocks in info[0]: textBlock={"Points":[],"Text":""} for tk in textblocks[0]: point={"x":str(tk[0]),"y":str(tk[1])} textBlock["Points"].append(point) textBlock["Text"]=textblocks[1][0] result["TextBlocks"].append(textBlock) return jsonify(result) def main(): global ppocr ppocr=paddleocr.PaddleOCR(use_gpu=False) app.run(debug=True,host="127.0.0.1",port=5000) if __name__=="__main__": main() |
其中 app.run(debug=True,host="127.0.0.1",port=5000) 指定了api的地址和端口
这个接口使用POST方式接收一个名称为image的参数,该参数里存的是需要被识别图片的Base64编码,返回的则是一个JSON格式的识别后的结果
打开cmd,定位到D盘,执行命令
1 |
python PaddleOCR.py |
如果以上环境都已安装完毕,此时服务就能被顺利启动起来!
第九步:编写客户端程序,测试图片文字识别服务是否有用!
测试程序使用c#编写,项目引用下Newtonsoft的包
httphelper代码里就提供一个post方法如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 |
public static class HttpHelper { /// <summary> /// post /// </summary> /// <param name="url"></param> /// <param name="joReq"></param> /// <param name="timeout"></param> /// <returns></returns> public static JObject Post(string url, JObject joReq, int timeout = 5) { JObject joAck; string result; try { result = Post(url, joReq.ToString(), timeout); } catch (Exception err) { joAck = new JObject(); joAck["Code"] = -1; joAck["Msg"] = "无法连接到服务器,请联系开发人员 " + err; return joAck; } try { joAck = JObject.Parse(result); return joAck; } catch (Exception err) { joAck = new JObject(); joAck["Code"] = -1; joAck["Msg"] = "json数据解析出错,请联系开发人员 " + err; return joAck; } } private static string Post(string url, string data, int timeout = 5) { byte[] byteArray = Encoding.UTF8.GetBytes(data); HttpWebRequest req = (HttpWebRequest)WebRequest.Create(url); req.Method = "POST"; req.ContentLength = byteArray.Length; //连接超时时长有时不可控,即使未达到设置的时长,一旦整个路由都已经遍历,也会直接抛出异常 req.Timeout = timeout * 1000; req.ReadWriteTimeout = timeout * 1000; using (Stream newStream = req.GetRequestStream()) { newStream.Write(byteArray, 0, byteArray.Length); } HttpWebResponse response = (HttpWebResponse)req.GetResponse(); using (StreamReader sr = new StreamReader(response.GetResponseStream(), Encoding.UTF8)) { return sr.ReadToEnd(); // 返回的数据 } } } |
下面测试识别中的文字:
首先把该图片的Base64获取到:
1 |
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 |
然后通过POST方式提交到API获取识别结果:
1 2 3 4 5 |
JObject joReq = new JObject { ["image"] = "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", }; var result = HttpHelper.Post("http://127.0.0.1:5000/WebAPI/PaddleOCR", joReq, 10 * 1000); |
运行代码,顺利获取到图片的文字内容:
from:https://blog.csdn.net/deanZZZZZZ/article/details/133992010