AI个人学习
和实操指南
豆包Marscode1

LHM:从单张图片生成支持动作的3D人体模型

综合介绍

LHM(Large Animatable Human Reconstruction Model)是一个开源项目,它由aigc3d团队开发,能从一张图片快速生成支持动作的3D人体模型。核心特色是用AI技术,几秒内把2D图像变成3D模型,支持实时预览和姿势调整。LHM采用3D Gaussian Splatting技术表示人体,结合多模态变换器架构,能保留衣服纹理和几何细节。项目在2025年3月13日首次发布,提供预训练模型和代码,适合研究或开发3D数字人相关应用。

LHM:从单张图片生成支持动作的3D人体模型-1


 

功能列表

  • 从单张图片生成3D人体模型,几秒内完成。
  • 支持实时渲染,生成的模型能直接查看。
  • 提供动作功能,可调整人体姿势生成动态视频。
  • 输出3D网格文件(如OBJ格式),方便后续编辑。
  • 包含预训练模型(如LHM-0.5B和LHM-1B),无需自己训练。
  • 集成Gradio界面,支持本地可视化操作。
  • 提供视频处理管道,可从视频提取动作应用到模型。

 

使用帮助

LHM的使用分为安装和操作两部分。以下是详细步骤,帮助你快速上手。

安装流程

  1. 准备环境
    系统需要Python 3.10和CUDA(支持11.8或12.1版本)。建议用NVIDIA显卡,比如A100或4090,显存至少16GB。

    • 检查Python版本:
      复制复制复制复制复制复制复制复制复制复制复制复制复制复制
      复制
      python --version
    • 检查CUDA版本:
      复制复制复制复制复制复制复制复制复制复制复制复制复制
      复制
      nvcc --version
  2. 克隆仓库
    在终端输入以下命令,下载LHM代码:

    复制复制复制复制复制复制复制复制复制复制复制复制
    复制
    git clone https://github.com/aigc3d/LHM.git
    cd LHM
  1. 安装依赖
    根据你的CUDA版本运行对应脚本:

    • CUDA 11.8:
      复制复制复制复制复制复制复制复制复制复制复制
      复制
      sh ./install_cu118.sh
    • CUDA 12.1:
      复制复制复制复制复制复制复制复制复制复制
      复制
      sh ./install_cu121.sh

    如果脚本失败,可手动安装依赖:

    复制复制复制复制复制复制复制复制复制
    复制
    pip install -r requirements.txt
  2. 下载模型
    模型会自动下载。如果想手动下载,用以下命令:

    • LHM-0.5B模型:
      复制复制复制复制复制复制复制复制
      复制
      wget https://virutalbuy-public.oss-cn-hangzhou.aliyuncs.com/share/aigc3d/data/for_lingteng/LHM/LHM-0.5B.tar
      tar -xvf LHM-0.5B.tar
    • LHM-1B模型:
      复制复制复制复制复制复制复制
      复制
      wget https://virutalbuy-public.oss-cn-hangzhou.aliyuncs.com/share/aigc3d/data/for_lingteng/LHM/LHM-1B.tar
      tar -xvf LHM-1B.tar

    下载后解压到项目根目录。

  3. 验证安装
    运行测试命令,确保环境正常:

    复制复制复制复制复制复制
    复制
    python app.py

    如果成功,会启动Gradio界面。

操作流程

生成3D模型

  1. 准备图片
    准备一张包含人体全身的清晰图片,保存到本地,比如<path_to_image>/person.jpg
  2. 运行推理脚本
    在终端输入:

    复制复制复制复制复制
    复制
    bash ./inference.sh ./configs/inference/human-lrm-1B.yaml LHM-1B <path_to_image>/ ./output/
    • <path_to_image>是你的图片路径。
    • ./output/是输出文件夹,生成结果会保存在这里。
  3. 查看结果
    生成后,<output>文件夹会有3D模型文件和渲染视频。可以用3D软件(如Blender)打开网格文件,或直接播放视频。

添加动作

  1. 准备动作序列
    项目提供示例动作文件,位于<LHM根目录>/train_data/motion_video/mimo1/smplx_params。你也可以用自己的SMPL-X参数文件。
  2. 运行动作脚本
    输入以下命令:

    复制复制复制复制
    复制
    bash ./inference.sh ./configs/inference/human-lrm-1B.yaml LHM-1B <path_to_image>/ <path_to_motion>/smplx_params
    • <path_to_motion>是动作文件路径。
  3. 预览动作视频
    输出文件夹会生成动作视频,直接播放即可。

使用Gradio界面

  1. 启动界面
    在终端运行:

    复制复制复制
    复制
    python app.py

    浏览器会打开http://0.0.0.0:7860

  2. 上传图片
    在界面上传一张人体图片,点击“提交”。
  3. 获取结果
    几秒后,界面会显示渲染图片和动作视频,可下载查看。

导出3D网格

  1. 运行导出脚本
    输入:

    复制复制
    复制
    bash ./inference_mesh.sh ./configs/inference/human-lrm-1B.yaml LHM-1B
  2. 找到文件
    输出文件夹会有OBJ格式的网格文件,可用3D软件编辑。

注意事项

  • 图片需清晰,背景简单效果更好。
  • 动作效果取决于输入动作的质量。
  • 如果显存不够,试用LHM-0.5B模型。

 

应用场景

  1. 游戏开发
    开发者可以用LHM从照片快速生成3D角色模型,调整姿势后导入游戏引擎,节省建模时间。
  2. 影视制作
    影视团队能用LHM制作数字替身,生成动作视频后用于特效场景,降低人工建模成本。
  3. 虚拟主播
    主播可上传自己的照片,生成3D形象,再添加动作,打造个性化虚拟形象。
  4. 教育研究
    研究人员能用LHM测试3D重建算法,或在课堂展示从图片到模型的转换过程。

 

QA

  1. LHM支持哪些图片格式?
    支持常见格式如JPG、PNG,建议用JPG,文件大小不超过10MB。
  2. 生成模型需要多长时间?
    在A100显卡上约0.2秒,4090显卡上1-2秒,因硬件不同略有变化。
  3. 可以自己训练模型吗?
    可以,但官方没提供训练脚本。需要准备数据集和调整代码,适合有经验的用户。
  4. 输出的3D模型能编辑吗?
    可以。导出OBJ文件后,用Blender或Maya编辑几何和纹理。
未经允许不得转载:首席AI分享圈 » LHM:从单张图片生成支持动作的3D人体模型
zh_CN简体中文