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

server/2024/9/25 23:18:13/

一、说明

本次解决图片相关出现中文乱码问题,属于上篇文章的优化,前提条件依赖上篇文章的包,当然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 实现最终效果展示


http://www.ppmy.cn/server/122068.html

相关文章

Redis 分布式缓存服务(集群)

作者:程序那点事儿 日期:2023/11/17 13:05 准备6台虚拟机,ip分别是 192.168.10.101 192.168.10.102 192.168.10.103 192.168.10.104 192.168.10.105 192.168.10.106 创建6个节点 mkdir -p /usr/local/cluster/redis-node1 #对应192.168.10.…

共享单车轨迹数据分析:以厦门市共享单车数据为例(七)

副标题:基于POI数据的站点功能混合度探究——以厦门市为例(二) K-means聚类算法(K-means clustering)是一种广泛使用的无监督学习方法,用于将数据集中的对象分成K个簇(cluster)。这…

Subdominator:一款针对漏洞奖励计划的子域名安全枚举工具

关于Subdominator Subdominator是一款针对漏洞奖励计划的子域名安全枚举工具,可用于在漏洞搜寻和侦察过程中进行被动子域名枚举。它旨在通过高效枚举子域名和各种免费被动资源来帮助研究人员和网络安全专业人员发现潜在的安全漏洞。 Subdominator 与各种免费和付费…

JavaScript的注释与常见输出方式

注释 源码中注释是不被引擎所解释的,它的作用是对代码进行解释。Javascript 提供两种注释的写法:一种是单行注释,用//起头;另一种是多行注释,放在/*和*/之间。 单行注释: //这是单行注释 多行注释: /*这是 多行 注…

如何防止SQL注入攻击

SQL注入攻击是一种常见的网络安全威胁,攻击者通过在用户输入中插入恶意的SQL代码,从而可以执行未经授权的数据库操作。为了防止SQL注入攻击,我们可以采取一系列有效的措施来保护数据库和应用程序的安全性。以下是一些关键的防范策略&#xff…

2、 如何提高电脑运行速度 (改虚拟内存)?

改下电脑C磁盘的虚拟内存 方法如下: ① 按下电脑键盘上的 win E 键 , 然后鼠标移动到左边的【此电脑上】 然后,按下鼠标右键,选择【属性】 ② 然后,选择【高级系统设置】 4、选择【高级】,选择性能里面…

如何在银河麒麟操作系统中关闭IPv6

如何在银河麒麟操作系统中关闭IPv6 1、临时关闭IPv62、永久关闭IPv6方法一:通过sysctl.conf方法二:通过GRUB配置 1、3、 验证IPv6是否已关闭 💖The Begin💖点点关注,收藏不迷路💖 在当前的网络环境中&#…

【编程基础知识】MySQL中什么叫做聚簇索引、非聚簇索引、回表、覆盖索引

一、引言 在数据库的奇妙世界里,索引是提升查询速度的超级英雄。就像图书馔的目录帮助我们快速找到书籍一样,MySQL中的索引加速了数据检索的过程。本文将带你深入了解MySQL中的聚簇索引、非聚簇索引、回表操作以及覆盖索引,探索它们如何影响…