机器视觉

从 Google 的无人驾驶汽车到可以识别假钞的自动售卖机,机器视觉一直都是一个应用广 泛且具有深远的影响和雄伟的愿景的领域。

我们将重点介绍机器视觉的一个分支:文字识别,介绍如何用一些 Python库来识别和使用在线图片中的文字。

我们可以很轻松的阅读图片里的文字,但是机器阅读这些图片就会非常困难,利用这种人类用户可以正常读取但是大多数机器人都没法读取的图片,验证码 (CAPTCHA)就出现了。验证码读取的难易程度也大不相同,有些验证码比其他的更加难读。

将图像翻译成文字一般被称为光学文字识别(Optical Character Recognition, OCR)。可以实现OCR的底层库并不多,目前很多库都是使用共同的几个底层 OCR 库,或者是在上面 进行定制。

ORC库概述

在读取和处理图像、图像相关的机器学习以及创建图像等任务中,Python 一直都是非常出色的语言。虽然有很多库可以进行图像处理,但在这里我们只重点介绍:Tesseract

Tesseract

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

安装Tesseract

Windows 系统

下载可执行安装文件https://code.google.com/p/tesseract-ocr/downloads/list安装。

Linux 系统

可以通过 apt-get 安装: $sudo apt-get tesseract-ocr

Mac OS X系统

用 Homebrew(http://brew.sh/)等第三方库可以很方便地安装 brew install tesseract

要使用 Tesseract 的功能,比如后面的示例中训练程序识别字母,要先在系统中设置一 个新的环境变量 $TESSDATA_PREFIX,让 Tesseract 知道训练的数据文件存储在哪里,然后搞一份tessdata数据文件,放到Tesseract目录下。

  • 在大多数 Linux 系统和 Mac OS X 系统上,你可以这么设置: $export TESSDATA_PREFIX=/usr/local/share/Tesseract

  • 在 Windows 系统上也类似,你可以通过下面这行命令设置环境变量: #setx TESSDATA_PREFIX C:\Program Files\Tesseract OCR\Tesseract

安装pytesseract

Tesseract 是一个 Python 的命令行工具,不是通过 import 语句导入的库。安装之后,要用 tesseract 命令在 Python 的外面运行,但我们可以通过 pip 安装支持Python 版本的 Tesseract库:

pip install pytesseract

Python:机器视觉与Tesseract介绍相关推荐

  1. 机器视觉与Tesseract介绍

    机器视觉 从 Google 的无人驾驶汽车到可以识别假钞的自动售卖机,机器视觉一直都是一个应用广 泛且具有深远的影响和雄伟的愿景的领域. 我们将重点介绍机器视觉的一个分支:文字识别,介绍如何用一些 P ...

  2. Python爬虫开发【第1篇】【机器视觉及Tesseract】

    ORC库概述 在读取和处理图像.图像相关的机器学习以及创建图像等任务中,Python 一直都是非常出色的语言.虽然有很多库可以进行图像处理,但在这里我们只重点介绍:Tesseract 1.Tesser ...

  3. 图片识别工具Tesseract介绍和python搭配使用

    Tesseract介绍和Python的搭配使用 一.Tesseract介绍.下载指南 1.了解Tesseract工具 2.下载地址 3.请注意!!! 二 .环境搭建 2.1 版本3.05安装 2.2 ...

  4. 机器视觉和Tesseract

    机器视觉 从 Google 的无人驾驶汽车到可以识别假钞的自动售卖机,机器视觉一直都是一个应用广 泛且具有深远的影响和雄伟的愿景的领域. 我们将重点介绍机器视觉的一个分支:文字识别,介绍如何用一些 P ...

  5. 十大python开发软件-必看 | 2020年,Python十大应用领域介绍!

    原标题:必看 | 2020年,Python十大应用领域介绍! python作为一门当下极其火爆的编程语言,得到世界范围内无数编程爱好者和开发者喜欢并不是偶然的,除了要比其他编程语言更容易入门,pyth ...

  6. python课程将主要介绍哪些内容-Python课程详细介绍

    渡课 Python 课程开课啦,学Python就来渡课IT 模块一:Python语言部分 课程介绍 介绍Python的诞生,Python有什么独特的特点,它适合用在哪些地方,不适合用在哪些地方,以及P ...

  7. Python机器视觉编程常用数据结构与示例

    Python机器视觉编程常用数据结构与示例 本文总结了使用Python进行机器视觉(图像处理)编程时常用的数据结构,主要包括以下内容: 数据结构 通用序列操作:索引(indexing).分片(slic ...

  8. 共享一PYTHON 相关应用领域的介绍资料

    无意思 搜索到[PYTHON 相关应用领域的介绍资料]资料列表 ,感觉非常好,这里共享: http://woodpecker4org.b0.upaiyun.com/pyconcn/pycon2012c ...

  9. java连接mongodb_第78天: Python 操作 MongoDB 数据库介绍

    MongoDB 是一款面向文档型的 NoSQL 数据库,是一个基于分布式文件存储的开源的非关系型数据库系统,其内容是以 K/V 形式存储,结构不固定,它的字段值可以包含其他文档.数组和文档数组等.其采 ...

最新文章

  1. GitHub 高速上手 ---- 创建密钥,连接
  2. Qt Creator指定环境设置
  3. 如何解一元一次方程视频_初中数学一元二次方程,注重基础,实例解析考点
  4. THUPCCTSAPIO摸鱼被$\Huge{\color{black}{\mathbf{z}}\color{red}{\mathbf{zh}}}$爆踩记
  5. mysql 优化设计库_数据库优化设计与SQL优化
  6. easylog 使用_Easyloggingpp的使用
  7. java大组件_Java的三大组件
  8. react学习(58)--this.props进行父子传值
  9. 51单片机之特殊功能寄存器SFR
  10. 15b万用表怎么测电容_指针式万用表和数字式万用表的使用与口诀,值得收藏!...
  11. SQOOP 导出Hive数据到MySQL
  12. 程序员面试通关的 101 道真题
  13. Google Play 即将返华?
  14. 民营股份制企业是什么意思
  15. 电子凸轮追剪曲线生成算法 麦格米特
  16. 安装K3s 和 ingress-nginx
  17. C#-初识Hangfire
  18. 音标、音节、音素、音符
  19. Centos下如何永久修改系统时间 hwclock
  20. 20210327Java网络编程

热门文章

  1. Linux下docker安装配置oracle,oracle创建用户并远程连接,实测可用!
  2. 2022-2028年中国科技馆行业研究及前瞻分析报告
  3. 【J2SE】语言基础
  4. learning to rank_排序
  5. Intellij IDEA 添加jar包
  6. Exception in thread main java.lang.Error: 无法解析的编译问题: 方法 main 不能声明为 static;只能在静态类型或顶级类型中才能声明静态方法
  7. 操作系统学习笔记 第三章:处理机调度与死锁(王道考研)
  8. LLVM与Clang编译图例
  9. 将编译器pass添加到Relay
  10. 地理围栏API服务开发