沈阳哪有wordpress,模板网站可以做优化,自己做企业网站好做吗,个人做电影网站很多小伙伴在使用OCR时都希望能过采用API的方式调用#xff0c;这样就可以跨端跨平台了。本文将介绍一种基于python的PaddleOCR识方案。喜欢的可以关注公众号#xff0c;获取更多内容。# 一、 windows环境下部署###1.环境操作系统#xff1a;windows10#xff1b;主要软件环…很多小伙伴在使用OCR时都希望能过采用API的方式调用这样就可以跨端跨平台了。本文将介绍一种基于python的PaddleOCR识方案。喜欢的可以关注公众号获取更多内容。# 一、 windows环境下部署###1.环境操作系统windows10主要软件环境python3.9X64、opencv4.5.5、PaddleOCR2.5、paddlepaddle2.2.1。python运行环境建议3.6-3.9###1. 环境安装###1.1 安装python-3.9.1-amd64.exePython官方下载地址[python windows版本下载](https://www.python.org/downloads/windows/ python windows版本下载)选择合适的windows版本下载到本地后双击进行安装安装时勾选添加环境变量。验证是否修改成功执行以下cmd命令 :python -V至此python3.9安装成功。###1.2 安装opencv4.5.5pip3 install opencv-python4.5.5.64###1.3 安装PaddleOCR安装PaddleOCRpip3 install paddleocr如果提示报错缺少Microsoft Visual C14.0 ,则需要下载安装。去官网下载对应的文件需要拥有一个微软的账号首先打开链接[my.visualstudio.com](https://my.visualstudio.com/Downloads/Featured?mktzh-cn my.visualstudio.com) 登录账号点击进入下载页面接下来在下载页面搜索build tools找到左侧的Visual Studio 2015 update 3。点击Visual Studio 2015 update 3后下载对应的文件即可约1.1G这里需要将格式修改为DVD。下载完成后我们得到了文件mu_visual_cpp_build_tools_2015_update_3_x64_dvd_dfd9a39c.iso解压后双击VisualCppBuildTools_Full.exe即可自动进行安装。安装PaddleOCR的依赖预测库pip3 install paddlepaddle###1.4 安装其他依赖pip3 install Flask
pip3 install DateTime至此基本环境搭建完成接下来即可搭建WebAPI项目了。###3. OCR部署####3.1 功能代码PaddleOCRWebAPI.pyimport 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
appFlask(__name__)app.route(/WebAPI/PaddleOCR,methods[POST])def PaddleOCR():if(request.data):return APIResult.Error(request data is null)
datajson.loads(request.data)
imgbase64data[image];
imgbytebase64.b64decode(imgbase64)
imageio.BytesIO(imgbyte)
temp Image.open(image)
imgnp.array(temp)[:,:,:3]
info ppocr.ocr(img)
result{TextBlocks:[]}for textblocks in info:
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)print(result)return jsonify(result)def main():global ppocr;
ppocrpaddleocr.PaddleOCR(use_gpuFalse);
app.run(debugTrue,host0.0.0.0,port5000)if __name____main__:
main();其中app.run(debugTrue,host0.0.0.0,port5000)用于定义WebAPI的IP地址和端口可根据实际情况部署修改。启动服务python PaddleOCRWebAPI.py#3.2接口文档##基本信息请求方式POSTurl地址http://ip:port/WebAPI/PaddleOCR数据格式json##### 输入参数变量名描述是否必填类型备注image需要识别文字的图像base64是String##### 输入示例{image: xxxxxxxxx}###输出参数数据格式json字符串输出示例{TextBlocks://识别出来的文本块数组[
{Points://该数组固定四个大小为一个识别区域的四个顶点坐标从左上角开始顺时针方向。[
{x:0,y:0},
{x:100,y:0},
{x:100,y:50},
{x:0,y:50}
],Text:中国ABC123//一个文本区域识别出来的文字},
{Points:
[
{x:0,y:0},
{x:100,y:0},
{x:100,y:50},
{x:0,y:50}
],Text:中国ABC123},
{Points:
[
{x:0,y:0},
{x:100,y:0},
{x:100,y:50},
{x:0,y:50}
],Text:中国ABC123},
......
]
}