[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"tool-linkedlist771--SoraWatermarkCleaner":3,"similar-linkedlist771--SoraWatermarkCleaner":133},{"id":4,"github_repo":5,"name":6,"description_en":7,"description_zh":8,"ai_summary_zh":8,"readme_en":9,"readme_zh":10,"quickstart_zh":11,"use_case_zh":12,"hero_image_url":13,"owner_login":14,"owner_name":15,"owner_avatar_url":16,"owner_bio":17,"owner_company":18,"owner_location":19,"owner_email":20,"owner_twitter":21,"owner_website":22,"owner_url":23,"languages":24,"stars":51,"forks":52,"last_commit_at":53,"license":54,"difficulty_score":55,"env_os":56,"env_gpu":57,"env_ram":58,"env_deps":59,"category_tags":70,"github_topics":20,"view_count":72,"oss_zip_url":20,"oss_zip_packed_at":20,"status":73,"created_at":74,"updated_at":75,"faqs":76,"releases":107},9162,"linkedlist771\u002FSoraWatermarkCleaner","SoraWatermarkCleaner","The fastest and highest-quality deep learning powered Sora2 watermark cleaner.","SoraWatermarkCleaner 是一款基于深度学习技术的高效工具，旨在快速、高质量地移除由 Sora2 模型生成的视频中的水印。它通过自动化流程解决了 AI 视频内容中水印干扰视觉体验及后续创作的痛点，让视频画面更加纯净自然。\n\n该工具特别适合需要处理 Sora 生成视频的设计师、视频创作者以及普通用户。对于希望一键去除水印而不必深入技术细节的用户，项目还提供了便捷的在线托管服务；而对于开发者或研究人员，它支持本地部署、批量处理及 Docker 容器化运行，甚至开放了标注数据集以供自定义训练。\n\n在技术实现上，SoraWatermarkCleaner 采用了双模块架构：首先利用定制的 YOLOv11s 模型精准定位水印位置，随后结合 LaMa 修复算法进行智能填充与擦除。这种纯深度学习驱动的方法不仅保证了处理速度，还有效维持了视频的时间一致性，避免了传统修复中常见的闪烁问题。值得注意的是，随着 OpenAI 暂停 Sora 模型的更新，该项目已进入归档状态，但其核心去水印思路已延伸至新项目 DeMark-World，可支持更多类型的 AI 视频去水印需求。","# SoraWatermarkCleaner\n\n## IMPORTANT\n **This project is being archived.** OpenAI has discontinued the Sora video generation model, so this project will no longer be maintained. However, check out [DeMark-World](https:\u002F\u002Fgithub.com\u002Flinkedlist771\u002FDeMark-World) — it provides a universal method to remove watermarks from videos generated by other models such as Veo, Runway, and more.\n\n\n> This project provides an elegant way to remove the sora watermark in the sora2 generated videos. \n\n\u003Ctable>\n  \u003Ctr>\n    \u003Ctd width=\"20%\">\n      \u003Cstrong>Case1(25s)\u003C\u002Fstrong>\n    \u003C\u002Ftd>\n    \u003Ctd width=\"80%\">\n      \u003Cvideo src=\"https:\u002F\u002Fgithub.com\u002Fuser-attachments\u002Fassets\u002F55f4e822-a356-4fab-a372-8910e4cb3c28\" \n             width=\"100%\" controls>\u003C\u002Fvideo>\n    \u003C\u002Ftd>\n  \u003C\u002Ftr>\n  \u003Ctr>\n    \u003Ctd>\n      \u003Cstrong>Case2(10s)\u003C\u002Fstrong>\n    \u003C\u002Ftd>\n    \u003Ctd>\n      \u003Cvideo src=\"https:\u002F\u002Fgithub.com\u002Fuser-attachments\u002Fassets\u002F2773df41-62dc-4876-bd2f-4dd3ccac4b9e\" \n             width=\"100%\" controls>\u003C\u002Fvideo>\n    \u003C\u002Ftd>\n  \u003C\u002Ftr>\n  \u003Ctr>\n    \u003Ctd>\n      \u003Cstrong>Case3(10s)\u003C\u002Fstrong>\n    \u003C\u002Ftd>\n    \u003Ctd>\n      \u003Cvideo src=\"https:\u002F\u002Fgithub.com\u002Fuser-attachments\u002Fassets\u002F2bdba310-6379-48f2-a93c-6de857c4df3d\" \n             width=\"100%\" controls>\u003C\u002Fvideo>\n    \u003C\u002Ftd>\n  \u003C\u002Ftr>\n\u003C\u002Ftable>\n\n**Commercial Hosted Service & Sponsorship**\n\n>  If you prefer a one-click online service instead of running everything locally, you can use the hosted Sora watermark remover here:\n> \n> 👉 **https:\u002F\u002Fwww.sorawatermarkremover.ai\u002F**\n> \n> SoraWatermarkRemover runs **SoraWatermarkCleaner** under the hood and provides GPU-backed processing, credits-based pricing and an easy web UI. This service financially supports the ongoing development and maintenance of **SoraWatermarkCleaner**.\n\n⭐️: \n\n- **I'm excited to release [DeMark-World](https:\u002F\u002Fgithub.com\u002Flinkedlist771\u002FDeMark-World) – to the best of my knowledge, the first model capable of removing any watermark from AI-generated videos.**\n\n- **We have provided another model which could preserve time consistency without flicker!**\n\n- **We support batch processing now.**\n\n- **For the new watermark with username,  the Yolo weights has been updated, try the new version watermark detect model, it should work better.**\n\n- **We have uploaded the labelled datasets into huggingface, check this [dataset](https:\u002F\u002Fhuggingface.co\u002Fdatasets\u002FLLinked\u002Fsora-watermark-dataset) out. Free free to train your custom detector model or improve our model!**\n\n- **One-click portable build is available** — [Download here](#3-one-click-portable-version) for Windows users! No installation required.\n\n- **Docker Compose deployment is now supported** — [Get started](#6-docker-compose-deployment) with a single command. Note: the image requires CUDA and is large (~20 GB) due to NVIDIA libraries and PyTorch.\n\n---\n\n💝 If you find this project helpful, please consider [buying me a coffee](mds\u002Freward.md) to support the development!\n\n## 1. Method\n\nThe SoraWatermarkCleaner(we call it `SoraWm` later) is composed of two parsts:\n\n- SoraWaterMarkDetector: We trained a yolov11s version to detect the sora watermark. (Thank you yolo!)\n\n- WaterMarkCleaner: We refer iopaint's implementation for watermark removal using the lama model.\n  \n  (This codebase is from https:\u002F\u002Fgithub.com\u002FSanster\u002FIOPaint#, thanks for their amazing work!)\n\nOur SoraWm is purely deeplearning driven and yields good results in many generated videos.\n\n## 2. Installation\n\n[FFmpeg](https:\u002F\u002Fffmpeg.org\u002F) is needed for video processing, please install it first.  We highly recommend using the `uv` to install the environments:\n\n1. installation:\n\n```bash\nuv sync\n```\n\n> now the envs will be installed at the `.venv`, you can activate the env using:\n> \n> ```bash\n> source .venv\u002Fbin\u002Factivate\n> ```\n\n2. Downloaded the pretrained models:\n\nThe trained yolo weights will be stored in the `resources` dir as the `best.pt`.  And it will be automatically download from https:\u002F\u002Fgithub.com\u002Flinkedlist771\u002FSoraWatermarkCleaner\u002Freleases\u002Fdownload\u002FV0.0.1\u002Fbest.pt . The `Lama` model is downloaded from https:\u002F\u002Fgithub.com\u002FSanster\u002Fmodels\u002Freleases\u002Fdownload\u002Fadd_big_lama\u002Fbig-lama.pt, and will be stored in the torch cache dir. Both downloads are automatic, if you fail, please check your internet status.\n\n3. Batch processing\n   Use the cli.py for batch processing\n\n```\npython cli.py [-h] -i INPUT -o OUTPUT [-p PATTERN] [-m MODEL] [--quiet]\n```\n\nexamples:\n\n```\n# Process all .mp4 files in input folder\npython cli.py -i \u002Fpath\u002Fto\u002Finput -o \u002Fpath\u002Fto\u002Foutput\n# Process all .mov files\npython cli.py -i \u002Fpath\u002Fto\u002Finput -o \u002Fpath\u002Fto\u002Foutput --pattern \"*.mov\"\n# Process all video files (mp4, mov, avi)\npython cli.py -i \u002Fpath\u002Fto\u002Finput -o \u002Fpath\u002Fto\u002Foutput --pattern \"*.{mp4,mov,avi}\"\n# Use e2fgvi_hq model for time-consistent results (slower, requires CUDA)\npython cli.py -i \u002Fpath\u002Fto\u002Finput -o \u002Fpath\u002Fto\u002Foutput --model e2fgvi_hq\n# Without displaying the Tqdm bar inside sorawm procrssing.\npython cli.py -i \u002Fpath\u002Fto\u002Finput -o \u002Fpath\u002Fto\u002Foutput --quiet\n```\n\n## 3. One-Click Portable Version\n\nFor users who prefer a ready-to-use solution without manual installation, we provide a **one-click portable distribution** that includes all dependencies pre-configured.\n\n### Download Links\n\n**Google Drive:**\n\n- [Download from Google Drive](https:\u002F\u002Fdrive.google.com\u002Ffile\u002Fd\u002F1ujH28aHaCXGgB146g6kyfz3Qxd-wHR1c\u002Fview?usp=share_link)\n\n**Baidu Pan (百度网盘) - For users in China:**\n\n- Link: https:\u002F\u002Fpan.baidu.com\u002Fs\u002F1onMom81mvw2c6PFkCuYzdg?pwd=jusu\n- Extract Code (提取码): `jusu`\n\n### Features\n\n- ✅ No installation required\n- ✅ All dependencies included\n- ✅ Pre-configured environment\n- ✅ Ready to use out of the box\n\nSimply download, extract, and run!\n\n## 4. Performance Optimization\n\nWe provide several options to speed up processing:\n\n| Detector | Batch | Cleaner | TorchCompile | Bf16 | Time (s) | Speedup |\n|:--------:|:-----:|:-------:|:------------:|:----:|:--------:|:-------:|\n| YOLO     | ×     | LAMA    | ×            | ×    | 44.33    | -       |\n| YOLO     | ×     | E2FGVI  | ×            | ×    | 142.42   | 1.00×   |\n| YOLO     | ×     | E2FGVI  | ✓            | ×    | 117.19   | 1.22×   |\n| YOLO     | 4     | E2FGVI  | ✓            | ×    | 82.63    | 1.72×   |\n| YOLO     | 4     | E2FGVI  | ✓            | ✓    | 58.60    | 2.43×   |\n\n> Speedup is calculated relative to the E2FGVI baseline. LAMA uses a different cleaning approach and is not directly comparable.\n\n- **YOLO Batch Detection**: Default batch size is 4 (`detect_batch_size=4`), enables batch inference for watermark detection, provides ~40% speedup\n- **TorchCompile** (E2FGVI only): Enabled by default (`enable_torch_compile=True`), provides ~22% speedup\n- **Bf16 Inference** (E2FGVI only): Enable with `use_bf16=True`(Default False), provides up to **2.43× speedup**. Note: quality may slightly decrease, and the first inference will be slow (~90s) due to compilation overhead; subsequent runs will be much faster (~58s) as artifacts are cached.\n\nYou can customize these settings when initializing `SoraWM`:\n\n```python\nfrom sorawm.core import SoraWM\nfrom sorawm.schemas import CleanerType\n\n# LAMA with batch detection (fast)\nsora_wm = SoraWM(\n    cleaner_type=CleanerType.LAMA,\n    detect_batch_size=4  # default: 4\n)\n\n# E2FGVI_HQ with all optimizations (time-consistent)\nsora_wm = SoraWM(\n    cleaner_type=CleanerType.E2FGVI_HQ,\n    enable_torch_compile=True,  # default: True\n    detect_batch_size=8         # custom batch size\n)\n\n# E2FGVI_HQ with bf16 for maximum speed (may have slight quality loss)\nsora_wm = SoraWM(\n    cleaner_type=CleanerType.E2FGVI_HQ,\n    enable_torch_compile=True,\n    detect_batch_size=4,\n    use_bf16=True  # enables bfloat16 inference\n)\n```\n\n## 5.  Demo\n\nTo have a basic usage, just try the `example.py`:\n\n> We provide two models to remove watermark. LAMA is fast but may have flicker on the cleaned area, which E2FGVI_HQ compromise this only requires cuda otherwise very slow on CPU or MPS.\n\n```python\nfrom pathlib import Path\n\nfrom sorawm.core import SoraWM\nfrom sorawm.schemas import CleanerType\n\nif __name__ == \"__main__\":\n    input_video_path = Path(\"resources\u002Fdog_vs_sam.mp4\")\n    output_video_path = Path(\"outputs\u002Fsora_watermark_removed\")\n\n    # 1. LAMA is fast and good quality, but not time consistent.\n    sora_wm = SoraWM(cleaner_type=CleanerType.LAMA)\n    sora_wm.run(input_video_path, Path(f\"{output_video_path}_lama.mp4\"))\n\n    # 2. E2FGVI_HQ ensures time consistency, but will be very slow on no-cuda device.\n    sora_wm = SoraWM(cleaner_type=CleanerType.E2FGVI_HQ)\n    sora_wm.run(input_video_path, Path(f\"{output_video_path}_e2fgvi_hq.mp4\"))\n```\n\nWe also provide you with a `streamlit` based interactive web page, try it with:\n\n> We also provide the switch here.\n\n```bash\nstreamlit run app.py\n```\n\n\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Flinkedlist771_SoraWatermarkCleaner_readme_eaf0c9d72a11.png\" style=\"zoom: 25%;\" \u002F>\n\nBatch processing is also supported, now you can drag a folder or select multiple files to process.\n\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Flinkedlist771_SoraWatermarkCleaner_readme_3f2ee0f9599b.png\" style=\"zoom: 50%;\" \u002F>\n\n## 6. Docker Compose Deployment\n\nThe easiest way to deploy SoraWatermarkCleaner is via Docker Compose.\n\n> **Note:** The Docker image (`llinkedlist\u002Fsorawm:latest`) requires CUDA and includes NVIDIA libraries and PyTorch, making it quite large (~20 GB). The initial pull may take a significant amount of time depending on your network speed.\n\n**Prerequisites:**\n\n- [Docker](https:\u002F\u002Fdocs.docker.com\u002Fget-docker\u002F) with [NVIDIA Container Toolkit](https:\u002F\u002Fdocs.nvidia.com\u002Fdatacenter\u002Fcloud-native\u002Fcontainer-toolkit\u002Finstall-guide.html) installed\n- A CUDA-capable GPU\n\n**Start the service:**\n\n```bash\ndocker compose up -d\n```\n\nThis will:\n\n- Pull the image from Docker Hub (first time only — be patient, ~20 GB)\n- Mount the current directory to `\u002Fworkspace` inside the container\n- Cache model weights in `.\u002F.cache` to avoid re-downloading on restart\n- Expose the Streamlit UI on port **8501**\n\nAccess the Streamlit UI at `http:\u002F\u002Flocalhost:8501`.\n\n## 7. WebServer\n\nHere, we provide a **FastAPI-based web server** that can quickly turn this watermark remover into a service.\n\nWe also have a frontUI for the webserver, to try this:\n\n```bash\ncd frontend && bun install && bun run build\n```\n\nAnd then start the server, the frontend UI will be just ready in root route:\n\n> The task statuses are recoreded and can resume when server is down.\n\n![image](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Flinkedlist771_SoraWatermarkCleaner_readme_6ba7e73fd415.png)\n\nSimply run:\n\n```\npython start_server.py\n```\n\nThe web server will start on port **5344**.\n\nYou can view the FastAPI [documentation](http:\u002F\u002Flocalhost:5344\u002Fdocs) for more details.\n\nThere are three routes available:\n\n1. **submit_remove_task**\n   \n   > After uploading a video, a task ID will be returned, and the video will begin processing immediately.\n\n\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Flinkedlist771_SoraWatermarkCleaner_readme_28248b007c77.png\" alt=\"image\" style=\"zoom: 25%;\" \u002F>\n\n2. **get_results**\n\nYou can use the task ID obtained above to check the task status.\n\nIt will display the percentage of video processing completed.\n\nOnce finished, the returned data will include a **download URL**.\n\n3. **download**\n\nYou can use the **download URL** from step 2 to retrieve the cleaned video.\n\n## 8. Datasets\n\nWe have uploaded the labelled datasets into huggingface, check this out https:\u002F\u002Fhuggingface.co\u002Fdatasets\u002FLLinked\u002Fsora-watermark-dataset. Free free to train your custom detector model or improve our model!\n\n## 9. API\n\nPackaged as a Cog and [published to Replicate](https:\u002F\u002Freplicate.com\u002Fuglyrobot\u002Fsora2-watermark-remover) for simple API based usage.\n\n## 10. License\n\n Apache License\n\n## 11. Citation\n\nIf you use this project, please cite:\n\n```bibtex\n@misc{sorawatermarkcleaner2025,\n  author = {linkedlist771},\n  title = {SoraWatermarkCleaner},\n  year = {2025},\n  url = {https:\u002F\u002Fgithub.com\u002Flinkedlist771\u002FSoraWatermarkCleaner}\n}\n```\n\n## 12. Acknowledgments\n\n- [IOPaint](https:\u002F\u002Fgithub.com\u002FSanster\u002FIOPaint) for the LAMA implementation\n- [Ultralytics YOLO](https:\u002F\u002Fgithub.com\u002Fultralytics\u002Fultralytics) for object detection\n","# SoraWatermarkCleaner\n\n## 重要提示\n**该项目已被归档。** OpenAI 已经停止了 Sora 视频生成模型的开发，因此本项目将不再维护。不过，您可以查看 [DeMark-World](https:\u002F\u002Fgithub.com\u002Flinkedlist771\u002FDeMark-World) — 它提供了一种通用的方法，可以去除由 Veo、Runway 等其他模型生成的视频中的水印。\n\n\n> 本项目提供了一种优雅的方式来移除 Sora2 生成视频中的 Sora 水印。\n\n\u003Ctable>\n  \u003Ctr>\n    \u003Ctd width=\"20%\">\n      \u003Cstrong>案例1（25秒）\u003C\u002Fstrong>\n    \u003C\u002Ftd>\n    \u003Ctd width=\"80%\">\n      \u003Cvideo src=\"https:\u002F\u002Fgithub.com\u002Fuser-attachments\u002Fassets\u002F55f4e822-a356-4fab-a372-8910e4cb3c28\" \n             width=\"100%\" controls>\u003C\u002Fvideo>\n    \u003C\u002Ftd>\n  \u003C\u002Ftr>\n  \u003Ctr>\n    \u003Ctd>\n      \u003Cstrong>案例2（10秒）\u003C\u002Fstrong>\n    \u003C\u002Ftd>\n    \u003Ctd>\n      \u003Cvideo src=\"https:\u002F\u002Fgithub.com\u002Fuser-attachments\u002Fassets\u002F2773df41-62dc-4876-bd2f-4dd3ccac4b9e\" \n             width=\"100%\" controls>\u003C\u002Fvideo>\n    \u003C\u002Ftd>\n  \u003C\u002Ftr>\n  \u003Ctr>\n    \u003Ctd>\n      \u003Cstrong>案例3（10秒）\u003C\u002Fstrong>\n    \u003C\u002Ftd>\n    \u003Ctd>\n      \u003Cvideo src=\"https:\u002F\u002Fgithub.com\u002Fuser-attachments\u002Fassets\u002F2bdba310-6379-48f2-a93c-6de857c4df3d\" \n             width=\"100%\" controls>\u003C\u002Fvideo>\n    \u003C\u002Ftd>\n  \u003C\u002Ftr>\n\u003C\u002Ftable>\n\n**商业托管服务与赞助**\n\n> 如果您更倾向于一键式在线服务，而不是在本地运行所有操作，您可以使用这里的托管 Sora 水印移除工具：\n> \n> 👉 **https:\u002F\u002Fwww.sorawatermarkremover.ai\u002F**\n> \n> SoraWatermarkRemover 在后台运行 **SoraWatermarkCleaner**，并提供 GPU 加速处理、基于积分的定价以及简便的网页界面。该服务为 **SoraWatermarkCleaner** 的持续开发和维护提供了资金支持。\n\n⭐️：\n\n- **我很高兴地发布了 [DeMark-World](https:\u002F\u002Fgithub.com\u002Flinkedlist771\u002FDeMark-World) — 据我所知，这是首个能够移除任何 AI 生成视频中水印的模型。**\n\n- **我们还提供了一个可以在不产生闪烁的情况下保持时间一致性的模型！**\n\n- **我们现在支持批量处理。**\n\n- **对于带有用户名的新水印，YOLO 权重已经更新，请尝试新版本的水印检测模型，它应该会表现得更好。**\n\n- **我们已将标注好的数据集上传至 Hugging Face，请查看这个 [数据集](https:\u002F\u002Fhuggingface.co\u002Fdatasets\u002FLLinked\u002Fsora-watermark-dataset)。您可以自由地训练自己的自定义检测模型，或改进我们的模型！**\n\n- **现在提供了一键式便携版** — Windows 用户可从[这里下载](#3-one-click-portable-version)，无需安装。\n\n- **现已支持 Docker Compose 部署** — 使用一条命令即可开始[部署](#6-docker-compose-deployment)。注意：该镜像需要 CUDA，并且由于 NVIDIA 库和 PyTorch 的存在，体积较大（约 20 GB）。\n\n---\n\n💝 如果您觉得这个项目有帮助，请考虑通过[给我买杯咖啡](mds\u002Freward.md)来支持开发！\n\n## 1. 方法\n\nSoraWatermarkCleaner（以下简称 `SoraWm`）由两部分组成：\n\n- SoraWaterMarkDetector：我们训练了一个 YOLOv11s 版本来检测 Sora 水印。（感谢 YOLO！）\n\n- WaterMarkCleaner：我们在去除水印时参考了 iopaint 的实现，使用了 LAMA 模型。\n  \n  （此代码库来自 https:\u002F\u002Fgithub.com\u002FSanster\u002FIOPaint#，感谢他们的出色工作！）\n\n我们的 SoraWm 完全由深度学习驱动，在许多生成的视频中都能取得良好的效果。\n\n## 2. 安装\n\n进行视频处理需要 [FFmpeg](https:\u002F\u002Fffmpeg.org\u002F)，请先安装它。我们强烈建议使用 `uv` 来安装环境：\n\n1. 安装：\n\n```bash\nuv sync\n```\n\n> 环境将被安装到 `.venv` 目录下，您可以使用以下命令激活环境：\n> \n> ```bash\n> source .venv\u002Fbin\u002Factivate\n> ```\n\n2. 下载预训练模型：\n\n训练好的 YOLO 权重将存储在 `resources` 目录下的 `best.pt` 文件中。它将自动从 https:\u002F\u002Fgithub.com\u002Flinkedlist771\u002FSoraWatermarkCleaner\u002Freleases\u002Fdownload\u002FV0.0.1\u002Fbest.pt 下载。LAMA 模型则从 https:\u002F\u002Fgithub.com\u002FSanster\u002Fmodels\u002Freleases\u002Fdownload\u002Fadd_big_lama\u002Fbig-lama.pt 下载，并存储在 PyTorch 的缓存目录中。这两个下载都是自动进行的，如果失败，请检查您的网络连接。\n\n3. 批量处理\n   使用 `cli.py` 进行批量处理\n\n```\npython cli.py [-h] -i INPUT -o OUTPUT [-p PATTERN] [-m MODEL] [--quiet]\n```\n\n示例：\n\n```\n# 处理输入文件夹中的所有 .mp4 文件\npython cli.py -i \u002Fpath\u002Fto\u002Finput -o \u002Fpath\u002Fto\u002Foutput\n# 处理所有 .mov 文件\npython cli.py -i \u002Fpath\u002Fto\u002Finput -o \u002Fpath\u002Fto\u002Foutput --pattern \"*.mov\"\n# 处理所有视频文件（mp4、mov、avi）\npython cli.py -i \u002Fpath\u002Fto\u002Finput -o \u002Fpath\u002Fto\u002Foutput --pattern \"*.{mp4,mov,avi}\"\n# 使用 e2fgvi_hq 模型以获得时间一致的结果（速度较慢，需要 CUDA）\npython cli.py -i \u002Fpath\u002Fto\u002Finput -o \u002Fpath\u002Fto\u002Foutput --model e2fgvi_hq\n# 在 SoraWm 处理过程中不显示 Tqdm 进度条。\npython cli.py -i \u002Fpath\u002Fto\u002Finput -o \u002Fpath\u002Fto\u002Foutput --quiet\n```\n\n## 3. 一键式便携版\n\n对于那些希望使用即开即用解决方案而无需手动安装的用户，我们提供了一个包含所有预配置依赖项的 **一键式便携分发版**。\n\n### 下载链接\n\n**Google Drive：**\n\n- [从 Google Drive 下载](https:\u002F\u002Fdrive.google.com\u002Ffile\u002Fd\u002F1ujH28aHaCXGgB146g6kyfz3Qxd-wHR1c\u002Fview?usp=share_link)\n\n**百度网盘（适用于中国用户）：**\n\n- 链接：https:\u002F\u002Fpan.baidu.com\u002Fs\u002F1onMom81mvw2c6PFkCuYzdg?pwd=jusu\n- 提取码：`jusu`\n\n### 功能特点\n\n- ✅ 无需安装\n- ✅ 包含所有依赖项\n- ✅ 预配置环境\n- ✅ 开箱即用\n\n只需下载、解压并运行即可！\n\n## 4. 性能优化\n\n我们提供了多种选项来加速处理：\n\n| 检测器 | 批量 | 清理器 | TorchCompile | Bf16 | 时间（秒） | 加速比 |\n|:--------:|:-----:|:-------:|:------------:|:----:|:--------:|:-------:|\n| YOLO     | ×     | LAMA    | ×            | ×    | 44.33    | -       |\n| YOLO     | ×     | E2FGVI  | ×            | ×    | 142.42   | 1.00×   |\n| YOLO     | ×     | E2FGVI  | ✓            | ×    | 117.19   | 1.22×   |\n| YOLO     | 4     | E2FGVI  | ✓            | ×    | 82.63    | 1.72×   |\n| YOLO     | 4     | E2FGVI  | ✓            | ✓    | 58.60    | 2.43×   |\n\n> 加速比是相对于 E2FGVI 基线计算的。LAMA 使用不同的清理方法，因此无法直接比较。\n\n- **YOLO 批量检测**：默认批量大小为 4（`detect_batch_size=4`），启用批量推理进行水印检测，可提升约 40% 的速度。\n- **TorchCompile**（仅适用于 E2FGVI）：默认启用（`enable_torch_compile=True`），可提升约 22% 的速度。\n- **Bf16 推理**（仅适用于 E2FGVI）：通过设置 `use_bf16=True` 启用（默认为 False），最高可实现 **2.43 倍的速度提升**。注意：质量可能会略有下降，首次推理会较慢（约 90 秒），因为需要编译开销；后续运行会快得多（约 58 秒），因为已缓存中间结果。\n\n您可以在初始化 `SoraWM` 时自定义这些设置：\n\n```python\nfrom sorawm.core import SoraWM\nfrom sorawm.schemas import CleanerType\n\n# LAMA 配合批量检测（快速）\nsora_wm = SoraWM(\n    cleaner_type=CleanerType.LAMA,\n    detect_batch_size=4  # 默认：4\n)\n\n# E2FGVI_HQ 配合所有优化（时间一致性）\nsora_wm = SoraWM(\n    cleaner_type=CleanerType.E2FGVI_HQ,\n    enable_torch_compile=True,  # 默认：True\n    detect_batch_size=8         # 自定义批量大小\n)\n\n# E2FGVI_HQ 配合 bf16 以获得最大速度（可能略微影响质量）\nsora_wm = SoraWM(\n    cleaner_type=CleanerType.E2FGVI_HQ,\n    enable_torch_compile=True,\n    detect_batch_size=4,\n    use_bf16=True  # 启用 bfloat16 推理\n)\n```\n\n## 5. 示例\n\n要进行基本使用，只需尝试 `example.py`：\n\n> 我们提供两种模型来去除水印。LAMA 速度快，但清理区域可能会出现闪烁现象，而 E2FGVI_HQ 则在这一点上有所妥协——它仅在 CUDA 环境下表现良好，在 CPU 或 MPS 上则非常缓慢。\n\n```python\nfrom pathlib import Path\n\nfrom sorawm.core import SoraWM\nfrom sorawm.schemas import CleanerType\n\nif __name__ == \"__main__\":\n    input_video_path = Path(\"resources\u002Fdog_vs_sam.mp4\")\n    output_video_path = Path(\"outputs\u002Fsora_watermark_removed\")\n\n    # 1. LAMA 速度快且质量较好，但时间一致性较差。\n    sora_wm = SoraWM(cleaner_type=CleanerType.LAMA)\n    sora_wm.run(input_video_path, Path(f\"{output_video_path}_lama.mp4\"))\n\n    # 2. E2FGVI_HQ 可确保时间一致性，但在无 CUDA 设备的情况下会非常慢。\n    sora_wm = SoraWM(cleaner_type=CleanerType.E2FGVI_HQ)\n    sora_wm.run(input_video_path, Path(f\"{output_video_path}_e2fgvi_hq.mp4\"))\n```\n\n我们还提供了一个基于 Streamlit 的交互式网页，您可以尝试以下命令：\n\n> 我们也在此处提供了切换功能。\n\n```bash\nstreamlit run app.py\n```\n\n\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Flinkedlist771_SoraWatermarkCleaner_readme_eaf0c9d72a11.png\" style=\"zoom: 25%;\" \u002F>\n\n同时支持批量处理，现在您可以拖动文件夹或选择多个文件进行处理。\n\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Flinkedlist771_SoraWatermarkCleaner_readme_3f2ee0f9599b.png\" style=\"zoom: 50%;\" \u002F>\n\n## 6. Docker Compose 部署\n\n部署 SoraWatermarkCleaner 最简单的方式是使用 Docker Compose。\n\n> **注意：** Docker 镜像（`llinkedlist\u002Fsorawm:latest`）需要 CUDA，并包含 NVIDIA 库和 PyTorch，因此体积较大（约 20 GB）。首次拉取镜像可能需要较长时间，具体取决于您的网络速度。\n\n**先决条件：**\n\n- 已安装 [Docker](https:\u002F\u002Fdocs.docker.com\u002Fget-docker\u002F) 和 [NVIDIA Container Toolkit](https:\u002F\u002Fdocs.nvidia.com\u002Fdatacenter\u002Fcloud-native\u002Fcontainer-toolkit\u002Finstall-guide.html)\n- 具备 CUDA 功能的 GPU\n\n**启动服务：**\n\n```bash\ndocker compose up -d\n```\n\n这将：\n\n- 从 Docker Hub 拉取镜像（仅首次，请耐心等待，约 20 GB）\n- 将当前目录挂载到容器内的 `\u002Fworkspace`\n- 将模型权重缓存到 `.\u002F.cache` 目录中，以便在重启时无需重新下载\n- 在端口 **8501** 上暴露 Streamlit UI\n\n您可以通过 `http:\u002F\u002Flocalhost:8501` 访问 Streamlit UI。\n\n## 7. Web 服务器\n\n在这里，我们提供一个基于 **FastAPI 的 Web 服务器**，可以快速将此水印移除工具转化为一项服务。\n\n我们还为该服务器提供了一个前端界面，您可以按如下步骤尝试：\n\n```bash\ncd frontend && bun install && bun run build\n```\n\n然后启动服务器，前端界面将直接在根路径上可用：\n\n> 任务状态会被记录下来，即使服务器宕机也可以从中断的地方继续。\n\n![image](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Flinkedlist771_SoraWatermarkCleaner_readme_6ba7e73fd415.png)\n\n只需运行：\n\n```\npython start_server.py\n```\n\nWeb 服务器将在端口 **5344** 上启动。\n\n您可以查看 FastAPI [文档](http:\u002F\u002Flocalhost:5344\u002Fdocs) 以获取更多详细信息。\n\n共有三条可用路由：\n\n1. **submit_remove_task**\n   \n   > 上传视频后，将返回一个任务 ID，视频将立即开始处理。\n\n\u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Flinkedlist771_SoraWatermarkCleaner_readme_28248b007c77.png\" alt=\"image\" style=\"zoom: 25%;\" \u002F>\n\n2. **get_results**\n\n您可以使用上述获得的任务 ID 来检查任务状态。\n\n它会显示视频处理完成的百分比。\n\n一旦完成，返回的数据将包含一个 **下载链接**。\n\n3. **download**\n\n您可以使用第 2 步中的 **下载链接** 来获取清理后的视频。\n\n## 8. 数据集\n\n我们已将标注好的数据集上传至 Hugging Face，请访问：https:\u002F\u002Fhuggingface.co\u002Fdatasets\u002FLLinked\u002Fsora-watermark-dataset。欢迎训练您自己的自定义检测模型，或改进我们的模型！\n\n## 9. API\n\n打包成 Cog 并 [发布到 Replicate](https:\u002F\u002Freplicate.com\u002Fuglyrobot\u002Fsora2-watermark-remover)，以便于通过简单的 API 进行使用。\n\n## 10. 许可证\n\n Apache 许可证\n\n## 11. 引用\n\n如果您使用本项目，请引用以下内容：\n\n```bibtex\n@misc{sorawatermarkcleaner2025,\n  author = {linkedlist771},\n  title = {SoraWatermarkCleaner},\n  year = {2025},\n  url = {https:\u002F\u002Fgithub.com\u002Flinkedlist771\u002FSoraWatermarkCleaner}\n}\n```\n\n## 12. 致谢\n\n- [IOPaint](https:\u002F\u002Fgithub.com\u002FSanster\u002FIOPaint) 提供了 LAMA 的实现\n- [Ultralytics YOLO](https:\u002F\u002Fgithub.com\u002Fultralytics\u002Fultralytics) 提供了目标检测功能","# SoraWatermarkCleaner 快速上手指南\n\n> **重要提示**：本项目已归档（OpenAI 已停止维护 Sora 模型）。如需去除 Veo、Runway 等其他 AI 视频模型的水印，请参考作者的新项目 [DeMark-World](https:\u002F\u002Fgithub.com\u002Flinkedlist771\u002FDeMark-World)。本指南仅适用于处理现有的 Sora 生成视频。\n\n## 1. 环境准备\n\n在开始之前，请确保您的系统满足以下要求：\n\n*   **操作系统**：Windows, Linux 或 macOS\n*   **前置依赖**：必须安装 [FFmpeg](https:\u002F\u002Fffmpeg.org\u002F) 用于视频处理。\n    *   Windows 用户可直接下载便携版或使用包管理器安装。\n    *   Linux\u002FmacOS 用户可通过 `apt`, `yum` 或 `brew` 安装。\n*   **硬件加速（可选但推荐）**：若需使用 `E2FGVI_HQ` 模型以获得无闪烁的时间一致性效果，需要 NVIDIA GPU 及 CUDA 环境。仅使用 `LAMA` 模型可在 CPU 上运行。\n*   **包管理工具**：推荐使用 [`uv`](https:\u002F\u002Fgithub.com\u002Fastral-sh\u002Fuv) 进行环境管理（速度极快），也可使用标准 pip。\n\n## 2. 安装步骤\n\n### 方案 A：使用 uv 安装（推荐）\n\n这是最快捷的安装方式，自动处理依赖和虚拟环境。\n\n```bash\n# 1. 同步安装依赖（会自动创建 .venv 环境）\nuv sync\n\n# 2. 激活虚拟环境\n# Linux\u002FmacOS:\nsource .venv\u002Fbin\u002Factivate\n# Windows (PowerShell):\n.\\.venv\\Scripts\\Activate.ps1\n```\n\n> **注意**：首次运行时，脚本会自动下载 YOLO 检测模型 (`best.pt`) 和 LAMA 修复模型。请确保网络连接畅通。如果下载失败，请检查网络状态。\n\n### 方案 B：一键便携版（仅限 Windows）\n\n如果您不想配置环境，可直接下载预配置好的便携版：\n\n*   **百度网盘**：[点击下载](https:\u002F\u002Fpan.baidu.com\u002Fs\u002F1onMom81mvw2c6PFkCuYzdg?pwd=jusu) (提取码：`jusu`)\n*   **Google Drive**：[点击下载](https:\u002F\u002Fdrive.google.com\u002Ffile\u002Fd\u002F1ujH28aHaCXGgB146g6kyfz3Qxd-wHR1c\u002Fview?usp=share_link)\n\n下载后解压即可直接运行，无需安装任何依赖。\n\n### 方案 C：Docker 部署\n\n适合服务器环境，需预先安装 Docker 和 NVIDIA Container Toolkit。\n\n```bash\ndocker compose up -d\n```\n启动后访问 `http:\u002F\u002Flocalhost:8501` 使用 Web 界面。（注：镜像较大，约 20GB，首次拉取需耐心等待）\n\n## 3. 基本使用\n\n本项目提供命令行批量处理和 Python 代码调用两种方式。\n\n### 方法一：命令行批量处理 (CLI)\n\n使用 `cli.py` 可以快速处理文件夹内的所有视频。\n\n```bash\n# 处理 input 文件夹下所有的 .mp4 文件，输出到 output 文件夹\npython cli.py -i \u002Fpath\u002Fto\u002Finput -o \u002Fpath\u002Fto\u002Foutput\n\n# 指定处理 .mov 格式\npython cli.py -i \u002Fpath\u002Fto\u002Finput -o \u002Fpath\u002Fto\u002Foutput --pattern \"*.mov\"\n\n# 使用 E2FGVI_HQ 模型（时间一致性好，无闪烁，需 CUDA 加速）\npython cli.py -i \u002Fpath\u002Fto\u002Finput -o \u002Fpath\u002Fto\u002Foutput --model e2fgvi_hq\n\n# 静默模式（不显示进度条）\npython cli.py -i \u002Fpath\u002Fto\u002Finput -o \u002Fpath\u002Fto\u002Foutput --quiet\n```\n\n### 方法二：Python 代码调用\n\n创建一个 `example.py` 文件，复制以下代码即可运行。\n\n```python\nfrom pathlib import Path\nfrom sorawm.core import SoraWM\nfrom sorawm.schemas import CleanerType\n\nif __name__ == \"__main__\":\n    # 输入与输出路径\n    input_video_path = Path(\"resources\u002Fdog_vs_sam.mp4\")\n    output_video_path = Path(\"outputs\u002Fsora_watermark_removed\")\n\n    # 模式 1: LAMA 模型\n    # 特点：速度快，质量好，但在修复区域可能会有轻微闪烁\n    sora_wm = SoraWM(cleaner_type=CleanerType.LAMA)\n    sora_wm.run(input_video_path, Path(f\"{output_video_path}_lama.mp4\"))\n\n    # 模式 2: E2FGVI_HQ 模型\n    # 特点：保证时间一致性（无闪烁），但在非 CUDA 设备上运行极慢\n    sora_wm = SoraWM(cleaner_type=CleanerType.E2FGVI_HQ)\n    sora_wm.run(input_video_path, Path(f\"{output_video_path}_e2fgvi_hq.mp4\"))\n```\n\n### 方法三：交互式 Web 界面\n\n如果喜欢图形化操作，可以启动本地 Streamlit 服务：\n\n```bash\nstreamlit run app.py\n```\n启动后浏览器会自动打开界面，支持拖拽文件夹进行批量处理，并可在界面上切换 `LAMA` 或 `E2FGVI_HQ` 模型。","一家数字营销机构的设计师正在为高端客户制作基于 Sora2 生成的概念宣传片，需要在最终交付前去除视频角落的品牌水印以确保画面纯净。\n\n### 没有 SoraWatermarkCleaner 时\n- **手动修图效率极低**：设计师不得不逐帧导出视频，在 Photoshop 中利用内容识别填充手动擦除水印，处理一段 10 秒的视频需耗费数小时。\n- **画面出现闪烁伪影**：传统静态去水印方法无法理解视频的时间连续性，导致去除区域在播放时出现明显的抖动和闪烁，破坏观影体验。\n- **边缘残留痕迹明显**：简单的高斯模糊或裁剪会损失画幅或留下模糊边界，无法满足高端商业交付对画质的严苛要求。\n- **批量处理能力缺失**：面对客户突然增加的多版本修改需求，缺乏自动化脚本支持，团队只能加班进行重复性劳动。\n\n### 使用 SoraWatermarkCleaner 后\n- **全流程自动化处理**：利用内置的 YOLOv11s 检测模型与 Lama 修复算法，一键即可自动定位并清除水印，将数小时的工作缩短至几分钟。\n- **完美保持时间一致性**：基于深度学习的视频修复技术确保了帧间连贯性，彻底消除了去除区域的闪烁现象，画面过渡自然流畅。\n- **高保真画质还原**：智能算法能根据周围像素精准重构背景细节，即使在复杂动态场景下也能实现无痕修复，达到广播级播出标准。\n- **轻松应对批量任务**：支持批量处理模式，设计师可同时将多个渲染片段投入队列，快速响应客户的紧急改稿需求。\n\nSoraWatermarkCleaner 通过深度学习技术将繁琐的视频去水印工作转化为秒级的自动化流程，在保障影视级画质的同时极大释放了创意生产力。","https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Flinkedlist771_SoraWatermarkCleaner_6ba7e73f.png","linkedlist771","Ding Li","https:\u002F\u002Foss.gittoolsai.com\u002Favatars\u002Flinkedlist771_637c161f.png","Interested in the infrastructure behind LLM deployment, systems powering deep learning, backend of LLMs and anime cosplay.","Southeast university ","China Jiangsu provience ",null,"notyet","213193509seu@gmail.com","https:\u002F\u002Fgithub.com\u002Flinkedlist771",[25,29,33,37,41,44,48],{"name":26,"color":27,"percentage":28},"Python","#3572A5",85.6,{"name":30,"color":31,"percentage":32},"Jupyter Notebook","#DA5B0B",13.2,{"name":34,"color":35,"percentage":36},"Vue","#41b883",1,{"name":38,"color":39,"percentage":40},"CSS","#663399",0.1,{"name":42,"color":43,"percentage":40},"Shell","#89e051",{"name":45,"color":46,"percentage":47},"JavaScript","#f1e05a",0,{"name":49,"color":50,"percentage":47},"HTML","#e34c26",1153,246,"2026-04-17T03:26:19","Apache-2.0",3,"Windows, Linux, macOS","E2FGVI_HQ 模型必需 NVIDIA GPU (支持 CUDA)；LAMA 模型可在 CPU\u002FMPS 运行但速度极慢。Docker 部署明确要求 CUDA-capable GPU。未明确具体显存大小，但镜像含 PyTorch 且较大，建议具备 CUDA 加速能力。","未说明",{"notes":60,"python":61,"dependencies":62},"1. 该项目已归档，因 OpenAI 已停止维护 Sora 模型，但代码仍可用。2. 必须预先安装 FFmpeg 用于视频处理。3. 推荐使用 'uv' 工具管理环境和依赖。4. 提供 Windows 一键便携版（无需安装）。5. 支持 Docker Compose 部署（镜像约 20GB，需 NVIDIA Container Toolkit）。6. 首次使用会自动下载 YOLO 检测权重和 LAMA\u002FE2FGVI 修复模型。7. E2FGVI_HQ 模式在无 CUDA 设备上非常缓慢，仅推荐用于需要时间一致性的场景；LAMA 模式速度快但可能有闪烁。","未说明 (通过 uv 同步环境)",[63,64,65,66,67,68,69],"FFmpeg","uv","torch","ultralytics (YOLOv11s)","iopaint (LAMA\u002FE2FGVI)","streamlit","fastapi",[71],"视频",2,"ready","2026-03-27T02:49:30.150509","2026-04-19T03:05:58.286025",[77,82,87,92,97,102],{"id":78,"question_zh":79,"answer_zh":80,"source_url":81},41143,"去水印后的视频中，部分帧仍然显示水印或出现闪烁怎么办？","该问题通常是由于水印具有时序一致性（在固定位置停留一段时间后跳转），导致部分帧未被检测到。维护者已通过 PR #65 和 PR #13 解决了此问题，引入了时序一致性对未检测到的帧进行插值修复（imputation）。请拉取最新代码（pull new code）以获取更新后的模型和逻辑，整体去水印效果已有显著提升。如果仍有剧烈变动画面下的残留，目前 Lama 模型在此类场景下仍有局限，但新版本已大幅改善。","https:\u002F\u002Fgithub.com\u002Flinkedlist771\u002FSoraWatermarkCleaner\u002Fissues\u002F3",{"id":83,"question_zh":84,"answer_zh":85,"source_url":86},41144,"如何支持带有用户名的新版 Sora 水印格式？","维护者已使用增强的水印数据集训练了新模型来支持带用户名的水印格式。请拉取主分支代码以同步更新，权重文件会自动下载。相关修复包含在 PR #40 中。如果更新后仍有伪影，请确保代码已对齐到最新版本。","https:\u002F\u002Fgithub.com\u002Flinkedlist771\u002FSoraWatermarkCleaner\u002Fissues\u002F38",{"id":88,"question_zh":89,"answer_zh":90,"source_url":91},41145,"处理长视频时内存溢出（OOM）怎么办？","早期版本会将所有帧存储在局部变量中，导致处理长视频时内存持续增长直至溢出。维护者已在 PR #29 中修复了此问题，优化了内存管理以支持长视频处理。请拉取最新代码即可解决。此外，如果使用的是 Streamlit 网页界面，文件大小限制（如 200MB）也可能需要相应调整以适应更大的文件。","https:\u002F\u002Fgithub.com\u002Flinkedlist771\u002FSoraWatermarkCleaner\u002Fissues\u002F26",{"id":93,"question_zh":94,"answer_zh":95,"source_url":96},41146,"如何提高去水印过程的推理速度并降低显存占用？","维护者通过多项优化实现了约 2.43 倍的速度提升。主要优化措施包括：1. 在 YOLO 检测阶段使用批处理（Batch process）；2. 在清理阶段（cleaner stage）使用半精度（Half precision）计算。这些改进已合并至主分支（见 PR #90 和 PR #91），请拉取最新代码以获得更快的推理速度和更低的显存需求。","https:\u002F\u002Fgithub.com\u002Flinkedlist771\u002FSoraWatermarkCleaner\u002Fissues\u002F69",{"id":98,"question_zh":99,"answer_zh":100,"source_url":101},41147,"便携式版本下载后，如何启动程序或运行 example.py？","如果是从便携式发行版（portable distribution）下载的，不要直接运行 example.py。请在终端中执行以下命令来启动交互式界面：`.\\python\\Scripts\\streamlit.exe run .\\app.py`。该命令位于项目根目录的 `run.bat` 文件中。如果系统提示找不到路径，请确保你在正确的目录下执行，或检查便携式包内的文件结构是否完整。","https:\u002F\u002Fgithub.com\u002Flinkedlist771\u002FSoraWatermarkCleaner\u002Fissues\u002F24",{"id":103,"question_zh":104,"answer_zh":105,"source_url":106},41148,"为什么某些帧的水印去除效果不佳，尤其是在画面剧烈变化时？","这是因为目前的 Lama 模型在处理时序一致性的图像修复（inpainting）时，对于水印处画面剧烈变动的情况效果有限。虽然已通过时序一致性检测对遗漏帧进行了插值修复（见 PR #13），但在极端动态场景下仍可能不完美。建议尝试最新代码，维护者正在持续优化此问题，同时也欢迎用户提供具体的案例视频以便进一步分析。","https:\u002F\u002Fgithub.com\u002Flinkedlist771\u002FSoraWatermarkCleaner\u002Fissues\u002F6",[108,113,118,123,128],{"id":109,"version":110,"summary_zh":111,"released_at":112},324725,"V0.0.5","                                                                        \r\n  ## 新功能                                     \r\n                                                                          \r\n  现已支持使用 Docker Compose 进行部署，这使得 SoraWatermarkCleaner 作为服务运行变得极为简便，无需手动配置环境。更多详情请参阅：https:\u002F\u002Fgithub.com\u002Flinkedlist771\u002FSoraWatermarkCleaner\u002Fpull\u002F96 。                              \r\n                                                 \r\n  ## 开发动机                                                              \r\n                                                 \r\n  此功能解决了用户在 CUDA 环境配置、FFmpeg 安装以及依赖管理方面常遇到的痛点。通过 Docker Compose，所有这些复杂步骤都被封装在一个可复现的部署方案中。","2026-03-10T07:06:35",{"id":114,"version":115,"summary_zh":116,"released_at":117},324726,"V0.0.4","### 亮点\n\n本次发布重点在于视频水印去除的**显著性能提升**，相比基准的 E2FGVI 清除工具，最高可实现**2.43倍加速**。详情请参阅：https:\u002F\u002Fgithub.com\u002Flinkedlist771\u002FSoraWatermarkCleaner\u002Fpull\u002F91、https:\u002F\u002Fgithub.com\u002Flinkedlist771\u002FSoraWatermarkCleaner\u002Fpull\u002F90、https:\u002F\u002Fgithub.com\u002Flinkedlist771\u002FSoraWatermarkCleaner\u002Fpull\u002F87 以及 https:\u002F\u002Fgithub.com\u002Flinkedlist771\u002FSoraWatermarkCleaner\u002Fissues\u002F69。\n\n### ✨ 新特性\n\n#### 1. Bf16 推理支持\n- 通过 `use_bf16=True` 启用 bfloat16 精度推理\n- 在支持的 GPU（Ampere+，例如 RTX 30\u002F40 系列、A100）上，处理速度最高可提升至**2.43倍**\n- 为 bf16 模式单独设置编译缓存，避免重复编译开销\n\n#### 2. YOLO 批量检测\n- 支持水印检测的批量处理（默认 `detect_batch_size=4`）\n- 检测阶段提速约**40%**\n\n#### 3. Torch Compile 集成\n- 自动对 E2FGVI 模型应用 `torch.compile` 优化\n- 缓存编译结果以加快后续运行速度\n- 清除阶段提速约**22%**\n\n### 📊 性能基准测试\n\n| 检测器   | 批量 | 清除器   | TorchCompile | Bf16 | 时间 (秒) | 加速比 |\n|:--------:|:-----:|:-------:|:------------:|:----:|:--------:|:-------:|\n| YOLO     | ×     | LAMA    | ×            | ×    | 44.33    | -       |\n| YOLO     | ×     | E2FGVI  | ×            | ×    | 142.42   | 1.00×   |\n| YOLO     | ×     | E2FGVI  | ✓            | ×    | 117.19   | 1.22×   |\n| YOLO     | 4     | E2FGVI  | ✓            | ×    | 82.63    | 1.72×   |\n| YOLO     | 4     | E2FGVI  | ✓            | ✓    | 58.60    | **2.43×**   |\n\n> 测试使用一段 10 秒的视频（280 帧，704×1280 分辨率），搭载 RTX 显卡。","2026-01-08T09:54:28",{"id":119,"version":120,"summary_zh":121,"released_at":122},324727,"V0.0.3","1. 我们提供了两种去除水印的模型。LAMA 速度快，但清理后的区域可能会出现闪烁；而 E2FGVI_HQ 则避免了这一问题，不过它仅支持 CUDA 加速，在 CPU 或 MPS 上运行会非常慢。更多详情请参阅：https:\u002F\u002Fgithub.com\u002Flinkedlist771\u002FSoraWatermarkCleaner\u002Fpull\u002F65。\n\n2. 通过 https:\u002F\u002Fgithub.com\u002Flinkedlist771\u002FSoraWatermarkCleaner\u002Fpull\u002F45 和 https:\u002F\u002Fgithub.com\u002Flinkedlist771\u002FSoraWatermarkCleaner\u002Fpull\u002F54，我们在 Streamlit 和命令行工具中添加了批量处理功能。","2025-11-18T15:14:45",{"id":124,"version":125,"summary_zh":126,"released_at":127},324728,"v0.0.2","1. 基于水印出现的时间一致性特征，我们利用这一特性来弥补漏检问题：https:\u002F\u002Fgithub.com\u002Flinkedlist771\u002FSoraWatermarkCleaner\u002Fpull\u002F13\n\n2. 码率固定：https:\u002F\u002Fgithub.com\u002Flinkedlist771\u002FSoraWatermarkCleaner\u002Fpull\u002F7\n\n3. 数据集已发布：https:\u002F\u002Fhuggingface.co\u002Fdatasets\u002FLLinked\u002Fsora-watermark-dataset\n\n4. 提供 Windows 一键式便携版：https:\u002F\u002Fgithub.com\u002Flinkedlist771\u002FSoraWatermarkCleaner?tab=readme-ov-file#3-one-click-portable-version","2025-10-17T06:15:20",{"id":129,"version":130,"summary_zh":131,"released_at":132},324729,"V0.0.1","第一个版本的 YOLO 权重，用于检测 Sora2 水印的位置。","2025-10-05T13:21:33",[134,145,158,166,174,182],{"id":135,"name":136,"github_repo":137,"description_zh":138,"stars":139,"difficulty_score":55,"last_commit_at":140,"category_tags":141,"status":73},4292,"Deep-Live-Cam","hacksider\u002FDeep-Live-Cam","Deep-Live-Cam 是一款专注于实时换脸与视频生成的开源工具，用户仅需一张静态照片，即可通过“一键操作”实现摄像头画面的即时变脸或制作深度伪造视频。它有效解决了传统换脸技术流程繁琐、对硬件配置要求极高以及难以实时预览的痛点，让高质量的数字内容创作变得触手可及。\n\n这款工具不仅适合开发者和技术研究人员探索算法边界，更因其极简的操作逻辑（仅需三步：选脸、选摄像头、启动），广泛适用于普通用户、内容创作者、设计师及直播主播。无论是为了动画角色定制、服装展示模特替换，还是制作趣味短视频和直播互动，Deep-Live-Cam 都能提供流畅的支持。\n\n其核心技术亮点在于强大的实时处理能力，支持口型遮罩（Mouth Mask）以保留使用者原始的嘴部动作，确保表情自然精准；同时具备“人脸映射”功能，可同时对画面中的多个主体应用不同面孔。此外，项目内置了严格的内容安全过滤机制，自动拦截涉及裸露、暴力等不当素材，并倡导用户在获得授权及明确标注的前提下合规使用，体现了技术发展与伦理责任的平衡。",88924,"2026-04-06T03:28:53",[142,143,144,71],"开发框架","图像","Agent",{"id":146,"name":147,"github_repo":148,"description_zh":149,"stars":150,"difficulty_score":72,"last_commit_at":151,"category_tags":152,"status":73},2268,"ML-For-Beginners","microsoft\u002FML-For-Beginners","ML-For-Beginners 是由微软推出的一套系统化机器学习入门课程，旨在帮助零基础用户轻松掌握经典机器学习知识。这套课程将学习路径规划为 12 周，包含 26 节精炼课程和 52 道配套测验，内容涵盖从基础概念到实际应用的完整流程，有效解决了初学者面对庞大知识体系时无从下手、缺乏结构化指导的痛点。\n\n无论是希望转型的开发者、需要补充算法背景的研究人员，还是对人工智能充满好奇的普通爱好者，都能从中受益。课程不仅提供了清晰的理论讲解，还强调动手实践，让用户在循序渐进中建立扎实的技能基础。其独特的亮点在于强大的多语言支持，通过自动化机制提供了包括简体中文在内的 50 多种语言版本，极大地降低了全球不同背景用户的学习门槛。此外，项目采用开源协作模式，社区活跃且内容持续更新，确保学习者能获取前沿且准确的技术资讯。如果你正寻找一条清晰、友好且专业的机器学习入门之路，ML-For-Beginners 将是理想的起点。",85267,"2026-04-18T11:00:28",[143,153,71,154,144,155,156,142,157],"数据工具","插件","其他","语言模型","音频",{"id":159,"name":160,"github_repo":161,"description_zh":162,"stars":163,"difficulty_score":55,"last_commit_at":164,"category_tags":165,"status":73},3833,"MoneyPrinterTurbo","harry0703\u002FMoneyPrinterTurbo","MoneyPrinterTurbo 是一款利用 AI 大模型技术，帮助用户一键生成高清短视频的开源工具。只需输入一个视频主题或关键词，它就能全自动完成从文案创作、素材匹配、字幕合成到背景音乐搭配的全过程，最终输出完整的竖屏或横屏短视频。\n\n这款工具主要解决了传统视频制作流程繁琐、门槛高以及素材版权复杂等痛点。无论是需要快速产出内容的自媒体创作者，还是希望尝试视频生成的普通用户，无需具备专业的剪辑技能或昂贵的硬件配置（普通电脑即可运行），都能轻松上手。同时，其清晰的 MVC 架构和对多种主流大模型（如 DeepSeek、Moonshot、通义千问等）的广泛支持，也使其成为开发者进行二次开发或技术研究的理想底座。\n\nMoneyPrinterTurbo 的独特亮点在于其高度的灵活性与本地化友好性。它不仅支持中英文双语及多种语音合成，允许用户精细调整字幕样式和画面比例，还特别优化了国内网络环境下的模型接入方案，让用户无需依赖 VPN 即可使用高性能国产大模型。此外，工具提供批量生成模式，可一次性产出多个版本供用户择优，极大地提升了内容创作的效率与质量。",54991,"2026-04-05T12:23:02",[142,156,144,71,143],{"id":167,"name":168,"github_repo":169,"description_zh":170,"stars":171,"difficulty_score":72,"last_commit_at":172,"category_tags":173,"status":73},2179,"oh-my-openagent","code-yeongyu\u002Foh-my-openagent","oh-my-openagent（简称 omo）是一款强大的开源智能体编排框架，前身名为 oh-my-opencode。它致力于打破单一模型供应商的生态壁垒，解决开发者在构建 AI 应用时面临的“厂商锁定”难题。不同于仅依赖特定模型的封闭方案，omo 倡导开放市场理念，支持灵活调度多种主流大模型：利用 Claude、Kimi 或 GLM 进行任务编排，调用 GPT 处理复杂推理，借助 Minimax 提升响应速度，或发挥 Gemini 的创意优势。\n\n这款工具特别适合希望摆脱平台限制、追求极致性能与成本平衡的开发者及研究人员使用。通过统一接口，用户可以轻松组合不同模型的长处，构建更高效、更具适应性的智能体系统。其独特的技术亮点在于“全模型兼容”架构，让用户不再受制于某一家公司的策略变动或定价调整，真正实现对前沿模型资源的自由驾驭。无论是构建自动化编码助手，还是开发多步骤任务处理流程，oh-my-openagent 都能提供灵活且稳健的基础设施支持，助力用户在快速演进的 AI 生态中保持技术主动权。",52498,"2026-04-18T11:30:14",[71,156,142,143,144],{"id":175,"name":176,"github_repo":177,"description_zh":178,"stars":179,"difficulty_score":55,"last_commit_at":180,"category_tags":181,"status":73},5295,"tabby","TabbyML\u002Ftabby","Tabby 是一款可私有化部署的开源 AI 编程助手，旨在为开发团队提供 GitHub Copilot 的安全替代方案。它核心解决了代码辅助过程中的数据隐私顾虑与云端依赖问题，让企业能够在完全掌控数据的前提下享受智能代码补全、聊天问答及上下文理解带来的效率提升。\n\n这款工具特别适合注重代码安全的企业开发团队、希望本地化运行大模型的科研机构，以及拥有消费级显卡的个人开发者。Tabby 的最大亮点在于其“开箱即用”的自包含架构，无需配置复杂的数据库或依赖云服务即可快速启动。同时，它对硬件十分友好，支持在普通的消费级 GPU 上流畅运行，大幅降低了部署门槛。此外，Tabby 提供了标准的 OpenAPI 接口，能轻松集成到现有的云 IDE 或内部开发流程中，并支持通过 REST API 接入自定义文档以增强知识上下文。从代码自动补全到基于 Git 仓库的智能问答，Tabby 致力于成为开发者身边懂业务、守安全的智能伙伴。",33308,"2026-04-07T20:23:18",[142,156,144,143,71],{"id":183,"name":184,"github_repo":185,"description_zh":186,"stars":187,"difficulty_score":188,"last_commit_at":189,"category_tags":190,"status":73},6525,"generative-models","Stability-AI\u002Fgenerative-models","Generative Models 是 Stability AI 推出的开源项目，核心亮点在于最新发布的 Stable Video 4D 2.0（SV4D 2.0）。这是一个先进的视频转 4D 扩散模型，旨在解决从单一视角视频中生成高保真、多视角动态 3D 资产的技术难题。传统方法往往难以处理物体自遮挡或背景杂乱的情况，且生成的动态细节容易模糊，而 SV4D 2.0 通过改进的架构，显著提升了运动中的画面锐度与时空一致性，无需依赖额外的多视角参考图即可稳健地合成新颖视角的视频。\n\n该项目特别适合计算机视觉研究人员、AI 开发者以及从事 3D 内容创作的设计师使用。对于研究者，它提供了探索 4D 生成前沿的完整代码与训练权重；对于开发者，其支持自动回归生成长视频及低显存优化选项，便于集成与调试；对于设计师，它能将简单的物体运动视频快速转化为可用于游戏或影视的多视角 4D 素材。技术层面，SV4D 2.0 支持一次性生成 12 帧视频对应 4 个相机视角（或 5 帧对应 8 视角），分辨率达 576x576，并能更好地泛化至真实世界场景。用户只需准备一段白底或经简单抠图处理的物体运动视频，",27078,4,"2026-04-10T22:08:34",[71,155]]