Python通过pytesseract库实现识别图片中的文字
作者:空空star 发布时间:2021-12-02 14:43:03
前言
大家好,我是空空star,本篇给大家分享一下通过Python的pytesseract库识别图片中的文字。
本篇所用软件相关版本:
macOS 11.6.5
Python 3.8.9
pytesseract 0.3.10
Pillow 9.4.0
一、pytesseract
1.pytesseract是什么
Pytesseract是一个Python的OCR库,它可以识别图片中的文本并将其转换成文本形式。Pytesseract基于Google的Tesseract OCR引擎,具有较高的准确性和可靠性。它可以读取多种格式的图片,包括PNG、JPEG、GIF等。Pytesseract可以应用于自然语言处理、数据挖掘、OCR识别等领域。
2.安装pytesseract
pip install pytesseract
3.查看pytesseract版本
pip show pytesseract
Name: pytesseract
Version: 0.3.10
Summary: Python-tesseract is a python wrapper for Google’s Tesseract-OCR
Home-page: https://github.com/madmaze/pytesseract
Author: Samuel Hoffstaetter
Author-email: samuel@hoffstaetter.com
License: Apache License 2.0
Requires: packaging, Pillow
Required-by:
4.安装PIL
Pillow库是Python图像处理库,pytesseract使用它来处理图像。
pip install pillow
5.查看PIL版本
pip show pillow
Name: Pillow
Version: 9.4.0
Summary: Python Imaging Library (Fork)
Home-page: https://python-pillow.org
Author: Alex Clark (PIL Fork Author)
Author-email: aclark@python-pillow.org
License: HPND
Requires:
Required-by: image, imageio, matplotlib, pytesseract, wordcloud
二、Tesseract OCR
1.Tesseract OCR是什么
Tesseract OCR是一种开源的OCR(Optical Character Recognition,光学字符识别)引擎,它能够将图像中的文本内容识别并转换为可编辑的文本格式。它最初由惠普实验室开发,现在由谷歌维护和更新。Tesseract OCR支持超过100种语言,包括中文、英文、法文、德文等。它可以在多种操作系统上运行,包括Windows、Linux、macOS等。Tesseract OCR被广泛应用于数字化文档、自动化数据输入、智能搜索等方面。
2.安装Tesseract OCR
macOS下:
brew install tesseract
3.安装 Tesseract OCR 语言包
macOS下:
brew install tesseract-lang
三、使用方法
1.引入库
import pytesseract
from PIL import Image
2.打开图片文件
img = Image.open("demo.png")
3.使用Tesseract进行文字识别
text = pytesseract.image_to_string(img, lang='chi_sim')
4.输出识别结果
print(text)
原图
识别出的文字截图
来源:https://blog.csdn.net/weixin_38093452/article/details/130507160


猜你喜欢
- 名称:YUI Compressor最新版本:2.4.2用途:js/css压缩必备指数:使用难度:(YUI Compressor非常易用,只是
- 一、标准的数据集流程梳理分为几个步骤数据准备以及加载数据库–>数据加载器的调用或者设计–>
- Python list append方法给列表追加元素描述append函数可以在列表的末尾添加新的对象。函数无返回值,但是会修改列表。语法l
- 就如平时我们很在分页中看到的,分页的时候返回的不仅包括查询的结果集(List),而且还包括总的页数(pageNum)、当前第几页(pageN
- 前些日子做了一个项目关于vue项目需要头像裁剪上传功能,看了一篇文章,在此基础上做的修改完成了这个功能,与大家分享一下。原文:https:/
- 如下所示:def softmax(logits, axis=None, name=None, dim=None): ""
- 熟悉SQL的人都知道,完成同一个任务,SQL可能有多种写法,但不同写法的查询性能可能会有天壤之别,本文列举出五个查询优化的方法,当然,优化的
- 我插入Mysql5的中文一直是乱码。但是直接使用mysqlAdmin,EMS等工具插入DB就不是乱码。而且我还可以使用程序正常地读出来。原因
- 使用Matplotlib绘制的图表的默认坐标轴是在左下角的,这样对于一些函数的显示不是非常方便,要改变坐标轴的默认显示方式主要要使用gca(
- $(function(){ var handler = function(){ } var timer = setInterval( han
- 2. 从函数开始2.1. 定义一个函数如下定义了一个求和函数:def add(x, y): return
- 我们有时候看到一些文章因为一行的字符超长而把一些表格或DIV撑开或字符写到溢出了.如何防止表格防止撑开,表格不被内容撑开,单行字符超长div
- 我们或多或少都使用过各式各样的富文本编辑器,其中有一个很方便功能,复制一张图片然后粘贴进文本框,这张图片就被上传了,那么这个方便的功能是如何
- 这个我早就改好了一直没有放上来.现在发给大家用用注意这几个变量它们影响到提示框的效果代码:var rT=true;//允许图像过渡
- 在 Google 搜索结果页面中,将其 Logo 图标右键另存为后可以发现,它并非单纯的
- 在asp.net 2.0中,很多情况下,使用gridview控件的话,甚至只需要拖拉控件,设置属性就可
- 在本篇文章中,我们将探讨如何使用YOLOv5车牌识别系统实现实时监控与分析。我们将介绍如何将模型应用于实时视频流,以及如何分析车牌识别结果以
- 通用load/write方法手动指定选项Spark SQL的DataFrame接口支持多种数据源的操作。一个DataFrame可以进行RDD
- 1. linux下消息记录关于系统的各种消息一般都会记录在/var/log/messages文件中,有些主机在中默认情况下有可能没有启用,具
- 协程协程简单来说就是一个更加轻量级的线程,并且不由操作系统内核管理,完全由程序所控制(在用户态执行)。协程在子程序内部是可中断的,然后转而执