PhysCap 环境配置指导
PhysCap 环境配置指导
撰稿人:朱俊威
修改日期:2021年12月14日
安装系统依赖
sudo apt-get install cython
sudo apt install libeigen3-dev
sudo apt install cmake
Conda创建虚拟环境
-
安装annaconda
-
创建physCap虚拟环境
conda create -n physcup python==3.6
【注意】虽然physCap项目使用的是python3.7,但是在安装RBDL依赖库之后,python3.7会有RuntimeWarning,所以建议还是直接安装python3.6
安装Pytorch环境
在虚拟环境中配置cuda、cudnn以及Pytorch
conda install pytorch=1.8.1 torchvision torchaudio cudatoolkit=10.2 cudnn -c pytorch -y
因为后续RBDL依赖库的编译要依赖当前的python相关库的环境
配置RBDL依赖库
-
克隆RBDL项目
git clone https://github.com/rbdl/rbdl.git
-
安装python所需依赖
pip install numpy SciPy Matplotlib
-
执行cmake
mkdir rbdl-build
cd rbdl-build
cmake -D CMAKE_BUILD_TYPE=Release -D RBDL_BUILD_PYTHON_WRAPPER=ON -D RBDL_BUILD_ADDON_URDFREADER=ON ../rbdl
-
编译
make -j8
【注意】截至2021年11月25日,直接编译项目会遇到
rbdl/include/rbdl/Quaternion.h
关于sqrt、sin等函数的 no matching function 的错误【解决】根据报错提醒,找到对应位置,在相应函数前面加上
std::
命名空间即可,再次执行编译指令,完成编译。 -
添加环境变量
在编译完成后,目录下会生成python文件夹,将其添加到环境变量即可(具体路径根据实际修改)
export PYTHONPATH=$PYTHONPATH:/home/junwei/zjw/rbdl-build/python
-
测试
运行rbdl项目目录下的样例代码进行测试
python rbdl/examples/python/example.py
若打印出一些值则配置成功
配置PhysCap
-
克隆PhysCap项目
git clone https://github.com/soshishimada/PhysCap_demo_release.git
-
安装依赖包
pip install -r requirements.txt
【注意】如果提示相关依赖包安装失败,例如
No matching distribution found for scipy==1.6.1
,将requirements.txt 文件中相关包的版本号限制删除,让它自动匹配合适版本下载即可。 -
测试运行源代码
python pipeline.py --contact_estimation 0 --floor_known 1 --floor_frame data/floor_frame.npy --humanoid_path asset/physcap.urdf --skeleton_filename asset/physcap.skeleton --motion_filename data/sample.motion --contact_path data/sample_contacts.npy --stationary_path data/sample_stationary.npy --save_path './results/'
成功运行
参考
- https://github.com/rbdl/rbdl
- https://github.com/soshishimada/PhysCap_demo_release/
- RBDL动力学库配置流程.docx,付一童