首页 > 其他分享 >legged gym(包含isaac gym)丝滑安装教程

legged gym(包含isaac gym)丝滑安装教程

时间:2024-07-09 13:02:19浏览次数:18  
标签:LD 丝滑 gym legged pytorch conda LIBRARY PATH 安装

Legged Gym(包含Isaac Gym)安装教程——Ubuntu22.04

参考了官方包括网上一堆教程,结合自己遇到的坑,整理了一个比较顺畅的流程,基础环境(例如miniconda或者CUDA)配好的情况下按照本教程安装异常顺畅。有任何问题欢迎反馈。(本教程基于Ubuntu22.04,Ubuntu其他版本也可参考)

Tip1: 【默认已经安装了conda,并且创建并进入了虚拟环境(推荐python版本:3.8),以下所有步骤均在虚拟环境中进行操作。】

Tip2: 【本教程不会展开其他相关安装,例如:如何安装miniconda,如何换源,如何安装CUDA,这种建议大家专门去找专门的安装教程,更细致也更全面,把这些东西放到本教程就有点喧宾夺主的感觉了(文化沙漠不太会用词)】

1. 安装Isaac Gym

1.1. 官网下载Isaac Gym文件包

Isaac Gym官网

下载后得到一个压缩包:IsaacGym_Preview_4_Package.tar.gz (建议下载最新版本)
解压后包括如下文件:

/assets
/docker
/docs
/licences
/python
/create_conda_env_rlgpu.sh
/READEME.md

1.2. 安装依赖:

→进入python文件夹(cd):

pip install -e .

注意:这里要进入你要用的conda的虚拟环境里安装,后面所有步骤同理。

1.3. 运行演示:

→进入python/examples文件夹(cd):

python 1080_balls_of_solitude.py

出现仿真画面说明安装完成。

1.4. 可能的报错:

ImportError: libpython3.8.so.1.0: cannot open shared object file: No such file or dire
解决方案
(参考文章:解决安装IsaacGym报错ImportError: libpython3.8.so.1.0: cannot open shared object file: No such file or dire

1.4.1. 确定 libpython3.8.so.1.0位置,判断是否真的缺失
sudo updatedb
locate libpython3.8.so.1.0

→ 如果并没有缺失(大概率应该是没缺失),并且是在conda虚拟环境中安装的话应该位于这个目录:
$CONDA_PREFIX/lib
其中$CONDA_PREFIX是当前虚拟环境位置,在激活你的虚拟环境后可以通过echo $CONDA_PREFIX查看

→ 如果系统中真的缺失这个lib文件:去其他地方下载或者通过安装python38-dev等方式找回。

1.4.2. 没有缺失仍报错时在conda环境下解决方法(进入虚拟环境)

先创建文件:

cd $CONDA_PREFIX
mkdir -p ./etc/conda/activate.d
mkdir -p ./etc/conda/deactivate.d
touch ./etc/conda/activate.d/env_vars.sh
touch ./etc/conda/deactivate.d/env_vars.sh

编辑文件内容:

  • sudo nano ./etc/conda/activate.d/env_vars.sh
    添加:
    export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$CONDA_PREFIX/lib
    
  • sudo nano ./etc/conda/deactivate.d/env_vars.sh
    添加:
    # 保存原始的 LD_LIBRARY_PATH
    ORIGINAL_LD_LIBRARY_PATH=$LD_LIBRARY_PATH
    
    # 要删除的目录
    DIRECTORY_TO_REMOVE="$CONDA_PREFIX/lib"
    
    # 使用 grep 过滤掉要删除的目录项
    NEW_LD_LIBRARY_PATH=$(echo $LD_LIBRARY_PATH | tr ':' '\n' | grep -v "$DIRECTORY>
    
    # 设置新的 LD_LIBRARY_PATH
    export LD_LIBRARY_PATH=$NEW_LD_LIBRARY_PATH
    
    # 如果需要输出变化,可以打印出来
    #echo "Original LD_LIBRARY_PATH: $ORIGINAL_LD_LIBRARY_PATH"
    #echo "New LD_LIBRARY_PATH:      $LD_LIBRARY_PATH"
    

2. 安装legged gym

2.1. 安装pytorch和cuda:

★★【强烈建议自行安装自己的显卡对应的版本】★★

①先安装cuda,自行寻找详细的相关教程

②安装cuda对应版本的torch:
(参考:报错:RuntimeError: CUDA error: no kernel image is available for execution on the device

去pytorch官网下载与安装cuda版本最接近的pytorch:pytorch官网

官网内容如下:

# CUDA 11.8
conda install pytorch==2.3.0 torchvision==0.18.0 torchaudio==2.3.0 pytorch-cuda=11.8 -c pytorch -c nvidia
# CUDA 12.1
conda install pytorch==2.3.0 torchvision==0.18.0 torchaudio==2.3.0 pytorch-cuda=12.1 -c pytorch -c nvidia
# CPU Only
conda install pytorch==2.3.0 torchvision==0.18.0 torchaudio==2.3.0 cpuonly -c pytorch

【Tips】: 安装匹配的torch版本和cuda版本,否则运行时会报如下错误:
RuntimeError: CUDA error: no kernel image is available for execution on the device

  • 官方教程安装版本:Install pytorch 1.10 with cuda-11.3(不推荐),安装指令如下:(再说一遍不推荐)
  •  pip3 install torch==1.10.0+cu113 torchvision==0.11.1+cu113 torchaudio==0.10.0+cu113 -f https://download.pytorch.org/whl/cu113/torch_stable.html
    

2.2. 安装rsl_r

2.2.1. clone项目

→进入issacgym文件夹(cd):

Clone https://github.com/leggedrobotics/rsl_rl
2.2.2. 安装依赖

→进入rsl_r文件夹(cd):

pip install -e .

2.3. 安装legged_gym

2.3.1. clone项目

→进入issacgym文件夹(cd):

Clone https://github.com/leggedrobotics/legged_gym
2.3.2. 安装依赖

→进入legged_gym文件夹(cd):

pip install -e .

2.4. 运行leggedgym示例

python legged_gym/scripts/train.py --task=anymal_c_flat

2.5. 可能的报错:

AttributeError: module 'numpy' has no attribute 'float'.`np.float` was a deprecated alias for the builtin `float`.
解释:这个问题是由于使用了已弃用的NumPy别名np.float. 在NumPy 1.20.0及以后的版本中,使用内置Python类型(如float)的别名已经不再被支持。

2.5.1. 解决方案1: 降级Numpy版本:

降级Numpy版本(推荐)

pip uninstall numpy
pip install numpy==1.19.5

【Tips】 matplotlib 3.7.5 需要 numpy 的版本在 1.20 以上,而安装的 numpy 版本是 1.19.5,这导致了版本不兼容的问题。所以需要同时降级 matplotlib 到一个早期版本,与 NumPy 1.19.5 兼容。

pip install matplotlib==3.6.3  
2.5.2. 解决方案2: 将rsl_rl切换到v1.0.2版本(目前最新是v2.0.0)
(该方法暂时没有试过,不保证能解决,或者有试过的可以给我反馈一下)

进入release界面:rsl_rl-releases 下载v1.0.2版本

\
\-----------------------------------------------分割线-------------------------------------------------------
\

·Tips:其他可能的报错,例如没按xxx包:ModuleNotFoundError: No module named 'tensorboard'
解决:缺什么安什么

pip install tensorboard

·Tips:如果在在安装过程中还遇到了其他问题,或者是其他版本的Ubuntu,可以去其他帖子找找看看:

ubuntu 18.04 搭建isaacgym学习环境,并运行legged_gym
issacgym+leggedgym安装

标签:LD,丝滑,gym,legged,pytorch,conda,LIBRARY,PATH,安装
From: https://blog.csdn.net/littlewells/article/details/140179837

相关文章

  • 「清新题精讲」Gym100198H - Royal Federation
    H-RoyalFederation\(\mathsf{\color{Thistle}Statement}\)给定一棵\(n\)个点的树,将其划分为\(m\)个集合(\(m\)可以为任意正整数),对于每个集合,顷定其特殊点,使得该点可以到达属于该集合内的所有点只经过集合内的点(注意特殊点可以不在集合内),其中集合大小要求在\(B\sim3B\)......
  • next.js 利用中间件(middleware.ts)实现PC与移动互相丝滑跳转
    场景描述产品要求开发一个落地页,为了美观,他要求这个两个页面分开设计,PC页面路由是`/landingpage`,移动端页面是`/landingpage/mobile`从用户角度出发,现在有一种访问场景,假如用户A正在访问PC页面`/landingpage`,然后他要把这个页面以微信方式分享给用户B,用户通过手机方式打开,那这个......
  • 丝滑解决ImportError: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: version `GLIBCXX_
    基础环境:MacOSm1、python=3.9前情提要:在Anaconda终端运行代码的时候,显示报错:importError:/usr/lib/x86_64-linux-gnu/libstdc++.so.6:version`GLIBCXX_3.4.29'notfound1问题分析:根据提示是/usr/lib/x86_64-linux-gnu/路径下的libstdc++.so.6缺少版本GLIBCXX_3.4.29解......
  • 【Stable Diffusion】最新SD换脸插件ReActor,视频换脸全流程!流畅丝滑!【附插件及安装报
    今天,我给大家分享一个使用“ReActor”插件来进行视频换脸的案例。视频换脸的思路其实也很简单,其实就是把视频的每一帧都提取出来,然后把每一帧的图片都进行换脸,最后重新把这些图片重新合成一个视频。废话不多说,我们先来看看效果:生成效果原视频如下:杨幂:最后的效果:......
  • 为何使用isaac gym做强化学习
    前言   本文仅对比Gazebo,Pybullet,IsaacGym三款仿真软件。详细对比可参考:Gazebo,Pybullet,IsaacGym用于强化学习训练对比-CSDN博客1仿真软件概述Gazebo:    Gazebo提供高保真的物理仿真,适合复杂的机器人模拟和实际应用中的验证。支持多种传感器和机器人模......
  • 纯CSS丝滑边框线条动画
    在这个网站(minimal-portfolio-swart.vercel.app)发现一个不错的交互效果,用户体验效果很不错。如封面图所示,这个卡片上有一根白色的线条围绕着卡片移动,且在线条的卡片内部跟随这一块模糊阴影,特别是在线条经过卡片圆角部分有特别丝滑的感觉。今天的文章就来解析如何实现这种......
  • Gym-100520A Andrew Stankevich Contest 45 A 题解
    AnalogousSetsGym-100520ASol1.集合生成函数将可重集合\(M\)映射为生成函数:\[F(M)=\sum_{m\inM}(\#m)\cdotx^m\]如果\(M\)的元素在\(\mathbbN\)上取值,那么,\(F(M)\)是多项式。2.\(\theta\)算子\[\theta(F)=x\cdotF'\]其中\(F'=\frac{dF}{dx}\)......
  • 如此丝滑的API设计,用起来真香
    分享是最有效的学习方式。博客:https://blog.ktdaddy.com/故事工位上,小猫一边撸着代码,一边吐槽着前人设计的接口。如下:“我艹,货架模型明明和商品SKU模型是一对多的关系,接口入参的时候偏偏要以最小粒度的SKU将重复入参进行平铺”。“一个接口居然做了多件事情,传入参数复杂......
  • 【Python】保存gym截图
    如果想做基于图像cnn的深度强化学习,需要拿到gym的截图,下面是两种截图方法。1.利用render结果生成图像:importgymimportwarningsimportosfromPILimportImagewarnings.filterwarnings("ignore")ifos.path.exists('img')==False:os.mkdir('img')env=gym.ma......
  • 瞬回丝滑!30秒解决win11文件管理器卡顿问题!
    命令文本:regadd"HKCU\Software\Classes\CLSID\{d93ed569-3b3e-4bff-8355-3c44f6a52bb5}\InprocServer32"/f/ve如需取消输入这个命令regdelete"HKCU\Software\Classes\CLSID\{d93ed569-3b3e-4bff-8355-3c44f6a52bb5}"/f 联想笔记本运行缓慢?别担心,我们为您提供了两种简......