python中ocr图片文字识别样例(一)

一、使用easyocr安装依赖

复制代码
pip install easyocr
pip install opencv-python-headless  # 处理图像

二、具体实现,此处有个缺陷,大家可以尝试解决下,识别的文字打印结果没问题,但是图片识别出现乱码:

2.1 具体识别的图片
2.2 代码实现:

我有必要说下这块reader = easyocr.Reader(['ch_sim', 'en'], model_storage_directory='./models', download_enabled=True, gpu=False) ,这块也可以这么写:

reader = easyocr.Reader(['ch_sim', 'en'],gpu=False) 这么写就会每次都下载模型,所以我把模型下载到指定地址,并且如果有gpu则对应gpu的参数可调整成true

复制代码
# -*- coding: utf-8 -*-
import easyocr
import cv2
import matplotlib.pyplot as plt


# 初始化 OCR reader (这里选择中文和英文)
reader = easyocr.Reader(['ch_sim', 'en'], model_storage_directory='./models', download_enabled=True, gpu=False) 

# 读取图像
image_path = 'read_image.png'  # 替换成你的图片路径
image = cv2.imread(image_path)

# 识别图像中的文字
result = reader.readtext(image_path)

# 输出识别的结果
for (bbox, text, prob) in result:
    print(f"识别结果: {text}, 置信度: {prob:.4f}")

# # 显示识别框和文字
for (bbox, text, prob) in result:
    # bbox 是一个包含四个坐标点的数组,定义了文本框
    top_left = tuple(map(int, bbox[0]))
    bottom_right = tuple(map(int, bbox[2]))

    # 在图像上画出识别结果
    cv2.rectangle(image, top_left, bottom_right, (0, 255, 0), 2)
    cv2.putText(image, text, top_left, cv2.FONT_HERSHEY_SIMPLEX, 1, (0, 0, 255), 2)

# 显示图片
plt.imshow(cv2.cvtColor(image, cv2.COLOR_BGR2RGB))
plt.axis('off')
plt.show()
相关推荐
weixin_580614004 小时前
如何提取SQL日期中的年份_使用YEAR或EXTRACT函数
jvm·数据库·python
2301_813599555 小时前
SQL生产环境规范_数据库使用最佳实践
jvm·数据库·python
李可以量化5 小时前
QMT 量化实战:用 Python 实现线性回归通道,精准识别趋势中的支撑与压力(下)
python·qmt·量化 qmt ptrade
a9511416425 小时前
Go 中通过 channel 传递切片时的数据竞争与深拷贝解决方案
jvm·数据库·python
Dxy12393102165 小时前
Python 使用正则表达式将多个空格替换为一个空格
开发语言·python·正则表达式
qq_189807035 小时前
如何修改RAC数据库名_NID工具在集群环境下的改名步骤
jvm·数据库·python
zhangchaoxies5 小时前
如何检测SQL注入风险_利用模糊测试技术发现漏洞
jvm·数据库·python
Luca_kill6 小时前
MCP数据采集革命:从传统爬虫到智能代理的技术进化
爬虫·python·ai·数据采集·mcp·webscraping·集蜂云
zhangchaoxies6 小时前
CSS如何实现响应式弹性网格布局_配合media query修改flex-wrap属性
jvm·数据库·python
故事和你916 小时前
洛谷-数据结构1-1-线性表1
开发语言·数据结构·c++·算法·leetcode·动态规划·图论