FoundationPose复现以及数据集的制作

参考文档

  • 50系列显卡运行参考教程https://blog.csdn.net/rodineye/article/details/149412978
  • 多版本cuda切换
    https://blog.csdn.net/qq_50677040/article/details/140210921
  • 显卡驱动安装
    https://blog.csdn.net/imolly/article/details/138117443
  • foundationpose复现过程
    https://blog.csdn.net/qq_41977396/article/details/137501249

安装步骤

  • 第一步:下载源码
git clone https://github.com/NVlabs/FoundationPose.git

还有一个cpp版本也不错

git clone https://github.com/zz990099/foundationpose_cpp.git
  • 第二步:按照安装教程安装
conda create -n foundationpose python=3.9
# 如果是50显卡
conda create -n foundationpose python=3.10
conda activate foundationpose
  • 第三步:安装Eigen
conda install conda-forge::eigen=3.4.0
export CMAKE_PREFIX_PATH="$CMAKE_PREFIX_PATH:/eigen/path/under/conda"

也可以这样安装Eigen

cd $HOME && wget -q https://gitlab.com/libeigen/eigen/-/archive/3.4.0/eigen-3.4.0.tar.gz && \
tar -xzf eigen-3.4.0.tar.gz && \
cd eigen-3.4.0 && mkdir build && cd build
cmake .. -Wno-dev -DCMAKE_BUILD_TYPE=Release -DCMAKE_CXX_FLAGS=-std=c++14 ..
sudo make install
cd $HOME && rm -rf eigen-3.4.0 eigen-3.4.0.tar.gz
  • 第四步:安装环境
    如果显卡支持torch==2.0.0+cu11.8
python -m pip install -r requirements.txt

50显卡只支持cuda12.8,所以需要注释掉requirements.txt中的pytorch内容

# PyTorch 2.1.1
--extra-index-url https://download.pytorch.org/whl/cu118
# torch==2.1.1+cu118
# torchvision==0.16.1+cu118
# torch==2.0.0+cu118
# torchvision==0.15.1+cu118
# torchaudio==2.0.1+cu118

先安装pytorch,然后再安装依赖

pip install torch==2.7.1 torchvision torchaudio -f https://mirrors.aliyun.com/pytorch-wheels/cu128/
python -m pip install -r requirements.txt   # 要求是注释后的版本
  • 第四步:安装NVDiffRast
    如果安装失败,请保证驱动版本和cuda(nvcc --version)版本一样
python -m pip install --quiet --no-cache-dir git+https://github.com/NVlabs/nvdiffrast.git
  • 第五步:安装Kaolin(可选,可以不安装)
python -m pip install --quiet --no-cache-dir kaolin==0.15.0 -f https://nvidia-kaolin.s3.us-east-2.amazonaws.com/torch-2.0.0_cu118.html
如果是50显卡
pip install kaolin==0.18.0 -f https://nvidia-kaolin.s3.us-east-2.amazonaws.com/torch-2.7.1_cu128.html
  • 第六步:安装pytorch3D
    如果安装过程容易卡死,请用MAX_OBJS=2 限制线程数
python -m pip install --quiet --no-index --no-cache-dir pytorch3d -f https://dl.fbaipublicfiles.com/pytorch3d/packaging/wheels/py39_cu118_pyt200/download.html
如果是50显卡
git clone https://github.com/facebookresearch/pytorch3d.git
cd pytorch3d
git checkout v0.7.9
MAX_JOBS=2 pip install --no-build-isolation .
  • 第七步:编译
CMAKE_PREFIX_PATH=$CONDA_PREFIX/lib/python3.9/site-packages/pybind11/share/cmake/pybind11 bash build_all_conda.sh

如果是50显卡,可以注释掉mycuda

#cd ${PROJ_ROOT}/bundlesdf/mycuda &&
#rm -rf build egg *.so &&
#python -m pip install -e .

## 如果不注释,请参考这个解决方案,common.cu参考资源文件
https://chat.deepseek.com/share/hq2m7ljsxchhp47b9g
## 在三处修改 121,163,270行
# AT_DISPATCH_FLOATING_TYPES(z_in_out.type(), "sample_rays_uniform_occupied_voxels_kernel", ([&]
  AT_DISPATCH_FLOATING_TYPES(z_in_out.scalar_type(), "sample_rays_uniform_occupied_voxels_kernel", ([&]
  • 第八步,运行示例程序
    python run_demo.py

数据集的制作

  • 参考文档
    https://www.cnblogs.com/day1024/p/18948051
Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐