自学内容网 自学内容网

英伟达 Isaac Sim仿真平台安装体验

硬件配置、系统

  • RTX 3080
  • RAM: 32G
  • i7-12700F
  • ubuntu20.04

使用Omniverse launcher安装加载isaac sim

这种方法我并没有成功,因为启动的时候报错Failed to create any GPU devices, including an attempt with compatibility mode. 。后面我选择使用 isaac sim docker 成功启动了

  1. 下载Omniverse launcher,参考地址
  2. 下载Isaac sim
    在这里插入图片描述在这里插入图片描述通过上述方法需要科学上网才能下载,而且巨慢,最后还卡住了,可以使用被人上传的夸克网盘下载
    夸克网盘下载isaac sim

isaac sim docker

docker 下载并启动

官方参考资料

  1. Run the command below to confirm your GPU driver version is 535.129.03 or later.
$ nvidia-smi
  1. Follow the steps in Generate Your NGC API Key. Use command line to login into NGC to download the Isaac Sim container.
$ docker login nvcr.io
 Username: $oauthtoken
 Password: 
 WARNING! Your password will be stored unencrypted in /home/username/.docker/config.json.
 Configure a credential helper to remove this warning. See
 https://docs.docker.com/engine/reference/commandline/login/#credentials-store
 Login Succeeded
  1. Pull the Isaac Sim container.
$ docker pull nvcr.io/nvidia/isaac-sim:4.2.0
  1. Run the Isaac Sim container with an interactive Bash session.
$ docker run --name isaac-sim --entrypoint bash -it --runtime=nvidia --gpus all -e "ACCEPT_EULA=Y" --rm --network=host \
     -e "PRIVACY_CONSENT=Y" \
     -v ~/docker/isaac-sim/cache/kit:/isaac-sim/kit/cache:rw \
     -v ~/docker/isaac-sim/cache/ov:/root/.cache/ov:rw \
     -v ~/docker/isaac-sim/cache/pip:/root/.cache/pip:rw \
     -v ~/docker/isaac-sim/cache/glcache:/root/.cache/nvidia/GLCache:rw \
     -v ~/docker/isaac-sim/cache/computecache:/root/.nv/ComputeCache:rw \
     -v ~/docker/isaac-sim/logs:/root/.nvidia-omniverse/logs:rw \
     -v ~/docker/isaac-sim/data:/root/.local/share/ov/data:rw \
     -v ~/docker/isaac-sim/documents:/root/Documents:rw \
     nvcr.io/nvidia/isaac-sim:4.2.0
  1. Start Isaac Sim.
$ ./runheadless.native.sh -v
Livestream Clients

官方参考资料

  1. 上述方法能够成功启动isaac sim,现在需要livestream clients 打开图形界面
    在这里插入图片描述在这里插入图片描述2. 成功连接之后,能够看到图形界面
    在这里插入图片描述
仿真
  1. 创建一个物体并仿真自由落体
    1-1. 创建球体: Create -> Shape -> Sphere
    1-2. 创建地平面:Create -> Physics -> Ground Plane
    1-3. 给球体添加 刚体和碰撞: Add -> Physics -> Rigid body with Colliders Preset
    1-4. 创建物理材料: Create -> Physics -> Physics Material
    1-5. 修改物理材料的摩擦系数和弹性系数: Dynamic Friction: 0.5, Restitution: 0.5
    1-6. 给球体选择刚才创建的物理材料

单球自由落体

多物体自由落体

使用Isaac sim自动生成数据并使用pyorch训练
  1. 下载ShapeNetCore dataset,该数据包括模型数据,需要申请和科学上网,如果实在等不及,在国内找找也能找到下载地址
  2. 设置ShapeNetCore数据的路径
export SHAPENET_LOCAL_DIR=<path/to/shapenet>
  1. 将ShapeNetCore 数据格式转换成 USD
./python.sh standalone_examples/api/omni.replicator.isaac/usd_convertor.py --categories plane watercraft rocket --max_models 100
  1. 生成数据
./python.sh standalone_examples/replicator/online_generation/generate_shapenet.py \
--root $SHAPENET_LOCAL_DIR'_nomat' \
--categories plane watercraft rocket \
--max_asset_size 50

注意事项:
a. 如果是在docker中运行,需要让docker能够科学上网
b. generate_shapenet.py 设置成 headless,具体如下

RENDER_CONFIG = {"headless": True}

在这里插入图片描述5. 训练

./python.sh standalone_examples/replicator/online_generation/train_shapenet.py \
--root $SHAPENET_LOCAL_DIR'_nomat' \
--categories plane watercraft rocket \
--visualize \
--max_asset_size 50

在这里插入图片描述

总结

利用英伟达的RTX系列显卡, Isaac sim 的仿真效果非常逼真,从上述实验可以看到,Isaac sim 随着模型的数量增加,帧率会有所下降,但是渲染效果并没有变差,这应该是充分利用了RTX显卡的光追和并行计算的能力。
Isaac sim 除了用于上述目标检测,还可用于机器人的强化学习,比如训练双足机器人行走、机械臂抓取任务等等。


原文地址:https://blog.csdn.net/ly0303521/article/details/143776526

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!