Python+OpenCV实现批量图片水平翻转
需积分: 5 182 浏览量
更新于2024-08-05
收藏 441B TXT 举报
在本文档中,我们将探讨如何使用Python和OpenCV库实现批量图片镜像的功能。OpenCV是一个强大的计算机视觉库,常用于图像处理和计算机视觉应用,而Python作为其主要的编程接口,提供了丰富的工具来简化操作。在这个例子中,作者的目标是将当前文件夹下"F:\\picture\\original\\"目录中的所有图片进行水平翻转(即镜像),然后将处理后的图片保存到另一个文件夹"F:\\picture\\out\\"。
首先,我们导入了两个必要的库:`cv2`,即OpenCV,以及`os`,用于操作系统级别的文件操作。通过`os.listdir(file_root)`获取指定文件夹`file_root`中的所有文件名,存储在变量`file_list`中。这样,我们可以遍历列表中的每一个图片文件。
接下来,对于`file_list`中的每个图片文件名(`img_name`),程序会构建完整的图片路径`img_path=file_root+img_name`,然后使用`cv2.imread(img_path,-1)`读取图片。参数`-1`表示以所有颜色通道(包括 alpha 通道)读取图像。
紧接着,`cv2.flip(img,1)`函数被用来执行镜像操作,其中1作为参数表示水平翻转。如果参数为0,则代表垂直翻转,-1则是沿着图片宽度和高度的中心线同时进行翻转。将翻转后的图片存储在一个临时变量`img1`中。
随后,为了保持原文件名的结构,作者创建了一个新的文件名`out_name=img_name`,并根据`save_out`加上扩展名`.jpg`,构建出保存图片的完整路径`save_path=save_out+out_name+'.jpg'`。
最后,使用`cv2.imwrite(save_path,img1)`将镜像后的图片写入到指定的输出文件中。整个过程重复进行,直到遍历完`file_list`中的所有图片,实现了批量镜像的功能。
总结来说,这段代码演示了如何运用Python和OpenCV库对图像进行批量化处理,适合那些需要处理大量图片并对它们进行类似操作(如镜像、裁剪、旋转等)的场景。通过这个实例,学习者可以掌握如何结合这两种技术,提升图像处理任务的效率。
点击了解资源详情
点击了解资源详情
点击了解资源详情
2024-05-27 上传
2024-05-31 上传
2020-12-21 上传
2023-07-01 上传
2020-12-22 上传
159 浏览量
shuxue_lover
- 粉丝: 0
- 资源: 1
最新资源
- 全国江河水系图层shp文件包下载
- 点云二值化测试数据集的详细解读
- JDiskCat:跨平台开源磁盘目录工具
- 加密FS模块:实现动态文件加密的Node.js包
- 宠物小精灵记忆配对游戏:强化你的命名记忆
- React入门教程:创建React应用与脚本使用指南
- Linux和Unix文件标记解决方案:贝岭的matlab代码
- Unity射击游戏UI套件:支持C#与多种屏幕布局
- MapboxGL Draw自定义模式:高效切割多边形方法
- C语言课程设计:计算机程序编辑语言的应用与优势
- 吴恩达课程手写实现Python优化器和网络模型
- PFT_2019项目:ft_printf测试器的新版测试规范
- MySQL数据库备份Shell脚本使用指南
- Ohbug扩展实现屏幕录像功能
- Ember CLI 插件:ember-cli-i18n-lazy-lookup 实现高效国际化
- Wireshark网络调试工具:中文支持的网口发包与分析