ghost

GitHub
1.6k 307 中等 1 次阅读 今天Apache-2.0图像开发框架
AI 解读 由 AI 自动生成,仅供参考

GHOST(Generative High-fidelity One Shot Transfer)是一款专注于图像与视频领域的高保真换脸开源工具。它旨在解决传统深度伪造技术在视觉效果和稳定性上的不足,通过创新的“单次拍摄”(One-Shot)流程,仅需一张源人脸图片即可实现高质量的面对面替换,无需针对特定人物进行繁琐的模型训练。

该工具的核心技术亮点在于其强大的泛化能力与生成质量,能够处理从静态图片到动态视频的多种场景,在保持目标表情和光照自然度的同时,显著提升换脸的真实感。尽管底层技术涉及复杂的生成对抗网络(GAN)与自编码器,但 GHOST 提供了清晰的安装指南、预训练权重以及 Google Colab 演示,降低了使用门槛。

鉴于其技术特性,GHOST 主要适合计算机视觉研究人员、AI 开发者以及影视特效创作者使用,用于算法实验、艺术创作或伦理范围内的社会评论。需要特别强调的是,开发团队对技术滥用持零容忍态度,明确禁止将其用于制作不当内容、未经授权的换脸或任何非法用途。GHOST 的初衷是推动 AI 技术的透明化发展与教育普及,鼓励用户在合乎道德与法律的前提下探索人脸交换技术的潜力。

使用场景

某独立短片导演需要在预算有限的情况下,为电影中的替身演员快速替换面部特征以匹配主角形象,同时保持视频的高清画质和表情自然度。

没有 ghost 时

  • 样本依赖重:传统换脸模型通常需要目标人物大量不同角度的照片进行训练,收集数据耗时且难以满足“单张图”启动的需求。
  • 画质损失大:生成的视频往往分辨率低、边缘模糊,尤其在侧脸或复杂光照下会出现明显的伪影,无法达到影院级放映标准。
  • 流程繁琐:从数据预处理到模型训练再到推理,整个链路需要数小时甚至数天,严重拖慢后期制作进度。
  • 动态不自然:在视频序列中,面部纹理容易闪烁或抖动,缺乏时间维度上的连贯性,导致观众出戏。

使用 ghost 后

  • 单图即生效:ghost 支持"One-Shot"模式,仅需一张源人物照片即可立即对图像或视频进行高保真换脸,极大降低了数据门槛。
  • 高清细节还原:基于生成式对抗网络优化,ghost 能保留皮肤纹理和光影细节,输出结果在视觉上几乎与实拍无异。
  • 高效即时处理:无需漫长的训练过程,部署后可直接通过 Colab 或本地脚本快速完成视频渲染,显著提升制作效率。
  • 时序稳定流畅:专为视频域设计,ghost 确保了帧与帧之间的面部特征平滑过渡,彻底消除了画面闪烁问题。

ghost 通过单样本高保真迁移技术,将原本高昂专业的影视级换脸流程简化为即时可用的创作工具,让创意不再受限于技术与成本。

运行环境要求

操作系统
  • 未说明
GPU

建议使用 NVIDIA GPU (通过 onnxruntime-gpu 支持),具体型号和显存大小未说明

内存

未说明

依赖
notes1. 安装时需先克隆仓库并初始化子模块 (git submodule init/update)。 2. 依赖包通过 pip install -r requirements.txt 安装,若无法安装 onnxruntime-gpu 可尝试 onnxruntime。 3. 运行前需执行 download_models.sh 脚本下载模型权重。 4. 提供 Google Colab 演示和本地 Jupyter Notebook (SberSwapInference.ipynb) 两种使用方式。 5. 该工具用于图像和视频的人脸交换,请严格遵守伦理规范,禁止用于非法或不道德用途。
python未说明
onnxruntime-gpu (或 onnxruntime)
torch (隐含依赖)
其他 requirements.txt 中定义的库
ghost hero image

快速开始

[论文] [Habr]

👻 GHOST:高保真单次生成式换脸

我们的论文《GHOST——一种面向图像和视频领域的新型换脸方法》已发表在IEEE Xplore上。

Google Colab演示

GHOST伦理声明

深度伪造是指一种人脸交换算法,其中源图像或视频与目标图像或视频可以互换。研究人员已经探索了复杂的生成对抗网络(GAN)、自编码器以及其他方法,以构建精确且鲁棒的人脸交换算法。然而,在人类感知和视觉评估方面,现有成果仍远未达到完美。在本研究中,我们提出了一种全新的单次输入流程,用于实现图像到图像以及图像到视频的人脸交换——GHOST(Generative High-fidelity One Shot Transfer)。

近年来,深度伪造合成技术的质量得到了显著提升。相关研究成果被封装成易于使用的API、软件及各类插件,使具备少量技术背景的用户也能轻松操作。因此,几乎任何人都可以通过简单的几步操作制作出深度伪造的图像或视频。与此同时,许多别有用心的人也利用这一技术生成有害内容。此类内容在网络上的广泛传播引发了公众对深度伪造或人脸交换技术的警惕、反感及其他负面反馈。

作为研究团队,我们无意诋毁名人或政要,也绝无贬低任何人的意图。我们是计算机视觉研究人员、工程师、社会活动家、爱好者,更是普通人。基于此,我们认为有必要就这项技术在我们研究者视角下的定位及其界限作出明确声明:

  • GHOST并非用于制作不当内容。
  • GHOST并非用于未经同意或为掩盖其用途而进行的人脸替换。
  • GHOST不应用于任何非法、不道德或可疑的目的。
  • GHOST的存在旨在探索和创新人工智能技术,服务于社会或政治评论、影视制作,以及任何符合伦理规范的合理用途。

我们深感忧虑的是,GHOST可能被滥用于不道德或不良目的。然而,我们支持开发既能合法合规使用,又能为所有希望亲身体验人工智能技术的人提供教育和实践机会的工具与方法。从现在起,我们将对任何将该软件用于不道德目的的行为采取零容忍态度并予以坚决抵制,同时积极劝阻此类行为。

图像换脸结果

视频换脸结果

安装

  1. 克隆本仓库
git clone https://github.com/sberbank-ai/sber-swap.git
cd sber-swap
git submodule init
git submodule update
  1. 安装依赖包
pip install -r requirements.txt

如果无法安装onnxruntime-gpu,请尝试使用onnxruntime替代

  1. 下载模型权重
sh download_models.sh

使用

  1. Colab演示 Google Colab标志,或者您也可以在本地使用Jupyter Notebook SberSwapInference.ipynb
  2. 视频换脸

将视频中的某一个人的脸替换为目标人物。您需要先从目标视频中选定一张人脸(例如,从任意一帧中裁剪出来)。

python inference.py --source_paths {PATH_TO_IMAGE} --target_faces_paths {PATH_TO_IMAGE} --target_video {PATH_TO_VIDEO}

如果要将视频中多个人的脸都替换为目标人物,则需为源图像设置多个待替换的人脸,并对应地指定目标视频中的多个目标人脸。

python inference.py --source_paths {PATH_TO_IMAGE PATH_TO_IMAGE ...} --target_faces_paths {PATH_TO_IMAGE PATH_TO_IMAGE ...} --target_video {PATH_TO_VIDEO}
  1. 图像换脸

您可以选择指定一个目标人脸,然后将源图像中的人脸替换为该目标人脸;或者省略此参数,使源图像中的人脸随机替换为图像内的任意一人。

python inference.py --target_path {PATH_TO_IMAGE} --image_to_image True

训练

我们还提供了以下换脸模型的训练代码:

  1. 下载VGGFace2数据集
  2. 使用我们的检测模型对人脸进行裁剪和对齐。
python preprocess_vgg.py --path_to_dataset {PATH_TO_DATASET} --save_path {SAVE_PATH}
  1. 开始训练。
python train.py --run_name {YOUR_RUN_NAME}

我们为训练过程提供了多种可选配置。有关每个选项的详细信息,请参阅train.py文件。如果您希望使用wandb记录实验过程,需先登录wandb:--wandb login

小贴士

  1. 对于初始几轮训练,如果从头开始训练,建议不要启用眼部检测损失和学习率调度器。
  2. 在微调阶段,您可以调整损失函数的权重,使输出结果更接近源身份特征,或者相反,更好地保留目标人脸的特征和属性。
  3. 您可以通过--backbone--num_blocks参数来更改属性编码器的主干网络以及AAD ResBlk模块的数量。
  4. 在微调阶段,您可以使用位于weights文件夹中的生成器和判别器预训练权重。我们提供了采用U-Net主干网络以及AAD ResBlk模块数量为1至3个的模型权重。其中,主模型架构包含2个AAD ResBlk模块。

引用

如果您在研究中使用了我们的模型,我们诚挚地希望您能采用以下引用方式:

BibTeX 引用

@article{9851423,  
         author={Groshev, Alexander and Maltseva, Anastasia and Chesakov, Daniil and Kuznetsov, Andrey and Dimitrov, Denis},  
         journal={IEEE Access},   
         title={GHOST—一种面向图像和视频领域的新型人脸交换方法},   
         year={2022},  
         volume={10},  
         number={},  
         pages={83452-83462},  
         doi={10.1109/ACCESS.2022.3196668}
}

通用引用

A. Groshev, A. Maltseva, D. Chesakov, A. Kuznetsov 和 D. Dimitrov,“GHOST—一种面向图像和视频领域的新型人脸交换方法”,载于《IEEE Access》,第10卷,第83452–83462页,2022年,doi: 10.1109/ACCESS.2022.3196668。

版本历史

sber-swap-v2.02022/01/11
super-res2021/12/20
awl_detector2021/12/15
antelope2021/12/14
sber-swap-v1.02021/12/14
arcface2021/12/14

常见问题

相似工具推荐

openclaw

OpenClaw 是一款专为个人打造的本地化 AI 助手,旨在让你在自己的设备上拥有完全可控的智能伙伴。它打破了传统 AI 助手局限于特定网页或应用的束缚,能够直接接入你日常使用的各类通讯渠道,包括微信、WhatsApp、Telegram、Discord、iMessage 等数十种平台。无论你在哪个聊天软件中发送消息,OpenClaw 都能即时响应,甚至支持在 macOS、iOS 和 Android 设备上进行语音交互,并提供实时的画布渲染功能供你操控。 这款工具主要解决了用户对数据隐私、响应速度以及“始终在线”体验的需求。通过将 AI 部署在本地,用户无需依赖云端服务即可享受快速、私密的智能辅助,真正实现了“你的数据,你做主”。其独特的技术亮点在于强大的网关架构,将控制平面与核心助手分离,确保跨平台通信的流畅性与扩展性。 OpenClaw 非常适合希望构建个性化工作流的技术爱好者、开发者,以及注重隐私保护且不愿被单一生态绑定的普通用户。只要具备基础的终端操作能力(支持 macOS、Linux 及 Windows WSL2),即可通过简单的命令行引导完成部署。如果你渴望拥有一个懂你

349.3k|★★★☆☆|今天
Agent开发框架图像

stable-diffusion-webui

stable-diffusion-webui 是一个基于 Gradio 构建的网页版操作界面,旨在让用户能够轻松地在本地运行和使用强大的 Stable Diffusion 图像生成模型。它解决了原始模型依赖命令行、操作门槛高且功能分散的痛点,将复杂的 AI 绘图流程整合进一个直观易用的图形化平台。 无论是希望快速上手的普通创作者、需要精细控制画面细节的设计师,还是想要深入探索模型潜力的开发者与研究人员,都能从中获益。其核心亮点在于极高的功能丰富度:不仅支持文生图、图生图、局部重绘(Inpainting)和外绘(Outpainting)等基础模式,还独创了注意力机制调整、提示词矩阵、负向提示词以及“高清修复”等高级功能。此外,它内置了 GFPGAN 和 CodeFormer 等人脸修复工具,支持多种神经网络放大算法,并允许用户通过插件系统无限扩展能力。即使是显存有限的设备,stable-diffusion-webui 也提供了相应的优化选项,让高质量的 AI 艺术创作变得触手可及。

162.1k|★★★☆☆|昨天
开发框架图像Agent

everything-claude-code

everything-claude-code 是一套专为 AI 编程助手(如 Claude Code、Codex、Cursor 等)打造的高性能优化系统。它不仅仅是一组配置文件,而是一个经过长期实战打磨的完整框架,旨在解决 AI 代理在实际开发中面临的效率低下、记忆丢失、安全隐患及缺乏持续学习能力等核心痛点。 通过引入技能模块化、直觉增强、记忆持久化机制以及内置的安全扫描功能,everything-claude-code 能显著提升 AI 在复杂任务中的表现,帮助开发者构建更稳定、更智能的生产级 AI 代理。其独特的“研究优先”开发理念和针对 Token 消耗的优化策略,使得模型响应更快、成本更低,同时有效防御潜在的攻击向量。 这套工具特别适合软件开发者、AI 研究人员以及希望深度定制 AI 工作流的技术团队使用。无论您是在构建大型代码库,还是需要 AI 协助进行安全审计与自动化测试,everything-claude-code 都能提供强大的底层支持。作为一个曾荣获 Anthropic 黑客大奖的开源项目,它融合了多语言支持与丰富的实战钩子(hooks),让 AI 真正成长为懂上

141.5k|★★☆☆☆|今天
开发框架Agent语言模型

ComfyUI

ComfyUI 是一款功能强大且高度模块化的视觉 AI 引擎,专为设计和执行复杂的 Stable Diffusion 图像生成流程而打造。它摒弃了传统的代码编写模式,采用直观的节点式流程图界面,让用户通过连接不同的功能模块即可构建个性化的生成管线。 这一设计巧妙解决了高级 AI 绘图工作流配置复杂、灵活性不足的痛点。用户无需具备编程背景,也能自由组合模型、调整参数并实时预览效果,轻松实现从基础文生图到多步骤高清修复等各类复杂任务。ComfyUI 拥有极佳的兼容性,不仅支持 Windows、macOS 和 Linux 全平台,还广泛适配 NVIDIA、AMD、Intel 及苹果 Silicon 等多种硬件架构,并率先支持 SDXL、Flux、SD3 等前沿模型。 无论是希望深入探索算法潜力的研究人员和开发者,还是追求极致创作自由度的设计师与资深 AI 绘画爱好者,ComfyUI 都能提供强大的支持。其独特的模块化架构允许社区不断扩展新功能,使其成为当前最灵活、生态最丰富的开源扩散模型工具之一,帮助用户将创意高效转化为现实。

107.9k|★★☆☆☆|今天
开发框架图像Agent

LLMs-from-scratch

LLMs-from-scratch 是一个基于 PyTorch 的开源教育项目,旨在引导用户从零开始一步步构建一个类似 ChatGPT 的大型语言模型(LLM)。它不仅是同名技术著作的官方代码库,更提供了一套完整的实践方案,涵盖模型开发、预训练及微调的全过程。 该项目主要解决了大模型领域“黑盒化”的学习痛点。许多开发者虽能调用现成模型,却难以深入理解其内部架构与训练机制。通过亲手编写每一行核心代码,用户能够透彻掌握 Transformer 架构、注意力机制等关键原理,从而真正理解大模型是如何“思考”的。此外,项目还包含了加载大型预训练权重进行微调的代码,帮助用户将理论知识延伸至实际应用。 LLMs-from-scratch 特别适合希望深入底层原理的 AI 开发者、研究人员以及计算机专业的学生。对于不满足于仅使用 API,而是渴望探究模型构建细节的技术人员而言,这是极佳的学习资源。其独特的技术亮点在于“循序渐进”的教学设计:将复杂的系统工程拆解为清晰的步骤,配合详细的图表与示例,让构建一个虽小但功能完备的大模型变得触手可及。无论你是想夯实理论基础,还是为未来研发更大规模的模型做准备

90.1k|★★★☆☆|今天
语言模型图像Agent

Deep-Live-Cam

Deep-Live-Cam 是一款专注于实时换脸与视频生成的开源工具,用户仅需一张静态照片,即可通过“一键操作”实现摄像头画面的即时变脸或制作深度伪造视频。它有效解决了传统换脸技术流程繁琐、对硬件配置要求极高以及难以实时预览的痛点,让高质量的数字内容创作变得触手可及。 这款工具不仅适合开发者和技术研究人员探索算法边界,更因其极简的操作逻辑(仅需三步:选脸、选摄像头、启动),广泛适用于普通用户、内容创作者、设计师及直播主播。无论是为了动画角色定制、服装展示模特替换,还是制作趣味短视频和直播互动,Deep-Live-Cam 都能提供流畅的支持。 其核心技术亮点在于强大的实时处理能力,支持口型遮罩(Mouth Mask)以保留使用者原始的嘴部动作,确保表情自然精准;同时具备“人脸映射”功能,可同时对画面中的多个主体应用不同面孔。此外,项目内置了严格的内容安全过滤机制,自动拦截涉及裸露、暴力等不当素材,并倡导用户在获得授权及明确标注的前提下合规使用,体现了技术发展与伦理责任的平衡。

88.9k|★★★☆☆|今天
开发框架图像Agent