# batch_processing_image_question **Repository Path**: YXY0216/batch_processing_image_question ## Basic Information - **Project Name**: batch_processing_image_question - **Description**: 这个项目包含一个用于批量处理图像的应用,该应用可以从ZIP文件中读取图像,对图像进行随机变换,然后保存处理后的图像。 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 164 - **Created**: 2025-05-16 - **Last Updated**: 2025-05-16 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 图像批量处理应用 本项目是一个基于 Python 的批量图像处理工具,支持从 ZIP 文件批量读取图像,进行随机缩放、旋转等变换,并保存处理结果。应用配有图形用户界面,操作简便,适合图像数据增强、机器学习预处理等场景。 ![界面截图](screen_shot.png) ## 主要功能 - 从 ZIP 文件批量读取图像(支持 JPG、PNG、BMP、GIF、TIFF 等格式) - 对图像进行随机缩放(可自定义缩放范围) - 对图像进行随机旋转(-45°~+45°) - 支持输出 RGB、灰度、二值图像 - 支持批量生成多张变换图像 - 图形界面可视化操作,实时显示进度 - 多线程处理,界面不卡顿 ## 代码结构 - `util.py`:图像处理与配置加载相关函数 - `batch_transform_app.py`:主程序,包含 GUI 逻辑 - `config.yaml`:应用默认参数配置 - `0-9.zip`:示例图像数据集(手写数字图片) - `README.md`:项目说明文档 - `screen_shot.png`:应用界面截图 ## 输入说明 - `0-9.zip`:包含若干手写数字图片的 ZIP 文件,支持多种常见图片格式 - `config.yaml`:配置文件,定义缩放范围、生成数量、输出类型等参数 ## 使用方法 1. 安装依赖(推荐使用 Python 3.8+): ```shell pip install -r requirements.txt # 或者使用 environment.yml 创建 conda 环境 # conda env create -f environment.yml ``` 2. 运行主程序,启动图形界面: ```shell python batch_transform_app.py ``` 3. 在界面中选择 ZIP 文件,设置参数,点击 Process 开始批量处理。 ## 配置说明 可通过编辑 `config.yaml` 文件自定义应用默认参数,包括: - 缩放范围(scale_min, scale_max, scale_middle) - 生成图像数量(num_images_min, num_images_max, num_images_default) - 输出类型(output_type_options, output_type_default) ## 注意事项 - 需提前安装 `opencv-python`, `numpy`, `scikit-image`, `pyyaml`, `tkinter` 等依赖库 - 输出图片默认保存在 `out/` 目录 - 支持多种图片格式,但建议以 JPEG/PNG 为主 - 若遇到中文路径问题,已采用 `skimage.io.imsave` 兼容保存 - 处理过程中可随时点击 Cancel 取消任务 ## 常见问题 - **编码报错**:如遇 `UnicodeDecodeError`,请确保 `config.yaml` 使用 UTF-8 编码 - **依赖缺失**:请根据报错信息安装缺失的 Python 库 - **界面无响应**:本程序已采用多线程,若仍卡顿请检查图片数量和电脑性能 ## 学生信息 - 姓名:尹星宇 - 日期:2025-05-16 - 学号:202352320208 - 班级:智科二班