[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"similar-antgroup--ditto-talkinghead":3,"tool-antgroup--ditto-talkinghead":64},[4,17,26,40,48,56],{"id":5,"name":6,"github_repo":7,"description_zh":8,"stars":9,"difficulty_score":10,"last_commit_at":11,"category_tags":12,"status":16},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,3,"2026-04-05T11:01:52",[13,14,15],"开发框架","图像","Agent","ready",{"id":18,"name":19,"github_repo":20,"description_zh":21,"stars":22,"difficulty_score":23,"last_commit_at":24,"category_tags":25,"status":16},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 都能提供强大的支持。其独特的模块化架构允许社区不断扩展新功能，使其成为当前最灵活、生态最丰富的开源扩散模型工具之一，帮助用户将创意高效转化为现实。",107662,2,"2026-04-03T11:11:01",[13,14,15],{"id":27,"name":28,"github_repo":29,"description_zh":30,"stars":31,"difficulty_score":23,"last_commit_at":32,"category_tags":33,"status":16},2268,"ML-For-Beginners","microsoft\u002FML-For-Beginners","ML-For-Beginners 是由微软推出的一套系统化机器学习入门课程，旨在帮助零基础用户轻松掌握经典机器学习知识。这套课程将学习路径规划为 12 周，包含 26 节精炼课程和 52 道配套测验，内容涵盖从基础概念到实际应用的完整流程，有效解决了初学者面对庞大知识体系时无从下手、缺乏结构化指导的痛点。\n\n无论是希望转型的开发者、需要补充算法背景的研究人员，还是对人工智能充满好奇的普通爱好者，都能从中受益。课程不仅提供了清晰的理论讲解，还强调动手实践，让用户在循序渐进中建立扎实的技能基础。其独特的亮点在于强大的多语言支持，通过自动化机制提供了包括简体中文在内的 50 多种语言版本，极大地降低了全球不同背景用户的学习门槛。此外，项目采用开源协作模式，社区活跃且内容持续更新，确保学习者能获取前沿且准确的技术资讯。如果你正寻找一条清晰、友好且专业的机器学习入门之路，ML-For-Beginners 将是理想的起点。",84991,"2026-04-05T10:45:23",[14,34,35,36,15,37,38,13,39],"数据工具","视频","插件","其他","语言模型","音频",{"id":41,"name":42,"github_repo":43,"description_zh":44,"stars":45,"difficulty_score":10,"last_commit_at":46,"category_tags":47,"status":16},3128,"ragflow","infiniflow\u002Fragflow","RAGFlow 是一款领先的开源检索增强生成（RAG）引擎，旨在为大语言模型构建更精准、可靠的上下文层。它巧妙地将前沿的 RAG 技术与智能体（Agent）能力相结合，不仅支持从各类文档中高效提取知识，还能让模型基于这些知识进行逻辑推理和任务执行。\n\n在大模型应用中，幻觉问题和知识滞后是常见痛点。RAGFlow 通过深度解析复杂文档结构（如表格、图表及混合排版），显著提升了信息检索的准确度，从而有效减少模型“胡编乱造”的现象，确保回答既有据可依又具备时效性。其内置的智能体机制更进一步，使系统不仅能回答问题，还能自主规划步骤解决复杂问题。\n\n这款工具特别适合开发者、企业技术团队以及 AI 研究人员使用。无论是希望快速搭建私有知识库问答系统，还是致力于探索大模型在垂直领域落地的创新者，都能从中受益。RAGFlow 提供了可视化的工作流编排界面和灵活的 API 接口，既降低了非算法背景用户的上手门槛，也满足了专业开发者对系统深度定制的需求。作为基于 Apache 2.0 协议开源的项目，它正成为连接通用大模型与行业专有知识之间的重要桥梁。",77062,"2026-04-04T04:44:48",[15,14,13,38,37],{"id":49,"name":50,"github_repo":51,"description_zh":52,"stars":53,"difficulty_score":10,"last_commit_at":54,"category_tags":55,"status":16},519,"PaddleOCR","PaddlePaddle\u002FPaddleOCR","PaddleOCR 是一款基于百度飞桨框架开发的高性能开源光学字符识别工具包。它的核心能力是将图片、PDF 等文档中的文字提取出来，转换成计算机可读取的结构化数据，让机器真正“看懂”图文内容。\n\n面对海量纸质或电子文档，PaddleOCR 解决了人工录入效率低、数字化成本高的问题。尤其在人工智能领域，它扮演着连接图像与大型语言模型（LLM）的桥梁角色，能将视觉信息直接转化为文本输入，助力智能问答、文档分析等应用场景落地。\n\nPaddleOCR 适合开发者、算法研究人员以及有文档自动化需求的普通用户。其技术优势十分明显：不仅支持全球 100 多种语言的识别，还能在 Windows、Linux、macOS 等多个系统上运行，并灵活适配 CPU、GPU、NPU 等各类硬件。作为一个轻量级且社区活跃的开源项目，PaddleOCR 既能满足快速集成的需求，也能支撑前沿的视觉语言研究，是处理文字识别任务的理想选择。",74913,"2026-04-05T10:44:17",[38,14,13,37],{"id":57,"name":58,"github_repo":59,"description_zh":60,"stars":61,"difficulty_score":23,"last_commit_at":62,"category_tags":63,"status":16},2471,"tesseract","tesseract-ocr\u002Ftesseract","Tesseract 是一款历史悠久且备受推崇的开源光学字符识别（OCR）引擎，最初由惠普实验室开发，后由 Google 维护，目前由全球社区共同贡献。它的核心功能是将图片中的文字转化为可编辑、可搜索的文本数据，有效解决了从扫描件、照片或 PDF 文档中提取文字信息的难题，是数字化归档和信息自动化的重要基础工具。\n\n在技术层面，Tesseract 展现了强大的适应能力。从版本 4 开始，它引入了基于长短期记忆网络（LSTM）的神经网络 OCR 引擎，显著提升了行识别的准确率；同时，为了兼顾旧有需求，它依然支持传统的字符模式识别引擎。Tesseract 原生支持 UTF-8 编码，开箱即用即可识别超过 100 种语言，并兼容 PNG、JPEG、TIFF 等多种常见图像格式。输出方面，它灵活支持纯文本、hOCR、PDF、TSV 等多种格式，方便后续数据处理。\n\nTesseract 主要面向开发者、研究人员以及需要构建文档处理流程的企业用户。由于它本身是一个命令行工具和库（libtesseract），不包含图形用户界面（GUI），因此最适合具备一定编程能力的技术人员集成到自动化脚本或应用程序中",73286,"2026-04-03T01:56:45",[13,14],{"id":65,"github_repo":66,"name":67,"description_en":68,"description_zh":69,"ai_summary_zh":70,"readme_en":71,"readme_zh":72,"quickstart_zh":73,"use_case_zh":74,"hero_image_url":75,"owner_login":76,"owner_name":77,"owner_avatar_url":78,"owner_bio":79,"owner_company":80,"owner_location":80,"owner_email":80,"owner_twitter":76,"owner_website":81,"owner_url":82,"languages":83,"stars":96,"forks":97,"last_commit_at":98,"license":99,"difficulty_score":100,"env_os":101,"env_gpu":102,"env_ram":103,"env_deps":104,"category_tags":118,"github_topics":119,"view_count":23,"oss_zip_url":80,"oss_zip_packed_at":80,"status":16,"created_at":127,"updated_at":128,"faqs":129,"releases":158},2721,"antgroup\u002Fditto-talkinghead","ditto-talkinghead","[ACM MM 2025] Ditto: Motion-Space Diffusion for Controllable Realtime Talking Head Synthesis","ditto-talkinghead 是一款由蚂蚁集团开源的实时数字人说话头像合成工具，旨在通过单张静态照片和音频驱动，生成表情自然、口型同步的高清视频。它主要解决了传统数字人生成方法在推理速度慢、动作控制不够灵活以及难以兼顾实时性与高保真度等方面的痛点，让开发者能够轻松构建可交互的虚拟形象应用。\n\n该工具特别适合人工智能开发者、研究人员以及对实时虚拟人技术感兴趣的应用构建者使用。无论是需要快速部署在线客服数字人，还是希望研究前沿生成模型的研究员，ditto-talkinghead 都提供了成熟的推理代码与预训练模型，并支持在 Colab 上直接体验。\n\n其核心技术亮点在于采用了“运动空间扩散”（Motion-Space Diffusion）架构。不同于直接在像素层面进行生成的传统方式，ditto-talkinghead 先在紧凑的运动潜在空间中进行扩散去噪，再解码为图像。这一创新设计不仅大幅降低了计算负载，实现了真正的实时推理，还赋予了对头部姿态和面部表情的精细可控能力。目前项目已收录于 ACM MM 2025，并开放了完整的推理与训练代码，社区生态活跃，是探索下一代实时数字人技术的优","ditto-talkinghead 是一款由蚂蚁集团开源的实时数字人说话头像合成工具，旨在通过单张静态照片和音频驱动，生成表情自然、口型同步的高清视频。它主要解决了传统数字人生成方法在推理速度慢、动作控制不够灵活以及难以兼顾实时性与高保真度等方面的痛点，让开发者能够轻松构建可交互的虚拟形象应用。\n\n该工具特别适合人工智能开发者、研究人员以及对实时虚拟人技术感兴趣的应用构建者使用。无论是需要快速部署在线客服数字人，还是希望研究前沿生成模型的研究员，ditto-talkinghead 都提供了成熟的推理代码与预训练模型，并支持在 Colab 上直接体验。\n\n其核心技术亮点在于采用了“运动空间扩散”（Motion-Space Diffusion）架构。不同于直接在像素层面进行生成的传统方式，ditto-talkinghead 先在紧凑的运动潜在空间中进行扩散去噪，再解码为图像。这一创新设计不仅大幅降低了计算负载，实现了真正的实时推理，还赋予了对头部姿态和面部表情的精细可控能力。目前项目已收录于 ACM MM 2025，并开放了完整的推理与训练代码，社区生态活跃，是探索下一代实时数字人技术的优质选择。","\u003Ch2 align='center'>Ditto: Motion-Space Diffusion for Controllable Realtime Talking Head Synthesis\u003C\u002Fh2>\n\n\u003Cdiv align='center'>\n    \u003Ca href=\"\">\u003Cstrong>Tianqi Li\u003C\u002Fstrong>\u003C\u002Fa>\n    ·\n    \u003Ca href=\"\">\u003Cstrong>Ruobing Zheng\u003C\u002Fstrong>\u003C\u002Fa>\u003Csup>†\u003C\u002Fsup>\n    ·\n    \u003Ca href=\"\">\u003Cstrong>Minghui Yang\u003C\u002Fstrong>\u003C\u002Fa>\n    ·\n    \u003Ca href=\"\">\u003Cstrong>Jingdong Chen\u003C\u002Fstrong>\u003C\u002Fa>\n    ·\n    \u003Ca href=\"\">\u003Cstrong>Ming Yang\u003C\u002Fstrong>\u003C\u002Fa>\n\u003C\u002Fdiv>\n\u003Cdiv align='center'>\nAnt Group\n\u003C\u002Fdiv>\n\u003Cbr>\n\u003Cdiv align='center'>\n    \u003Ca href='https:\u002F\u002Farxiv.org\u002Fabs\u002F2411.19509'>\u003Cimg src='https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FPaper-arXiv-red'>\u003C\u002Fa>\n    \u003Ca href='https:\u002F\u002Fdigital-avatar.github.io\u002Fai\u002FDitto\u002F'>\u003Cimg src='https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FProject-Page-blue'>\u003C\u002Fa>\n    \u003Ca href='https:\u002F\u002Fhuggingface.co\u002Fdigital-avatar\u002Fditto-talkinghead'>\u003Cimg src='https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FModel-HuggingFace-yellow'>\u003C\u002Fa>\n    \u003Ca href='https:\u002F\u002Fgithub.com\u002Fantgroup\u002Fditto-talkinghead'>\u003Cimg src='https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FCode-GitHub-purple'>\u003C\u002Fa>\n    \u003C!-- \u003Ca href='https:\u002F\u002Fgithub.com\u002Fantgroup\u002Fditto-talkinghead'>\u003Cimg src='https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Fstars\u002Fantgroup\u002Fditto-talkinghead?style=social'>\u003C\u002Fa> -->\n    \u003Ca href='https:\u002F\u002Fcolab.research.google.com\u002Fdrive\u002F19SUi1TiO32IS-Crmsu9wrkNspWE8tFbs?usp=sharing'>\u003Cimg src='https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FDemo-Colab-orange'>\u003C\u002Fa>\n\u003C\u002Fdiv>\n\u003Cbr>\n\u003Cdiv align=\"center\">\n    \u003Cvideo style=\"width: 95%; object-fit: cover;\" controls loop src=\"https:\u002F\u002Fgithub.com\u002Fuser-attachments\u002Fassets\u002Fef1a0b08-bff3-4997-a6dd-62a7f51cdb40\" muted=\"false\">\u003C\u002Fvideo>\n    \u003Cp>\n    ✨  For more results, visit our \u003Ca href=\"https:\u002F\u002Fdigital-avatar.github.io\u002Fai\u002FDitto\u002F\">\u003Cstrong>Project Page\u003C\u002Fstrong>\u003C\u002Fa> ✨ \n    \u003C\u002Fp>\n\u003C\u002Fdiv>\n\n\n## 📌 Updates\n* [2025.11.12] 🔥🔥 We noticed the community's enthusiasm for open-source training code. [Training code](https:\u002F\u002Fgithub.com\u002Fantgroup\u002Fditto-talkinghead\u002Ftree\u002Ftrain) is now available, since there have been multiple versions and limited time to organize, it may differ slightly from the paper version.\n* [2025.07.11] 🔥 The [PyTorch model](#-pytorch-model) is now available.\n* [2025.07.07] 🔥 Ditto is accepted by ACM MM 2025.\n* [2025.01.21] 🔥 We update the [Colab](https:\u002F\u002Fcolab.research.google.com\u002Fdrive\u002F19SUi1TiO32IS-Crmsu9wrkNspWE8tFbs?usp=sharing) demo, welcome to try it. \n* [2025.01.10] 🔥 We release our inference [codes](https:\u002F\u002Fgithub.com\u002Fantgroup\u002Fditto-talkinghead) and [models](https:\u002F\u002Fhuggingface.co\u002Fdigital-avatar\u002Fditto-talkinghead).\n* [2024.11.29] 🔥 Our [paper](https:\u002F\u002Farxiv.org\u002Fabs\u002F2411.19509) is in public on arxiv.\n\n \n ## 🔍 Overview\n\u003C!-- This is the **train branch**, containing code for **training the model**. For inference code, please switch to the [`main`](https:\u002F\u002Fgithub.com\u002Fantgroup\u002Fditto-talkinghead) branch. -->\n\nThis is the **inference branch**. For training code, please switch to the [`train`](https:\u002F\u002Fgithub.com\u002Fantgroup\u002Fditto-talkinghead\u002Ftree\u002Ftrain) branch.\n\n\n\n## 🛠️ Installation\n\nTested Environment  \n- System: Centos 7.2  \n- GPU: A100  \n- Python: 3.10  \n- tensorRT: 8.6.1  \n\n\nClone the codes from [GitHub](https:\u002F\u002Fgithub.com\u002Fantgroup\u002Fditto-talkinghead):  \n```bash\ngit clone https:\u002F\u002Fgithub.com\u002Fantgroup\u002Fditto-talkinghead\ncd ditto-talkinghead\n```\n\n### Conda\nCreate `conda` environment:\n```bash\nconda env create -f environment.yaml\nconda activate ditto\n```\n\n### Pip\nIf you have problems creating a conda environment, you can also refer to our [Colab](https:\u002F\u002Fcolab.research.google.com\u002Fdrive\u002F19SUi1TiO32IS-Crmsu9wrkNspWE8tFbs?usp=sharing). \nAfter correctly installing `pytorch`, `cuda` and `cudnn`, you only need to install a few packages using pip:\n```bash\npip install \\\n    tensorrt==8.6.1 \\\n    librosa \\\n    tqdm \\\n    filetype \\\n    imageio \\\n    opencv_python_headless \\\n    scikit-image \\\n    cython \\\n    cuda-python \\\n    imageio-ffmpeg \\\n    colored \\\n    polygraphy \\\n    numpy==2.0.1\n```\n\nIf you don't use `conda`, you may also need to install `ffmpeg` according to the [official website](https:\u002F\u002Fwww.ffmpeg.org\u002Fdownload.html).\n\n\n## 📥 Download Checkpoints\n\nDownload checkpoints from [HuggingFace](https:\u002F\u002Fhuggingface.co\u002Fdigital-avatar\u002Fditto-talkinghead) and put them in `checkpoints` dir:\n```bash\ngit lfs install\ngit clone https:\u002F\u002Fhuggingface.co\u002Fdigital-avatar\u002Fditto-talkinghead checkpoints\n```\n\nThe `checkpoints` should be like:\n```text\n.\u002Fcheckpoints\u002F\n├── ditto_cfg\n│   ├── v0.4_hubert_cfg_trt.pkl\n│   └── v0.4_hubert_cfg_trt_online.pkl\n├── ditto_onnx\n│   ├── appearance_extractor.onnx\n│   ├── blaze_face.onnx\n│   ├── decoder.onnx\n│   ├── face_mesh.onnx\n│   ├── hubert.onnx\n│   ├── insightface_det.onnx\n│   ├── landmark106.onnx\n│   ├── landmark203.onnx\n│   ├── libgrid_sample_3d_plugin.so\n│   ├── lmdm_v0.4_hubert.onnx\n│   ├── motion_extractor.onnx\n│   ├── stitch_network.onnx\n│   └── warp_network.onnx\n└── ditto_trt_Ampere_Plus\n    ├── appearance_extractor_fp16.engine\n    ├── blaze_face_fp16.engine\n    ├── decoder_fp16.engine\n    ├── face_mesh_fp16.engine\n    ├── hubert_fp32.engine\n    ├── insightface_det_fp16.engine\n    ├── landmark106_fp16.engine\n    ├── landmark203_fp16.engine\n    ├── lmdm_v0.4_hubert_fp32.engine\n    ├── motion_extractor_fp32.engine\n    ├── stitch_network_fp16.engine\n    └── warp_network_fp16.engine\n```\n\n- The `ditto_cfg\u002Fv0.4_hubert_cfg_trt_online.pkl` is online config\n- The `ditto_cfg\u002Fv0.4_hubert_cfg_trt.pkl` is offline config\n\n\n## 🚀 Inference \n\nRun `inference.py`:\n\n```shell\npython inference.py \\\n    --data_root \"\u003Cpath-to-trt-model>\" \\\n    --cfg_pkl \"\u003Cpath-to-cfg-pkl>\" \\\n    --audio_path \"\u003Cpath-to-input-audio>\" \\\n    --source_path \"\u003Cpath-to-input-image>\" \\\n    --output_path \"\u003Cpath-to-output-mp4>\" \n```\n\nFor example:\n\n```shell\npython inference.py \\\n    --data_root \".\u002Fcheckpoints\u002Fditto_trt_Ampere_Plus\" \\\n    --cfg_pkl \".\u002Fcheckpoints\u002Fditto_cfg\u002Fv0.4_hubert_cfg_trt.pkl\" \\\n    --audio_path \".\u002Fexample\u002Faudio.wav\" \\\n    --source_path \".\u002Fexample\u002Fimage.png\" \\\n    --output_path \".\u002Ftmp\u002Fresult.mp4\" \n```\n\n❗Note:\n\nWe have provided the tensorRT model with `hardware-compatibility-level=Ampere_Plus` (`checkpoints\u002Fditto_trt_Ampere_Plus\u002F`). If your GPU does not support it, please execute the `cvt_onnx_to_trt.py` script to convert from the general onnx model (`checkpoints\u002Fditto_onnx\u002F`) to the tensorRT model.\n\n```bash\npython scripts\u002Fcvt_onnx_to_trt.py --onnx_dir \".\u002Fcheckpoints\u002Fditto_onnx\" --trt_dir \".\u002Fcheckpoints\u002Fditto_trt_custom\"\n```\n\nThen run `inference.py` with `--data_root=.\u002Fcheckpoints\u002Fditto_trt_custom`.\n\n\n## ⚡ PyTorch Model\n*Based on community interest and to better support further development, we are now open-sourcing the PyTorch version of the model.*\n\n\nWe have added the PyTorch model and corresponding configuration files to the [HuggingFace](https:\u002F\u002Fhuggingface.co\u002Fdigital-avatar\u002Fditto-talkinghead). Please refer to [Download Checkpoints](#-download-checkpoints) to prepare the model files.\n\nThe `checkpoints` should be like:\n```text\n.\u002Fcheckpoints\u002F\n├── ditto_cfg\n│   ├── ...\n│   └── v0.4_hubert_cfg_pytorch.pkl\n├── ...\n└── ditto_pytorch\n    ├── aux_models\n    │   ├── 2d106det.onnx\n    │   ├── det_10g.onnx\n    │   ├── face_landmarker.task\n    │   ├── hubert_streaming_fix_kv.onnx\n    │   └── landmark203.onnx\n    └── models\n        ├── appearance_extractor.pth\n        ├── decoder.pth\n        ├── lmdm_v0.4_hubert.pth\n        ├── motion_extractor.pth\n        ├── stitch_network.pth\n        └── warp_network.pth\n```\n\nTo run inference, execute the following command:\n\n```shell\npython inference.py \\\n    --data_root \".\u002Fcheckpoints\u002Fditto_pytorch\" \\\n    --cfg_pkl \".\u002Fcheckpoints\u002Fditto_cfg\u002Fv0.4_hubert_cfg_pytorch.pkl\" \\\n    --audio_path \".\u002Fexample\u002Faudio.wav\" \\\n    --source_path \".\u002Fexample\u002Fimage.png\" \\\n    --output_path \".\u002Ftmp\u002Fresult.mp4\" \n```\n\n\n## 📧 Acknowledgement\nOur implementation is based on [S2G-MDDiffusion](https:\u002F\u002Fgithub.com\u002Fthuhcsi\u002FS2G-MDDiffusion) and [LivePortrait](https:\u002F\u002Fgithub.com\u002FKwaiVGI\u002FLivePortrait). Thanks for their remarkable contribution and released code! If we missed any open-source projects or related articles, we would like to complement the acknowledgement of this specific work immediately.\n\n## ⚖️ License\nThis repository is released under the Apache-2.0 license as found in the [LICENSE](LICENSE) file.\n\n## 📚 Citation\nIf you find this codebase useful for your research, please use the following entry.\n```BibTeX\n@article{li2024ditto,\n    title={Ditto: Motion-Space Diffusion for Controllable Realtime Talking Head Synthesis},\n    author={Li, Tianqi and Zheng, Ruobing and Yang, Minghui and Chen, Jingdong and Yang, Ming},\n    journal={arXiv preprint arXiv:2411.19509},\n    year={2024}\n}\n```\n\n\n## 🌟 Star History\n\n[![Star History Chart](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fantgroup_ditto-talkinghead_readme_922d3938662d.png)](https:\u002F\u002Fwww.star-history.com\u002F#antgroup\u002Fditto-talkinghead&Date)\n","\u003Ch2 align='center'>Ditto：基于运动-空间扩散的可控实时说话头合成\u003C\u002Fh2>\n\n\u003Cdiv align='center'>\n    \u003Ca href=\"\">\u003Cstrong>李天琪\u003C\u002Fstrong>\u003C\u002Fa>\n    ·\n    \u003Ca href=\"\">\u003Cstrong>郑若冰\u003C\u002Fstrong>\u003C\u002Fa>\u003Csup>†\u003C\u002Fsup>\n    ·\n    \u003Ca href=\"\">\u003Cstrong>杨明辉\u003C\u002Fstrong>\u003C\u002Fa>\n    ·\n    \u003Ca href=\"\">\u003Cstrong>陈靖东\u003C\u002Fstrong>\u003C\u002Fa>\n    ·\n    \u003Ca href=\"\">\u003Cstrong>杨明\u003C\u002Fstrong>\u003C\u002Fa>\n\u003C\u002Fdiv>\n\u003Cdiv align='center'>\n蚂蚁集团\n\u003C\u002Fdiv>\n\u003Cbr>\n\u003Cdiv align='center'>\n    \u003Ca href='https:\u002F\u002Farxiv.org\u002Fabs\u002F2411.19509'>\u003Cimg src='https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FPaper-arXiv-red'>\u003C\u002Fa>\n    \u003Ca href='https:\u002F\u002Fdigital-avatar.github.io\u002Fai\u002FDitto\u002F'>\u003Cimg src='https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FProject-Page-blue'>\u003C\u002Fa>\n    \u003Ca href='https:\u002F\u002Fhuggingface.co\u002Fdigital-avatar\u002Fditto-talkinghead'>\u003Cimg src='https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FModel-HuggingFace-yellow'>\u003C\u002Fa>\n    \u003Ca href='https:\u002F\u002Fgithub.com\u002Fantgroup\u002Fditto-talkinghead'>\u003Cimg src='https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FCode-GitHub-purple'>\u003C\u002Fa>\n    \u003C!-- \u003Ca href='https:\u002F\u002Fgithub.com\u002Fantgroup\u002Fditto-talkinghead'>\u003Cimg src='https:\u002F\u002Fimg.shields.io\u002Fgithub\u002Fstars\u002Fantgroup\u002Fditto-talkinghead?style=social'>\u003C\u002Fa> -->\n    \u003Ca href='https:\u002F\u002Fcolab.research.google.com\u002Fdrive\u002F19SUi1TiO32IS-Crmsu9wrkNspWE8tFbs?usp=sharing'>\u003Cimg src='https:\u002F\u002Fimg.shields.io\u002Fbadge\u002FDemo-Colab-orange'>\u003C\u002Fa>\n\u003C\u002Fdiv>\n\u003Cbr>\n\u003Cdiv align=\"center\">\n    \u003Cvideo style=\"width: 95%; object-fit: cover;\" controls loop src=\"https:\u002F\u002Fgithub.com\u002Fuser-attachments\u002Fassets\u002Fef1a0b08-bff3-4997-a6dd-62a7f51cdb40\" muted=\"false\">\u003C\u002Fvideo>\n    \u003Cp>\n    ✨ 更多结果请访问我们的\u003Ca href=\"https:\u002F\u002Fdigital-avatar.github.io\u002Fai\u002FDitto\u002F\">\u003Cstrong>项目页面\u003C\u002Fstrong>\u003C\u002Fa> ✨ \n    \u003C\u002Fp>\n\u003C\u002Fdiv>\n\n\n## 📌 更新\n* [2025.11.12] 🔥🔥 我们注意到社区对开源训练代码的热情。[训练代码](https:\u002F\u002Fgithub.com\u002Fantgroup\u002Fditto-talkinghead\u002Ftree\u002Ftrain)现已开放，由于版本较多且整理时间有限，可能与论文中的版本略有不同。\n* [2025.07.11] 🔥 [PyTorch模型](#-pytorch-model)现已可用。\n* [2025.07.07] 🔥 Ditto已被ACM MM 2025接收。\n* [2025.01.21] 🔥 我们更新了[Colab](https:\u002F\u002Fcolab.research.google.com\u002Fdrive\u002F19SUi1TiO32IS-Crmsu9wrkNspWE8tFbs?usp=sharing)演示，欢迎试用。\n* [2025.01.10] 🔥 我们发布了推理[代码](https:\u002F\u002Fgithub.com\u002Fantgroup\u002Fditto-talkinghead)和[模型](https:\u002F\u002Fhuggingface.co\u002Fdigital-avatar\u002Fditto-talkinghead)。\n* [2024.11.29] 🔥 我们的[论文](https:\u002F\u002Farxiv.org\u002Fabs\u002F2411.19509)已在arXiv上公开。\n\n \n ## 🔍 概述\n\u003C!-- 这是**训练分支**，包含用于**训练模型**的代码。如需推理代码，请切换到[`main`](https:\u002F\u002Fgithub.com\u002Fantgroup\u002Fditto-talkinghead)分支。 -->\n\n这是**推理分支**。如需训练代码，请切换到[`train`](https:\u002F\u002Fgithub.com\u002Fantgroup\u002Fditto-talkinghead\u002Ftree\u002Ftrain)分支。\n\n\n\n## 🛠️ 安装\n\n测试环境  \n- 系统：Centos 7.2  \n- GPU：A100  \n- Python：3.10  \n- tensorRT：8.6.1  \n\n\n从[Github](https:\u002F\u002Fgithub.com\u002Fantgroup\u002Fditto-talkinghead)克隆代码：  \n```bash\ngit clone https:\u002F\u002Fgithub.com\u002Fantgroup\u002Fditto-talkinghead\ncd ditto-talkinghead\n```\n\n### Conda\n创建`conda`环境：\n```bash\nconda env create -f environment.yaml\nconda activate ditto\n```\n\n### Pip\n如果在创建conda环境时遇到问题，也可以参考我们的[Colab](https:\u002F\u002Fcolab.research.google.com\u002Fdrive\u002F19SUi1TiO32IS-Crmsu9wrkNspWE8tFbs?usp=sharing)。正确安装`pytorch`、`cuda`和`cudnn`后，只需使用pip安装少量包：\n```bash\npip install \\\n    tensorrt==8.6.1 \\\n    librosa \\\n    tqdm \\\n    filetype \\\n    imageio \\\n    opencv_python_headless \\\n    scikit-image \\\n    cython \\\n    cuda-python \\\n    imageio-ffmpeg \\\n    colored \\\n    polygraphy \\\n    numpy==2.0.1\n```\n\n如果不使用`conda`, 还需要根据[官方网站](https:\u002F\u002Fwww.ffmpeg.org\u002Fdownload.html)安装`ffmpeg`。\n\n\n## 📥 下载检查点\n\n从[HuggingFace](https:\u002F\u002Fhuggingface.co\u002Fdigital-avatar\u002Fditto-talkinghead)下载检查点，并将其放入`checkpoints`目录：\n```bash\ngit lfs install\ngit clone https:\u002F\u002Fhuggingface.co\u002Fdigital-avatar\u002Fditto-talkinghead checkpoints\n```\n\n`checkpoints`目录应如下所示：\n```text\n.\u002Fcheckpoints\u002F\n├── ditto_cfg\n│   ├── v0.4_hubert_cfg_trt.pkl\n│   └── v0.4_hubert_cfg_trt_online.pkl\n├── ditto_onnx\n│   ├── appearance_extractor.onnx\n│   ├── blaze_face.onnx\n│   ├── decoder.onnx\n│   ├── face_mesh.onnx\n│   ├── hubert.onnx\n│   ├── insightface_det.onnx\n│   ├── landmark106.onnx\n│   ├── landmark203.onnx\n│   ├── libgrid_sample_3d_plugin.so\n│   ├── lmdm_v0.4_hubert.onnx\n│   ├── motion_extractor.onnx\n│   ├── stitch_network.onnx\n│   └── warp_network.onnx\n└── ditto_trt_Ampere_Plus\n    ├── appearance_extractor_fp16.engine\n    ├── blaze_face_fp16.engine\n    ├── decoder_fp16.engine\n    ├── face_mesh_fp16.engine\n    ├── hubert_fp32.engine\n    ├── insightface_det_fp16.engine\n    ├── landmark106_fp16.engine\n    ├── landmark203_fp16.engine\n    ├── lmdm_v0.4_hubert_fp32.engine\n    ├── motion_extractor_fp32.engine\n    ├── stitch_network_fp16.engine\n    └── warp_network_fp16.engine\n```\n\n- `ditto_cfg\u002Fv0.4_hubert_cfg_trt_online.pkl`为在线配置\n- `ditto_cfg\u002Fv0.4_hubert_cfg_trt.pkl`为离线配置\n\n\n## 🚀 推理 \n\n运行`inference.py`：\n\n```shell\npython inference.py \\\n    --data_root \"\u003Cpath-to-trt-model>\" \\\n    --cfg_pkl \"\u003Cpath-to-cfg-pkl>\" \\\n    --audio_path \"\u003Cpath-to-input-audio>\" \\\n    --source_path \"\u003Cpath-to-input-image>\" \\\n    --output_path \"\u003Cpath-to-output-mp4>\" \n```\n\n例如：\n\n```shell\npython inference.py \\\n    --data_root \".\u002Fcheckpoints\u002Fditto_trt_Ampere_Plus\" \\\n    --cfg_pkl \".\u002Fcheckpoints\u002Fditto_cfg\u002Fv0.4_hubert_cfg_trt.pkl\" \\\n    --audio_path \".\u002Fexample\u002Faudio.wav\" \\\n    --source_path \".\u002Fexample\u002Fimage.png\" \\\n    --output_path \".\u002Ftmp\u002Fresult.mp4\" \n```\n\n❗注意：\n\n我们提供了硬件兼容性级别为Ampere_Plus的tensorRT模型（`checkpoints\u002Fditto_trt_Ampere_Plus\u002F`）。如果您的GPU不支持该型号，请执行`cvt_onnx_to_trt.py`脚本，将通用onnx模型（`checkpoints\u002Fditto_onnx\u002F`）转换为tensorRT模型。\n\n```bash\npython scripts\u002Fcvt_onnx_to_trt.py --onnx_dir \".\u002Fcheckpoints\u002Fditto_onnx\" --trt_dir \".\u002Fcheckpoints\u002Fditto_trt_custom\"\n```\n\n然后使用`--data_root=.\u002Fcheckpoints\u002Fditto_trt_custom`运行`inference.py`。\n\n## ⚡ PyTorch 模型\n*基於社區的興趣以及更好地支持後續開發，我們現已開放模型的 PyTorch 版本源碼。*\n\n\n我們已將 PyTorch 模型及相應的配置文件上傳至 [HuggingFace](https:\u002F\u002Fhuggingface.co\u002Fdigital-avatar\u002Fditto-talkinghead)。請參閱[下載檢查點](#-download-checkpoints)以準備模型文件。\n\n`checkpoints` 目錄結構應如下所示：\n```text\n.\u002Fcheckpoints\u002F\n├── ditto_cfg\n│   ├── ...\n│   └── v0.4_hubert_cfg_pytorch.pkl\n├── ...\n└── ditto_pytorch\n    ├── aux_models\n    │   ├── 2d106det.onnx\n    │   ├── det_10g.onnx\n    │   ├── face_landmarker.task\n    │   ├── hubert_streaming_fix_kv.onnx\n    │   └── landmark203.onnx\n    └── models\n        ├── appearance_extractor.pth\n        ├── decoder.pth\n        ├── lmdm_v0.4_hubert.pth\n        ├── motion_extractor.pth\n        ├── stitch_network.pth\n        └── warp_network.pth\n```\n\n要運行推理，請執行以下命令：\n\n```shell\npython inference.py \\\n    --data_root \".\u002Fcheckpoints\u002Fditto_pytorch\" \\\n    --cfg_pkl \".\u002Fcheckpoints\u002Fditto_cfg\u002Fv0.4_hubert_cfg_pytorch.pkl\" \\\n    --audio_path \".\u002Fexample\u002Faudio.wav\" \\\n    --source_path \".\u002Fexample\u002Fimage.png\" \\\n    --output_path \".\u002Ftmp\u002Fresult.mp4\" \n```\n\n\n## 📧 致謝\n我們的實現基於 [S2G-MDDiffusion](https:\u002F\u002Fgithub.com\u002Fthuhcsi\u002FS2G-MDDiffusion) 和 [LivePortrait](https:\u002F\u002Fgithub.com\u002FKwaiVGI\u002FLivePortrait)。感謝他們傑出的貢獻和公開的代碼！若我們遺漏了任何開源項目或相關文獻，將立即補充致謝。\n\n## ⚖️ 授權條款\n本倉庫根據 [LICENSE](LICENSE) 文件中的 Apache-2.0 許可證發布。\n\n## 📚 引用\n若您認為此代碼庫對您的研究有所幫助，請使用以下引用格式。\n```BibTeX\n@article{li2024ditto,\n    title={Ditto: Motion-Space Diffusion for Controllable Realtime Talking Head Synthesis},\n    author={Li, Tianqi and Zheng, Ruobing and Yang, Minghui and Chen, Jingdong and Yang, Ming},\n    journal={arXiv preprint arXiv:2411.19509},\n    year={2024}\n}\n```\n\n\n## 🌟 星標歷史\n\n[![星標歷史圖](https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fantgroup_ditto-talkinghead_readme_922d3938662d.png)](https:\u002F\u002Fwww.star-history.com\u002F#antgroup\u002Fditto-talkinghead&Date)","# Ditto Talking Head 快速上手指南\n\nDitto 是一个基于运动空间扩散模型的可控实时数字人说话头合成工具，支持通过单张图片和音频生成逼真的说话视频。\n\n## 环境准备\n\n**推荐配置**\n- **系统**: Linux (测试环境为 Centos 7.2)\n- **GPU**: NVIDIA A100 (或其他支持 TensorRT 的显卡)\n- **Python**: 3.10\n- **TensorRT**: 8.6.1\n- **CUDA\u002FcuDNN**: 需预先正确安装以匹配 PyTorch 版本\n\n**前置依赖**\n- 确保已安装 `git` 和 `git-lfs` (用于下载大模型文件)。\n- 建议安装 `ffmpeg` (用于视频处理)。\n\n## 安装步骤\n\n### 1. 克隆代码库\n```bash\ngit clone https:\u002F\u002Fgithub.com\u002Fantgroup\u002Fditto-talkinghead\ncd ditto-talkinghead\n```\n\n### 2. 创建运行环境\n\n**方式一：使用 Conda (推荐)**\n```bash\nconda env create -f environment.yaml\nconda activate ditto\n```\n\n**方式二：使用 Pip (若无 Conda)**\n在安装好 PyTorch、CUDA 和 cuDNN 后，执行以下命令安装依赖：\n```bash\npip install \\\n    tensorrt==8.6.1 \\\n    librosa \\\n    tqdm \\\n    filetype \\\n    imageio \\\n    opencv_python_headless \\\n    scikit-image \\\n    cython \\\n    cuda-python \\\n    imageio-ffmpeg \\\n    colored \\\n    polygraphy \\\n    numpy==2.0.1\n```\n*注意：如果不使用 Conda，请根据 [ffmpeg 官网](https:\u002F\u002Fwww.ffmpeg.org\u002Fdownload.html) 手动安装 ffmpeg。*\n\n### 3. 下载模型权重\n使用 `git-lfs` 从 HuggingFace 下载模型至 `checkpoints` 目录：\n```bash\ngit lfs install\ngit clone https:\u002F\u002Fhuggingface.co\u002Fdigital-avatar\u002Fditto-talkinghead checkpoints\n```\n*注：国内用户若访问 HuggingFace 困难，可尝试配置镜像源或使用代理。*\n\n## 基本使用\n\n### 场景一：使用 TensorRT 加速推理 (推荐)\n适用于拥有 Ampere 架构及以上 GPU (如 A100, RTX 30\u002F40 系列) 的用户。\n\n```shell\npython inference.py \\\n    --data_root \".\u002Fcheckpoints\u002Fditto_trt_Ampere_Plus\" \\\n    --cfg_pkl \".\u002Fcheckpoints\u002Fditto_cfg\u002Fv0.4_hubert_cfg_trt.pkl\" \\\n    --audio_path \".\u002Fexample\u002Faudio.wav\" \\\n    --source_path \".\u002Fexample\u002Fimage.png\" \\\n    --output_path \".\u002Ftmp\u002Fresult.mp4\"\n```\n\n> **注意**：如果您的显卡不支持预提供的 `Ampere_Plus` 模型，需先转换模型：\n> ```bash\n> python scripts\u002Fcvt_onnx_to_trt.py --onnx_dir \".\u002Fcheckpoints\u002Fditto_onnx\" --trt_dir \".\u002Fcheckpoints\u002Fditto_trt_custom\"\n> ```\n> 然后运行推理时将 `--data_root` 改为 `.\u002Fcheckpoints\u002Fditto_trt_custom`。\n\n### 场景二：使用 PyTorch 原生推理\n适用于希望兼容性更好或进行二次开发的用户。\n\n```shell\npython inference.py \\\n    --data_root \".\u002Fcheckpoints\u002Fditto_pytorch\" \\\n    --cfg_pkl \".\u002Fcheckpoints\u002Fditto_cfg\u002Fv0.4_hubert_cfg_pytorch.pkl\" \\\n    --audio_path \".\u002Fexample\u002Faudio.wav\" \\\n    --source_path \".\u002Fexample\u002Fimage.png\" \\\n    --output_path \".\u002Ftmp\u002Fresult.mp4\"\n```\n\n**参数说明：**\n- `--data_root`: 模型文件所在目录路径。\n- `--cfg_pkl`: 配置文件路径 (`.pkl`)。\n- `--audio_path`: 输入音频文件路径 (如 .wav)。\n- `--source_path`: 参考人物图片路径 (如 .png)。\n- `--output_path`: 输出视频文件保存路径 (如 .mp4)。","某跨境电商团队急需为全球数千种商品快速生成多语种的真人讲解视频，以适配不同地区的营销推广。\n\n### 没有 ditto-talkinghead 时\n- **制作周期漫长**：传统方案需聘请外籍模特拍摄或逐帧手动调整口型，单个视频耗时数小时甚至数天，无法跟上快节奏的促销节点。\n- **实时交互缺失**：现有的数字人渲染延迟高，无法支持直播场景下的即时语音驱动，导致主播与观众互动时有明显的“音画不同步”尴尬。\n- **表情僵硬不自然**：旧模型生成的面部动作缺乏细微的情感变化，说话时眼神呆滞、头部运动机械，严重降低了用户的信任感和观看体验。\n- **算力成本高昂**：为了达到可接受的画质，往往需要占用多台高端 GPU 服务器进行离线渲染，推高了整体运营成本。\n\n### 使用 ditto-talkinghead 后\n- **秒级视频生成**：利用其运动空间扩散技术，仅需输入音频和参考图，即可在单张 A100 显卡上实时合成高质量视频，将制作时间从小时级压缩至秒级。\n- **流畅实时驱动**：凭借优化的推理速度，完美支持直播带货场景，主播的语音能即时转化为同步且自然的口型与表情，实现真正的“所听即所见”。\n- **情感表达细腻**：生成的数字人不仅口型精准，还能根据语调自动匹配逼真的头部姿态和微表情，使虚拟形象具备极强的感染力和真实感。\n- **部署轻量高效**：模型对显存占用友好，支持在更少的硬件资源下并发处理多个任务，大幅降低了大规模视频生产的边际成本。\n\nditto-talkinghead 通过突破性的实时可控合成能力，让企业能以极低的成本规模化生产具备电影级质感的个性化营销视频。","https:\u002F\u002Foss.gittoolsai.com\u002Fimages\u002Fantgroup_ditto-talkinghead_43b7f166.png","antgroup","Ant Group","https:\u002F\u002Foss.gittoolsai.com\u002Favatars\u002Fantgroup_0417229b.jpg","Make it easy to do business anywhere.",null,"https:\u002F\u002Fwww.antgroup.com","https:\u002F\u002Fgithub.com\u002Fantgroup",[84,88,92],{"name":85,"color":86,"percentage":87},"Python","#3572A5",98.9,{"name":89,"color":90,"percentage":91},"C","#555555",0.6,{"name":93,"color":94,"percentage":95},"Cython","#fedf5b",0.5,741,136,"2026-04-03T05:24:14","Apache-2.0",4,"Linux","必需 NVIDIA GPU。测试环境为 A100。提供针对 Ampere 架构（Ampere_Plus）优化的 TensorRT 模型。若显卡不支持，需自行将 ONNX 模型转换为 TensorRT 引擎。","未说明",{"notes":105,"python":106,"dependencies":107},"1. 官方测试系统为 Centos 7.2，强烈依赖 TensorRT 8.6.1 进行推理加速。2. 若不使用 Conda，需手动安装 ffmpeg。3. 默认提供的模型是针对 Ampere_Plus 硬件兼容性级别编译的，其他架构显卡需运行脚本将 ONNX 模型转换为 TensorRT 格式。4. 已开源 PyTorch 版本模型作为替代方案。","3.10",[108,109,110,111,112,113,114,115,116,117],"tensorrt==8.6.1","librosa","opencv_python_headless","scikit-image","cuda-python","imageio-ffmpeg","numpy==2.0.1","pytorch","cuda","cudnn",[35,14,39],[120,121,122,123,124,125,126],"audio-driven-portrait-animations","ditto","generative-model","human-animation","talking-face-generation","talking-head","video-generation","2026-03-27T02:49:30.150509","2026-04-06T05:27:02.989313",[130,135,140,145,150,154],{"id":131,"question_zh":132,"answer_zh":133,"source_url":134},12600,"安装时因 TensorRT 8.6.1 版本不兼容导致失败，如何解决？","建议使用 NVIDIA 官方提供的 Docker 镜像 `nvcr.io\u002Fnvidia\u002Ftensorrt:24.01-py3`。在该容器内部，通过 pip 安装以下指定版本的依赖即可正常运行推理示例：\n`pip install torch audioread==3.0.1 cffi==1.17.1 cuda-python==12.6.2.post1 cython==3.0.11 decorator==5.1.1 filetype==1.2.0 imageio==2.36.1 imageio-ffmpeg==0.5.1 joblib==1.4.2 lazy-loader==0.4 librosa==0.10.2.post1 llvmlite==0.43.0 msgpack==1.1.0 numba==0.60.0 opencv-python-headless==4.10.0.84 packaging==24.2 platformdirs==4.3.6 pooch==1.8.2 pycparser==2.22 scikit-image==0.25.0 scikit-learn==1.6.0 scipy==1.15.0 soundfile==0.13.0 soxr==0.5.0.post1 threadpoolctl==3.5.0 tifffile==2024.12.12 tqdm==4.67.1`","https:\u002F\u002Fgithub.com\u002Fantgroup\u002Fditto-talkinghead\u002Fissues\u002F2",{"id":136,"question_zh":137,"answer_zh":138,"source_url":139},12601,"转换 warp_network 模型时报错找不到 GridSample3D 插件，如何处理？","该错误是因为缺少 `libgrid_sample_3d_plugin.so` 插件。您可以参考 [grid-sample3d-trt-plugin](https:\u002F\u002Fgithub.com\u002FSeanWangJS\u002Fgrid-sample3d-trt-plugin) 仓库自行编译该插件。编译成功后，需要在运行转换脚本（如 `scripts\u002Fcvt_onnx_to_trt.py`）时正确加载该插件库。注意确保插件版本与您的 TensorRT 环境兼容。","https:\u002F\u002Fgithub.com\u002Fantgroup\u002Fditto-talkinghead\u002Fissues\u002F8",{"id":141,"question_zh":142,"answer_zh":143,"source_url":144},12602,"如何将生成的视频帧实时推流到 RTMP 服务器并同步音频？","可以使用 FFmpeg 将生成的视频帧与音频合并后再进行推流。如果追求实时性，可以参考社区实现的方案：使用 LiveKit WebRTC 服务器，并通过简单算法同步音视频帧。但需注意，实时流可能会出现轻微卡顿，且生成效果可能不如离线渲染逼真。若使用 RTSP 传输，同样需要在推流前完成音画对齐。","https:\u002F\u002Fgithub.com\u002Fantgroup\u002Fditto-talkinghead\u002Fissues\u002F21",{"id":146,"question_zh":147,"answer_zh":148,"source_url":149},12603,"项目中的辅助模型（如 InsightFace 和 Landmark203）是否允许商业用途？","项目中使用的 `2d106det.onnx` 和 `det_10g.onnx` 基于 InsightFace，根据其官方许可协议，这些模型禁止商业用途。`landmark203.onnx` 的来源和许可证目前尚不明确。对于商业用途，建议替换 InsightFace 模型为其他允许商用的检测模型，或联系维护者获取进一步的许可澄清及替代方案推荐。","https:\u002F\u002Fgithub.com\u002Fantgroup\u002Fditto-talkinghead\u002Fissues\u002F84",{"id":151,"question_zh":152,"answer_zh":153,"source_url":139},12604,"在编译 GridSample3D 插件后运行转换脚本时出现段错误（Segmentation fault），怎么办？","这通常是由于插件库加载错误或环境不匹配导致的。建议检查编译出的 `libgrid_sample_3d_plugin.so` 是否与当前 TensorRT 版本完全兼容。可以尝试在官方推荐的 TensorRT Docker 环境（如 `tensorrt_llm\u002Frelease` 或 `nvcr.io\u002Fnvidia\u002Ftensorrt:24.01-py3`）中重新编译和运行。如果问题依旧，可能需要调试插件加载路径或检查 ONNX 模型算子版本是否与插件匹配。",{"id":155,"question_zh":156,"answer_zh":157,"source_url":134},12605,"有没有现成的 Docker 镜像可以直接用于运行该项目以避免环境配置问题？","目前官方未提供完整的预构建应用镜像，但社区用户推荐使用 `nvcr.io\u002Fnvidia\u002Ftensorrt:24.01-py3` 作为基础镜像。在此镜像中手动安装项目所需的特定版本 Python 依赖（见安装问题解答）是目前最稳定的运行方式。维护者也表示可以提供详细的步骤指导。",[]]