Python对于大多数程序员而言 , 可能是一个胶水语言 , 或者更多的是用各种Web框架开发web应用程序的职业工具 , 当然机智客觉得大家应该都知道 , 成熟的Python的第三方库广泛得很 , 覆盖各种各样的行业 , 比如搞搞机器人 , 做做物理模拟啦 , 而要搞物理模拟就要有物理模拟引擎 , pybullet就是这样一款第三方库 , 开源的物理引擎、仿真系统 。
如果你学习过3D软件Blender , 大概就能理解一点物理引擎了 。 就是为你搭建一个虚拟空间 , 这个虚拟空间里可以放置你想要的3D模型 , 设置物理属性 , 让它模拟出在现实中可能出现的情况 。 当然Blender软件是一款3D动画软件 , 虽然它有物理模拟功能 , 但并不是物理引擎 , pybullet则是一款正儿八经的物理引擎、机器人仿真系统 。
【联想|Python中开源的物理引擎库pybullet让你的模拟机器人或游戏动起来】一看名字我们就能顾名思义 , 这一看就是基于著名的开源物理引擎bullet开发封装的第三方库吧 。 没错 , PyBullet就是这样一款物理仿真的强化学习库 , 支持加载 URDF、SDF、MJCF 等多种机器人描述文件 , 并提供正/逆向运动学、正/逆向动力学、碰撞检测、射线相交查询等功能 。
既然是Python生态库中的一员 , 那么我们也心知肚明地知道该怎么安装了 。 的确如此 , 命令行安装 , 不过要注意的是这个还要几种依赖 。 比如最直接的 , 这货的一些模型是通过大名鼎鼎的深度学习框架TensorFlow实现的 , 所以你懂的 。
安装准备好后 , 就可以运行demo测试环境了 。 这个pybullet内置了一些常见的模型 , 比如常见的腿足机器人啦 , 机械臂啦 。 我们一看就知道是用于机器人仿真模拟的 。 可以运行这些demo看看默认的虚拟机器人在虚拟物理引擎里的表现 。
同样有虚拟场景 , 同样有地面 , 同样有摄像机视窗 。 你在Blender这样的3D软件里的元素 , 都可以在pybullet中通过代码实现 。 而我们通过代码运行预览的虚拟仿真空间的窗口 , 同样类似于3D软件中的预览窗口 , 或者有点类似游戏引擎里的基本控制 , 可以实现移动拉伸旋转等多个操作 。
当然 , 物理引擎之所以重要 , 它不仅可以用于机器人、机器的模拟操作 , 我们上面说这货的一些模型是由TF实现 , 因此大家肯定就明白了:它就是一个基于AI的仿真环境 。 所以咯 , 还可以用于ML技术比如强化学习算法的落地 , 可以让我们不直接在物理环境中测试的情况下在虚拟环境中发现一些现实中的问题 。
- 中兴|中兴 S30 SE 有着超高性价比?6000mAh 大电池众望所归!
- iPhone|分析联想戴尔华硕新品游戏本:DDR5+双显三模,7K预算选这款最香
- Python|使用 Python 进行数据清洗的完整指南
- 高通骁龙|三星S22u体验:骁龙8没想象中“热”,但系统却更卡了!
- 苹果公司|中国女富豪,拿走苹果百亿利润,只因她把控了命脉!
- 华为鸿蒙系统|美国刚不许中俄做生意,俄公司就被曝已在测试鸿蒙系统,华为回应
- iPhone|新iPhone销量遇冷,几乎无人问津,为什么中国人不爱小屏旗舰了?
- Google|得感谢苹果、谷歌的“照顾”,俄企对中国操作系统正式表态!
- 魅族|疑似魅族19系列三款机型渲染图和配置曝光 被称为秀外慧中新旗舰
- |买手机,只要有这3种配置中的1种,价格再便宜也不要买,小心入坑