# 去水印 **Repository Path**: in_320253062/remove-watermark ## Basic Information - **Project Name**: 去水印 - **Description**: 水印去除和添加(open-cv) - **Primary Language**: Python - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-11-20 - **Last Updated**: 2025-11-20 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 智能水印处理系统 ## 项目简介 智能水印处理系统是一个基于Vue3 + Flask开发的前后端分离应用,具备以下核心功能: 1. **去除图片水印**:通过OpenCV技术实现智能水印去除 2. **添加自定义水印**:提供Canvas绘图工具,可自由添加文字或图形水印 3. **实时预览**:支持图片处理过程的实时预览 4. **一键下载**:处理完成后可直接下载结果图片 该系统界面简洁直观,即使是编程新手也能快速上手使用。 ## 技术栈 ### 前端 - Vue 3 (Composition API) - Element Plus UI组件库 - Vite 构建工具 - Axios HTTP客户端 - CropperJS 图片裁剪库 ### 后端 - Python Flask Web框架 - OpenCV-Python 图像处理库 - Pillow 图像处理库 - Flask-CORS 跨域支持 ## 环境准备 ### 前端环境要求 - Node.js >= 16.0 - npm 或 yarn 包管理器 ### 后端环境要求 - Python >= 3.8 - pip 包管理器 ## 快速开始 ### 1. 克隆项目到本地 ```bash git clone cd watermark_system ``` ### 2. 安装前端依赖并启动 ```bash # 进入前端目录 cd frontend # 安装依赖(首次运行) npm install # 启动前端开发服务器 npm run dev ``` 前端服务默认运行在 `http://localhost:5173` ### 3. 安装后端依赖并启动 打开新的终端窗口,执行以下命令: ```bash # 进入后端目录 cd backend # 创建虚拟环境(推荐) python -m venv venv # 激活虚拟环境 # Windows: venv\Scripts\activate # macOS/Linux: # source venv/bin/activate # 安装依赖 pip install -r requirements.txt # 启动后端服务 python app.py ``` 后端服务默认运行在 `http://localhost:5000` ### 4. 访问应用 在浏览器中打开 `http://localhost:5173` 即可使用智能水印处理系统。 ## 功能使用指南 ### 去除水印功能 1. 在左侧上传区域选择或拖拽一张带有水印的图片 2. 切换到"去除水印"标签页 3. 在右侧预览区框选需要去除的水印区域 4. 点击"立即去除"按钮 5. 处理完成后会在弹窗中显示结果,点击"下载图片"保存 ### 添加水印功能 1. 在左侧上传区域选择或拖拽一张图片 2. 切换到"添加水印"标签页 3. 使用Canvas工具在图片上绘制文字或图形水印 4. 点击保存按钮 5. 处理完成后会在弹窗中显示结果,点击"下载图片"保存 ## 项目目录结构 ``` watermark_system/ ├── backend/ # 后端代码 │ ├── app.py # 主应用文件 │ ├── requirements.txt # Python依赖列表 │ └── static/ # 静态资源目录 │ └── uploads/ # 上传图片存储目录 └── frontend/ # 前端代码 ├── src/ # 源码目录 │ ├── components/ # 组件目录 │ ├── App.vue # 主应用组件 │ └── main.js # 应用入口文件 ├── index.html # HTML模板 ├── package.json # npm配置文件 └── vite.config.js # Vite配置文件 ``` ## Git使用方法 ### 基础操作流程 1. **克隆项目** ```bash git clone cd watermark_system ``` 2. **查看项目状态** ```bash git status ``` 3. **创建并切换到新分支**(建议) ```bash git checkout -b feature/your-feature-name ``` 4. **修改代码后提交更改** ```bash git add . git commit -m "描述你的修改内容" ``` 5. **推送到远程仓库** ```bash git push origin feature/your-feature-name ``` ### 常用Git命令 | 命令 | 说明 | |------|------| | `git pull` | 拉取远程最新代码 | | `git log` | 查看提交历史 | | `git branch` | 查看当前分支 | | `git checkout branch-name` | 切换分支 | | `git merge branch-name` | 合并指定分支到当前分支 | | `git stash` | 暂存当前修改 | ### 注意事项 1. 在修改代码前,请确保已拉取最新的远程代码 2. 建议在功能分支上进行开发,避免直接在主分支修改 3. 提交信息应清晰描述所做的修改 4. 如遇到冲突,请先解决冲突再提交 ## 常见问题解答 ### 1. 前端页面无法访问后端接口? 确保后端服务已正常启动,并且没有防火墙阻止5000端口。 ### 2. 上传图片时报错? 检查图片格式是否为常见格式(jpg/png等),并且文件大小不超过限制。 ### 3. 去除水印效果不理想? 水印去除效果与水印类型、背景复杂度有关,对于复杂场景可能需要手动调整算法参数。 ### 4. 如何打包部署? - 前端:运行 `npm run build` 生成静态文件 - 后端:可以使用Gunicorn等WSGI服务器部署 ## 贡献指南 欢迎提交Issue和Pull Request来改进这个项目! 1. Fork本仓库 2. 创建您的特性分支 (`git checkout -b feature/AmazingFeature`) 3. 提交您的更改 (`git commit -m 'Add some AmazingFeature'`) 4. 推送到分支 (`git push origin feature/AmazingFeature`) 5. 开启一个Pull Request ## 许可证 本项目采用MIT许可证,详情请参阅[LICENSE](LICENSE)文件。