当前位置:网站首页>图片批处理|必备小技能
图片批处理|必备小技能
2022-07-28 07:17:00 【51CTO】
微信公众号:*AI算法与图像处理
关注可了解更多的编程小技巧和优质资源。问题或建议,请公众号留言;
如果你觉得对你有帮助,欢迎 好看和分享哈
内容目录
图片批处理 简介 具体事项 1)分析文件的存储情况 2)试着分析 好,现在很清晰了,是时候准备一些东西了 代码实现 输出结果: 此时已经获取图片的名字和地址——可以开始干活了 结果展示
图片批处理 简介
图片批处理操作或者说数据的批处理在这个数据爆炸的时代经常会用到,除了特殊的情况,否则我们不会想着靠人力去一个一个的完成数据的处理(土法炼钢?),因此交给我们的苦力——电脑。
明确目标:把时间拿来做有价值的事情
思路:
1.批量读取文件
2.批量处理文件
3.批量存储文件
简称——3P操作?粗鄙之语。。。
具体事项
1)分析文件的存储情况
看一下文件的存储是什么鬼样子的

0文件夹下在3个小文件夹(比较常见的情况)

在每个次级文件夹(例如1_1文件夹)下存储着图片

看完脑壳痛!

2)试着分析
说明:为了方便理解,我将文件夹命名的比较有规律,从0开始往下一级加1
(1)批量读取文件 转化为——三步走:
A)定位到第一级文件夹(0)位置
B)读取次级文件夹(1_1,1_2,1_3)名字
C)读取次级文件夹下的图片(或者数据)名字
好,现在很清晰了,是时候准备一些东西了
A)导入库
Os ——操作系统功能的接口
Tqdm ——加个进度条,方便装逼,不,是查看执行情况
cv2 ——对图片进行一些操作,读取存储和变化等
B)图片准备
这里在每个文件夹下放两张
(2)批量处理图片
这里你可以添加各种自己喜欢的扫操作,只要不违法,随便怎么搞,为了简单起见,我不搞花里胡哨的,在代码中用了灰度变化操作
(3)批量存储文件
理解了批量读取文件,实际上批量存储文件类似的
代码实现
输出结果:
100%|██████████| 3/3 [00:00<00:00, 5863.43it/s]
['1_1_1.jpg', '1_1_2.jpg']
['1_2_1.jpg', '1_2_2.jpg']
['1_3_1.jpg', '1_3_2.jpg']
此时已经获取图片的名字和地址——可以开始干活了
接下的工作都是相当于对单张图片进行操作了,因为我们循环到最底层(可能表述的不是很准确,大概意思是找到图片了,想怎么搞怎么搞了现在)
代码给你们了,注释的很清楚了哈!!!
结果展示

文件夹名字、图片名字以及图片都变了,说明,我曹,老子居然成功运行了。。。。
为了方便大家获取代码,代码已经加入肯德基豪华套餐了。what?
不,已经放在github上面了
https://github.com/SCUTPZW/AI_study/tree/master

边栏推荐
- How to write a JMeter script common to the test team
- 49-OpenCv深入分析轮廓
- kubernetes之Deployment
- Usage of constructors
- Blog building 7: Hugo
- 阻塞队列LinkedBlockingQueue 源码解析
- 【MindSpore易点通机器人-01】你也许见过很多知识问答机器人,但这个有点不一样
- Gbase 8A MPP and Galaxy Kirin (x86 version) complete deep adaptation
- 一篇文章搞懂数据仓库:元数据分类、元数据管理
- Analysis and recurrence of network security vulnerabilities
猜你喜欢

2022牛客多校第二场解题报告

Day112.尚医通:手机验证码登录功能

解决:IndexError: index 13 is out of bounds for dimension 0 with size 13

When unity switches to another scene, he finds that the scene is dimmed

The cooperation between starfish OS and metabell is just the beginning

SQL注入 ----前置基础

Smartbi of smart smart smart software completed the c-round financing and accelerated the domestic Bi into the intelligent era

Use of tkmapper - super detailed

Blog Building 9: add search function to Hugo
![[Qt5] small software with 5 people randomly selected from the bid evaluation expert base](/img/ca/9f6bd6af45e2113c050edf3a65aaf2.png)
[Qt5] small software with 5 people randomly selected from the bid evaluation expert base
随机推荐
MySQL怎么查询可以同时判断多个字段值是否存在
uniapp的swiper动态设置current值不生效解决办法
说透缓存一致性与内存屏障
GBase 8a MPP与银河麒麟(x86版)完成深度适配
CAT1 4g+ Ethernet development board 232 data is sent to the server through 4G module TCP
leetcode/数组中和为0的三个不同数
VK1620温控仪/智能电表LED数显驱动芯片3/4线接口内置 RC振荡器,提供技术支持
第2章-2 计算分段函数[1]
SQL Server查询结果导出到EXCEL表格
Sparksql and flinksql create and link table records
Use of tkmapper - super detailed
Recruiting talents, gbase high-end talent recruitment in progress
CI框架如何集成Smarty模板
GBASE亮相联通云巡展(四川站) 以专业赋能云生态
leetcode刷题,我推荐B站这个妹子学霸的视频
Blog building 7: Hugo
[pyqt] pyqt development experience_ How to find events and methods of controls
2022 Niuke multi school second problem solving Report
One key switch circuit
Three different numbers with 0 in leetcode/ array