20行代码教你如何批量提取图片中文字

本文涉及的产品
文档理解,结构化解析 100页
车辆物流识别,车辆物流识别 200次/月
教育场景识别,教育场景识别 200次/月
简介: 大家好,我是志斌~之前志斌在考研的时候遇到了一个问题,就是要将图片中的文字给提取出来,当时是J哥帮忙搞出来的,现在已经考完研了,也学会了提取方式,现在来给大家分享一下。

01创建账号


我们这次使用的是百度AI上的文字识别功能,来将图片上的文字进行提取。

我们先打开百度AI界面,然后点击控制台。


71.png

跳转到登陆界面后,输入账号密码后,跳转到管理界面,此时我们点击文字识别。进入到文字识别应用界面。


72.png



然后创建一个应用(如已创建好,就点击管理应用)。


73.png


创建好后,进入到应用列表中,记下来‘AppID’、‘API Key’、‘Secret Key’这三个参数的值。在后面对API进行调用的时候需要用到这三个参数。


74.png


02提取文字


我们在上面已经注册号百度AI的账号了,现在我们要开始使用它来将图片中的文字给提取出来。

首先,我们先安装一下要使用到的库。


pip install baidu-aip


这个库里提供了两个函数:AipOcr函数和client.basicGeneral函数。这两个函数一个实现用户验证功能,另一个实现了文字识别功能。代码如下:


from aip import AipOcr
APP_ID = '你的APPID'
API_KEY = 'API Key'
SECRET_KEY = '你的Secret Key'
client = AipOcr(APP_ID, API_KEY, SECRET_KEY)
with open(img,'rb') as f:
   image = f.read()
word = client.basicGeneral(image)


转换效果如下:


75.png


从图中可以看出,这样的转化方式还是比率还是很高的。

03批量提取


我们已经学会如何提取单张图片中的文字了,现在我们只要能够遍历图片就可以了。在上一篇 文章中,我们分享了一个遍历该目录下Excel文件的办法,遍历图片其实和他一样,只不过把Excel换成jpg即可。代码如下:


from pathlib import Path, PurePath
files = []
p = Path(src_path)
for x in p.iterdir():
   if PurePath(x).match('*.jpg'):
      files.append(x)


04小结


批量提取图片文字的思路是:

1. 注册百度AI的账号。

2. 通过调用百度AI,将图片中的文字提取。

3. 将提取出来的文字进行保存。

4. 依次遍历该目录下所有图片,重复2、3操作。


后台回复转化,即可获得源码。

相关文章
|
3月前
|
API 双11 数据安全/隐私保护
|
机器学习/深度学习 自然语言处理 数据挖掘
大模型在科研领域有哪些应用?
【7月更文挑战第26天】大模型在科研领域有哪些应用?
1689 1
|
11月前
|
机器学习/深度学习 算法
贝叶斯线性回归:概率与预测建模的融合
本文探讨了贝叶斯方法在线性回归中的应用,从不确定性角度出发,介绍了如何通过概率来表达变量间关系的不确定性。文章首先回顾了古希腊天文学家使用本轮系统模拟行星运动的历史,并将其与傅里叶级数分解方法类比,强调了近似的重要性。接着,通过高斯分布和贝叶斯推断,详细讲解了线性回归中的不确定性处理方法。文章使用Howell1数据集,展示了如何构建和拟合高斯模型,并通过先验预测模拟验证模型合理性。最后,介绍了多项式回归和样条方法,展示了如何逐步增加模型复杂性以捕捉更细微的数据模式。贝叶斯方法不仅提供了点估计,还提供了完整的后验分布,使得模型更具解释性和鲁棒性。
310 1
贝叶斯线性回归:概率与预测建模的融合
|
11月前
|
Kubernetes Ubuntu NoSQL
harbor镜像仓库自建
harbor镜像仓库自建
|
机器学习/深度学习 运维 计算机视觉
TimesNet:时间序列预测的最新模型
2023年4月发表了一个新的模型,它在时间序列分析的多个任务中实现了最先进的结果,如预测、imputation、分类和异常检测:TimesNet。
1147 0
|
缓存 JavaScript 前端开发
JavaScript进阶 - Web Workers与Service Worker
【7月更文挑战第4天】JavaScript的Web Workers和Service Worker增强了Web性能。Web Workers处理后台多线程,减轻主线程负担,但通信有开销,受同源策略限制。Service Worker则用于离线缓存和推送通知,需管理其生命周期、更新策略,并确保安全。两者都带来了挑战,但也极大提升了用户体验。通过理解和优化,开发者能构建更高效、安全的Web应用。
285 2
|
机器学习/深度学习 文字识别 C#
C#使用PaddleOCR进行图片文字识别✨
C#使用PaddleOCR进行图片文字识别✨
507 0
|
人工智能
如何使用chatGPT生成小红书种草文案
小红书拥有超千万的日活用户,为商家提供了广阔的变现空间和机会,成为商家选择在小红书上推广的原因之一。 小红书种草文案,例如具有影响力的热门话题、产品使用方法等内容可以让消费者迅速了解产品为品牌带来更多新客户。想要在小红书实现种草,离不开种草文案。今天就教大家使用ChatGPT撰写小红书种草文案。
642 0
ENVI:如何进行遥感图像的分类?(决策树模型)
ENVI:如何进行遥感图像的分类?(决策树模型)
571 0
|
XML 数据格式 Python
【Python】已解决:AttributeError: ‘function’ object has no attribute ‘ELement’
【Python】已解决:AttributeError: ‘function’ object has no attribute ‘ELement’
538 0