综合介绍
LHM(Large Animatable Human Reconstruction Model)是一个开源项目,它由aigc3d团队开发,能从一张图片快速生成支持动作的3D人体模型。核心特色是用AI技术,几秒内把2D图像变成3D模型,支持实时预览和姿势调整。LHM采用3D Gaussian Splatting技术表示人体,结合多模态变换器架构,能保留衣服纹理和几何细节。项目在2025年3月13日首次发布,提供预训练模型和代码,适合研究或开发3D数字人相关应用。
功能列表
- 从单张图片生成3D人体模型,几秒内完成。
- 支持实时渲染,生成的模型能直接查看。
- 提供动作功能,可调整人体姿势生成动态视频。
- 输出3D网格文件(如OBJ格式),方便后续编辑。
- 包含预训练模型(如LHM-0.5B和LHM-1B),无需自己训练。
- 集成Gradio界面,支持本地可视化操作。
- 提供视频处理管道,可从视频提取动作应用到模型。
使用帮助
LHM的使用分为安装和操作两部分。以下是详细步骤,帮助你快速上手。
安装流程
- 准备环境
系统需要Python 3.10和CUDA(支持11.8或12.1版本)。建议用NVIDIA显卡,比如A100或4090,显存至少16GB。- 检查Python版本:
复制复制复制复制复制复制复制复制复制复制复制复制复制复制复制
python --version
- 检查CUDA版本:
复制复制复制复制复制复制复制复制复制复制复制复制复制复制
nvcc --version
- 检查Python版本:
- 克隆仓库
在终端输入以下命令,下载LHM代码:复制复制复制复制复制复制复制复制复制复制复制复制复制git clone https://github.com/aigc3d/LHM.git cd LHM
- 安装依赖
根据你的CUDA版本运行对应脚本:- CUDA 11.8:
复制复制复制复制复制复制复制复制复制复制复制复制
sh ./install_cu118.sh
- CUDA 12.1:
复制复制复制复制复制复制复制复制复制复制复制
sh ./install_cu121.sh
如果脚本失败,可手动安装依赖:
复制复制复制复制复制复制复制复制复制复制pip install -r requirements.txt
- CUDA 11.8:
- 下载模型
模型会自动下载。如果想手动下载,用以下命令:- 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
下载后解压到项目根目录。
- LHM-0.5B模型:
- 验证安装
运行测试命令,确保环境正常:复制复制复制复制复制复制复制python app.py
如果成功,会启动Gradio界面。
操作流程
生成3D模型
- 准备图片
准备一张包含人体全身的清晰图片,保存到本地,比如<path_to_image>/person.jpg
。 - 运行推理脚本
在终端输入:复制复制复制复制复制复制bash ./inference.sh ./configs/inference/human-lrm-1B.yaml LHM-1B <path_to_image>/ ./output/
<path_to_image>
是你的图片路径。./output/
是输出文件夹,生成结果会保存在这里。
- 查看结果
生成后,<output>
文件夹会有3D模型文件和渲染视频。可以用3D软件(如Blender)打开网格文件,或直接播放视频。
添加动作
- 准备动作序列
项目提供示例动作文件,位于<LHM根目录>/train_data/motion_video/mimo1/smplx_params
。你也可以用自己的SMPL-X参数文件。 - 运行动作脚本
输入以下命令:复制复制复制复制复制bash ./inference.sh ./configs/inference/human-lrm-1B.yaml LHM-1B <path_to_image>/ <path_to_motion>/smplx_params
<path_to_motion>
是动作文件路径。
- 预览动作视频
输出文件夹会生成动作视频,直接播放即可。
使用Gradio界面
- 启动界面
在终端运行:复制复制复制复制python app.py
浏览器会打开
http://0.0.0.0:7860
。 - 上传图片
在界面上传一张人体图片,点击“提交”。 - 获取结果
几秒后,界面会显示渲染图片和动作视频,可下载查看。
导出3D网格
- 运行导出脚本
输入:复制复制复制bash ./inference_mesh.sh ./configs/inference/human-lrm-1B.yaml LHM-1B
- 找到文件
输出文件夹会有OBJ格式的网格文件,可用3D软件编辑。
注意事项
- 图片需清晰,背景简单效果更好。
- 动作效果取决于输入动作的质量。
- 如果显存不够,试用LHM-0.5B模型。
应用场景
- 游戏开发
开发者可以用LHM从照片快速生成3D角色模型,调整姿势后导入游戏引擎,节省建模时间。 - 影视制作
影视团队能用LHM制作数字替身,生成动作视频后用于特效场景,降低人工建模成本。 - 虚拟主播
主播可上传自己的照片,生成3D形象,再添加动作,打造个性化虚拟形象。 - 教育研究
研究人员能用LHM测试3D重建算法,或在课堂展示从图片到模型的转换过程。
QA
- LHM支持哪些图片格式?
支持常见格式如JPG、PNG,建议用JPG,文件大小不超过10MB。 - 生成模型需要多长时间?
在A100显卡上约0.2秒,4090显卡上1-2秒,因硬件不同略有变化。 - 可以自己训练模型吗?
可以,但官方没提供训练脚本。需要准备数据集和调整代码,适合有经验的用户。 - 输出的3D模型能编辑吗?
可以。导出OBJ文件后,用Blender或Maya编辑几何和纹理。