当前位置: 首页 > news >正文

网站团购活动页面怎么做查询备案号怎么查询

网站团购活动页面怎么做,查询备案号怎么查询,玉溪网站建设设计,东莞横沥网站制作上一篇文章讲了如何创建一个机器人训练地形,本篇文章将一步讲解如何添加地形到训练环境。 地形初始化逻辑 地形的创建函数 create_sim 位AzureLoong/gpugym/envs/base/legged_robot.py 中,它会在模拟初始化之后,机器人环境创造之前执行&…

上一篇文章讲了如何创建一个机器人训练地形,本篇文章将一步讲解如何添加地形到训练环境。

地形初始化逻辑

地形的创建函数 create_sim 位AzureLoong/gpugym/envs/base/legged_robot.py 中,它会在模拟初始化之后,机器人环境创造之前执行,具体代码如下

def create_sim(self):""" Creates simulation, terrain and evironments"""self.up_axis_idx = 2  # 2 for z, 1 for y -> adapt gravity accordinglyself.sim = self.gym.create_sim(self.sim_device_id, self.graphics_device_id, self.physics_engine, self.sim_params)mesh_type = self.cfg.terrain.mesh_typeif mesh_type in ['heightfield', 'trimesh']:self.terrain = Terrain(self.cfg.terrain, self.num_envs)if mesh_type=='plane':self._create_ground_plane()elif mesh_type=='heightfield':self._create_heightfield()elif mesh_type=='trimesh':self._create_trimesh()elif mesh_type is not None:raise ValueError("Terrain mesh type not recognised. Allowed types are [None, plane, heightfield, trimesh]")self._create_envs()

图片
图片来源于网络

通常的,我们创建地形会选用的 mesh_type 是 trimesh,所以在这段代码中,将会执行的是 Terrain 的初始化和 _create_trimesh 函数。_create_trimesh 函数会初始化仿真环境并设置动静摩擦系数等物理属性,这里就不展开讲解了。


在 create_sim 方法执行结束后会调用生成机器人的方法,这也意味着地形已经生成完毕,可以添加机器人到地形上了。

地形创建和添加

地形的使用主要包括了如何创建一个地形和如何把这个地形放入仿真环境中两部分,而这两部分都在 Terrain 类中。

图片
图片来源于网络

Terrain 中有三种添加地形的逻辑,分别为课程地形,选定地形,和随机地形。

if cfg.curriculum:self.curiculum()elif cfg.selected:self.selected_terrain()else:   self.randomized_terrain()
 

它们和根据 env.terrain.curriculum和env.terrain.selected 参数选择执行。而这三种地形创建逻辑的创建方式都大同小异,其中最关键的两行代码为:

terrain = self.make_terrain(choice, difficulty)
self.add_terrain_to_map(terrain, i, j)

selected_terrain  中创建地形的代码稍有不同,但是创建方式仍然是一样的。

以之前讲解的 jump_plat 举例,它被创建需要经过三个主要步骤:初始化 subTerrain,根据 difficulty 确定参数,创建地形(修改height_field_raw)。在上一篇中的 jump_plat_terrain 函数就承担了最后的创建地形的任务。


这些步骤都在 make_terrain 函数中,它需要两个入参,其中 choice 表示从众多地形中选择一种,而 difficulty 表示该地形的难度。make_terrain 函数可以被简化如下:

def make_terrain(self, choice, difficulty):terrain = terrain_utils.SubTerrain(   "terrain",width=self.width_per_env_pixels,length=self.width_per_env_pixels,vertical_scale=self.cfg.vertical_scale,horizontal_scale=self.cfg.horizontal_scale)height = 0.7 * difficultyjump_plat_terrain(terrain, height = height,  platform_size=2.)return terrain

通过上述的操作一个 subTerrain 就被创建好了,接下来就要通过 add_terrain_to_map 函数将其添加到地图上。该函数主要承担了协调地形位置的任务,即将地形放入对应的行列位置上而不重叠,这里就不展开解析了。

实战问题案例

在仿真训练中,经常会遇到各种无法溯源无法解决的问题。在青龙机器人的平地移动训练过程中,我们就发现在 mesh_type='plane' 的情况下,无法准确的测量足底接触力,非常影响对训练结果的观测和下一步调优的方向确定。


为了解决这一问题,我们选择将 mesh_type 改为 trimesh,但是注释掉了添加地形的函数,这样确保了训练地形仍是平地,且对整体代码的影响最小。

terrain = self.make_terrain(choice, difficulty)
# self.add_terrain_to_map(terrain, i, j)
 

图片

通过学习如何添加地形到训练环境,相信你已经掌握了关键操作!然而,真正的挑战在于复杂地形,你了解多少呢?下一篇,我们将为大家带来精讲复杂地形精讲之台阶,敬请期待~

"OpenLoong" 是全球领先的人形机器人开源社区,秉承技术驱动与开放透明的价值观,致力于汇聚全球开发者推动人形机器人产业发展。由国家地方共建人形机器人创新中心发起的 OpenLoong 项目,是业内首个全栈、全尺寸的开源人形机器人项目,有着人人都可以打造属于自己的机器人的美好愿景,旨在推动人形机器人全场景应用、助力具身智能时代的到来。

欢迎加入 OpenLoong 开源社区,探索人形机器人技术,共享创新成果,在这里一起见证开源的力量!

http://www.dtcms.com/a/416728.html

相关文章:

  • 网站建设维护管理网站底部备案信息
  • 郴州文明网网站投标网站建设
  • 可不可以建网站做微商中企动力公司官网
  • 青岛市规划建设局网站asp网站源码后台密码存放在那个文件里?
  • 4G模组发送AT不回复
  • 6做网站wordpress zip 升级
  • Java中final关键词与常量
  • 网站开发环境和运行环境城乡建设门户网站
  • 分布式数据库与集中式数据库区别详解!
  • MRFS中两个创新模块代码解析
  • 有网站代码 如何建设网站三合一网站建设方案
  • 网站首页模块建设微网站怎么自己做
  • 做网站申请完空间后下一步干啥新河seo怎么做整站排名
  • 鞍山市建设局网站动漫制作技术主要学什么
  • 网站如何申请域名网络推广文案范文
  • Scade One 时序窗口 window 建模解析
  • 网站模板下载模板下载安装河南省建设厅职称网站
  • 做360手机网站优化排网站建设需要学什么能力
  • 什么是网站的空间做互联网的网站
  • 做dj网站能赚钱吗上海网站建设 方案
  • 网站开发招标任务书网站备案是 备案空间吗
  • 模仿 网站茶叶网站建设策划书ppt
  • 文成做网站网站关键词用什么符号
  • .net建设网站步骤详解工作细胞中文版免费完整版第一季
  • 建立网站需要多少钱经营y湖南岚鸿非常好建站语言
  • 百度指数官方网站房产中介网站模板
  • 系分论文《论云原生技术在金融行业核心业务系统中的应用实践》
  • 北京网站建设市场朔州网络推广
  • 如何完整建设一个网站什么网站可以做试题
  • php+mysql 网站建设福州网络推广