# BG_MOVE **Repository Path**: SuperCoderMan521/bg_-move ## Basic Information - **Project Name**: BG_MOVE - **Description**: ai背景移除工具 - **Primary Language**: Java - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 1 - **Forks**: 0 - **Created**: 2025-03-08 - **Last Updated**: 2026-04-30 ## Categories & Tags **Categories**: Uncategorized **Tags**: RMBG, 背景移除, aigc ## README # bg_move - 专业级智能背景移除工具 🎨 ![License](https://img.shields.io/badge/license-MIT-blue.svg) ![Java](https://img.shields.io/badge/Java-11%2B-orange) ![OpenCV](https://img.shields.io/badge/OpenCV-4.5.1-green) ![ONNX Runtime](https://img.shields.io/badge/ONNX%20Runtime-1.15.1-red) ![FlatLaf](https://img.shields.io/badge/FlatLaf-3.4-purple) ## 📖 项目简介 bg_move 是一个基于深度学习的专业级背景移除工具,采用现代化的 Java GUI 框架,结合高性能的图像处理引擎和先进的深度学习模型,为用户提供便捷、专业的背景移除解决方案。 ## 🌟 核心特性 - 🎯 **智能抠图** - 基于深度学习的精准背景移除 - 🖼️ **实时预览** - 左右分屏实时对比效果 - 🛠️ **专业调参** - 提供全方位的参数调节 - 🔄 **多模型支持** - 支持 U2Net 和 RVM 等主流模型 - 🎨 **细节优化** - 智能橡皮擦和边缘修复工具 - 💾 **多格式支持** - 支持 PNG 格式导出透明背景图片 - ↩️ **操作撤销** - 支持多步撤销操作 - 🔍 **棋盘格预览** - 实时预览透明效果 ## 🏗️ 系统架构 ``` bg_move/ ├── src/main/java/com/rmbg/ │ ├── RmbgUI.java # 主界面类 │ ├── RmbgInference.java # 推理引擎类 │ └── ui/ │ ├── ModelSettingsPanel.java # 模型设置面板 │ └── ParameterSettingsPanel.java # 参数设置面板 └── pom.xml # Maven 配置文件 ``` ### 技术栈 | 类别 | 技术 | 版本 | |------|------|------| | 界面框架 | Java Swing + FlatLaf | 3.4 | | 图像处理 | OpenCV + JavaCPP | 4.5.1 | | 深度学习 | ONNX Runtime | 1.15.1 | | 构建工具 | Maven | 3.6+ | ## 🤖 模型分析 ### 支持的模型 | 模型 | 处理速度 | 内存占用 | 边缘质量 | 透明物体 | 复杂背景 | |------|----------|----------|----------|----------|----------| | U2Net | ⭐⭐⭐ | ⭐⭐ | ⭐⭐⭐⭐⭐ | ⭐⭐⭐ | ⭐⭐⭐ | | RVM | ⭐⭐⭐⭐⭐ | ⭐⭐⭐ | ⭐⭐⭐ | ⭐⭐⭐⭐ | ⭐⭐⭐⭐ | ### 参数配置 | 参数名称 | 范围 | 默认值 | 说明 | |----------|------|--------|------| | 边缘平滑度 | 1-9 | 3 | 控制图像边缘的平滑程度 | | 平滑强度 | 0-100 | 0 | 控制平滑效果的强度 | | 透明度阈值 | 0-100 | 20 | 控制前景/背景分离的阈值 | | 细节优化 | 1-9 | 3 | 控制形态学操作的强度 | | 最终平滑 | 1-15 | 5 | 控制最终输出的平滑度 | ## 💡 最佳实践 ### 图像处理建议 1. **最佳输入尺寸** - 推荐:1024 × 1024 像素 - 最大:2048 × 2048 像素 - 超过最大尺寸会自动等比缩放 2. **场景参数推荐** - 人像:边缘平滑度 3-5,透明度阈值 20-30 - 产品图:边缘平滑度 2-4,透明度阈值 15-25 - 复杂场景:边缘平滑度 4-6,透明度阈值 25-35 ## 🚀 快速开始 ### 环境要求 - Java 11 或更高版本 - 8GB 及以上内存 ### 安装步骤 ```bash # 克隆项目 git clone https://gitee.com/SuperCoderMan521/bg_-move.git cd bg_-move # 下载模型(离线) # 模型地址:https://modelscope.cn/models/AI-ModelScope/RMBG-1.4 # 将模型文件重命名为 model.onnx 并放入 resources 目录 # 编译项目 mvn clean package # 运行程序 java -jar target/rmbg.jar ``` ### 性能优化(推荐参数) ```bash java -Xmx4g -XX:MaxDirectMemorySize=2g -jar rmbg.jar ``` ## 🔜 开发计划 - [ ] 支持批量处理功能 - [ ] 添加 GPU 加速支持 - [ ] 优化大图像处理性能 - [ ] 增加更多预训练模型 - [ ] 添加自定义模型训练功能 ## 🤝 贡献指南 欢迎提交 Issue 和 Pull Request! ## 📄 开源协议 本项目基于 MIT 协议开源,详见 [LICENSE](LICENSE) 文件。 ## 🙏 致谢 - [U2Net](https://github.com/xuebinqin/U-2-Net) - 深度学习抠图模型 - [RobustVideoMatting](https://github.com/PeterL1n/RobustVideoMatting) - 视频抠图模型 - [OpenCV](https://opencv.org/) - 计算机视觉库 - [ONNX Runtime](https://onnxruntime.ai/) - 推理引擎 - [FlatLaf](https://www.formdev.com/flatlaf/) - 现代 UI 主题