精华内容
参与话题
问答
  • python--识别图片中的文字

    万次阅读 多人点赞 2018-08-24 11:53:28
    本篇文章主要参考了 python图像处理之识别图像中的文字 这篇文章,在实现的过程中出现了些偏差,特此记录。因为此时笔者不是第一次安装,所展示的结果会和首次安装的结果有所差别。 1.安装PIL 以管理员的身份...

    本篇文章主要参考了 python图像处理之识别图像中的文字 这篇文章,在实现的过程中出现了些偏差,特此记录。因为此时笔者不是第一次安装,所展示的结果会和首次安装的结果有所差别。

    1.安装PIL

    以管理员的身份打开命令提示符,输入:pip install pillow.

    (注:PIL是python平台事实上的图像处理标准库,但PIL仅支持到python2.7,加上年久失修,于是在PIL的基础上创建了兼容的版本pillow,支持最新的python3.X。)

     

    2.安装pytesser3

    打开命令提示符,输入:pip install pytesser3

     

    3.安装pytesseract

    打开命令提示符,输入:pip install pytesseract

     

    4.安装autopy3

    先安装wheel,即先在命令提示符中输入pip install wheel。

    下载autopy3-0.51.1-cp36-cp36m-win_amd64.whl。点击此处下载,此时该文件所在目录为D:\liuyan\autopy3-0.51.1-cp36-cp36m-win_amd64.whl。

    在命令提示符中输入: pip install D:\liuyan\autopy3-0.51.1-cp36-cp36m-win_amd64.whl

     

    5.安装Tesseract-OCR

    5.1 下载安装包

    百度搜索Tesseract-OCR下载   Tesseract-orc-setup-3.02.02.exe   。要记得自己的安装目录(博主的安装路径为:C:\Program Files(x86)\Tesseract-OCR),等会配置环境变量要用。

    如果不是做英文的图文识别,还需要下载其他语言的识别包  其他语言各版本的识别包下载  ,如简体字识别包对应的是chi_sim.traineddata ,繁体字识别包对应的是chi_tra.traineddata 。

    5.2 安装

    具体安装步骤可参考光学字符识别引擎Tesseract-ocr安装过程 。

    5.3 配置环境变量

    博主的安装路径为:C:\Program Files(x86)\Tesseract-OCR。电脑属性--高级系统设置--环境变量,进入如下界面。

    把刚刚的安装路径"C:\Program Files(x86)\Tesseract-OCR"添加到用户变量和系统变量的path中,注意,添加的时候开头用";"跟之前的变量隔开,以";"结尾。配置好后点击确定。

    打开命令终端,输入:tesseract -v,可以看到版本信息。

    到这里,我们就算安装完成了。但是,我们的系统还是无法识别中文的,要去下载简体汉字、繁体汉字语言包(其他语言各版本识别包下载),下载好之后放到安装目录的tessdata目录下即可。

    注:此处的安装过程参考Window环境安装tesseract-ocr 4.00并配置环境变量  。

    5.4 验证是否安装成功

    进入cmd窗口,敲入命令cd C:\Program Files (x86)\Tesseract-OCR,再输入tesseract,若有如下信息则表示安装成功。

    还可以用命令tesseract --list-langs来查看Tesseract-OCR支持的语言。

     

    入门使用

    window中运行tesseract(参考 OCR开源软件Tesseract的下载和入门使用

    1.tesseract是一个命令行OCR程序,打开一个终端(Win+R),输入语法如下:

    tesseract 输入图片的文件名 输出文件的文件名 [-l lang][-psm pagesegmode][configfile...]

    例如:识别 微信图片5.png 图像,将识别结果存入 out2.txt,如下

     

    2.用pycharm进行图像中的汉字识别

    要识别的原图如下:(来自小华的《烟火里的尘埃》)

    实现的代码如下:

    import  pytesseract
    from PIL import Image
    im=Image.open(r'C:\Users\名字被抢了\desktop\图片2.png')
    print(pytesseract.image_to_string(im,lang='chi_sim'))

    效果图

    识别的效果不是很好,有待于进一步提高正确率。

    展开全文
  • Python图像处理之图片文字识别(OCR)

    万次阅读 多人点赞 2018-06-09 08:15:15
      将图片翻译成文字一般被称为光学文字识别(Optical Character Recognition,OCR)。可以实现OCR 的底层库并不多,目前很多库都是使用共同的几个底层OCR 库,或者是在上面进行定制。   Tesseract 是一个OCR 库...

    OCR与Tesseract介绍

      将图片翻译成文字一般被称为光学文字识别(Optical Character Recognition,OCR)。可以实现OCR 的底层库并不多,目前很多库都是使用共同的几个底层OCR 库,或者是在上面进行定制。
      Tesseract 是一个OCR 库,目前由Google 赞助(Google 也是一家以OCR 和机器学习技术闻名于世的公司)。Tesseract 是目前公认最优秀、最精确的开源OCR 系统。
      除了极高的精确度,Tesseract 也具有很高的灵活性。它可以通过训练识别出任何字体(只要这些字体的风格保持不变就可以),也可以识别出任何Unicode 字符。

    Tesseract的安装与使用

      Tesseract的Windows安装包下载地址为: http://digi.bib.uni-mannheim.de/tesseract/tesseract-ocr-setup-4.00.00dev.exe ,下载后双击直接安装即可。安装完后,需要将Tesseract添加到系统变量中。在CMD中输入tesseract -v, 如显示以下界面,则表示Tesseract安装完成且添加到系统变量中。

      Linux 用户可以通过apt-get 安装:

    $sudo apt-get tesseract-ocr
    

      用Tesseract可以识别格式规范的文字,主要具有以下特点:

    • 使用一个标准字体(不包含手写体、草书,或者十分“花哨的”字体)
    • 虽然被复印或拍照,字体还是很清晰,没有多余的痕迹或污点
    • 排列整齐,没有歪歪斜斜的字
    • 没有超出图片范围,也没有残缺不全,或紧紧贴在图片的边缘
      下面将给出几个tesseract识别图片中文字的例子。
      首先是E://figures/other/poems.jpg, 输入命令 tesseract E://figures/other/poems.jpg E://figures/other/poems.txt, 则会将poems.jpg中的识别文字写入到poems.txt中,如下图:
    poems.jpg


      接着是稍微有点倾斜的文字图片th.jpg,识别情况如下:


    可以看到识别的情况不如刚才规范字体的好,但是也能识别图片中的大部分字母。
      最后是识别简体中文,需要事先安装简体中文语言包,下载地址为:https://github.com/tesseract-ocr/tessdata/find/master/chi_sim.traineddata ,再讲chi_sim.traineddata放在C:\Program Files (x86)\Tesseract-OCR\tessdata目录下。我们以图片timg.jpg为例:

    输入命令:

    tesseract E://figures/other/timg.jpg E://figures/other/timg.txt -l chi_sim
    

    识别结果如下:

    只识别错了一个字,识别率还是不错的。
      最后加一句,Tesseract对于彩色图片的识别效果没有黑白图片的效果好。

    pytesseract

      pytesseract是Tesseract关于Python的接口,可以使用pip install pytesseract安装。安装完后,就可以使用Python调用Tesseract了,不过,你还需要一个Python的图片处理模块,可以安装pillow.
      输入以下代码,可以实现同上述Tesseract命令一样的效果:

    import pytesseract
    from PIL import Image
    
    pytesseract.pytesseract.tesseract_cmd = 'C://Program Files (x86)/Tesseract-OCR/tesseract.exe'
    text = pytesseract.image_to_string(Image.open('E://figures/other/poems.jpg'))
    
    print(text)
    

    运行结果如下:

    参考文献

    1. Python网络数据采集 【美】 Ryan Mitchell 人民邮电出版社
    2. https://blog.csdn.net/dcrmg/article/details/78233459?locationNum=7&fps=1
    3. http://www.inimei.cn/archives/297.html

    ***注意:***本人现已开通微信公众号: 轻松学会Python爬虫(微信号为:easy_web_scrape), 欢迎大家关注哦~~

    展开全文
  • 图片文字识别

    2019-01-11 09:12:36
    这是基于百度aip的图片文字识别,识别率还可以,自带gui界面。感觉很好玩。 # coding =utf-8 ''' name:图片识别 function:将图片里面的文字识别出来 author:ww time:2019/1/8 13:30 software:PyCharm ''' ...

    这是基于百度aip的图片文字识别,识别率还可以,自带gui界面。感觉很好玩。

    
    # coding =utf-8
    '''
        name:图片识别
        function:将图片里面的文字识别出来
        author:ww
        time:2019/1/8 13:30
        software:PyCharm
    
    '''
    
    from tkinter import *
    from tkinter.filedialog import askdirectory
    from os import path
    import tkinter
    
    from aip import AipOcr
    
    # 定义常量
    APP_ID = '15345466'
    API_KEY = 'u4Uh1pg7rNBi0VQazfPSCQB7'
    SECRET_KEY = 'ivmLcC3FWCUy6cwqHG2ViiObLNFbmEa5'
    # 初始化AipFace对象
    aipOcr = AipOcr(APP_ID, API_KEY, SECRET_KEY)
    
    global testd
    testd = ''
    global path_
    
    
    def selectPath():
        global path_
        path_ = tkinter.filedialog.askopenfilename()
    
        path.set(path_)
    
    def get():
        def get_file_content(path_):
            with open(path_, 'rb') as fp:
                return fp.read()
                # 定义参数变量
    
        options = {'detect_direction': 'true', 'language_type': 'CHN_ENG', }
        # 调用通用文字识别接口
        result = aipOcr.basicGeneral(get_file_content(path_), options)
        a = result['words_result']
        testd = ''
    
        for i in a:
            for k, v in i.items():
                print(k, v)
                testd += v
                testd += '\n'
        text_result.delete(0.0, END)
        text_result.insert(1.0, testd)
    
    root = Tk()
    path = StringVar()
    root.title("图片文字识别")  # 设置窗口标题
    root.geometry("500x400")  # 设置窗口大小 注意:是x 不是*
    root.resizable(width=False, height=True)  # 设置窗口是否可以变化长/宽,False不可变,True可变,默认为True
    # text = tkinter.Text(root).grid(row=2, column=1)
    Label(root, text="").grid(row=0, column=0)
    Button(root, text="路径选择", command=selectPath).grid(row=1, column=0)
    Label(root, text="图片路径:").grid(row=1, column=0, rowspan=10, columnspan=10)
    Entry(root, textvariable=path).grid(row=1, column=1, ipadx=1, ipady=1, columnspan=1, rowspan=1)
    Button(root, text="转换文字", command=get).grid(row=2, column=0)
    
    text_result = Text(root, width=68, height=20)
    text_result.grid(row=4, column=0, columnspan=2, sticky=W, padx=10)
    Label(root, text="-- by ww").grid(row=8, column=1, sticky=E, padx=10, pady=10)
    
    root.mainloop()
    
    
    

    运行效果

    什么描述  ???我咋么看见!!!

    点击路径选择选择图片
    在这里插入图片描述

    点击转换文字,运行效果。
    在这里插入图片描述

    是不是很好玩。

    展开全文
  • 图像文字识别应用所作的事是,从一张给定的图片中识别文字。这比从一份扫描文档中识别文字要复杂的多。 为了完成这样的工作,需要采取如下步骤: 1.文字侦测( Text detection) ——将图片上的文字与其他环境对象...

    1 问题描述

    图像文字识别应用所作的事是,从一张给定的图片中识别文字。这比从一份扫描文档中识别文字要复杂的多。
    在这里插入图片描述
    为了完成这样的工作,需要采取如下步骤:
    1.文字侦测( Text detection) ——将图片上的文字与其他环境对象分离开来
    2.字符切分( Character segmentation) ——将文字分割成一个个单一的字符
    3.字符分类( Character classification) ——确定每一个字符是什么 可以用任务流程图来表达这个问题,每一项任务可以由一个单独的小队来负责解决:
    在这里插入图片描述

    2 滑动窗口

    滑动窗口是一项用来从图像中抽取对象的技术。假使我们需要在一张图片中识别行人,
    首先要做的是用许多固定尺寸的图片来训练一个能够准确识别行人的模型。然后我们用之前
    训练识别行人的模型时所采用的图片尺寸在我们要进行行人识别的图片上进行剪裁,然后将
    剪裁得到的切片交给模型,让模型判断是否为行人,然后在图片上滑动剪裁区域重新进行剪
    裁,将新剪裁的切片也交给模型进行判断,如此循环直至将图片全部检测完。
    一旦完成后,我们按比例放大剪裁的区域,再以新的尺寸对图片进行剪裁,将新剪裁的
    切片按比例缩小至模型所采纳的尺寸,交给模型进行判断,如此循环。
    在这里插入图片描述
    滑动窗口技术也被用于文字识别,首先训练模型能够区分字符与非字符,运用滑动窗口技术识别字符,一旦完成了字符的识别,我们将识别得出的区域进行一些扩展,然后将重叠的区域进行合并。接着我们以宽高比作为过滤条件,过滤掉高度比宽度更大的区域(认为单词的长度通常比高度要大)。下图中绿色的区域是经过这些步骤后被认为是文字的区域,而红色的区域是被忽略的。
    在这里插入图片描述
    以上便是文字侦测阶段。 下一步是训练一个模型来完成将文字分割成一个个字符的任
    务,需要的训练集由单个字符的图片和两个相连字符之间的图片来训练模型。
    在这里插入图片描述
    模型训练完后,我们仍然是使用滑动窗口技术来进行字符识别。
    以上便是字符切分阶段。 最后一个阶段是字符分类阶段,利用神经网络、支持向量机
    或者逻辑回归算法训练一个分类器即可。

    3 获取大量数据集和人工数据

    如果我们的模型是低方差的,那么获得更多的数据用于训练模型,是能够有更好的效果的。问题在于,我们怎样获得数据,数据不总是可以直接获得的,我们有可能需要人工地创造一些数据。
    

    以我们的文字识别应用为例,我们可以字体网站下载各种字体,然后利用这些不同的字体配上各种不同的随机背景图片创造出一些用于训练的实例,这让我们能够获得一个无限大的训练集。这是从零开始创造实例。
    另一种方法是,利用已有的数据,然后对其进行修改,例如将已有的字符图片进行一些
    扭曲、旋转、模糊处理。只要我们认为实际数据有可能和经过这样处理后的数据类似,我们
    便可以用这样的方法来创造大量的数据。
    在这里插入图片描述

    4 上限分析

    在机器学习的应用中,我们通常需要通过几个步骤才能进行最终的预测,我们如何能够知道哪一部分最值得我们花时间和精力去改善呢?这个问题可以通过上限分析来回答。
    回到我们的文字识别应用中,我们的流程图如下:
    在这里插入图片描述
    流程图中每一部分的输出都是下一部分的输入,上限分析中,我们选取一部分,手工提供 100%正确的输出结果,然后看应用的整体效果提升了多少。假使我们的例子中总体效果为 72%的正确率。
    如果我们令文字侦测部分输出的结果 100%正确,发现系统的总体效果从 72%提高到了89%。这意味着我们很可能会希望投入时间精力来提高我们的文字侦测部分。
    接着我们手动选择数据,让字符切分输出的结果 100%正确,发现系统的总体效果只提升了 1%,这意味着,我们的字符切分部分可能已经足够好了。
    最后我们手工选择数据,让字符分类输出的结果 100%正确,系统的总体效果又提升了10%,这意味着我们可能也会应该投入更多的时间和精力来提高应用的总体表现。
    在这里插入图片描述

    展开全文
  • 没想到Python实现图片文字识别这么简单,只需要一行代码就能搞定#作者微信:2501902696 from PIL import Image import pytesseract #上面都是导包,只需要下面这一行就能实现图片文字识别 text=pytesseract.image_to...
  • 调用百度ai接口实现图片文字识别详解

    万次阅读 多人点赞 2019-06-12 11:08:01
    调用百度ai接口实现图片文字识别详解         首先先介绍一下这篇博文是干嘛的,为了不浪费大家时间。公司最近和短视频公司合作,需要监控app的截图上的文字是否符合规范...
  • 突然接到老板给的一个任务...那什么方法,实现图片文字识别最简单,最方便,还很精确呢? 今天就来和大家分享一下,手机里的逆天黑科技,实现图片文字识别,只需5秒钟! 方法一: 打开QQ,左上角【扫一扫】——手机...
  • 其实,现在已经有很多图片文字识别软件,我们可以直接利用工具来帮助我们快速提取图片上的文字。 方法一:用office自带的OneNote工具 想要把图片转换成文字,首先需要准备一张含有文字的图片,接下来以下面这张图片...
  • 图像文字识别(四):java调用tess4j识别图像文字

    万次阅读 热门讨论 2018-05-05 12:29:25
    Tesseract-OCR支持中文识别,并且开源和提供全套的训练工具,是快速低成本开发的首选。前面记录过在java中调用tesseract-orc,该方法的原理是通过在java中调用cmd命令行,来执行tesseract,但是该方式需要下载软件,...
  • c#图片文字识别(含中文)

    千次下载 热门讨论 2014-08-28 19:24:48
    c#基于Tesseract框架和语言训练库的图片文字识别。全工程文件,对仅含文字的清晰的图片,识别率较高!希望大家支持一下!
  • Android上图片文字识别

    万次阅读 多人点赞 2017-04-19 09:24:24
    前者顾名思义有个短板,就是需要生成二维码,下面就介绍下图片文字识别实现。 本应用是基于是OCR引擎,故需要第三方的jar包tess-two.tesseract3.01-leptonica1.68-LibJPEG6b.jar 下载链接:点击打开链接 另外...
  • 软件不需要安装,直接双击打开就可以用,废话不多说直接上图好了,方便说明问题 ...PDF文件文字识别怎么弄,现将PDF拆成图片,做了个功能批量PDF拆成图片后批量导入图片再识别 开发语言C#、基...
  • 非常好用的免费图片文字识别工具,亲测可用!能将图片中的文字识别转化为txt
  • PHP图片文字识别

    千次阅读 2018-11-07 16:39:14
    软件下载安装地址:https://jingyan.baidu.com/article/219f4bf788addfde442d38fe.html 下载traineddata  前往:...下载Data Files for Version 4.00 (November 29, 2016...
  • c#实现OCR图片文字识别,包含图片预处理提高识别率。支持简体繁体识别
  • 免费图片文字识别是可以支持免费识别图片文字的软件。在办公的时候会常遇到图片文字需要识别的问题,如果只是几张图片要识别,选择付费的软件当然是不划算的,为了帮助我们快速的识别图片文字,我们可以在电脑上安装...
  • 前言   OCR 是 Optical Character Recognition 的缩写,翻译为光学字符识别,指的是针对印刷体字符,采用...简单的来说,OCR技术就是可以把图片上的文字识别出来,并以文本格式的形式提取出来。   这个技术...
  • 提取文字
  • keras-文本图片文字识别

    千次阅读 2018-06-25 11:19:41
    文本图片素材-文字切割并保存切割图片# -*- coding: UTF-8 -*- import cv2 import numpy as np import matplotlib.pyplot as plt def median_split_ranges(peek_ranges): new_peek_ranges = [] ...
  • OCR截图文字识别提取(无需安装)

    万次阅读 多人点赞 2019-04-29 14:01:43
    本软件无需安装, 适用于Windows 平台,具有截图,文字提取等功能,亦可用于图片和PDF中文字的识别提取中。目前版本为 V3.82。 截图文字提取 V3.82 下载地址如下 蓝奏云下载:https://www.lanzous.com/b679733 ...

空空如也

1 2 3 4 5 ... 20
收藏数 81,106
精华内容 32,442
关键字:

操作