搭建自己的OCR服务,第二步:PaddleOCR环境安装

news/2024/4/20 8:16:37

PaddleOCR环境安装,遇到了很多问题,根据系统不同问题也不同,不要盲目看别人的教程,有的教程也过时了,根据实际情况自己调整。

我这边目前是使用windows 10系统+CPU + python 3.7 搭建。

熟悉OCR的人应该知道,最好用GPU,性能差距不是一点点,但是普通人没有那个条件怎么办,只能退而求其次,好在自己学习使用也不需要那么好性能。

PaddleOcr环境安装步骤:

第一步:先安装 C++ 开发环境

我在搭建过程中遇到的最大的问题就是,本机电脑没有Microsoft Visual  c++开发环境,毕竟不是从事c++开发的很容易忽略这个问题,后来找了很多技术文章才确定这个大问题。

Visual Studio下载
首先从微软官网( https://visualstudio.microsoft.com/zh-hans/downloads/ )下载 Visual Studio 的安装程序,如下图所示:

选择社区版,免费,如果是企业用户还是另选版本。

 主要安装过程,主要选择c++应用就行,其他不是本次重点

  主要安装过程,主要选择c++的桌面开发就行,其他不是本次重点

 这步完成后,后面相对就容易多了。

第二步:按照PaddleOCR官网安装步骤操作就行

进入百度飞浆官网安装地址:

https://www.paddlepaddle.org.cn/install/quick?docurl=/documentation/docs/zh/install/pip/windows-pip.html

1,选择版本,系统,安装方式和计算机平台。

2,执行安装CPU版本的paddlepaddle命令

python -m pip install paddlepaddle==2.4.2 -i https://pypi.tuna.tsinghua.edu.cn/simple

注意事项:

pip安装过程中会自动下载相关依赖库,其中就有2个依赖库(lanms-neo和polygon3)跟上面第一步的c++开发环境相关,如果没有安装c++环境的话,一直安装报错。

3,验证安装

安装完成后您可以使用 python 进入 python 解释器,输入 import paddle ,再输入 paddle.utils.run_check()

如果出现PaddlePaddle is installed successfully!,说明您已成功安装。运行检测,还能检测到电脑有几个cpu。

也可以参考gitee上的安装教程:

gitee 源码地址 : 

https://gitee.com/paddlepaddle/PaddleOCR

https://gitee.com/paddlepaddle/PaddleOCR/blob/release/2.6/doc/doc_ch/quickstart.md

4,python脚本使用OCR识别图片

测试图片:1.png

 paddleocr_test.py :

from paddleocr import PaddleOCR
'''
测试ocr方法
'''
def test_ocr():# paddleocr 目前支持的多语言语种可以通过修改lang参数进行切换# 例如`ch`, `en`, `fr`, `german`, `korean`, `japan`# 使用CPU预加载,不用GPUocr = PaddleOCR(use_angle_cls=True, lang="ch", use_gpu=False)# 打开图片文件result = ocr.ocr("1.png", cls=True)# 打印所有结果信息print(result)for index in range(len(result)):rst = result[index]for line in rst:points = line[0]text = line[1][0]score = line[1][1]print('points : ', points)print('text : ', text)print('score : ', score)if __name__ == "__main__":test_ocr()

第一次运行识别程序,会自动下载3个 中英文超轻量PP-OCRv3 模型(检测模型,方向分类器,识别模型)。

也可以自己主动下载想要的模型。gitee上。

也可以取百度飞浆官网下载各种预训练好的模型,拿来就能用。

官网地址: https://aistudio.baidu.com/aistudio/modelsoverview?lang=zh_CN

通过python脚本测试使用PaddleOCR可以正常运行,只是识别率没有那么高,这就需要后面自己慢慢训练新的模型了,不断优化识别模型。 

或者选择官网预训练好的模型,简单省事。

第三步:下载PaddleOCR源码

github开源地址: https://github.com/PaddlePaddle/PaddleOCR.git

gitee开源地址:  https://gitee.com/paddlepaddle/PaddleOCR

下载PaddleOCR源码到本地,而不只是简单安装PaddleOCR库,直接调用他的方法等,目的是学习和研究的话,看源码还是很有用的。

源码目录结构如下:

 其中,pip安装 paddlepaddle 过程中下载的相关依赖库就在 requirements.txt 文件里。

------------------------------到此,安装PaddleOCR基本完成------------------------------

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.tangninghui.cn.cn/item-29.htm

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈,一经查实,立即删除!

相关文章

基于SSM的旅游网站系统

基于SSM的旅游网站系统【附源码文档】、前后端分离 开发语言:Java数据库:MySQL技术:SpringSpringMVCMyBatisVue工具:IDEA/Ecilpse、Navicat、Maven 【主要功能】 角色:管理员、用户 管理员:用户管理、景点…

css实现内凹圆

css实现内凹圆 实现效果 html <div id"post-form"><div class"formbox"></div><div class"rightform"></div> </div>css 样式 #post-form{padding:50px 10px;background:#fff;margin:30px auto;width:9…

Nginx部署前后端分离项目(Linux)

Nginx代理前端页面、后端接口 一、前端打包二、后端打包三、Linux部署Nginx启动、暂停、重启服务器部署文件地址&#xff1a; 一、前端打包 npm run build二、后端打包 通过Maven 使用package打包 三、Linux部署 安装Nginx 安装环境 yum -y install gcc pcre pcre-devel z…

iframe 实现跨域,两页面之间的通信

一、 背景 一个项目为vue2&#xff0c;一个项目为vue3&#xff0c;两个不同的项目实现iframe嵌入&#xff0c;并实现通信 二、方案 iframe跨域时&#xff0c;iframe组件之间常用的通信&#xff0c;主要是H5的possmessage方法 三、案例代码 父页面-vue2&#xff08;端口号为…

web安全之XSS攻击

什么是XSS攻击 XSS&#xff08;Cross-Site Scripting&#xff09;又称跨站脚本&#xff0c;XSS的重点不在于跨站点&#xff0c;而是在于脚本的执行。XSS是一种经常出现在 Web 应用程序中的计算机安全漏洞&#xff0c;是由于 Web 应用程序对用户的输入过滤不足而产生的。 常见…

Java笔记:Java线程Dump分析

1 Thread Dump介绍 1.1 什么是Thread Dump Thread Dump是非常有用的诊断Java应用问题的工具。每一个Java虚拟机都有及时生成所有线程在某一点状态的thread-dump的能力&#xff0c;虽然各个 Java虚拟机打印的thread dump略有不同&#xff0c;但是 大多都提供了当前活动线程的快…