一、windows安装配置

其他系统安装配置参考github:https://github.com/tesseract-ocr/tesseract/wiki
下载tesseract-ocr参考:https://github.com/tesseract-ocr/tesseract/wiki/Downloads
下载chi_sim.traineddata参考:https://github.com/tesseract-ocr/tesseract/wiki/Data-Files

1、pip install pytesseract
2、pip install pillow
3、安装tesseract-ocr
4、找到pytesseract模块中pytesseract.py 更改 tesseract_cmd = r'F:\tesseract_ocr\tesseract-Win64\tesseract.exe'
5、添加环境变量(变量名:TESSDATA_PREFIX,变量值:F:\tesseract_ocr\tesseract-Win64,即安装目录)
6、如果识别中文,下载训练数据chi_sim.traineddata,并拷贝到 F:\tesseract_ocr\tesseract-Win64\tessdata目录下

ps:
临时在 cmd 中设置环境变量,测试:set TESSDATA_PREFIX=F:\tesseract_ocr\tesseract-Win64
命令行运行(以.txt文件格式保存):tesseract.exe E:\python\project\mysite\media\tesseract.png C:\Users\konglingxi\Desktop\test -l chi_sim+equ+eng

二、例子

.py文件

#!/usr/bin/python
# coding:utf-8
from __future__ import unicode_literals
from django.conf import settings
import pytesseract
from PIL import Image as pillow_image
from django.shortcuts import render_to_response
from django.template import RequestContext

__author__ = "klx"

# Create your views here.

def binaryzation(threshold, image_address):
    """
    # 二值化,输入阈值和文件地址
    :param threshold:
    :param image_address:
    :return:
    """
    image = pillow_image.open(image_address)  # 打开图片
    image = image.convert('L')  # 灰度化
    table = []
    for x in range(256):  # 二值化
        if x < threshold:
            table.append(0)
        else:
            table.append(1)
    image = image.point(table, '1')
    return image

def main():
    """
    测试
    :return:
    """
    # 指定配置目录
    tessdata_dir_config = '--tessdata-dir "F:\\tesseract_ocr\\tesseract-Win64"'
    image_url = settings.MEDIA_ROOT + r"\tesseract.png"
    # image_url = settings.MEDIA_ROOT + r"\tesseract.jpg"
    image = binaryzation(200, image_url)
    image.show()  # 展示二值化后的效果,防止图片二值化效果不佳变成一片白无法识别
    result = pytesseract.image_to_string(image, config=tessdata_dir_config, lang="chi_sim+eng")  # 变图片为字符串
    return result

def test(request):
    res = main()
    return render_to_response("ocr_app/test.html", {"data": res}, context_instance=RequestContext(request))

.html模板

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>tesseract_ocr</title>
</head>
<body>
{{ data }}
</body>
</html>

tesseract_ocr+pytesseract图像识别的更多相关文章

  1. 基于Eclipse下的python图像识别菜鸟版(利用pytesseract以及tesseract)

    这是我注册博客后写的第一篇博客,希望对有相关问题的朋友有帮助. 在图像识别前,首先我们要做好准备工作. 运行环境:windows7及以上版本 运行所需软件:(有基础的可以跳过这一段)eclipse,p ...

  2. 使用pytesseract进行图像识别

    引言 对于简单验证码及一些图像的识别,我们需要使用pytesseract及相应的Tesseract引擎,它是开源的OCR引擎.帮助我们做一些简单的图像识别 当然为了更好将图片识别,对一些像素比较低的图 ...

  3. 利用Python进行简单的图像识别(验证码)

    这是一个最简单的图像识别,将图片加载后直接利用Python的一个识别引擎进行识别 将图片中的数字通过 pytesseract.image_to_string(image)识别后将结果存入到本地的txt ...

  4. python 简单图像识别--验证码

    python  简单图像识别--验证码 记录下,准备工作安装过程很是麻烦. 首先库:pytesseract,image,tesseract,PIL windows安装PIL,直接exe进行安装更方便( ...

  5. python3光学字符识别模块tesserocr与pytesseract

    OCR,即Optical Character Recognition,光学字符识别,是指通过扫描字符,然后通过其形状将其翻译成电子文本的过程,对应图形验证码来说,它们都是一些不规则的字符,这些字符是由 ...

  6. python 图像识别

    这是一个最简单的图像识别,将图片加载后直接利用Python的一个识别引擎进行识别 将图片中的数字通过 pytesseract.image_to_string(image)识别后将结果存入到本地的txt ...

  7. Python之selenium+pytesseract 实现识别验证码自动化登录脚本

    今天写自己的爆破靶场WP时候,遇到有验证码的网站除了使用pkav的工具我们同样可以通过py强大的第三方库来实现识别验证码+后台登录爆破,这里做个笔记~~~ 0x01关于selenium seleniu ...

  8. tesserocr与pytesseract模块的使用

    1.tesserocr的使用 #从文件识别图像字符 In [7]: tesserocr.file_to_text('image.png') Out[7]: 'Python3WebSpider\n\n' ...

  9. 自动化测试面试官:登录或注册时有验证码怎么处理?OCR图像识别技术大揭秘!

    本节大纲 读取cookie实现免登陆 pytesseract+tesseract-ocr实现图像识别 Pillow库对验证码截图 API接口实现图像识别 今天的这个技术点,为什么要给大家分享一下呢? ...

随机推荐

  1. ubuntu 下 python模块 mysql-python安装(转)

    原文:http://www.cnblogs.com/51kata/p/5406468.html 直接运行如下命令 sudo pip install MySQL-python 报如下错误 xxx@ubu ...

  2. webpack开发小总结

    webpack开发前端的时候往往是单独自己的服务器: 1.express 带上 webpack-dev-middleware(自己实现了热更新,而且在memory-fileSystem,不会产生多余文 ...

  3. Java基础-SSM之Spring和Mybatis以及Spring MVC整合案例

    Java基础-SSM之Spring和Mybatis以及Spring MVC整合案例 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 能看到这篇文章的小伙伴,详细你已经有一定的Java ...

  4. centos 7 两台机器搭建三主三从 redis 集群

    参考自:https://linux.cn/article-6719-1.htmlhttp://blog.csdn.net/xu470438000/article/details/42971091 ## ...

  5. 用matplotlib制作的比较满意的蜡烛图

    用matplotlib制作的比较满意的蜡烛图 2D图形制作包, 功能强大, 习练了很久, 终于搞定了一个比较满意的脚本. 特点: 使用方面要非常简单 绘制出来的图要非常的满意, 具有如下的特点 时间和 ...

  6. CSS的力量:用一个DIV画图

    这些图片都是用一个DIV绘制出来的,其实原理并不复杂. 这些图片都是由CSS绘制出来的,通过background-image叠加实现, 如蘑菇头的实现,通过 radial-gradient 径向渐变  ...

  7. 第12月第1天 MASConstraintMaker crash

    1. crash [valueLabel mas_makeConstraints:^(PAKitMASConstraintMaker *make) { make.left.equalTo(finish ...

  8. 利用iis虚拟目录实现文件服务器功能

    要求说明: 通过网站上传文件保存到统一的文件服务器上. 服务器说明: 1.文件服务器以下称为FilesServer,IP地址为:192.168.1.213 2.Web服务器为以下称为WebServer ...

  9. Javascript - Vue - vue对象

    vue提供了一整套前端解决方案,可以提升企业开发效率 vue的处理过程 app.js 项目入口,所有请求最先进入此模块进行处理 route.js 由app.js调用,处理路由的分发 controlle ...

  10. OpenLayers 3 之 地图图层数据来源(ol.source)详解

    原文地址 source 是 Layer 的重要组成部分,表示图层的来源,也就是服务地址.除了在构造函数中制定外,可以使用 layer.setSource(source) 稍后指定.一.包含的类型 ol ...