HelloMeme是一个集成空间编织注意力的扩散模型,用于生成高保真图像和视频。它提供了一个代码库,包含实验代码和预训练模型,支持PyTorch和FFmpeg。用户可以通过简单的命令行操作来生成图像和视频。
本文将详细介绍,如何在GPU算力租赁平台矩池云上快速复现、跑通 HelloMeme 项目,便捷的生成自己的数字人视频。
租用机器
本次复现先使用的是亚太1区 NVIDIA RTX 4090 配置环境,镜像使用的是 Pytorch 2.4.0,选择好机器和镜像后,在高级选项–自定义一个http协议的 8501 端口,然后点击租用即可。
使用亚太1区的可以无感连 Github 和 HuggingFace,克隆 Github 代码或者下载Huggingface 模型很快。
租用成功后我们可以在租用页面看到机器的 SSH、Jupyterlab 等链接,矩池云官网有详细的教程介绍了如何使用这些链接连接服务器。
配置环境
clone 代码
经常修改的代码和数据集建议放矩池云网盘,Linux 系统实例中网盘对应机器中的 /mnt
目录,永久存储,可以离线上传下载数据。
我们点击 Jupyterlab 链接即可直接访问服务器,新建一个 Terminal,输入以下指令 clone 项目。
# 进入网盘目录,我复现项目代码会归纳在一起 /mnt/example/,你改成自己目录即可
cd /mnt/example/
# clone 代码
git https://github.com/HelloVision/HelloMeme
cd HelloMeme
安装依赖
创建conda环境,按以下指令输入即可:
# 这句rm指令是清除镜像里默认配置的国内pip、conda镜像源,
# 如果你租用的不是亚太1区的机器,不用运行这句
rm ~/.condarc
rm /root/.config/pip/pip.conf /root/.pip/pip.conf
pip install diffusers transformers einops opencv-python tqdm pillow onnxruntime onnx safetensors accelerate
除了 Pyhton 依赖还需要安装一个处理视频的系统依赖 ffmpeg,
# 这句sed指令是将默认的腾讯原换成官方的,
# 如果你租用的不是亚太1区的机器,不用运行这句
sed -i 's|http://mirrors.cloud.tencent.com/ubuntu/|http://archive.ubuntu.com/ubuntu|g' /etc/apt/sources.list
apt update
apt install ffmpeg -y
运行项目
环境都配置好,我们先在项目目录下点击打开 inference_image.py,将最后两行显示处理后图片代码注释掉(远程jupyterlab没法调用本地可视化弹框),然后新增一行代码将处理结果存成成新图片,路径:./data/processed_image.png
cv2.imwrite("./data/processed_image.png", result_image)
# cv2.imshow('show', result_image)
# cv2.waitKey()
修改好后,在terminal项目目录下输入以下指令运行项目:
python inference_image.py
第一次运行需要先下载需要的模型文件。
运行完成后可以到存成路径双击打开相关文件查看效果,也可以选中文件–右键–download 下载到本地。
除了图片处理 ,这个项目还支持视频处理,需要先安装额外依赖:
pip install imageio
然后输入以下指令运行程序,运行完成后会在data/results
目录下生成一个处理好的视频文件。
python inference_video.py
推理过程显存占用12G左右,GPU利用率 100%。
保存环境
在矩池云配置好环境后,暂时不用的话,可以租用页面点击更多–保存到个人环境,这样下次从保存环境启动不需要重新配置环境。
取一个环境名称,然后勾选保存成功后自动释放机器
,再点击保存环境
即可。
保存成功后下次即可快速从保存环境启动啦。
如果你复现有什么问题,或者有什么AI项目复现需求,欢迎评论交流,知无不言。