python批量识别图片指定区域文字内容


Posted in Python onApril 30, 2019

Python批量识别图片指定区域文字内容,供大家参考,具体内容如下

简介

对于一张图片,需求识别指定区域的内容

1.截取原始图上的指定图片当做模板
2.根据模板相似度去再原始图片上识别准确坐标
3.根据坐标剪切出指定位置图片,也就是所需的内容区域
4.对指定位置图片进行ocr识别

环境

Ubuntu18.04
Python2.7

所需Python模块

1.aircv

用于识别模板再原始图的位置坐标

pip install aircv

2.Pillow

用于剪裁图片

pip install Pillow

3.Tesseract

文字识别
在此也可以用平台端的API进行更精准的识别
ubuntu下Tesseract环境安装

sudo apt-get install libpng12-dev 
sudo apt-get install libjpeg62-dev 
sudo apt-get install libtiff4-dev 
sudo apt-get install gcc 
sudo apt-get install g++ 
sudo apt-get install automake

1.tesseract-ocr安装

sudo apt-get install tesseract-ocr

2.pytesseract安装

pip install pytesseract

Python代码

识别对应位置

#!/usr/bin/python2.7 
# -*- coding: utf-8 -*- 
import aircv


def matchImg(imgsrc, imgobj, confidence=0.2):
 """
  图片对比识别imgobj在imgsrc上的相对位置(批量识别统一图片中需要的部分)
 :param imgsrc: 原始图片路径(str)
 :param imgobj: 待查找图片路径(模板)(str)
 :param confidence: 识别度(0<confidence<1.0)
 :return: None or dict({'confidence': 相似度(float), 'rectangle': 原始图片上的矩形坐标(tuple), 'result': 中心坐标(tuple)})
 """
 imsrc = aircv.imread(imgsrc)
 imobj = aircv.imread(imgobj)

 match_result = aircv.find_template(imsrc, imobj,
         confidence) # {'confidence': 0.5435812473297119, 'rectangle': ((394, 384), (394, 416), (450, 384), (450, 416)), 'result': (422.0, 400.0)}
 if match_result is not None:
  match_result['shape'] = (imsrc.shape[1], imsrc.shape[0]) # 0为高,1为宽

 return match_result

图片剪裁

#!/usr/bin/python2.7 
# -*- coding: utf-8 -*- 
from PIL import Image, ImageEnhance

def cutImg(imgsrc, out_img_name, coordinate):
 """
  根据坐标位置剪切图片
 :param imgsrc: 原始图片路径(str)
 :param out_img_name: 剪切输出图片路径(str)
 :param coordinate: 原始图片上的坐标(tuple) egg:(x, y, w, h) ---> x,y为矩形左上角坐标, w,h为右下角坐标
 :return:
 """
 image = Image.open(imgsrc)
 region = image.crop(coordinate)
 region = ImageEnhance.Contrast(region).enhance(1.5)
 region.save(out_img_name)

图片识别

#!/usr/bin/python2.7 
# -*- coding: utf-8 -*- 
import pytesseract
from PIL import Image

image = Image.open('bb.png')
code = pytesseract.image_to_string(image)
print(code)

对于三方API识别自行研究

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python实现文件复制删除
Apr 19 Python
python获取当前运行函数名称的方法实例代码
Apr 06 Python
Python实现简单过滤文本段的方法
May 24 Python
python实现音乐下载器
Apr 15 Python
对pandas中to_dict的用法详解
Jun 05 Python
python自动化测试无法启动谷歌浏览器问题
Oct 10 Python
解决Tensorboard 不显示计算图graph的问题
Feb 15 Python
Python中zip()函数的解释和可视化(实例详解)
Feb 16 Python
Python爬虫requests库多种用法实例
May 28 Python
浅谈python 调用open()打开文件时路径出错的原因
Jun 05 Python
可视化pytorch 模型中不同BN层的running mean曲线实例
Jun 24 Python
基于Python的自媒体小助手---登录页面的实现代码
Jun 29 Python
Python3.5装饰器典型案例分析
Apr 30 #Python
python如何制作缩略图
Apr 30 #Python
Python3.5装饰器原理及应用实例详解
Apr 30 #Python
11个Python Pandas小技巧让你的工作更高效(附代码实例)
Apr 30 #Python
python制作图片缩略图
Apr 30 #Python
python获取微信企业号打卡数据并生成windows计划任务
Apr 30 #Python
使用Python实现企业微信的自动打卡功能
Apr 30 #Python
You might like
PHP实现图片简单上传
2006/10/09 PHP
php Http_Template_IT类库进行模板替换
2009/03/19 PHP
javascript定义函数的方法
2010/12/06 Javascript
基于jQuery的让非HTML5浏览器支持placeholder属性的代码
2011/05/24 Javascript
使用firebug进行调试javascript的示例
2013/12/16 Javascript
javascript实现playfair和hill密码算法
2014/12/07 Javascript
浅析javascript操作 cookie对象
2014/12/26 Javascript
浅谈angular.js中实现双向绑定的方法$watch $digest $apply
2015/10/14 Javascript
AngularJS初始化静态模板详解
2016/01/14 Javascript
如何判断Javascript对象是否存在的简单实例
2016/05/18 Javascript
概述VUE2.0不可忽视的很多变化
2016/09/25 Javascript
jQuery树控件zTree使用方法详解(一)
2017/02/28 Javascript
vue脚手架中配置Sass的方法
2018/01/04 Javascript
vue2.0使用swiper组件实现轮播的示例代码
2018/03/03 Javascript
微信小程序开发之路由切换页面重定向问题
2018/09/18 Javascript
NVM安装nodejs的方法实用步骤
2019/01/16 NodeJs
pycharm 使用心得(五)断点调试
2014/06/06 Python
python with statement 进行文件操作指南
2014/08/22 Python
Python代码调试的几种方法总结
2015/04/15 Python
详解Python中break语句的用法
2015/05/14 Python
Python实现的字典值比较功能示例
2018/01/08 Python
Python3中_(下划线)和__(双下划线)的用途和区别
2019/04/26 Python
Python基础知识点 初识Python.md
2019/05/14 Python
Python使用graphviz画流程图过程解析
2020/03/31 Python
python 实现简易的记事本
2020/11/30 Python
canvas实现圆绘制的示例代码
2019/09/11 HTML / CSS
AmazeUI的JS表单验证框架实战示例分享
2020/08/21 HTML / CSS
Haglöfs瑞典官方网站:haglofs火柴棍,欧洲顶级户外品牌
2018/10/18 全球购物
Ariat官网:美国马靴和服装品牌
2019/12/16 全球购物
桥梁与隧道工程专业本科生求职信
2013/10/08 职场文书
高三学习决心书
2014/03/11 职场文书
献爱心标语
2014/06/21 职场文书
离婚代理词范文
2015/05/23 职场文书
严以用权专题学习研讨会发言材料
2015/11/09 职场文书
PHP中strval()函数实例用法
2021/06/07 PHP
go web 预防跨站脚本的实现方式
2021/06/11 Golang