自从上次批量的保存了半佛老师的各种骚图之后:我用Python一键保存了半佛老师所有的骚气表情包,每次做视频,找图就相当的费劲,因为图片太多,每次想要找到固定的图的话。就像大海捞针一样。因为上个版本的代码保存图片是截取部分图片链接进行命名的,所以名称是随机的。

所以今天我准备对这些图片重新命名。按照表情包中的文字来命名。所以我得找到能够识别图片中文字的方法。基础的方法的话,那就需要安装图像处理相关的库,像 pillow、pytesser3、Tesseract-OCR 等等库。用这些库识别图片中的文字的成功率不是很高,所有我准备调用一下第三方的一些库。我看了一下百度有个文字识别的API接口。我们需要在下面地址注册应用。

Python

https://ai.baidu.com/tech/ocr

1

2

https://ai.baidu.com/tech/ocr

我们在文字识别里面去创建一个应用,选择图片文字识别。

通用文字识别接口一天有5万次免费调用次数,对我们保存的几千多张的图片来说,绰绰有余了。

创建成功之后返回应用列表,我们可以看到刚刚创建的应用,有三个重要的参数,我们等下会用到 AppID、API Key、Secret Key。

我们就可以调用百度的这个识别图片文字的API接口库。我们首先需要安装这个baidu-aip库。

Python

pip install baidu-aip

1

2

pipinstallbaidu-aip

使用这个文字识别接口挑了几张图测试下效果:

总结下:

1、gif图片不识别,只能识别静态图,jpg、png、jpeg等。

2、识别成功率并不是100%,比如「人」会被识别成「入」。

3、图片中文字有换行的,都会分开以字典形式保存在 words_result 列表中。

我对有多行的文字全部加起来,组成一行文字。

图片中有时会存在无法保存为名称的符号。

我用 replace 方法对它进行替换去除。

Python

title = t.replace('/', '').replace('\\', '').replace(':', '').replace('*', '').replace('?', '').replace('<', '')\

.replace('>', '').replace('|', '').replace('.', '')

1

2

3

title=t.replace('/','').replace('\\','').replace(':','').replace('*','').replace('?','').replace('<','')\

.replace('>','').replace('|','').replace('.','')

gif 动态图无法识别,我们对它按照时间戳重命名。

表情包中没有文字的,我们也以时间戳命名。

给出我们需要批量改名称的文件夹目录,使用 rename 方法就可以批量改名字。

当然,我们也可以对上个版本的代码进行优化,就是边保存图片的时候边重命名。在下载图片的 download 方法后面加下根据表情包中文字重命名的方法即可。

效果如下:

这样,大部分的图片名称就是根据图中文字命名的,搜索起来更加方便了。比如,我要搜索「川 人类之光 普 老师」的素材的时候,输入「人类之光」就可以找到了。

最后,原创视频昨天已发到 B 站,很魔性,一起来欣赏下吧!

本文两个版本的代码(边保存变改名和对一个目录下的所有图片批量改名)全部发在 GitHub 上了,在本公众号「Python知识圈」后台输入框回复「重命名」即可。

python批量循环图片识别_批量识别图中文字自动命名,让你1秒找到骚图相关推荐

  1. label里面的文字换行_批量识别图中文字自动命名,让你1秒找到骚图!太强大了!...

    每次做视频,找图就相当的费劲,因为图片太多,每次想要找到固定的图的话.就像大海捞针一样.因为上个版本的代码保存图片是截取部分图片链接进行命名的,所以名称是随机的. 所以今天我准备对这些图片重新命名.按 ...

  2. python批量识别图中文字自动命名_python实现批量命名照片

    python批量命名照片的具体代码,供大家参考,具体内容如下 废话不多说,上效果图 全部代码 from tkinter import * import os #添加文件夹路径 def rename() ...

  3. Python MySQLdb 循环插入execute与批量插入executemany性能分析(list批量写法亲测成功)

    用Python连接MySQL数据库时,会用到MySQLdb库,这里下载↓↓↓ https://pypi.python.org/pypi/MySQL-python/ 这个库提供了对数据库的普遍操作,增删 ...

  4. Python图片相册批处理器的设计与实现批量添加图片水印、批量命名等功能

    课题研究使用Python语言开发一个包含批量添加图片水印.批量命名等功能的图片批处理程序,功能模块大概包含以下模块: (1)首页模块:首页是整个软件的初始页面,包含用户登录.注册.关于本软件等功能,用 ...

  5. 批量修改图片名称(去掉原名字中的中文字符和空格)

    python批量修改图片名称,去掉原名字中的中文字符和空格 如名字:KJG-A电泵冷油器泄漏4-20190219161731 (1).jpg-->KJG-A4-20190219161731(1) ...

  6. Android平台上实现身份证识别(通过阿里云Api-印刷文字识别_身份证识别)

    Android平台上实现身份证识别(通过阿里云Api-印刷文字识别_身份证识别) 一: 前言 继上一篇文章有段时间了,上一篇文章的身份证和银行卡的识别时通过本地的opencv库,tess-two库识别 ...

  7. Android平台上实现银行卡识别(通过阿里云Api-印刷文字识别_银行卡识别)

    Android平台上实现银行卡识别(通过阿里云Api-印刷文字识别_银行卡识别) 一: 前言 上一篇文章是通过阿里云Api实现在android中扫描身份证和从相册中选取身份证图片识别身份证信息的功能, ...

  8. 支付宝 印刷文字识别_身份证识别

    支付宝 印刷文字识别_身份证识别 上传身份证图片,自动获取身份证信息 public function verifyCard($img_url,$side= 'face'){$url = "h ...

  9. python重命名文件pycharm_Python中批量修改变量名太费劲?Pycharm中使用重命名一次搞定...

    标签:rename   current   变量   阅读   tor   小伙伴   search   其他   就是如果程序中有一个变量被用得比较多,但名字起得不是很好,导致其他阅读程序的人搞不清 ...

最新文章

  1. ATL的GUI程序设计(3)
  2. Spring Boot CLI 入门项目
  3. Java 容器之Hashset 详解.
  4. Vs 控件错位 右侧资源管理器文件夹点击也不管用,显示异常
  5. Sharepoint Designer 2007 Workflow
  6. RxJava + Java8 + Java EE 7 + Arquillian =幸福
  7. Java中List、Map、Set三个接口,存取元素时,各有什么特点?
  8. 被面试官问懵:TCP 四次挥手收到乱序的 FIN 包会如何处理?
  9. Python基本操作(四) 循环与判断
  10. freebsd php mysql_在freebsd和linux下安装mysql+php+apache2
  11. 优化篇-“移动端”图片上传架构的变迁
  12. 网络安全之***手法计中计
  13. iOS开发系列--Objective-C之类和对象
  14. php qps是什么意思,tps和qps的区别和理解
  15. craig gentry_为Craig投票!
  16. 手机怎么设置企业邮箱的服务器,如何在手机上设置网易企业邮箱
  17. 刷题 BFS 广度优先算法 : 大胖子走迷宫 (python, java)
  18. 苹果xr如何截屏_苹果手机如何单手操作截屏
  19. Godaddy域名如何使用DNSPod做DNS解析
  20. Lua 之 Lua Window 上的开发环境 SciTE 的安装,并运行第一个 Hello Lua

热门文章

  1. 美拍高颜值短视频一键解析批量保存到电脑中
  2. Android中直播视频技术探究之---基础知识大纲介绍
  3. Nodejs发送邮箱,nodejs怎样发送给163邮箱,nodemailer模块,发送邮箱错误代码535
  4. MarsNFT :个人如何发行数字藏品?
  5. 网页攻击 和 跨域 的相关问题梳理
  6. BlockVC入选首批36氪中国区块链投资机构风云榜
  7. flink on k8s部署方案实践--详细步骤
  8. 爬虫实战:爬取微博明星的某一条动态的粉丝评论
  9. NYOJ 779 兰州烧饼
  10. Fragment not attached to Activity