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

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

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

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

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

c181f3133af48b5f7c67dc607a63c787.png

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

5af5e7a64213523f56d3ca8d41679650.png

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

9f8a33e08c04d48526538be26e822d8c.png

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

pip install baidu-aip

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

78943ae46a7b416618bc979f4318ff70.png

总结下:

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

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

4766204a15a05b9d5df0c0012ceab2b0.png

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

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

e12a41a789ca380e7556fadbfcd0cd90.png

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

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

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

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

385983fdea4687790c54ddccc0a697b5.png

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

ae810ea1eb7a1a08555d88e174364b31.png

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

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

844c1273cc643aabef85d0dd043d0653.png

效果如下:

1aa0d7ef57817590055d9c5157cff442.png

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

86f2b67f2827af8961aa6f82807d9f4b.gif

源码获取私信小编01获取

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/528454.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

共享可写节包含重定位_今年双11好房也打折!贝壳兰州站“11.11新房节” 5日开启...

随着双十一的临近,各大平台都陆续吹响了 " 买买买 " 的号角,而和相比往年,今年的双十一的有点不一样,好房子也能真打折。据悉,11 月 5 日起,贝壳找房将开启 "11.11 新房节 "&#xff0…

光纤终端服务器,[原创]简单介绍光缆终端盒知识

原标题:[原创]简单介绍光缆终端盒知识光缆终端盒又叫光纤终端盒,很多工程商也叫光缆盘纤盒,是在光缆敷设的终端保护光缆和尾纤熔接的盒子,主要用于室内外光缆的直通熔接和分支接续及光缆终端的固定,起到尾纤盘储和保护…

mac outlook删除服务器邮件,设置苹果MAC 端outlook客户端说明

设置苹果MAC 端outlook客户端说明1. 选择outlook偏好设置中的“账户”2. 点击“账户”弹出设置账户界面,点击左下角“”,选中“其他电子邮件…”3. 进入到输入账户信息界面:注意:默认为“自动配置”。进入输入帐户页面&#xff0c…

vue获取当前月最后一天_只争朝夕,不负韶华——站在2020年第一天,回望2019最后的两个月...

2020年第一天,在一个酣畅淋漓的懒觉后,满足醒来。习惯性打开手机,看到朋友圈满屏的“只争朝夕,不负韶华”后,心里特别有感触。如图,这是2019年最后一天,我在朋友圈写下的文字,大段的…

vue如何强行停止ajax请求,VueJs和VueResource,从Ajax请求中删除头字段

当我实例化Vuejs (2.2.6)和Vue-resource (1.2.1)时,我使用以下代码设置标头授权,这样我可以授权我的API的所有请求:Vue.http.headers.common.AUTHORIZATION BEARER ...;但是,我想要请求第三方API,我不希望发送Authori…

和华为杯_华为P50超大杯确认!居中挖孔屏+鸿蒙OS系统:外观颜值感人

【1月4日讯】相信大家都知道,自从华为手机遭受到“芯片禁令”以后,整个华为手机销量、品牌热度都在不断的下滑,有关于华为手机的消息也开始变得越来越少了, 看到这里,我们也就不难理解,为何华为要延长华为M…

无盘 服务器 聚合,四网卡汇聚技术详解(为windows7无盘铺路)

一、网卡端口汇聚:首先先看下我汇聚好的设备管理器图详细步骤如下:安装最新的网卡驱动会自动把INTEL分组的功能集成进去1、安装INTEL的网卡驱动(我安装的是14.4)2、驱动完毕后在设备管理器里右键点INTEL的网卡,选属性3、属性里选分组4、选与其…

commit git idea 速度慢_关于Git,这篇文章还不够吗?

Git 安装Git下载地址: https://git-scm.com/downloadsGit安装(Window/Mac): 选择不同系统安装包安装检验是否安装成功: 出现Git Bash命令行工具或Git GUI工具或git --version查看git安装版本Git 结构工作区(Working Directory)版本库(repository): 暂存区(stage/index)和master…

nt文件服务器是什么意思,nt服务器

nt服务器 内容精选换一换如果您忘记了裸金属服务器的登录密码,或者您想加固密码提升安全性,可以在控制台上进行密码重置。对于“运行中”的裸金属服务器,在控制台上修改密码后,重置密码过程中会自动重启。为了避免数据丢失&#x…

正面管教php_中联重科团委快乐父母协会第五期正面管教家长基础班招募!

你是否是位新手爸妈面对家庭新成员时有些茫然无措?你是否在辅导孩子作业时忍不住“河东狮吼”?你是否面对青春期的孩子时束手无策?你是否很想平衡好工作与家庭,在有限的时间内高质量的陪伴孩子,获得亲密的亲子关系&…

slot传函数 vue_面试必备 Vue 知识点

Vue思维导图目录MVC与MVVM的区别Vue基本代码结构Vue指令Vue组件class和style动态绑定computed计算属性EventBusfilter过滤器方法Vue是一套构建用户界面的框架,只关注视图层,它不仅易于上手,还便于与第三方库或既有项目整合。(Vue有配套的第三…

服务器实际显示内存,服务器实际显示内存

服务器实际显示内存 内容精选换一换设备实时状态查询是检测设备在运行过程中的状态信息。用户可任选以下指令之一查看设备实时状态查询命令的可用参数。ascend-dmi -i -hascend-dmi -i --help各参数解释如表1所示。以查看芯片的详细信息为例。ascend-dmi -i -dt若推理服务器返回…

合肥天鹅湖万达广场机器人_合肥租房价位及租房地理位置推荐

首先我们来看一张合肥的区域分布地图下面将从如下几个区域开始细说【列举租金区域仅供参考哟~】庐阳区庐阳区是合肥市老城区,位于中国中部,属北亚热带季风湿润气候区,气候温和,四季分明。截至2017年底,庐阳区辖1乡1镇、…

python udp创建addr_一篇文章搞定Python 网络编程之UDP协议

基于UDP协议的socketPS:udp是无连接的,先启动那一端都不会报错server端import socket # 导入socket模块udp_sk socket.socket(typesocket.SOCK_DGRAM) # 创建一个服务器套接字udp_sk.bind((127.0.0.1, 8080)) # 绑定服务器套接字msg, addr udp_sk.r…

不能启动u盘 uefi_不知道怎么进入主板设置U盘启动,试试这些方式

一个正常运行的电脑,你可能安装的是Windows 或 Linux,但无论你是选择哪个系统,现代个人电脑都是绕不开的BIOS/UEFI的。通过U盘安装系统,你需要BIOS/UEFI来修改启动项。启动U盘,移动硬盘上的Windows to Go,你…

4 插件模块_设计师必备的ps插件推荐

Photoshop可以说是每个设计师都必须会用的设计工具之一了。为了设计需求,大家会在Photoshop里搭配一些PS插件来使用,提高工作效率。这篇文章就为大家整理了做设计的最佳插件,一起来看看吧。ps设计助理(高效设计ps插件)…

广联达2018模板算量步骤_广联达钢结构算量软件可以和广联达量筋合一GTJ2018互导吗?...

钢结构软件和量筋合一软件互导https://www.zhihu.com/video/1164108225778741248钢结构软件和量筋合一软件互导一、问题广联达钢结构算量软件可以和广联达量筋合一GTJ2018互导吗?二、合理答案可以,但是对软件版本有要求。需要广联达钢结构算量软件版本在…

安卓beforetextchanged_安卓onTextChanged参数解释及实现EditText字数监听 Editable使用

尊重原作者:此篇文章是借鉴原作者地址 的博文 并进行修改和增加补充说明,我只是补充和修改:我感觉这篇文章经过我的补充 市面多少文本操作变化 你都知道怎么做了.并且感觉是非常详细关于 android 文本编辑框的文本变化 并且通俗易懂(内含动态图),为了大家方便查看 我这里复制作…

mysql存储过程捕获错误处理_mysql存储过程之异常处理篇

mysql存储过程也提供了对异常处理的功能:通过定义HANDLER来完成异常声明的实现语法如下:DECLARE handler_type HANDLER FOR condition_value[,...] sp_statement handler_type: CONTINUE | EXIT condition_value: SQLSTATE [VALUE] sqlstate_value | con…

ruby mysql 占位符_ruby操作常用数据库

使用Ruby DBI模块目录Ruby DBI模块为ruby程序访问数据库提供了一个与数据库无关的接口,就像perl的DBI模块一样。这篇文章将讲述如何编写基于DBI的ruby程序。这篇文章是对DBI规范文档(specification documents)的补充,而不是要替代规范文档,更…