[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"similar-TIGER-AI-Lab--AnyV2V":3,"tool-TIGER-AI-Lab--AnyV2V":61},[4,18,26,36,44,53],{"id":5,"name":6,"github_repo":7,"description_zh":8,"stars":9,"difficulty_score":10,"last_commit_at":11,"category_tags":12,"status":17},4358,"openclaw","openclaw\u002Fopenclaw","OpenClaw 是一款专为个人打造的本地化 AI 助手，旨在让你在自己的设备上拥有完全可控的智能伙伴。它打破了传统 AI 助手局限于特定网页或应用的束缚，能够直接接入你日常使用的各类通讯渠道，包括微信、WhatsApp、Telegram、Discord、iMessage 等数十种平台。无论你在哪个聊天软件中发送消息，OpenClaw 都能即时响应，甚至支持在 macOS、iOS 和 Android 设备上进行语音交互，并提供实时的画布渲染功能供你操控。\n\n这款工具主要解决了用户对数据隐私、响应速度以及“始终在线”体验的需求。通过将 AI 部署在本地，用户无需依赖云端服务即可享受快速、私密的智能辅助，真正实现了“你的数据，你做主”。其独特的技术亮点在于强大的网关架构，将控制平面与核心助手分离，确保跨平台通信的流畅性与扩展性。\n\nOpenClaw 非常适合希望构建个性化工作流的技术爱好者、开发者，以及注重隐私保护且不愿被单一生态绑定的普通用户。只要具备基础的终端操作能力（支持 macOS、Linux 及 Windows WSL2），即可通过简单的命令行引导完成部署。如果你渴望拥有一个懂你",349277,3,"2026-04-06T06:32:30",[13,14,15,16],"Agent","开发框架","图像","数据工具","ready",{"id":19,"name":20,"github_repo":21,"description_zh":22,"stars":23,"difficulty_score":10,"last_commit_at":24,"category_tags":25,"status":17},3808,"stable-diffusion-webui","AUTOMATIC1111\u002Fstable-diffusion-webui","stable-diffusion-webui 是一个基于 Gradio 构建的网页版操作界面，旨在让用户能够轻松地在本地运行和使用强大的 Stable Diffusion 图像生成模型。它解决了原始模型依赖命令行、操作门槛高且功能分散的痛点，将复杂的 AI 绘图流程整合进一个直观易用的图形化平台。\n\n无论是希望快速上手的普通创作者、需要精细控制画面细节的设计师，还是想要深入探索模型潜力的开发者与研究人员，都能从中获益。其核心亮点在于极高的功能丰富度：不仅支持文生图、图生图、局部重绘（Inpainting）和外绘（Outpainting）等基础模式，还独创了注意力机制调整、提示词矩阵、负向提示词以及“高清修复”等高级功能。此外，它内置了 GFPGAN 和 CodeFormer 等人脸修复工具，支持多种神经网络放大算法，并允许用户通过插件系统无限扩展能力。即使是显存有限的设备，stable-diffusion-webui 也提供了相应的优化选项，让高质量的 AI 艺术创作变得触手可及。",162132,"2026-04-05T11:01:52",[14,15,13],{"id":27,"name":28,"github_repo":29,"description_zh":30,"stars":31,"difficulty_score":32,"last_commit_at":33,"category_tags":34,"status":17},1381,"everything-claude-code","affaan-m\u002Feverything-claude-code","everything-claude-code 是一套专为 AI 编程助手（如 Claude Code、Codex、Cursor 等）打造的高性能优化系统。它不仅仅是一组配置文件，而是一个经过长期实战打磨的完整框架，旨在解决 AI 代理在实际开发中面临的效率低下、记忆丢失、安全隐患及缺乏持续学习能力等核心痛点。\n\n通过引入技能模块化、直觉增强、记忆持久化机制以及内置的安全扫描功能，everything-claude-code 能显著提升 AI 在复杂任务中的表现，帮助开发者构建更稳定、更智能的生产级 AI 代理。其独特的“研究优先”开发理念和针对 Token 消耗的优化策略，使得模型响应更快、成本更低，同时有效防御潜在的攻击向量。\n\n这套工具特别适合软件开发者、AI 研究人员以及希望深度定制 AI 工作流的技术团队使用。无论您是在构建大型代码库，还是需要 AI 协助进行安全审计与自动化测试，everything-claude-code 都能提供强大的底层支持。作为一个曾荣获 Anthropic 黑客大奖的开源项目，它融合了多语言支持与丰富的实战钩子（hooks），让 AI 真正成长为懂上",147882,2,"2026-04-09T11:32:47",[14,13,35],"语言模型",{"id":37,"name":38,"github_repo":39,"description_zh":40,"stars":41,"difficulty_score":32,"last_commit_at":42,"category_tags":43,"status":17},2271,"ComfyUI","Comfy-Org\u002FComfyUI","ComfyUI 是一款功能强大且高度模块化的视觉 AI 引擎，专为设计和执行复杂的 Stable Diffusion 图像生成流程而打造。它摒弃了传统的代码编写模式，采用直观的节点式流程图界面，让用户通过连接不同的功能模块即可构建个性化的生成管线。\n\n这一设计巧妙解决了高级 AI 绘图工作流配置复杂、灵活性不足的痛点。用户无需具备编程背景，也能自由组合模型、调整参数并实时预览效果，轻松实现从基础文生图到多步骤高清修复等各类复杂任务。ComfyUI 拥有极佳的兼容性，不仅支持 Windows、macOS 和 Linux 全平台，还广泛适配 NVIDIA、AMD、Intel 及苹果 Silicon 等多种硬件架构，并率先支持 SDXL、Flux、SD3 等前沿模型。\n\n无论是希望深入探索算法潜力的研究人员和开发者，还是追求极致创作自由度的设计师与资深 AI 绘画爱好者，ComfyUI 都能提供强大的支持。其独特的模块化架构允许社区不断扩展新功能，使其成为当前最灵活、生态最丰富的开源扩散模型工具之一，帮助用户将创意高效转化为现实。",108111,"2026-04-08T11:23:26",[14,15,13],{"id":45,"name":46,"github_repo":47,"description_zh":48,"stars":49,"difficulty_score":32,"last_commit_at":50,"category_tags":51,"status":17},4721,"markitdown","microsoft\u002Fmarkitdown","MarkItDown 是一款由微软 AutoGen 团队打造的轻量级 Python 工具，专为将各类文件高效转换为 Markdown 格式而设计。它支持 PDF、Word、Excel、PPT、图片（含 OCR）、音频（含语音转录）、HTML 乃至 YouTube 链接等多种格式的解析，能够精准提取文档中的标题、列表、表格和链接等关键结构信息。\n\n在人工智能应用日益普及的今天，大语言模型（LLM）虽擅长处理文本，却难以直接读取复杂的二进制办公文档。MarkItDown 恰好解决了这一痛点，它将非结构化或半结构化的文件转化为模型“原生理解”且 Token 效率极高的 Markdown 格式，成为连接本地文件与 AI 分析 pipeline 的理想桥梁。此外，它还提供了 MCP（模型上下文协议）服务器，可无缝集成到 Claude Desktop 等 LLM 应用中。\n\n这款工具特别适合开发者、数据科学家及 AI 研究人员使用，尤其是那些需要构建文档检索增强生成（RAG）系统、进行批量文本分析或希望让 AI 助手直接“阅读”本地文件的用户。虽然生成的内容也具备一定可读性，但其核心优势在于为机器",93400,"2026-04-06T19:52:38",[52,14],"插件",{"id":54,"name":55,"github_repo":56,"description_zh":57,"stars":58,"difficulty_score":10,"last_commit_at":59,"category_tags":60,"status":17},4487,"LLMs-from-scratch","rasbt\u002FLLMs-from-scratch","LLMs-from-scratch 是一个基于 PyTorch 的开源教育项目，旨在引导用户从零开始一步步构建一个类似 ChatGPT 的大型语言模型（LLM）。它不仅是同名技术著作的官方代码库，更提供了一套完整的实践方案，涵盖模型开发、预训练及微调的全过程。\n\n该项目主要解决了大模型领域“黑盒化”的学习痛点。许多开发者虽能调用现成模型，却难以深入理解其内部架构与训练机制。通过亲手编写每一行核心代码，用户能够透彻掌握 Transformer 架构、注意力机制等关键原理，从而真正理解大模型是如何“思考”的。此外，项目还包含了加载大型预训练权重进行微调的代码，帮助用户将理论知识延伸至实际应用。\n\nLLMs-from-scratch 特别适合希望深入底层原理的 AI 开发者、研究人员以及计算机专业的学生。对于不满足于仅使用 API，而是渴望探究模型构建细节的技术人员而言，这是极佳的学习资源。其独特的技术亮点在于“循序渐进”的教学设计：将复杂的系统工程拆解为清晰的步骤，配合详细的图表与示例，让构建一个虽小但功能完备的大模型变得触手可及。无论你是想夯实理论基础，还是为未来研发更大规模的模型做准备",90106,"2026-04-06T11:19:32",[35,15,13,14],{"id":62,"github_repo":63,"name":64,"description_en":65,"description_zh":66,"ai_summary_zh":67,"readme_en":68,"readme_zh":69,"quickstart_zh":70,"use_case_zh":71,"hero_image_url":72,"owner_login":73,"owner_name":74,"owner_avatar_url":75,"owner_bio":76,"owner_company":77,"owner_location":77,"owner_email":78,"owner_twitter":77,"owner_website":77,"owner_url":79,"languages":80,"stars":93,"forks":94,"last_commit_at":95,"license":96,"difficulty_score":10,"env_os":97,"env_gpu":98,"env_ram":99,"env_deps":100,"category_tags":111,"github_topics":113,"view_count":32,"oss_zip_url":77,"oss_zip_packed_at":77,"status":17,"created_at":121,"updated_at":122,"faqs":123,"releases":154},5917,"TIGER-AI-Lab\u002FAnyV2V","AnyV2V","Code and data for \"AnyV2V: A Tuning-Free Framework For Any Video-to-Video Editing Tasks\" [TMLR 2024]","AnyV2V 是一个专为视频编辑打造的开源框架，旨在让复杂的视频修改变得像处理单张图片一样简单。它核心解决了传统视频编辑中难以兼顾“画面美观度”与“时间连贯性”的痛点，同时避免了繁琐的模型训练过程。\n\n以往想要改变视频风格或内容，往往需要针对特定任务微调模型或逐帧修图，不仅耗时且容易导致画面闪烁。AnyV2V 创新性地将视频编辑转化为图像编辑问题，用户只需提供一张参考图片，即可驱动整个视频的变换。无论是基于提示词的内容修改，还是艺术风格的迁移，它都能无缝衔接现有的图像编辑方法（如 InstructPix2Pix 或 InstantStyle），在保持视频流畅自然的同时实现多样化编辑。\n\n其最大的技术亮点在于“无需训练”（Training-Free）。这意味着用户无需具备深厚的深度学习背景或昂贵的算力资源来微调模型，下载代码配置好环境后即可直接使用。此外，作为首个利用图像生成视频（I2V）模型进行视频编辑的工作，它在学术界也具有重要意义。\n\nAnyV2V 非常适合希望快速尝试视频创意的设计师、需要灵活实验算法的研究人员，以及想要体验前沿 AI 视频技术的开发者。通过本地 Gradio 界","AnyV2V 是一个专为视频编辑打造的开源框架，旨在让复杂的视频修改变得像处理单张图片一样简单。它核心解决了传统视频编辑中难以兼顾“画面美观度”与“时间连贯性”的痛点，同时避免了繁琐的模型训练过程。\n\n以往想要改变视频风格或内容，往往需要针对特定任务微调模型或逐帧修图，不仅耗时且容易导致画面闪烁。AnyV2V 创新性地将视频编辑转化为图像编辑问题，用户只需提供一张参考图片，即可驱动整个视频的变换。无论是基于提示词的内容修改，还是艺术风格的迁移，它都能无缝衔接现有的图像编辑方法（如 InstructPix2Pix 或 InstantStyle），在保持视频流畅自然的同时实现多样化编辑。\n\n其最大的技术亮点在于“无需训练”（Training-Free）。这意味着用户无需具备深厚的深度学习背景或昂贵的算力资源来微调模型，下载代码配置好环境后即可直接使用。此外，作为首个利用图像生成视频（I2V）模型进行视频编辑的工作，它在学术界也具有重要意义。\n\nAnyV2V 非常适合希望快速尝试视频创意的设计师、需要灵活实验算法的研究人员，以及想要体验前沿 AI 视频技术的开发者。通过本地 Gradio 界面或在线 Demo，各类用户都能轻松上手，将静态图像的编辑能力瞬间扩展到动态视频领域。","# \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FTIGER-AI-Lab_AnyV2V_readme_e7f42551b6b3.png\" width=\"30\"\u002F> AnyV2V\n[![arXiv](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FarXiv-2403.14468-b31b1b.svg)](https:\u002F\u002Farxiv.org\u002Fabs\u002F2403.14468)\n\u003Ca href='https:\u002F\u002Fhuggingface.co\u002Fpapers\u002F2403.14468'>\u003Cimg src='https:\u002F\u002Fimg.shields.io\u002Fstatic\u002Fv1?label=Paper&message=Huggingface&color=orange'>\u003C\u002Fa> \n\n\u003Ca href='https:\u002F\u002Fhuggingface.co\u002Fspaces\u002FTIGER-Lab\u002FAnyV2V'>\u003Cimg src='https:\u002F\u002Fimg.shields.io\u002Fbadge\u002F%F0%9F%A4%97%20Hugging%20Face-Spaces-blue'>\u003C\u002Fa>\n[![Replicate](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FTIGER-AI-Lab_AnyV2V_readme_7dacf1cc5d87.png)](https:\u002F\u002Freplicate.com\u002Fcjwbw\u002Fanyv2v) \n\n[**🌐 Homepage**](https:\u002F\u002Ftiger-ai-lab.github.io\u002FAnyV2V\u002F)  | [**📖 arXiv**](https:\u002F\u002Farxiv.org\u002Fabs\u002F2403.14468) | [**🤗 HuggingFace Demo**](https:\u002F\u002Fhuggingface.co\u002Fspaces\u002FTIGER-Lab\u002FAnyV2V) | [**🎬 Replicate Demo**](https:\u002F\u002Freplicate.com\u002Fcjwbw\u002Fanyv2v) \n\n\n[![contributors](https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Fcontributors\u002FTIGER-AI-Lab\u002FAnyV2V)](https:\u002F\u002Fgithub.com\u002FTIGER-AI-Lab\u002FAnyV2V\u002Fgraphs\u002Fcontributors)\n[![license](https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Flicense\u002FTIGER-AI-Lab\u002FAnyV2V.svg)](https:\u002F\u002Fgithub.com\u002FTIGER-AI-Lab\u002FAnyV2V\u002Fblob\u002Fmain\u002FLICENSE)\n[![GitHub](https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Fstars\u002FTIGER-AI-Lab\u002FAnyV2V?style=social)](https:\u002F\u002Fgithub.com\u002FTIGER-AI-Lab\u002FAnyV2V)\n[![Hits](https:\u002F\u002Fhits.seeyoufarm.com\u002Fapi\u002Fcount\u002Fincr\u002Fbadge.svg?url=https%3A%2F%2Fgithub.com%2FTIGER-AI-Lab%2FAnyV2V&count_bg=%23C83DB9&title_bg=%23555555&icon=&icon_color=%23E7E7E7&title=visitors&edge_flat=false)](https:\u002F\u002Fhits.seeyoufarm.com)\n\nThis repo contains the codebase for our TMLR 2024 paper \"[AnyV2V: A Tuning-Free Framework For Any Video-to-Video Editing Tasks](https:\u002F\u002Farxiv.org\u002Fpdf\u002F2403.14468.pdf)\"\n\n## Introduction\nAnyV2V is a framework to achieve high appearance and temporal consistency in video editing.\n- Perform Video Editing **WITH ONLY SINGLE IMAGE**\n  - turning video editing into an image editing problem\n  - can seamlessly build on top of image editing methods to perform diverse types of editing\n- Training-Free\n  - Does not require any training\u002Ffine-tuning\n\n\u003Cdiv align=\"center\">\n  \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FTIGER-AI-Lab_AnyV2V_readme_58a377a76b65.gif\" alt=\"AnyV2V\" width=\"70%\"\u002F>\n\u003C\u002Fdiv>\n\n\n## 📰 News\n* 2024 Oct 29: Paper accepted to TMLR 2024.\n* 2024 Apr 16: Local Gradio demo now supports edits up to 16 seconds (128 frames).\n* 2024 Apr 11: Added local gradio demo for AnyV2V(i2vgen-xl)+[InstantStyle](https:\u002F\u002Fgithub.com\u002FInstantStyle\u002FInstantStyle).\n* 2024 Apr 7: Added sections [the showcases](https:\u002F\u002Fgithub.com\u002FTIGER-AI-Lab\u002FAnyV2V\u002Fissues\u002F6). Share your AnyV2V Edits with us! \n* 2024 Apr 7: We recommend using [InstantStyle](https:\u002F\u002Fgithub.com\u002FInstantStyle\u002FInstantStyle) with AnyV2V for Video Stylization! Check out [the demo!](https:\u002F\u002Ftwitter.com\u002Fvinesmsuic\u002Fstatus\u002F1777170927500787782)!\n* 2024 Apr 3: [HuggingFace Demo](https:\u002F\u002Fhuggingface.co\u002Fspaces\u002FTIGER-Lab\u002FAnyV2V) is available!\n* 2024 Apr 2: Added local Gradio demo for AnyV2V(i2vgen-xl).\n* 2024 Mar 24: Added [Replicate demo](https:\u002F\u002Freplicate.com\u002Fcjwbw\u002Fanyv2v) for AnyV2V(i2vgen-xl). Thanks [@chenxwh](https:\u002F\u002Fgithub.com\u002Fchenxwh) for the effort!!\n* 2024 Mar 22: Code released.\n* 2024 Mar 21: Our paper is featured on [Huggingface Daily Papers](https:\u002F\u002Fhuggingface.co\u002Fpapers\u002F2403.14468)!\n* 2024 Mar 21: Paper available on [Arxiv](https:\u002F\u002Farxiv.org\u002Fabs\u002F2403.14468). AnyV2V is the first work to leverage I2V models in Video Editing!\n\n\n## ▶️ Quick Start for AnyV2V(i2vgen-xl)\n### Environment\nPrepare the codebase of the AnyV2V project and Conda environment using the following commands:\n```bash\ngit clone https:\u002F\u002Fgithub.com\u002FTIGER-AI-Lab\u002FAnyV2V\ncd AnyV2V\n\ncd i2vgen-xl\nconda env create -f environment.yml\n```\n\n#### 🤗 Local Gradio Demo\n\nAnyV2V+InstructPix2Pix (Prompt-based Editing)\n```shell\npython gradio_demo.py\n```\n\nAnyV2V+InstantStyle Demo (Style Transfer)\n```shell\n# Download InstantStyle depends\ngit lfs install\ngit clone https:\u002F\u002Fhuggingface.co\u002Fh94\u002FIP-Adapter\nmv IP-Adapter\u002Fmodels models\nmv IP-Adapter\u002Fsdxl_models sdxl_models\nrm -rf IP-Adapter\n# Run script\npython gradio_demo_style.py\n```\n\n#### 📜 Notebook Demo \nWe provide a notebook demo ```i2vgen-xl\u002Fdemo.ipynb``` for AnyV2V(i2vgen-xl).\nYou can run the notebook to perform Prompt-Based Editing on a single video.\nMake sure the environment is set up correctly before running the notebook.\n\n#### To edit multiple demo videos, please refer to the [Video Editing](#Video-Editing) section.\n\n### Video Editing\nWe provide demo source videos and edited images in the ```demo``` folder. \nBelow are the instructions for performing video editing on the provided source videos. \nNavigate to ```i2vgen-xl\u002Fconfigs\u002Fgroup_ddim_inversion``` and ```i2vgen-xl\u002Fconfigs\u002Fgroup_pnp_edit```:\n1. Modify the ```template.yaml``` files to specify the ```device```.\n2. Modify the ```group_config.json``` files according to the provided examples. The configurations in ```group_config.json``` will override the configurations in ```template.yaml```.\nTo enable an example, set ```active: true```; to disable it, set ```active: false```.\n\nThen you can run the following command to perform inference:\n```bash\ncd i2vgen-xl\u002Fscripts\nbash run_group_ddim_inversion.sh\nbash run_group_pnp_edit.sh\n```\nor run the following command using Python:\n```bash\ncd i2vgen-xl\u002Fscripts\n\n# First invert the latent of source video\npython run_group_ddim_inversion.py \\\n--template_config \"configs\u002Fgroup_ddim_inversion\u002Ftemplate.yaml\" \\\n--configs_json \"configs\u002Fgroup_ddim_inversion\u002Fgroup_config.json\"\n\n# Then run Anyv2v pipeline with the source video latent\npython run_group_pnp_edit.py \\\n--template_config \"configs\u002Fgroup_pnp_edit\u002Ftemplate.yaml\" \\\n--configs_json \"configs\u002Fgroup_pnp_edit\u002Fgroup_config.json\"\n```\n\n#### To edit your own source videos, follow the steps outlined below:\n1. Prepare the source video ```Your-Video.mp4```in the ```demo``` folder.\n2. Create two new folders ```demo\u002FYour-Video-Name``` and  ```demo\u002FYour-Video-Name\u002Fedited_first_frame```.\n3. Run the following command to perform first frame image editing:\n```bash\npython edit_image.py --video_path \".\u002Fdemo\u002FYour-Video.mp4\" --input_dir \".\u002Fdemo\" --output_dir \".\u002Fdemo\u002FYour-Video-Name\u002Fedited_first_frame\" --prompt \"Your prompt\"\n```\nYou can also use any other image editing method, such as InstantID, AnyDoor, or WISE, to edit the first frame.\nPlease put the edited first frame images in the ```demo\u002FYour-Video-Name\u002Fedited_first_frame``` folder.\n\n4. Add an entry to the ```group_config.json``` files located in ```i2vgen-xl\u002Fconfigs\u002Fgroup_ddim_inversion``` and ```i2vgen-xl\u002Fconfigs\u002Fgroup_pnp_edit``` directories for your video, following the provided examples. \n5. Run the inference command:\n```bash\ncd i2vgen-xl\u002Fscripts\nbash run_group_ddim_inversion.sh\nbash run_group_pnp_edit.sh\n```\n\n## ▶️ Quick Start for AnyV2V(consisti2v)\n\nPlease refer to [.\u002Fconsisti2v\u002FREADME.md](consisti2v\u002FREADME.md)\n\n## ▶️ Quick Start for AnyV2V(seine)\n\nPlease refer to [.\u002Fseine\u002FREADME.md](seine\u002FREADME.md)\n\n## ▶️ Misc\n\n### First Frame Image Edit\nWe provide the instructpix2pix port for image editing with an instruction prompt.\n```shell\nusage: edit_image.py [-h] [--model {magicbrush,instructpix2pix}]\n                     [--video_path VIDEO_PATH] [--input_dir INPUT_DIR]\n                     [--output_dir OUTPUT_DIR] [--prompt PROMPT] [--force_512]\n                     [--dict_file DICT_FILE] [--seed SEED]\n                     [--negative_prompt NEGATIVE_PROMPT]\n\nProcess some images.\n\noptional arguments:\n  -h, --help            show this help message and exit\n  --model {magicbrush,instructpix2pix}\n                        Name of the image editing model\n  --video_path VIDEO_PATH\n                        Name of the video\n  --input_dir INPUT_DIR\n                        Directory containing the video\n  --output_dir OUTPUT_DIR\n                        Directory to save the processed images\n  --prompt PROMPT       Instruction prompt for editing\n  --force_512           Force resize to 512x512 when feeding into image model\n  --dict_file DICT_FILE\n                        JSON file containing files, instructions etc.\n  --seed SEED           Seed for random number generator\n  --negative_prompt NEGATIVE_PROMPT\n                        Negative prompt for editing\n```\n\nUsage Example:\n```shell\npython edit_image.py --video_path \".\u002Fdemo\u002FMan Walking.mp4\" --input_dir \".\u002Fdemo\" --output_dir \".\u002Fdemo\u002FMan Walking\u002Fedited_first_frame\" --prompt \"turn the man into darth vader\"\n```\n\nYou can use other image models for editing, here are some online demo models that you can use:\n* [Idenity Manipulation model: InstantID](https:\u002F\u002Fhuggingface.co\u002Fspaces\u002FInstantX\u002FInstantID)\n* [Subject Driven Image editing model: AnyDoor](https:\u002F\u002Fhuggingface.co\u002Fspaces\u002Fxichenhku\u002FAnyDoor-online)\n* [Style Transfer model: WISE](https:\u002F\u002Fhuggingface.co\u002Fspaces\u002FMaxReimann\u002FWhitebox-Style-Transfer-Editing)\n* [Style Transfer model: InstantStyle](https:\u002F\u002Fgithub.com\u002FInstantStyle\u002FInstantStyle)\n\n### Video Preprocess Script\n\nIt is possible to edit videos with 16 seconds (128 frames) under an A6000 gpu.\nWe provide a script to trim and crop video into any dimension and length.\n\n```shell\nusage: prepare_video.py [-h] [--input_folder INPUT_FOLDER] [--video_path VIDEO_PATH] [--output_folder OUTPUT_FOLDER]\n                        [--clip_duration CLIP_DURATION] [--width WIDTH] [--height HEIGHT] [--start_time START_TIME] [--end_time END_TIME]\n                        [--n_frames N_FRAMES] [--center_crop] [--x_offset X_OFFSET] [--y_offset Y_OFFSET] [--longest_to_width]\n\nCrop and resize video segments.\n\noptional arguments:\n  -h, --help            show this help message and exit\n  --input_folder INPUT_FOLDER\n                        Path to the input folder containing video files\n  --video_path VIDEO_PATH\n                        Path to the input video file\n  --output_folder OUTPUT_FOLDER\n                        Path to the folder for the output videos\n  --clip_duration CLIP_DURATION\n                        Duration of the video clips in seconds default=2\n  --width WIDTH         Width of the output video (optional) default=512\n  --height HEIGHT       Height of the output video (optional) default=512\n  --start_time START_TIME\n                        Start time for cropping (optional)\n  --end_time END_TIME   End time for cropping (optional)\n  --n_frames N_FRAMES   Number of frames to extract from each video\n  --center_crop         Center crop the video\n  --x_offset X_OFFSET   Horizontal offset for center cropping, range -1 to 1 (optional)\n  --y_offset Y_OFFSET   Vertical offset for center cropping, range -1 to 1 (optional)\n  --longest_to_width    Resize the longest dimension to the specified width\n```\n\nUsage Example:\n```shell\npython prepare_video.py --input_folder src_center_crop\u002F --output_folder processed --start_time 1 --center_crop --x_offset 0 --y_offset 0\npython prepare_video.py --input_folder src_left_crop\u002F --output_folder processed --start_time 1 --center_crop --x_offset -1 --y_offset 0\npython prepare_video.py --input_folder src_right_crop\u002F --output_folder processed --start_time 1 --center_crop --x_offset 1 --y_offset 0\n```\n\n## 📋 TODO\nAnyV2V(i2vgen-xl)\n- [x] Release the code for AnyV2V(i2vgen-xl)\n- [x] Release a notebook demo \n- [x] Release a Gradio demo\n- [x] Hosting Gradio demo on HuggingFace Space\n\nAnyV2V(SEINE)\n- [x] Release the code for AnyV2V(SEINE) \n\nAnyV2V(ConsistI2V)\n- [x] Release the code for AnyV2V(ConsistI2V) \n\nMisc\n- [x] Helper script to preprocess the source video\n- [x] Helper script to obtain edited first frame from the source video\n\n## 🖊️ Citation\n\nPlease kindly cite our paper if you use our code, data, models or results:\n```bibtex\n@article{ku2024anyv2v,\n  title={AnyV2V: A Tuning-Free Framework For Any Video-to-Video Editing Tasks},\n  author={Ku, Max and Wei, Cong and Ren, Weiming and Yang, Harry and Chen, Wenhu},\n  journal={arXiv preprint arXiv:2403.14468},\n  year={2024}\n}\n```\n\n## 🎫 License\n\nThis project is released under the [the MIT License](LICENSE).\nHowever, our code is based on some projects that might used another license:\n\n* [i2vgen-xl](https:\u002F\u002Fgithub.com\u002Fali-vilab\u002FVGen): Missing License\n* [SEINE](https:\u002F\u002Fgithub.com\u002FVchitect\u002FSEINE): Apache-2.0\n* [ConsistI2V](https:\u002F\u002Fgithub.com\u002FTIGER-AI-Lab\u002FConsistI2V): MIT License\n\n## ⭐ Star History\n\n[![Star History Chart](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FTIGER-AI-Lab_AnyV2V_readme_ac05fb4c50af.png)](https:\u002F\u002Fstar-history.com\u002F#TIGER-AI-Lab\u002FAnyV2V&Date)\n\n## 📞 Contact Authors\nMax Ku [@vinemsuic](https:\u002F\u002Fgithub.com\u002Fvinesmsuic), m3ku@uwaterloo.ca\n\u003Cbr>\nCong Wei [@lim142857](https:\u002F\u002Fgithub.com\u002Flim142857), c58wei@uwaterloo.ca\n\u003Cbr>\nWeiming Ren [@wren93](https:\u002F\u002Fgithub.com\u002Fwren93), w2ren@uwaterloo.ca\n\u003Cbr>\n\n## 💞 Acknowledgements\nThe code is built upon the below repositories, we thank all the contributors for open-sourcing.\n* [diffusers](https:\u002F\u002Fgithub.com\u002Fhuggingface\u002Fdiffusers)\n* [ImagenHub](https:\u002F\u002Fgithub.com\u002FTIGER-AI-Lab\u002FImagenHub)\n* [TokenFlow](https:\u002F\u002Fgithub.com\u002Fomerbt\u002FTokenFlow)\n* [i2vgen-xl](https:\u002F\u002Fgithub.com\u002Fali-vilab\u002FVGen)\n* [SEINE](https:\u002F\u002Fgithub.com\u002FVchitect\u002FSEINE)\n* [ConsistI2V](https:\u002F\u002Fgithub.com\u002FTIGER-AI-Lab\u002FConsistI2V)\n","# \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FTIGER-AI-Lab_AnyV2V_readme_e7f42551b6b3.png\" width=\"30\"\u002F> AnyV2V\n[![arXiv](https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FarXiv-2403.14468-b31b1b.svg)](https:\u002F\u002Farxiv.org\u002Fabs\u002F2403.14468)\n\u003Ca href='https:\u002F\u002Fhuggingface.co\u002Fpapers\u002F2403.14468'>\u003Cimg src='https:\u002F\u002Fimg.shields.io\u002Fstatic\u002Fv1?label=Paper&message=Huggingface&color=orange'>\u003C\u002Fa> \n\n\u003Ca href='https:\u002F\u002Fhuggingface.co\u002Fspaces\u002FTIGER-Lab\u002FAnyV2V'>\u003Cimg src='https:\u002F\u002Fimg.shields.io\u002Fbadge\u002F%F0%9F%A4%97%20Hugging%20Face-Spaces-blue'>\u003C\u002Fa>\n[![Replicate](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FTIGER-AI-Lab_AnyV2V_readme_7dacf1cc5d87.png)](https:\u002F\u002Freplicate.com\u002Fcjwbw\u002Fanyv2v) \n\n[**🌐 主页**](https:\u002F\u002Ftiger-ai-lab.github.io\u002FAnyV2V\u002F)  | [**📖 arXiv**](https:\u002F\u002Farxiv.org\u002Fabs\u002F2403.14468) | [**🤗 HuggingFace 演示**](https:\u002F\u002Fhuggingface.co\u002Fspaces\u002FTIGER-Lab\u002FAnyV2V) | [**🎬 Replicate 演示**](https:\u002F\u002Freplicate.com\u002Fcjwbw\u002Fanyv2v) \n\n\n[![contributors](https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Fcontributors\u002FTIGER-AI-Lab\u002FAnyV2V)](https:\u002F\u002Fgithub.com\u002FTIGER-AI-Lab\u002FAnyV2V\u002Fgraphs\u002Fcontributors)\n[![license](https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Flicense\u002FTIGER-AI-Lab\u002FAnyV2V.svg)](https:\u002F\u002Fgithub.com\u002FTIGER-AI-Lab\u002FAnyV2V\u002Fblob\u002Fmain\u002FLICENSE)\n[![GitHub](https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Fstars\u002FTIGER-AI-Lab\u002FAnyV2V?style=social)](https:\u002F\u002Fgithub.com\u002FTIGER-AI-Lab\u002FAnyV2V)\n[![Hits](https:\u002F\u002Fhits.seeyoufarm.com\u002Fapi\u002Fcount\u002Fincr\u002Fbadge.svg?url=https%3A%2F%2Fgithub.com%2FTIGER-AI-Lab%2FAnyV2V&count_bg=%23C83DB9&title_bg=%23555555&icon=&icon_color=%23E7E7E7&title=visitors&edge_flat=false)](https:\u002F\u002Fhits.seeyoufarm.com)\n\n此仓库包含我们发表于 TMLR 2024 的论文“AnyV2V：一种无需微调的通用视频到视频编辑框架”的代码库（[论文链接](https:\u002F\u002Farxiv.org\u002Fpdf\u002F2403.14468.pdf)）。\n\n## 简介\nAnyV2V 是一个能够在视频编辑中实现高度外观一致性和时间一致性的框架。\n- 仅需一张图片即可完成视频编辑\n  - 将视频编辑问题转化为图像编辑问题\n  - 可以无缝地基于现有的图像编辑方法实现多样化的编辑任务\n- 无需训练\n  - 不需要任何训练或微调\n\n\u003Cdiv align=\"center\">\n  \u003Cimg src=\"https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FTIGER-AI-Lab_AnyV2V_readme_58a377a76b65.gif\" alt=\"AnyV2V\" width=\"70%\"\u002F>\n\u003C\u002Fdiv>\n\n\n## 📰 最新消息\n* 2024年10月29日：论文已被 TMLR 2024 接收。\n* 2024年4月16日：本地 Gradio 演示现支持最长 16 秒（128 帧）的编辑。\n* 2024年4月11日：新增了 AnyV2V(i2vgen-xl)+[InstantStyle](https:\u002F\u002Fgithub.com\u002FInstantStyle\u002FInstantStyle) 的本地 Gradio 演示。\n* 2024年4月7日：新增了【展示区】章节（[issue #6](https:\u002F\u002Fgithub.com\u002FTIGER-AI-Lab\u002FAnyV2V\u002Fissues\u002F6)）。欢迎大家分享你的 AnyV2V 编辑作品！\n* 2024年4月7日：我们推荐将 AnyV2V 与 [InstantStyle](https:\u002F\u002Fgithub.com\u002FInstantStyle\u002FInstantStyle) 结合使用，以实现视频风格化！请查看[演示](https:\u002F\u002Ftwitter.com\u002Fvinesmsuic\u002Fstatus\u002F1777170927500787782)！\n* 2024年4月3日：[HuggingFace 演示](https:\u002F\u002Fhuggingface.co\u002Fspaces\u002FTIGER-Lab\u002FAnyV2V)正式上线！\n* 2024年4月2日：新增了 AnyV2V(i2vgen-xl) 的本地 Gradio 演示。\n* 2024年3月24日：为 AnyV2V(i2vgen-xl) 添加了 [Replicate 演示](https:\u002F\u002Freplicate.com\u002Fcjwbw\u002Fanyv2v)。感谢 [@chenxwh](https:\u002F\u002Fgithub.com\u002Fchenxwh) 的辛勤付出！！\n* 2024年3月22日：代码正式发布。\n* 2024年3月21日：我们的论文被收录于 [HuggingFace Daily Papers](https:\u002F\u002Fhuggingface.co\u002Fpapers\u002F2403.14468)！\n* 2024年3月21日：论文已在 [Arxiv](https:\u002F\u002Farxiv.org\u002Fabs\u002F2403.14468) 上线。AnyV2V 是首个在视频编辑中利用 I2V 模型的工作！\n\n\n## ▶️ AnyV2V(i2vgen-xl) 快速入门\n### 环境配置\n使用以下命令准备 AnyV2V 项目代码库和 Conda 环境：\n```bash\ngit clone https:\u002F\u002Fgithub.com\u002FTIGER-AI-Lab\u002FAnyV2V\ncd AnyV2V\n\ncd i2vgen-xl\nconda env create -f environment.yml\n```\n\n#### 🤗 本地 Gradio 演示\n\nAnyV2V+InstructPix2Pix（基于提示的编辑）\n```shell\npython gradio_demo.py\n```\n\nAnyV2V+InstantStyle 演示（风格迁移）\n```shell\n# 下载 InstantStyle 相关依赖\ngit lfs install\ngit clone https:\u002F\u002Fhuggingface.co\u002Fh94\u002FIP-Adapter\nmv IP-Adapter\u002Fmodels models\nmv IP-Adapter\u002Fsdxl_models sdxl_models\nrm -rf IP-Adapter\n# 运行脚本\npython gradio_demo_style.py\n```\n\n#### 📜 Notebook 演示 \n我们提供了 AnyV2V(i2vgen-xl) 的 notebook 演示文件 ```i2vgen-xl\u002Fdemo.ipynb```。你可以运行该 notebook 对单个视频进行基于提示的编辑。请确保环境已正确配置后再运行 notebook。\n\n#### 若要编辑多个演示视频，请参阅【视频编辑】部分。\n\n### 视频编辑\n我们在 ```demo``` 文件夹中提供了演示源视频和编辑后的图像。以下是针对所提供源视频进行视频编辑的操作指南。请导航至 ```i2vgen-xl\u002Fconfigs\u002Fgroup_ddim_inversion``` 和 ```i2vgen-xl\u002Fconfigs\u002Fgroup_pnp_edit```：\n1. 修改 ```template.yaml``` 文件以指定 ```device```。\n2. 根据提供的示例修改 ```group_config.json``` 文件。```group_config.json``` 中的配置会覆盖 ```template.yaml``` 中的配置。\n要启用某个示例，将 ```active: true```；要禁用，则设置 ```active: false```。\n\n然后可以运行以下命令进行推理：\n```bash\ncd i2vgen-xl\u002Fscripts\nbash run_group_ddim_inversion.sh\nbash run_group_pnp_edit.sh\n```\n或者使用 Python 运行以下命令：\n```bash\ncd i2vgen-xl\u002Fscripts\n\n# 首先反演源视频的潜在表示\npython run_group_ddim_inversion.py \\\n--template_config \"configs\u002Fgroup_ddim_inversion\u002Ftemplate.yaml\" \\\n--configs_json \"configs\u002Fgroup_ddim_inversion\u002Fgroup_config.json\"\n\n# 然后使用源视频的潜在表示运行 AnyV2V 流程\npython run_group_pnp_edit.py \\\n--template_config \"configs\u002Fgroup_pnp_edit\u002Ftemplate.yaml\" \\\n--configs_json \"configs\u002Fgroup_pnp_edit\u002Fgroup_config.json\"\n```\n\n#### 若要编辑你自己的源视频，请按照以下步骤操作：\n1. 将源视频 ```Your-Video.mp4``` 放入 ```demo``` 文件夹。\n2. 创建两个新文件夹 ```demo\u002FYour-Video-Name``` 和 ```demo\u002FYour-Video-Name\u002Fedited_first_frame```。\n3. 运行以下命令进行首帧图像编辑：\n```bash\npython edit_image.py --video_path \".\u002Fdemo\u002FYour-Video.mp4\" --input_dir \".\u002Fdemo\" --output_dir \".\u002Fdemo\u002FYour-Video-Name\u002Fedited_first_frame\" --prompt \"Your prompt\"\n```\n你也可以使用其他图像编辑方法，如 InstantID、AnyDoor 或 WISE 来编辑首帧。请将编辑后的首帧图像放入 ```demo\u002FYour-Video-Name\u002Fedited_first_frame``` 文件夹。\n\n4. 根据提供的示例，在位于 ```i2vgen-xl\u002Fconfigs\u002Fgroup_ddim_inversion``` 和 ```i2vgen-xl\u002Fconfigs\u002Fgroup_pnp_edit``` 目录中的 ```group_config.json``` 文件中为你的视频添加条目。\n5. 运行推理命令：\n```bash\ncd i2vgen-xl\u002Fscripts\nbash run_group_ddim_inversion.sh\nbash run_group_pnp_edit.sh\n```\n\n## ▶️ AnyV2V(consisti2v) 快速入门\n请参考 [.\u002Fconsisti2v\u002FREADME.md](consisti2v\u002FREADME.md)\n\n## ▶️ AnyV2V(seine) 快速入门\n请参考 [.\u002Fseine\u002FREADME.md](seine\u002FREADME.md)\n\n## ▶️ 其他\n\n### 第一帧图像编辑\n我们提供了基于指令提示的图像编辑工具 instructpix2pix 的端口。\n```shell\n用法：edit_image.py [-h] [--model {magicbrush,instructpix2pix}]\n                     [--video_path VIDEO_PATH] [--input_dir INPUT_DIR]\n                     [--output_dir OUTPUT_DIR] [--prompt PROMPT] [--force_512]\n                     [--dict_file DICT_FILE] [--seed SEED]\n                     [--negative_prompt NEGATIVE_PROMPT]\n\n处理一些图像。\n\n可选参数：\n  -h, --help            显示此帮助信息并退出\n  --model {magicbrush,instructpix2pix}\n                        图像编辑模型名称\n  --video_path VIDEO_PATH\n                        视频文件名\n  --input_dir INPUT_DIR\n                        包含视频的目录\n  --output_dir OUTPUT_DIR\n                        保存处理后图像的目录\n  --prompt PROMPT       编辑的指令提示\n  --force_512           在输入图像模型时强制调整为512x512\n  --dict_file DICT_FILE\n                        包含文件、指令等的JSON文件\n  --seed SEED           随机数生成器的种子\n  --negative_prompt NEGATIVE_PROMPT\n                        编辑的负面提示\n```\n\n使用示例：\n```shell\npython edit_image.py --video_path \".\u002Fdemo\u002FMan Walking.mp4\" --input_dir \".\u002Fdemo\" --output_dir \".\u002Fdemo\u002FMan Walking\u002Fedited_first_frame\" --prompt \"把这个人变成达斯·维达\"\n```\n\n您还可以使用其他图像模型进行编辑，以下是一些您可以使用的在线演示模型：\n* [身份操控模型：InstantID](https:\u002F\u002Fhuggingface.co\u002Fspaces\u002FInstantX\u002FInstantID)\n* [主体驱动的图像编辑模型：AnyDoor](https:\u002F\u002Fhuggingface.co\u002Fspaces\u002Fxichenhku\u002FAnyDoor-online)\n* [风格迁移模型：WISE](https:\u002F\u002Fhuggingface.co\u002Fspaces\u002FMaxReimann\u002FWhitebox-Style-Transfer-Editing)\n* [风格迁移模型：InstantStyle](https:\u002F\u002Fgithub.com\u002FInstantStyle\u002FInstantStyle)\n\n### 视频预处理脚本\n\n在A6000显卡下，可以对16秒（128帧）的视频进行编辑。我们提供了一个脚本，用于将视频剪切和裁剪成任意尺寸和长度。\n\n```shell\n用法：prepare_video.py [-h] [--input_folder INPUT_FOLDER] [--video_path VIDEO_PATH] [--output_folder OUTPUT_FOLDER]\n                        [--clip_duration CLIP_DURATION] [--width WIDTH] [--height HEIGHT] [--start_time START_TIME] [--end_time END_TIME]\n                        [--n_frames N_FRAMES] [--center_crop] [--x_offset X_OFFSET] [--y_offset Y_OFFSET] [--longest_to_width]\n\n裁剪和调整视频片段的大小。\n\n可选参数：\n  -h, --help            显示此帮助信息并退出\n  --input_folder INPUT_FOLDER\n                        包含视频文件的输入文件夹路径\n  --video_path VIDEO_PATH\n                        输入视频文件的路径\n  --output_folder OUTPUT_FOLDER\n                        输出视频文件的文件夹路径\n  --clip_duration CLIP_DURATION\n                        视频片段的时长，单位为秒，默认值为2\n  --width WIDTH         输出视频的宽度（可选），默认值为512\n  --height HEIGHT       输出视频的高度（可选），默认值为512\n  --start_time START_TIME\n                        裁剪的开始时间（可选）\n  --end_time END_TIME   裁剪的结束时间（可选）\n  --n_frames N_FRAMES   从每个视频中提取的帧数\n  --center_crop         对视频进行居中裁剪\n  --x_offset X_OFFSET   居中裁剪的水平偏移量，范围为-1到1（可选）\n  --y_offset Y_OFFSET   居中裁剪的垂直偏移量，范围为-1到1（可选）\n  --longest_to_width    将最长边调整为指定的宽度\n```\n\n使用示例：\n```shell\npython prepare_video.py --input_folder src_center_crop\u002F --output_folder processed --start_time 1 --center_crop --x_offset 0 --y_offset 0\npython prepare_video.py --input_folder src_left_crop\u002F --output_folder processed --start_time 1 --center_crop --x_offset -1 --y_offset 0\npython prepare_video.py --input_folder src_right_crop\u002F --output_folder processed --start_time 1 --center_crop --x_offset 1 --y_offset 0\n```\n\n## 📋 待办事项\nAnyV2V(i2vgen-xl)\n- [x] 发布AnyV2V(i2vgen-xl)的代码\n- [x] 发布笔记本演示\n- [x] 发布Gradio演示\n- [x] 在HuggingFace Space上托管Gradio演示\n\nAnyV2V(SEINE)\n- [x] 发布AnyV2V(SEINE)的代码\n\nAnyV2V(ConsistI2V)\n- [x] 发布AnyV2V(ConsistI2V)的代码\n\n杂项\n- [x] 辅助脚本用于预处理源视频\n- [x] 辅助脚本用于从源视频中获取编辑后的第一帧\n\n## 🖊️ 引用\n如果您使用我们的代码、数据、模型或结果，请引用我们的论文：\n```bibtex\n@article{ku2024anyv2v,\n  title={AnyV2V: 一种无需微调的通用视频到视频编辑框架},\n  author={Ku, Max and Wei, Cong and Ren, Weiming and Yang, Harry and Chen, Wenhu},\n  journal={arXiv预印本 arXiv:2403.14468},\n  year={2024}\n}\n```\n\n## 🎫 许可证\n本项目采用[MIT许可证](LICENSE)发布。然而，我们的代码基于一些可能使用其他许可证的项目：\n\n* [i2vgen-xl](https:\u002F\u002Fgithub.com\u002Fali-vilab\u002FVGen): 缺少许可证\n* [SEINE](https:\u002F\u002Fgithub.com\u002FVchitect\u002FSEINE): Apache-2.0\n* [ConsistI2V](https:\u002F\u002Fgithub.com\u002FTIGER-AI-Lab\u002FConsistI2V): MIT许可证\n\n## ⭐ 星标历史\n\n[![星标历史图表](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FTIGER-AI-Lab_AnyV2V_readme_ac05fb4c50af.png)](https:\u002F\u002Fstar-history.com\u002F#TIGER-AI-Lab\u002FAnyV2V&Date)\n\n## 📞 联系作者\nMax Ku [@vinemsuic](https:\u002F\u002Fgithub.com\u002Fvinesmsuic), m3ku@uwaterloo.ca\n\u003Cbr>\nCong Wei [@lim142857](https:\u002F\u002Fgithub.com\u002Flim142857), c58wei@uwaterloo.ca\n\u003Cbr>\nWeiming Ren [@wren93](https:\u002F\u002Fgithub.com\u002Fwren93), w2ren@uwaterloo.ca\n\u003Cbr>\n\n## 💞 致谢\n代码基于以下仓库构建，我们感谢所有开源贡献者：\n* [diffusers](https:\u002F\u002Fgithub.com\u002Fhuggingface\u002Fdiffusers)\n* [ImagenHub](https:\u002F\u002Fgithub.com\u002FTIGER-AI-Lab\u002FImagenHub)\n* [TokenFlow](https:\u002F\u002Fgithub.com\u002Fomerbt\u002FTokenFlow)\n* [i2vgen-xl](https:\u002F\u002Fgithub.com\u002Fali-vilab\u002FVGen)\n* [SEINE](https:\u002F\u002Fgithub.com\u002FVchitect\u002FSEINE)\n* [ConsistI2V](https:\u002F\u002Fgithub.com\u002FTIGER-AI-Lab\u002FConsistI2V)","# AnyV2V 快速上手指南\n\nAnyV2V 是一个无需训练的视频编辑框架，能够仅通过**单张参考图像**实现高质量、时序一致的视频编辑任务（如风格迁移、物体替换等）。它将视频编辑转化为图像编辑问题，可直接复用现有的图像编辑模型。\n\n## 环境准备\n\n### 系统要求\n- **操作系统**: Linux (推荐 Ubuntu)\n- **GPU**: 支持 CUDA 的 NVIDIA 显卡（编辑 16 秒\u002F128 帧视频建议至少使用 A6000 或同等算力显卡）\n- **依赖管理**: Conda\n\n### 前置依赖\n确保已安装 `git`、`conda` 和 `git-lfs`（用于下载大模型文件）：\n```bash\nsudo apt-get update && sudo apt-get install git-lfs\ngit lfs install\n```\n\n## 安装步骤\n\n以下以功能最完整的 `AnyV2V(i2vgen-xl)` 版本为例：\n\n1. **克隆项目代码**\n   ```bash\n   git clone https:\u002F\u002Fgithub.com\u002FTIGER-AI-Lab\u002FAnyV2V\n   cd AnyV2V\u002Fi2vgen-xl\n   ```\n\n2. **创建 Conda 环境**\n   ```bash\n   conda env create -f environment.yml\n   conda activate anyv2v\n   ```\n   > **提示**: 如果下载依赖较慢，可在 `environment.yml` 中将 `pip` 源替换为国内镜像（如清华源），或在创建环境后手动配置：\n   > `pip config set global.index-url https:\u002F\u002Fpypi.tuna.tsinghua.edu.cn\u002Fsimple`\n\n3. **准备额外依赖（仅限风格迁移演示）**\n   若需使用 `InstantStyle` 进行风格迁移，需下载相关模型：\n   ```bash\n   git clone https:\u002F\u002Fhuggingface.co\u002Fh94\u002FIP-Adapter\n   mv IP-Adapter\u002Fmodels models\n   mv IP-Adapter\u002Fsdxl_models sdxl_models\n   rm -rf IP-Adapter\n   ```\n\n## 基本使用\n\n### 方式一：运行本地 Gradio 演示（推荐新手）\n\n这是最简单的交互方式，启动后可在浏览器中上传视频和输入指令。\n\n**1. 基于提示词的编辑 (Prompt-based Editing)**\n适用于物体替换、属性修改等任务：\n```bash\npython gradio_demo.py\n```\n启动后访问终端显示的本地地址（通常是 `http:\u002F\u002F127.0.0.1:7860`），上传视频并输入如 \"turn the man into darth vader\" 的指令。\n\n**2. 风格迁移编辑 (Style Transfer)**\n适用于将特定艺术风格应用到视频中：\n```bash\npython gradio_demo_style.py\n```\n\n### 方式二：命令行批量编辑\n\n若需处理自定义视频，请按以下步骤操作：\n\n**1. 准备视频与首帧编辑**\n将您的视频 `Your-Video.mp4` 放入 `demo` 文件夹，并创建输出目录：\n```bash\nmkdir -p demo\u002FYour-Video-Name\u002Fedited_first_frame\n```\n\n使用内置脚本编辑第一帧（作为参考图）：\n```bash\npython edit_image.py \\\n--video_path \".\u002Fdemo\u002FYour-Video.mp4\" \\\n--input_dir \".\u002Fdemo\" \\\n--output_dir \".\u002Fdemo\u002FYour-Video-Name\u002Fedited_first_frame\" \\\n--prompt \"Your prompt here\"\n```\n*注：您也可以使用 InstantID、AnyDoor 等其他工具编辑首帧图片，并将结果存入 `edited_first_frame` 目录。*\n\n**2. 配置任务**\n修改以下两个配置文件，添加您的视频条目并设置 `active: true`：\n- `i2vgen-xl\u002Fconfigs\u002Fgroup_ddim_inversion\u002Fgroup_config.json`\n- `i2vgen-xl\u002Fconfigs\u002Fgroup_pnp_edit\u002Fgroup_config.json`\n\n同时检查同目录下的 `template.yaml`，确保 `device` 参数正确（如 `cuda:0`）。\n\n**3. 执行推理**\n依次运行潜空间反转和编辑生成脚本：\n```bash\ncd i2vgen-xl\u002Fscripts\n\n# 第一步：源视频潜空间反转\nbash run_group_ddim_inversion.sh\n\n# 第二步：执行 AnyV2V 编辑生成\nbash run_group_pnp_edit.sh\n```\n生成的视频将保存在配置文件中指定的输出路径下。\n\n### 辅助工具：视频预处理\n如果视频过长或分辨率不匹配，可使用预处理脚本进行裁剪和调整（支持中心裁剪、指定时长等）：\n```bash\npython prepare_video.py \\\n--input_folder .\u002Fsrc_videos \\\n--output_folder .\u002Fprocessed \\\n--clip_duration 2 \\\n--width 512 \\\n--height 512 \\\n--center_crop\n```","一位短视频创作者需要为旅游 Vlog 制作一段“四季变换”的特效视频，要求将原本夏季拍摄的街道画面无缝转换为冬季雪景，同时保持人物动作和镜头运动的绝对流畅。\n\n### 没有 AnyV2V 时\n- **训练成本高昂**：为了实现特定的风格转换，通常需要收集大量成对的夏冬视频数据进行模型微调（Fine-tuning），耗时数天且对算力要求极高。\n- **时序闪烁严重**：若直接使用逐帧图像编辑工具处理，生成的视频会出现严重的画面闪烁，人物衣物纹理和背景建筑在帧间跳变，破坏观看体验。\n- **操作门槛极高**：开发者需编写复杂的代码来对齐帧间特征，或依赖昂贵的商业软件手动逐帧修图，效率极低且难以保证一致性。\n- **灵活性受限**：一旦想要尝试另一种风格（如从雪景改为赛博朋克风），必须重新收集数据并再次训练模型，无法即时响应创意变化。\n\n### 使用 AnyV2V 后\n- **零训练即时生效**：仅需提供一张冬季街道的参考图，AnyV2V 无需任何训练或微调，即可直接将整段视频转换为雪景，几分钟内完成部署。\n- **完美的时序一致性**：利用其特有的框架将视频编辑转化为图像编辑问题，自动保持帧间连贯性，消除了画面闪烁，人物动作自然流畅。\n- **工作流极简高效**：创作者可直接复用成熟的图像编辑模型（如 InstructPix2Pix 或 InstantStyle），通过简单的 Gradio 界面上传视频和参考图即可生成结果。\n- **创意迭代自由**：想切换风格只需替换那张参考图或修改提示词，AnyV2V 能立即重新生成不同风格的视频，极大降低了试错成本。\n\nAnyV2V 通过将复杂的视频编辑任务简化为单图驱动且无需训练的流水线，彻底打破了高质量视频风格迁移的技术与时间壁垒。","https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002FTIGER-AI-Lab_AnyV2V_e7f42551.png","TIGER-AI-Lab","TIGER Lab","https:\u002F\u002Foss.gittoolsai.com\u002Favatars\u002FTIGER-AI-Lab_41df1eb9.jpg","Our lab is currently based in UWaterloo, focusing on Text and Image Generative Research",null,"wenhuchen@uwaterloo.ca","https:\u002F\u002Fgithub.com\u002FTIGER-AI-Lab",[81,85,89],{"name":82,"color":83,"percentage":84},"Jupyter Notebook","#DA5B0B",81,{"name":86,"color":87,"percentage":88},"Python","#3572A5",18.9,{"name":90,"color":91,"percentage":92},"Shell","#89e051",0,649,49,"2026-04-07T03:18:52","MIT","Linux","需要 NVIDIA GPU。文中明确提到在 A6000 (48GB 显存) 上可编辑长达 16 秒 (128 帧) 的视频。基于 i2vgen-xl 模型，通常建议显存 24GB+ 以获得最佳效果，最低可能需 16GB。未明确说明 CUDA 版本，但通常需 CUDA 11.7+ 以支持较新的 PyTorch 版本。","未说明 (建议 32GB+ 以处理视频数据)",{"notes":101,"python":102,"dependencies":103},"1. 必须使用 Conda 管理环境，需运行 'conda env create -f environment.yml' 安装依赖。\n2. 项目包含多个子模块 (i2vgen-xl, consisti2v, seine)，当前文档主要详述 i2vgen-xl 的配置。\n3. 首次运行风格迁移演示 (InstantStyle) 需手动下载 IP-Adapter 模型文件。\n4. 视频预处理脚本可将视频裁剪为指定尺寸和时长，建议在高分辨率显卡上运行以避免显存溢出。\n5. 支持仅通过单张编辑后的首帧图像进行整个视频的编辑，无需微调训练。","未说明 (通过 environment.yml 创建 Conda 环境，通常隐含 Python 3.8 或 3.10)",[104,105,106,107,108,109,110],"torch","transformers","diffusers","gradio","opencv-python","accelerate","git-lfs",[14,112,15],"视频",[114,115,116,117,118,119,120],"deep-learning","generative-ai","image-editing","image-to-video-generation","pytorch","video-editing","video-synthesis","2026-03-27T02:49:30.150509","2026-04-09T23:50:10.383350",[124,129,134,139,144,149],{"id":125,"question_zh":126,"answer_zh":127,"source_url":128},26846,"该框架能否重建帧率为 25fps 且时长超过 2 秒的视频？","可以。您可以查看最新的 Arxiv 论文以获取详细信息。此外，项目主页展示了长视频重建的示例结果（如东京漫步、女子跑步等视频），证明框架支持较长时长的视频处理。","https:\u002F\u002Fgithub.com\u002FTIGER-AI-Lab\u002FAnyV2V\u002Fissues\u002F3",{"id":130,"question_zh":131,"answer_zh":132,"source_url":133},26847,"复现的结果质量较差或人物面部崩坏，该如何解决？","结果质量受随机种子（seed）和超参数注入权重（hyperparameter injection weightings）的影响较大。目前 AnyV2V 的鲁棒性尚不足够，如果遇到问题，建议尝试基于该工作改进的项目，例如 I2VEdit (https:\u002F\u002Fgithub.com\u002FVicky0522\u002FI2VEdit\u002Ftree\u002Fmaster)。注意，某些复杂的描述提示词（如“下雪”）可能会导致效果变差或面部崩坏。","https:\u002F\u002Fgithub.com\u002FTIGER-AI-Lab\u002FAnyV2V\u002Fissues\u002F17",{"id":135,"question_zh":136,"answer_zh":137,"source_url":138},26848,"如何可视化时间注意力特征（TEMPORAL Attention Features）？有相关代码吗？","可视化的方法是：对于每一帧中的每个 patch，计算所有注意力头（attention heads）和所有 token 的平均注意力分数。具体到时间注意力，即计算沿时间维度上同一空间位置的 16 个 token 的平均分数。由于数值可能包含极高值，建议结合交叉注意力和空间注意力权重绘制箱线图或直方图。维护者表示不再持有具体的可视化代码，需自行实现上述逻辑。","https:\u002F\u002Fgithub.com\u002FTIGER-AI-Lab\u002FAnyV2V\u002Fissues\u002F14",{"id":140,"question_zh":141,"answer_zh":142,"source_url":143},26849,"运行 gradio_demo 时遇到 'TypeError: forward() takes 2 positional arguments but 3 were given' 错误怎么办？","这通常是由于依赖版本不兼容导致的。特别是 `cached_download` 在较新版本的 huggingface-hub 中已不再存在。请检查并调整您的 `diffusers` 和 `huggingface-hub` 版本，确保它们与项目要求的环境一致（例如尝试使用 diffusers==0.26.3 并匹配对应的 hub 版本）。","https:\u002F\u002Fgithub.com\u002FTIGER-AI-Lab\u002FAnyV2V\u002Fissues\u002F10",{"id":145,"question_zh":146,"answer_zh":147,"source_url":148},26850,"遇到 'No module named diffusers.models.unets' 模块缺失错误如何解决？","首先确认您是否从 AnyV2V 项目的根目录运行脚本。其次，检查 `diffusers` 的版本，该项目通常需要特定版本（如 0.26.3）。如果版本正确但仍报错，可能是安装路径或环境问题，建议在干净的 conda 环境中重新安装指定版本的 diffusers。","https:\u002F\u002Fgithub.com\u002FTIGER-AI-Lab\u002FAnyV2V\u002Fissues\u002F9",{"id":150,"question_zh":151,"answer_zh":152,"source_url":153},26851,"运行视频编辑时出现 'RuntimeError: indices should be either on cpu or on the same device' 设备不一致错误？","该错误通常发生在张量设备不匹配时（例如索引在 CPU 而数据在 GPU）。虽然具体修复代码未在评论中直接给出，但此类问题通常需要通过在代码中显式调用 `.to(device)` 或将相关张量移动到同一设备（CPU 或 CUDA）来解决。同时注意检查配置文件（config.json），忽略不必要的属性警告（如 attention_head_dim）。","https:\u002F\u002Fgithub.com\u002FTIGER-AI-Lab\u002FAnyV2V\u002Fissues\u002F8",[]]