startagain / README-zh.md
hello10000's picture
Add folder with files
4ab551f
# SoraWatermarkCleaner
[English](README.md) | 中文
这个项目提供了一种优雅的方式来移除 Sora2 生成视频中的 Sora 水印。
- 移除水印后
https://github.com/user-attachments/assets/8cdc075e-7d15-4d04-8fa2-53dd287e5f4c
- 原始视频
https://github.com/user-attachments/assets/3c850ff1-b8e3-41af-a46f-2c734406e77d
⭐️:
1. **YOLO 权重已更新** — 请尝试新版本的水印检测模型,效果会更好!
2. **数据集已开源** — 我们已经将标注好的数据集上传到了 Hugging Face,查看[此数据集](https://huggingface.co/datasets/LLinked/sora-watermark-dataset)。欢迎训练你自己的检测模型或改进我们的模型!
3. **一键便携版已发布** — [点击这里下载](#3-一键便携版),Windows 用户无需安装即可使用!
## 1. 方法
SoraWatermarkCleaner(后面我们简称为 `SoraWm`)由两部分组成:
- SoraWaterMarkDetector:我们训练了一个 yolov11s 版本来检测 Sora 水印。(感谢 YOLO!)
- WaterMarkCleaner:我们参考了 IOPaint 的实现,使用 LAMA 模型进行水印移除。
(此代码库来自 https://github.com/Sanster/IOPaint#,感谢他们的出色工作!)
我们的 SoraWm 完全由深度学习驱动,在许多生成的视频中都能产生良好的效果。
## 2. 安装
视频处理需要 [FFmpeg](https://ffmpeg.org/),请先安装它。我们强烈推荐使用 `uv` 来安装环境:
1. 安装:
```bash
uv sync
```
> 现在环境将被安装在 `.venv` 目录下,你可以使用以下命令激活环境:
>
> ```bash
> source .venv/bin/activate
> ```
2. 下载预训练模型:
训练好的 YOLO 权重将存储在 `resources` 目录中,文件名为 `best.pt`。它将从 https://github.com/linkedlist771/SoraWatermarkCleaner/releases/download/V0.0.1/best.pt 自动下载。`Lama` 模型从 https://github.com/Sanster/models/releases/download/add_big_lama/big-lama.pt 下载,并将存储在 torch 缓存目录中。两者都是自动下载的,如果失败,请检查你的网络状态。
## 3. 一键便携版
对于不想手动安装的用户,我们提供了**一键便携版本**,包含所有预配置的依赖项,开箱即用。
### 下载链接
**Google Drive(谷歌云盘):**
- [从 Google Drive 下载](https://drive.google.com/file/d/1ujH28aHaCXGgB146g6kyfz3Qxd-wHR1c/view?usp=share_link)
**百度网盘(推荐国内用户使用):**
- 链接:https://pan.baidu.com/s/1i4exYsPvXv0evnGs5MWcYA?pwd=3jr6
- 提取码:`3jr6`
### 特点
- ✅ 无需安装
- ✅ 包含所有依赖
- ✅ 预配置环境
- ✅ 开箱即用
只需下载、解压并运行!
## 4. 演示
基本用法,只需尝试 `example.py`
```python
from pathlib import Path
from sorawm.core import SoraWM
if __name__ == "__main__":
input_video_path = Path(
"resources/dog_vs_sam.mp4"
)
output_video_path = Path("outputs/sora_watermark_removed.mp4")
sora_wm = SoraWM()
sora_wm.run(input_video_path, output_video_path)
```
我们还提供了基于 `streamlit` 的交互式网页界面,使用以下命令尝试:
```bash
streamlit run app.py
```
<img src="resources/app.png" style="zoom: 25%;" />
## 5. WebServer
在这里,我们提供了一个基于 FastAPI 的 Web 服务器,可以快速将这个水印清除器转换为服务。
只需运行:
```python
python start_server.py
```
Web 服务器将在端口 `5344` 启动,你可以查看 FastAPI [文档](http://localhost:5344/docs) 了解详情,有三个路由:
1. submit_remove_task:
> 上传视频后,会返回一个任务 ID,该视频将立即被处理。
<img src="resources/53abf3fd-11a9-4dd7-a348-34920775f8ad.png" alt="image" style="zoom: 25%;" />
2. get_results:
你可以使用上面的任务 ID 检索任务状态,它会显示视频处理的百分比。一旦完成,返回的数据中会有下载 URL。
3. downlaod:
你可以使用第2步中的下载 URL 来获取清理后的视频。
## 6. 数据集
我们已经将标注好的数据集上传到了 Hugging Face,请查看 https://huggingface.co/datasets/LLinked/sora-watermark-dataset。欢迎训练你自己的检测模型或改进我们的模型!
## 7. API
打包为 Cog 并[发布到 Replicate](https://replicate.com/uglyrobot/sora2-watermark-remover),便于基于 API 的简单使用。
## 8. 许可证
Apache License
## 9. 引用
如果你使用了这个项目,请引用:
```bibtex
@misc{sorawatermarkcleaner2025,
author = {linkedlist771},
title = {SoraWatermarkCleaner},
year = {2025},
url = {https://github.com/linkedlist771/SoraWatermarkCleaner}
}
```
## 10. 致谢
- [IOPaint](https://github.com/Sanster/IOPaint) 提供的 LAMA 实现
- [Ultralytics YOLO](https://github.com/ultralytics/ultralytics) 提供的目标检测