Python 实现:OCR在图片中提取文字(基于Gradio实现)

Paddle OCR

PaddleOCR 基于深度学习技术实现的,使用十分简单。

先看效果


可以看出来识别效果还是不错的,里面的"湿"字识别成了繁体字。如果不是连体字,就不会出现这个问题。

1.测试环境

操作系统:Win10

Python:3.10

2.安装PaddlePaddle库

java 复制代码
pip install paddlepaddle -i https://mirror.baidu.com/pypi/simple(自行选择镜像源)

3.下载PaddleOCR库

java 复制代码
git clone https://github.com/PaddlePaddle/PaddleOCR

也可以选择直接DownLoad下载文件解压到本地

4.安装依赖包

进入PaddleOCR文件夹下:

java 复制代码
> cd PaddleOCR

安装第三方依赖:

java 复制代码
pip install -r requirements.txt -i https://mirror.baidu.com/pypi/simple

5.详细代码

python 复制代码
from pprint import pprint  
from paddleocr import PaddleOCR  
import gradio as gr  
  
ocr = PaddleOCR(use_angle_cls=True, lang="ch")  
  
def process(image):  
    result = ocr.ocr(image)  
    # return result
    
    output_text = ""  # 初始化输出文本变量
    for sublist in result:
        for line in sublist:
            text = line[1][0]  # 提取文本
            output_text += text + "\n"  # 将文本追加到输出文本变量,并添加换行符
            pprint(output_text)
    return output_text
    
iface = gr.Interface(fn=process, inputs="image", outputs="text",title="图片OCR提取文字", 
                      
iface.launch()  

注意:这里result原先返回的还有坐标信息以及置信度,这里经过处理只返回了识别后的文本信息。如果需要坐标信息,可以直接返回result。

相关推荐
用户77833661321114 小时前
用 React Hook 封装搜索数据:useSerp 的防抖、缓存与错误处理
python·api
65岁退休Coder18 小时前
LangGraph v1.2.9 节点容错策略 & 流式输出 & 持久化记忆管理
后端·python·langchain
ikun_文21 小时前
Django框架路由Router的使用
python·pycharm·django
IvanCodes21 小时前
Python 基础语法(二):字符串与常用操作
python
昭昭日月明21 小时前
LangChain 生态:从链到代理,开发者需要掌握的三大核心
python·langchain·agent
Csvn21 小时前
🐍 Day 8:面向对象编程
后端·python
程序员天天困21 小时前
向量检索不准怎么办:混合检索与 Rerank 重排序召回优化实战
后端·python·ai编程
alphaTao1 天前
LeetCode 每日一题 2026/8/24-2026/8/30
python·算法·leetcode
Sinosecu-OCR1 天前
OCR技术路线怎么选?Pipeline OCR与End-to-End大模型OCR全面比较
ocr·ocr识别·ocr识别系统
苏灿烤鱼1 天前
当 AI Agent 遇见真实科学环境:深度拆解 Scientific Agent Skills,把"聊天机器人"变成"AI 科学家"
python·开源·agent