自学内容网 自学内容网

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

一、说明

本次解决图片相关出现中文乱码问题,属于上篇文章的优化,前提条件依赖上篇文章的包,当然ocr的具体应用场景很多,根据自身需求进行调整

二、具体实现

2.1 代码实现:
# -*- coding: utf-8 -*-
import easyocr
import cv2
import matplotlib.pyplot as plt
from matplotlib.font_manager import FontProperties

#linux得单独下载
font = FontProperties(fname='C:/Windows/Fonts/msyh.ttc')

# 初始化 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:
    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)

# 使用支持中文的字体显示文本
for (bbox, text, prob) in result:
    top_left = tuple(map(int, bbox[0]))
    plt.text(top_left[0], top_left[1], text, fontproperties=font, color='red')

# 显示图片
plt.imshow(cv2.cvtColor(image, cv2.COLOR_BGR2RGB))
plt.axis('off')
plt.show()
2.2 实现最终效果展示


原文地址:https://blog.csdn.net/m0_37570494/article/details/142392705

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!