Python3实现获取图片文字里中文的方法分析
本文实例讲述了Python3实现获取图片文字里中文的方法。分享给大家供大家参考,具体如下:
一、运行环境
(1) win10
(2) pycharm
(3) python 3.5
(4) pillow与pytesseract库安装:
pip3 install pillow pip3 install pytesseract
(5) 识别引擎tesseract-ocr ,下载之后解压安装,下载地址:https://www.jb51.net/softs/538925.html
二、 运行代码
# -*- coding: utf-8 -*- from PIL import Image import pytesseract #上面都是导包,只需要下面这一行就能实现图片文字识别 text=pytesseract.image_to_string(Image.open('show.jpg'),lang='chi_sim') #设置为中文文字的识别 #text=pytesseract.image_to_string(Image.open('test.png'),lang='eng') #设置为英文或阿拉伯字母的识别 print(text)
三、报错解决
1.FileNotFoundError:[WinError 2]系统找不到指定文件。
解决办法:
打开文件pytesseract.py,找到如下代码,将tesseract_cmd的值修改为全路径,再次使用就不会报这个错了。
tesseract_cmd = 'C:/Program Files (x86)/Tesseract-OCR/tesseract'
2.pytesseract.pytesseract.TesseractError:(1,'Error opening data file\\Progr
解决办法:
打开文件pytesseract.py,找到image_to_string,指定config的参数,如下:
tessdata_dir_config = '--tessdata-dir "C:\\Program Files (x86)\\Tesseract-OCR\\tessdata"'
def image_to_string(image, lang=None, boxes=False, config=tessdata_dir_config):
更多关于Python相关内容感兴趣的读者可查看本站专题:《Python数据结构与算法教程》、《Python编码操作技巧总结》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》及《Python入门与进阶经典教程》
希望本文所述对大家Python程序设计有所帮助。
相关推荐
-
使用Python脚本将文字转换为图片的实例分享
有时候,我们需要将文本转换为图片,比如发长微博,或者不想让人轻易复制我们的文本内容等时候.目前类似的工具已经有了不少,不过我觉得用得都不是很趁手,于是便自己尝试实现了一个. 在 Python 中,PIL (Python Imaging Library) 是最常用的绘图库,自然地,尝试从 PIL 开始. 使用 PIL 将文字转换为图片 说转换其实并不恰当,真实的过程是:先在内存中生成一张图片,将需要的文字绘制到这个图片上,再将图片保存到指定位置.代码如下: # -*- coding: utf-8
-
Python在图片中插入大量文字并且自动换行
问题 如何在图片中插入大量文字并且自动换行 效果 原始图 效果图 注明 若需要写入中文请使用中文字体 实现方式 from PIL import Image, ImageDraw, ImageFont class ImgText: font = ImageFont.truetype("micross.ttf", 24) def __init__(self, text): # 预设宽度 可以修改成你需要的图片宽度 self.width = 100 # 文本 self.text = text
-
Python之文字转图片方法
Pygame模块一览表: 引入pygame模块 ,若本机没有请自行pip install pygame #载入必要的模块 import pygame #pygame初始化 pygame.init() # 待转换文字 text = u"文字转图片" #设置字体和字号 font = pygame.font.SysFont('Microsoft YaHei', 64) #渲染图片,设置背景颜色和字体样式,前面的颜色是字体颜色 ftext = font.render(text, True, (
-
Python在图片中添加文字的两种方法
本文主要介绍的是利用Python在图片中添加文字的两种方法,下面分享处理供大家参考学习,下来要看看吧 一.使用OpenCV 在图片中添加文字看上去很简单,但是如果是利用OpenCV来做却很麻烦.OpenCV中并没有使用自定义字体文件的函数,这不仅意味着我们不能使用自己的字体,而且意味着他无法显示中文字符.这还是非常要命的事情.而且他显示出来的文字位置也不太好控制.比如下面的代码,他想做的仅仅是显示数字3: 代码: #coding=utf-8 import cv2 import numpy as
-
利用Python自带PIL库扩展图片大小给图片加文字描述的方法示例
前言 最近的一个项目中需要在图片上添加文字,使用了OpenCV,结果发现利用opencv给图像添加文字有局限.可利用的字体类型比较少,需要安装Freetype扩展,比较复杂.而且不能用putText函数输出中文,否则就会出现乱码的情况.只好选择使用Python PIL函数库对照片进行处理,利用Python自带的PIL库扩展图片大小给图片加上文字描述,大多都是库函数调用,只是给定图片宽度后计算文字所需行数的代码需要写. 代码比较丑,but it works. 代码示例 #!/usr/bin/env
-
Python输出汉字字库及将文字转换为图片的方法
用python输出汉字字库 问题1:假设我们知道汉字编码范围是0x4E00到0x9FA5,怎么从十六进制的编码转成人类可读的字呢? 问题2:怎么把unicode编码的字写入文件呢,如果直接用open()的话,会提示UnicodeEncodeError: 'ascii' codec can't encode character u'\u4e00' in position 0: ordinal not in range(128) 问题1的答案是用unichr,问题2的答案是用codecs. 下面上代
-
python使用PIL给图片添加文字生成海报示例
前言 曾经,我也算半个所谓的文学青年.大学前两年大部分时间泡在图书馆看各种文学类的书. 那时的我,对于未来有很多遐想:写小说.写时评.写诗歌... 总而言之,就是成为一个文字工作者 现在我确实成为了一个文字工作者,只不过写的是代码... 在某个月黑风高的晚上,看着满屏花花绿绿的代码,揉着酸涩的眼睛,打了一个长长的哈欠.突然进入了禅定时刻: "还记得年少时的梦吗?" 我又开始想写作了,一个写了几年代码的老男人,在被生活粗暴地摁在地上摩擦几回后,突然触发了内心的柔软,想写些东西. 要写些什
-
python 识别图片中的文字信息方法
最近朋友需要一个可以识别图片中的文字的程序,以前做过java验证码识别的程序: 刚好最近在做一个python项目,所以顺便用Python练练手 1.需要的环境: 2.7或者3.4版本的python 2.需要安装pytesseract库 依赖PIL和tesseract-ocr库 本地环境是ubuntu,下面说一下 具体步骤: 2.7 1.安装PIL: 直接使用pip 安装: pip install Pillow 2.安装tesseract-ocr: apt-get install tesserac
-
Python3一行代码实现图片文字识别的示例
自学Python3第5天,今天突发奇想,想用Python识别图片里的文字.没想到Python实现图片文字识别这么简单,只需要一行代码就能搞定 from PIL import Image import pytesseract #上面都是导包,只需要下面这一行就能实现图片文字识别 text=pytesseract.image_to_string(Image.open('denggao.jpeg'),lang='chi_sim') print(text) 我们以识别诗词为例 下面是我们要识别的图片 先
-
Python3实现获取图片文字里中文的方法分析
本文实例讲述了Python3实现获取图片文字里中文的方法.分享给大家供大家参考,具体如下: 一.运行环境 (1) win10 (2) pycharm (3) python 3.5 (4) pillow与pytesseract库安装: pip3 install pillow pip3 install pytesseract (5) 识别引擎tesseract-ocr ,下载之后解压安装,下载地址:https://www.jb51.net/softs/538925.html 二. 运行代码 # -
-
Django实现图片文字同时提交的方法
本文实例讲述了Django实现图片文字同时提交的方法.分享给大家供大家参考.具体分析如下: jQuery为我们网站开发解决了很多问题,使我们的网站用户体验大大的提高了.举个简单的例子,我们用AJAX技术来实现对表单的异步提交,使用户在体验上有了很大的改观,用户在提交数据的同时还可以干一些其他的事情. 不过,今天在开发中遇到一个特别头痛的问题,刚开始不知道,以为可以实现,纠结了将近4个小时之久,但结果很是令人失望. 问题是这样的:为了提高用户体验,我决定使用AJAX异步提交,于是我用jQuery的
-
js判断图片加载完成后获取图片实际宽高的方法
本文实例讲述了js判断图片加载完成后获取图片实际宽高的方法.分享给大家供大家参考,具体如下: 通常,我们会用jq的.width()/.height()方法获取图片的宽度/高度或者用js的.offsetwidth/.offsetheight方法来获取图片的宽度/高度,但这些方法在我们通过样式设置了图片的宽高后获取的就不是图片的实际宽高,这显然在有些时候不是我们想要的结果,那么有没有一种方法来获取这样的实际宽高呢?答案是有的.下面的代码就能解决这样的问题: <img src="01.jpg&q
-
Android编程获取图片和视频缩略图的方法
本文实例讲述了Android编程获取图片和视频缩略图的方法.分享给大家供大家参考,具体如下: 从Android 2.2开始系统新增了一个缩略图ThumbnailUtils类,位于framework的android.media.ThumbnailUtils位 置,可以帮助我们从mediaprovider中获取系统中的视频或图片文件的缩略图,该类提供了三种静态方法可以直接调用获取. 1. createVideoThumbnail static Bitmap createVideoThumbnail(
-
python2和python3实现在图片上加汉字的方法
python2和python3实现在图片上加汉字,最主要的区别还是内部编码方式不一样导致的,在代码上表现为些许的差别.理解了内部编码原理也就不会遇到这些问题了,以下代码是在WIN10系统上时测好用的. Python2 在图片上加汉字代码实现 # -*- coding: cp936 -*- import cv2 import numpy as np from PIL import Image, ImageDraw, ImageFont def ID_2_Word(txt): tmp_ID = tx
-
js兼容火狐获取图片宽和高的方法
本文实例讲述了js兼容火狐获取图片宽和高的方法.分享给大家供大家参考.具体实现方法如下: <!doctype html> <html> <head> <meta content="text/html; charset=GBK" http-equiv="Content-Type" /> <title>获取Image 宽高</title> </head> <body> <
-
C#获取图片文件扩展名的方法
下面我给各位朋友整理了一篇C# 获取图片文件扩展名的例子,这里方法都非常的简单,我们只用到了image.RawFormat.Guid就实现了,具体看代码 例子 复制代码 代码如下: /// <summary> /// 根据图像获取图像的扩展名 /// </summary> /// <param name="image"></param> /// <returns></returns> public static S
-
iOS获取图片区域主色的方法
之前的项目有这样的需求,有一个页面可以检索一块区域内图片的主色.效果图如图所示 下面是如何获取区域主色的实现思路: 首先,我们需要从相册,或者相机去获取图片: 其次,得到图片需要截取区域图片: 然后,获取截取图片的主色. 理想中是这样的,但是有很多阻碍,得到的图片需要自适应imageView(imageView的宽高是固定的),截图的得到的区域不是自己想要的区域.这里需要将图片等比例缩放,按照ImageView的宽高. 那现在就直接上代码吧! 首先我们需要等比例缩放Image: /** * 缩放
-
springboot如何获取application.yml里值的方法
目录 方法一: 方法二: 在项目中,很多时候需要用到一些配置信息,这些信息在测试环境和生产环境下可能会有不同的配置,后面根据实际业务情况有可能还需要再做修改.我们不能将这些配置在代码中写死,最好是写到配置文件中,比如可以把这些信息写到 application.yml 文件中. 那么,怎么在代码里获取或者使用这个地址呢?有2个方法. 方法一: 我们可以通过@Value 注解的 ${key} 即可获取配置文件(application.yml)中和 key 对应的 value 值,这个方法适用于微服务
-
Oracle中获取执行计划的几种方法分析
1. 预估执行计划 - Explain PlanExplain plan以SQL语句作为输入,得到这条SQL语句的执行计划,并将执行计划输出存储到计划表中. 首先,在你要执行的SQL语句前加explain plan for,此时将生成的执行计划存储到计划表中,语句如下:explain plan for SQL语句然后,在计划表中查询刚刚生成的执行计划,语句如下:select * from table(dbms_xplan.display);注意:Explain plan只生成执行计划,并不会真正
随机推荐
- window.onload 加载完毕的问题及解决方案(上)
- js 模式窗口(模式对话框和非模式对话框)的使用介绍
- js实现点击切换TAB标签实例
- 一个js控制的导航菜单实例代码
- PHP_MySQL教程-第二天while循环与数据库操作第1/2页
- php中关于socket的系列函数总结
- .NET中读取Excel文件的数据及excelReader应用
- DIV+CSS布局中不推荐使用的标签集合Dont Use These Tags
- 终于明白了tc编译的dos程序和vc编译的win32控制台程序的区别
- JavaScript利用HTML DOM进行文档操作的方法
- node.js中的fs.lchownSync方法使用说明
- SQL Server实现显示每个类别最新更新数据的方法
- jquery ui resize 中border-box的bug修正
- setTimeout和setInterval的浏览器兼容性分析
- js操作Xml(向服务器发送Xml,处理服务器返回的Xml)(IE下有效)
- PHP 内存缓存加速功能memcached安装与用法
- 微信随机生成红包金额算法java版
- php 基础函数
- php实现通过soap调用.Net的WebService asmx文件
- jQuery实现ichat在线客服插件