专栏首页TalkPython怎样用Python提取图片中的文字

怎样用Python提取图片中的文字

点击蓝字关注△ 回复“1024”领取福利大礼包

有时候在爬取数据的时候,需要读取网页中图片中的信息。在读取和处理图像、图像相关的机器学习以及创建图像等任务中,Python一直都是非常出色的语言。有两个库非常流行的库:Pillow和Tesseract。

Pillow 算不上是图像处理功能最全的库,但是它拥有你需要使用的全部功能,除非你 要用 Python 重写一个 Photoshop 或进行更加复杂的研究。它也是一个文档健全且十分易用 的库。

Tesseract 是一个 OCR 库,目前由 Google 赞助(Google 也是一家以 OCR 和机器学习技术 闻名于世的公司)。Tesseract 是目前公认最优秀、最精确的开源 OCR系统。 除了极高的精确度,Tesseract 也具有很高的灵活性。它可以通过训练识别出任何字体,也可以识别出任何 Unicode 字符。

Tesseract是一个 Python 的命令行工具,不是通过 import语句导入的库。安装之后,要用要用tesseract命令在Python的外面运行

今天使用Tesseract来实现一个提取图片中信息的程序。下面这张图片,就是我们需要读取的对象:

安装过程略过,直接看代码:

import subprocess

p = subprocess.Popen(["tesseract", "page.png", "page"], stdout=subprocess.PIPE,stderr=subprocess.PIPE)
p.wait()
f = open("page.txt","r")
print(f.read())
f.close()

运行这个程序,应该会输出图片中的文字信息。但是,当文字出现在彩色封面上时,结果就不那么完美了。你可以用 Pillow 库挑选图片进行清理,但是如果想把文字加工成普通人可以看懂的效果,还需要花很多时间去处理。这是只是一个简单的实例。

如果觉得内容还不错,分享给更多朋友,一起提升编程技能。

本文分享自微信公众号 - TalkPython(TalkPython),作者:TalkPython

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2019-04-11

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Pandas 常见用法总结

    TalkPython
  • 52.如何在图像上添加文字

    如果你想为图像添加文字水印,这个技巧你必须掌握。在面对批量图片添加水印的需求时,下面这个程序,只要稍加改动,就可以实现。

    TalkPython
  • 有用的工具

    Python标准库中有几个内置工具,可以帮助我们在编程过程中,确定变量的类型和对象的类型。

    TalkPython
  • 牛客网-剑指offer-3

    这样出现的问题主要是在递归的过程中会出现很多重复的计算,比如我们每次计算第n个的时候,都需要重新计算前面的n-1和n-2,这样每个值其实都会被计算两遍。简单的处...

    小二三不乌
  • 【LeetCode 242】 关关的刷题日记36 Valid Anagram

    关关的刷题日记36 – Leetcode 242. Valid Anagram 题目 Given two strings s and t, write a fu...

    WZEARW
  • Python网络数据采集之图像识别与文字处理|第10天

    你好我是森林
  • Go语言(十七) 配置文件库项目

    alexhuiwang
  • python环境搭建

    在下载列表中选择Window平台安装包,根据系统选择对应安装包,如果是64位系统的安装包,则显示为   Install Python3.6.2(64-bit),...

    py3study
  • NSA 的 Python 手册

    Python 开发者现在可以观摩下美国情报机构 NSA 是如何培训 Python 程序员的。软件工程师 Chris Swenson 根据信息自由法案递交申请,要...

    Debian社区
  • 闪回区报警引发的性能问题分析(r11笔记第11天)

    自从有了Zabbix+Orabbix,很多监控都有了一种可控的方式,当然对于报警处理来说,报警是表象,很可能通过表象暴露出来的是一些更深层次的问题。这不又来一个...

    jeanron100

扫码关注云+社区

领取腾讯云代金券