基于 PyQt5 和 Gradio 开发的图像处理工具,支持图片压缩、格式转换和一键抠图功能。提供桌面应用和 Web 界面两种使用方式。
功能特点
- 图片压缩:支持调整压缩比例,实时预览压缩效果
- 格式转换:支持 JPEG、PNG、BMP、WEBP 格式互转
- 一键抠图:基于 ModelScope 的 BiRefNet 模型实现智能抠图
- 多界面支持:提供桌面应用和 Web 界面两种使用方式
安装说明
- 克隆项目到本地:
git clone [项目地址]
cd img_qt
- 安装依赖包:
pip install -r requirements.txt
使用说明
启动程序
项目提供三种界面版本,可以根据需要选择:
- 标签页式桌面界面(传统版本):
python main.py # 使用 main_window.py
- 单页式桌面界面(新版本):
python main.py # 使用 main_newwindow.py
- Web 界面(Gradio 版本):
python app.py # 启动 Web 服务
界面版本说明
1. 标签页式桌面界面 (main_window.py)
-
特点:
- 功能分布在不同标签页中
- 每个功能独立操作
- 适合需要专注单一功能的用户
-
操作流程:
- 选择功能标签页(压缩/转换/抠图)
- 上传图片
- 调整参数或开始处理
- 下载处理结果
2. 单页式桌面界面 (main_newwindow.py)
-
特点:
- 所有功能集中在一个页面
- 实时预览处理效果
- 支持连续处理(抠图基于压缩或转换的结果)
- 更现代的界面设计
-
操作流程:
- 上传图片(自动显示压缩预览)
- 调整压缩比例或选择转换格式
- 点击一键抠图处理当前预览的图片
- 下载最终结果
3. Web 界面 (app.py)
在线体验:智能图片处理工具
-
特点:
- 基于 Gradio 框架开发
- 支持浏览器访问
- 美观的 Material Design 风格
- 支持远程访问和分享
-
界面布局:
- 上方:输入图片和输出预览区域
- 下方:功能控制区域(图片处理和一键抠图)
- 实时显示图片格式和大小信息
-
功能说明:
-
图片处理区域:
- 压缩比例滑块(1-100%)
- 目标格式选择(JPEG/PNG/BMP/WEBP)
- 生成预览和重置按钮
-
一键抠图区域:
- 使用原始输入图片进行处理
- 显示处理进度和提示信息
- 支持重置功能
-
-
操作流程:
- 上传图片(自动显示格式和大小信息)
- 选择处理方式:
- 图片处理:调整压缩比例和目标格式,点击"生成预览"
- 一键抠图:直接点击"开始抠图"
- 查看处理结果和图片信息
- 下载处理后的图片或重置重新处理
功能说明
图片压缩
- 支持压缩比例:1-100%
- 支持手动输入和滑块调节
- 实时预览压缩效果
- 显示压缩前后文件大小
格式转换
- 支持格式:JPEG、PNG、BMP、WEBP
- 自动处理透明通道
- 实时预览转换效果
- 显示转换前后格式信息
一键抠图
- 基于 ModelScope BiRefNet 模型
- 支持人物、物体抠图
- 自动处理透明通道
- 显示处理进度和状态
- 结果保存为 PNG 格式
注意事项
- 首次使用抠图功能时需要下载模型,请保持网络连接
- 建议使用分辨率不超过 2000x2000 的图片
- 抠图功能需要一定的处理时间,请耐心等待
- Web 界面支持远程访问,默认端口为 7860
系统要求
- Python 3.7 或更高版本
- PyQt5 5.15.0 或更高版本(桌面界面)
- Gradio 4.0.0 或更高版本(Web 界面)
- 支持 CUDA 的显卡(可选,用于加速抠图处理)
- 操作系统:Windows/Linux/MacOS
依赖列表
详细依赖包请参考 requirements.txt
文件。
总结
- 如果您在使用过程中遇到任何问题,欢迎在ModelScope创空间-智能图片处理工具上提出issue,我们会及时为您解答。
- 希望本项目能够帮助您提高工作效率,享受数字化办公的便捷。如果您觉得本项目对您有帮助,请给项目点个star,并持续关注我的个人主页ModelBulider的个人主页