当我们在工作中需要批量识别同一区域内的一些数字时候可以用Python实现

需要用到这些库 easyocr openvc os matplotlib 核心是前两个

opevc实现图象裁剪,easyocr实现文字识别

安装方法

pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple

pip install opencv-contrib-python

pip install opencv-python

pip install opencv-python-headless

pip install easyocr

# -*- coding: utf-8 -*-
import easyocr
import os
import cv2
import pandas as  pd

遍历图片并裁剪

# im_path:图片路径def clip_image(im_path): i=0 filelist = os.listdir(im_path)for file in filelist:file_path=os.path.join(im_path,file)im=cv2.imread(file_path)#[h,w]根据自己图片中目标的位置修改im=im[19:38,256:353] b=str(i)   #数字变为字符串方便后面命名               save_path = r'E:\pythonprograms\easyocr\img\img2' #裁剪后路径save_path_file = os.path.join(save_path,b+".jpg")           cv2.imwrite(save_path_file,im)            i=i+1im_path = r'E:\pythonprograms\easyocr\img\img'  #裁剪前路径
clip_image(im_path)

批量文字识别、拼接合并、转为excel存储

render = easyocr.Reader(['ch_sim','en'])
filepath =r'E:\pythonprograms\easyocr\img\img2' #裁剪后路径
file = os.listdir(filepath)
spa =[]
for f in file :url =os.path.join(filepath,f)content = render.readtext(url,detail=0) #detail=0 表示去掉细节 s = ' '.join(content)spa.append(s)
b2=pd.DataFrame(spa )
b2.to_excel("results.xls")
b2
0 4.818 ruicms
1 8.907 ruicms
2 2.556 ruicms
3 3.280 ruicms
4 3.189 rnicms
5 3.028 rnicm

相关知识

读取图片有三种方式,分别是matplotlib,opencv,PIL,展示用matplotlib比较简单

定位图像想要提取的区域,可以通过画图软件查看

比如鼠标移动在上面可以看到定位像素详细。就可以对应像素位置提取图片了

image1=r'E:\pythonprograms\easyocr\img\img\R-0148_01692_Screenshot.png'
im=cv2.imread(image1)
im2=im[19:38,256:353] 

cv2读取图片后,可以获取图像属性,可以裁剪图像

https://blog.csdn.net/yukinoai/article/details/86423937

# 获取图像属性
shape = im.shape
print('图像的形状为: ', shape)  # 打印图像形状,包括行、列、通道
size = im.size
print('图像的像素数目为: ', size)  # 打印图像的像素数目
dtype = im.dtype
print('图像的数据类型为: ', dtype)  # 打印图像的数据类型

用matplotlib读取图片

import matplotlib.image as mpimg#读取图片
import matplotlib.pyplot as plt #显示图片
%matplotlib inlineimage = mpimg.imread(image1)
plt.title('展示部分')
plt.axis('off')# 不显示坐标轴
plt.imshow(im2)
plt.show()

import matplotlib.image as mpimg#读取图片
import matplotlib.pyplot as plt #显示图片
%matplotlib inlineimage = mpimg.imread(image1)
plt.title('Read Image by Matplotlib')
plt.axis('off')# 不显示坐标轴
plt.imshow(image)
plt.show()

过程中遇到的问题记录

easyocr import 报错

easyocr安装没问题 但  import 报错

py运行错误为:

OMP: Error #15: Initializing libiomp5md.dll, but found libiomp5md.dll already initialized.

OMP: Hint This means that multiple copies of the OpenMP runtime have been linked into the program. That is dangerous, since it can degrade performance or cause incorrect results. The best thing to do is to ensure that only a single OpenMP runtime is linked into the process, e.g. by avoiding static linking of the OpenMP runtime in any library. As an unsafe, unsupported, undocumented workaround you can set the environment variable KMP_DUPLICATE_LIB_OK=TRUE to allow the program to continue to execute, but that may cause crashes or silently produce incorrect results. For more information, please see Intel® Product Support

ipynb 同样会报错

方法:

删除了E:\Anaconda\anacanda3\Library\bin下的这个libiomp5md.dll文件。也可以修改后缀名。

然后就可以了。

cv2 展示图片报错

使用,cv2.imshow(" ", img)  一直报错,最终也没解决,用的matplotlib展示图片。

Python实现批量图像文字识别并指定部分提取相关推荐

  1. 基于Python实现的图像文字识别OCR工具

    引言 最近在技术交流群里聊到一个关于图像文字识别的需求,在工作.生活中常常会用到,比如票据.漫画.扫描件.照片的文本提取. 博主基于 PyQt + labelme + PaddleOCR 写了一个桌面 ...

  2. 基于Python实现的图像文字识别OCR工具,包含GUI界面附完整版代码可直接运行

    引言 最近在技术交流群里聊到一个关于图像文字识别的需求,在工作.生活中常常会用到,比如票据.漫画.扫描件.照片的文本提取. 博主基于 PyQt + labelme + PaddleOCR 写了一个桌面 ...

  3. 批量图片文字识别OCR场景试用体验-静图变活字,腐朽变神奇

    [优爱酷]图片转文字,批量转.多任务并行转.离线转.场景转,支持表格https://gitee.com/uicoolcn/UiCoolOCR 动态OCR: 针对短视频文案.音频歌词.电影字幕.动态网页 ...

  4. 如何使用Python实现图像文字识别OCR

    要使用Python实现图像文字识别OCR,可以使用以下步骤: 安装Tesseract OCR引擎 Tesseract是一种开源OCR引擎,可以处理多种语言和字体.要使用Python进行OCR,需要安装 ...

  5. python制作文字识别_用Python轻松进行图像文本识别

    用Python轻松进行图像文本识别 作者:梅朵 微信公众号:实用办公编程技能 微信号:Excel-Python 最近,办公室的同事小李在整理一份报告,很多材料的电子版找不到了,都是纸质版的,纸质版上的 ...

  6. 使用python进行图片的文字识别

    使用python进行图片的文字识别 文章目录 使用python进行图片的文字识别 安装 Tesseract OCR 安装过程 配置系统的环境变量 安装python的第三方库 Pytesseract库 ...

  7. python百度paddle表格文字识别生成excel

    表格识别技术主要使用基于注意力机制的图片描述模型 RARE,整体流程如下图所示,对于其中的表格区域进行表格识别处理. 表格识别的难点主要在于表格结构的提取,以及将表格信息与 OCR 信息融合.整体流程 ...

  8. 图像文字识别(三):Tesseract4.0训练字库,提高正确识别率

    由于tesseract的中文语言包"chi_sim"对中文手写字体或者环境比较复杂的图片,识别正确率不高,因此需要针对特定情况用自己的样本进行训练,提高识别率,通过训练,也可以形成 ...

  9. 应用示例:图像文字识别

    Problem Description and Pipeline 在图像文字识别应用中,我们希望从给定的图片中识别图中的文字,如: 为了实现图像文字识别,常采取如下步骤: 文字检测(text dete ...

最新文章

  1. python使用matplotlib可视化条形图、使用barh函数可视化条形图(使用barh函数可视化多分类的并行条形图、side by side)
  2. 谋局科技创新:两院院士大会释放重要信号
  3. python学习书籍推荐-强烈推荐:Python学习必看书籍-带你高效学习
  4. 7号团队-团队任务3:每日例会(2018-12-05)
  5. Python四大金刚之一:列表
  6. 初识Linux操作系统
  7. python连接informix数据库
  8. 手机麦克风结构原理图_做一个最会搞气氛的人,唱吧小巨蛋麦克风G2评测:明星同款...
  9. arcgis 视频教程 ArcGIS Pro 从0到1
  10. 《图论及其应用》期末复习汇总
  11. springboot系列(二十五):如何实现单word模板分多页导出?这你得会|超级详细,建议收藏
  12. 第二章 OpenHarmony工程介绍
  13. 计算机软件绘制思维导图步奏,常见的思维导图有哪几种画法
  14. 服务器pe系统ghost系统安装教程,科技教程:U盘PE启动安装GHOST系统图文教程
  15. ZipFile 解压多个.zip压缩文件
  16. 人工蜂群算法python_人工蜂群算法简介与程序分析
  17. 【漏洞提示】MySQL8.0.29因重大bug官网已下架
  18. GitLab的安装及使用教程(超级详细)
  19. mysql对存储分布式文件系统的存储需求总结
  20. 逻辑漏洞连环击 攻击者盯上了 Eleven Finance 这块羊毛地

热门文章

  1. python 布莱克舒尔斯_布莱克-舒尔斯-墨顿期权定价模型
  2. 双尺度与多尺度图像细节提升
  3. PsPad的十六进制编辑模式在win7 64位中有bug
  4. Neutrino追问AMA第16期|everiToken程希冀:通过安全合约技术让用户一键发通证
  5. (FFMpeg学习笔记):FFmpeg下载、ffmpeg.exe与ffplay.exe的基本使用
  6. NVIC_EnableIRQ使能无法进行的原因
  7. macOS tcping 检测IP端口
  8. luajit开发文档wiki中文版(二) LuaJIT 扩展
  9. 布尔代数(基本概念,运算规则,符号/数字代表的含义)
  10. matlab函数图形模拟器源代码,直接拿走就用