# image_processing_desktop_app_todomax **Repository Path**: gbu23/image_processing_desktop_app_todomax ## Basic Information - **Project Name**: image_processing_desktop_app_todomax - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-04-25 - **Last Updated**: 2025-04-25 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 图像处理桌面应用 这是一个基于 Python 和 Tkinter 开发的图像处理桌面应用程序。该应用提供了丰富的图像处理功能,包括基本的图像操作、通道处理、图像变换等。 ## 功能特点 ### 基本操作 - 打开原始图像 - 打开并转换为灰度图像 - 保存当前图像 - 显示图像详细信息 - 重置图像到原始状态 ### 图像编辑 - 图像裁剪(支持鼠标拖拽选择区域) - 亮度调节(0%-200%) - 全局阈值处理(适用于灰度图像) ### 通道处理 - 分割多通道图像(RGB等) - 合并多个单通道图像 - 保存单个通道图像 ### 边缘处理 - 移动差分处理(适用于灰度图像) ### 掩模处理 - 生成红色掩模 - 支持与运算和非运算操作 ### 其他特性 - 多语言支持(中文/英文) - 实时预览功能 - 图像自适应缩放显示 ## 代码效果视频 链接:https://lusun.com/v/WEVdJLzEKFG ## 项目结构 ``` . ├── main.py # 主程序入口,包含GUI界面和主要功能实现 ├── image_io.py # 图像输入输出处理模块 ├── image_channels.py # 图像通道处理模块 ├── image_transform.py # 图像变换处理模块 ├── image_utils.py # 工具函数模块 ├── language.json # 多语言支持配置文件 ├── config.py # 应用程序配置文件 └── tests/ # 测试图片目录 ├── dog.jpg # RGB测试图像 ├── dog_gray.jpg # 灰度测试图像 ├── dog_0.jpg # R通道图像 ├── dog_1.jpg # G通道图像 └── dog_2.jpg # B通道图像 ``` ## 环境要求 - Python 3.x - 依赖库: - tkinter(Python标准库) - Pillow (PIL) - numpy - scikit-image (skimage) ## 安装依赖 ```bash pip install scikit-image ``` ## 运行方法 ```bash python main.py ``` ## 使用说明 ### 基本操作 1. 通过"文件"菜单打开图像 2. 使用"编辑"菜单进行图像编辑 3. 通过"文件"菜单保存处理后的图像 ### 图像处理 - 裁剪:在图像上拖拽鼠标选择区域,然后点击"裁剪"按钮 - 亮度调节:使用滑块调整亮度(0%-200%) - 阈值处理:适用于灰度图像,通过滑块调整阈值 ### 通道处理 - 分割通道:将多通道图像分割为单通道图像 - 合并通道:选择多个单通道图像进行合并 ### 语言切换 通过"文件"菜单中的"语言"选项切换界面语言(中文/英文) ## 开发说明 ### 主要模块功能 - `main.py`:实现GUI界面和主要功能逻辑 - `image_io.py`:处理图像的加载和保存 - `image_channels.py`:实现通道的分割和合并 - `image_transform.py`:实现图像变换操作 - `image_utils.py`:提供工具函数和日志功能 ### 待完成功能(TODO) - `show_image_details`:获取图像Numpy数组的基本属性 - `save_image`:把Numpy数组图像保存到硬盘 - `load_image`:从硬盘载入图像到Numpy数组中 - `crop_image`:对图像Numpy数组切片实现裁剪功能 - `merge_image_channels`:合并多通道子图 - `split_image_channels`:拆分多通道图的所有子图 ## 个人信息 - 学号:202352320116 - 年级:2023 - 专业:智能科学与技术 - 班级:一班