尝试一下,交互式的三维计算python库,py3d

py3d是一个我开发的三维计算python库,目前不定期在PYPI上发版,可以通过pip直接安装
pip install py3d

开发这个库主要可视化是想把自己在工作中常用的三维方法汇总积累下来,不必每次重新造轮子。其实现成的python库也有很多,例如scipy.spatial, pyquaternion, open3d等等,但是这些库要么没有可视化功能,要么比较难用,所以自己开发了一个。最开始是想做成一个三维仿真工具,后来发现这个有些困难,工作量太大,所以目前功能局限在三维变换和可视化上。

相比其他的库,这个库有几个特点:

  1. 纯python,没有使用C++
  2. 交互式可视化,在jupyter中可以可视化点云、图片、网格等等,均可缩放、旋转
  3. 支持多种常用三维文件的解析,如PCD,PLY,OBJ等

在自动驾驶和机器人开发中一个常见的任务是坐标系转换,以下展示一个使用py3d计算一个直角坐标系在经过旋转变换R和平移变换T后的新坐标系,并可视化的例子,注意需要在jupyter中运行才能看见可视化结果

python 复制代码
import py3d
coord=py3d.axis(dashed=True)
R=py3d.Transform.from_euler("xyz", [1,2,3])
T=py3d.Transform.from_translation([4,5,6])
new_coord=py3d.axis()@R@T
py3d.render(coord,new_coord)
py3d.label("origin coord", [0,0,0], "orange")
py3d.label("new coord", [4,4.5,6], "orange")

使用文档:https://tumiz.github.io/py3d/

一个人开发,能力和时间是有限的,希望有类似想法的人能参与进来,无论是提出建议,贡献代码,还是发现问题,都是非常欢迎的。

相关推荐
databook1 小时前
时间序列数据,先拆规律还是先查异常
python·数据挖掘·数据分析
Solange__1 小时前
Blender 3D模型优化:普通复制、共享网格、实例、合并怎么选?
人工智能·3d·ai·自然语言处理·编辑器·blender·材质
师夷长技以自愈1 小时前
手搓 AI Agent 第 8 篇:从手写循环到画流程图——LangGraph 封装
人工智能·python
aifannihao2 小时前
Rust 1.100 的 DropGuard:用 Python 实测失败回滚与吞异常
python·rust·异常处理·标准库·contextlib
用户019027581614 小时前
天勤 tqsdk 能做 A 股行情吗?期货强项与股票数据选型
python
2601_967979125 小时前
pip在Python中的9个必须知道的用法
python·pip·版本控制·包管理工具·requirements.txt
曲径海盗6 小时前
【Python 学习第 58 天】列表方法
python·学习笔记·编程入门
DeepVisionary6 小时前
Runway开源机器人大模型Praxis-1,推演延迟压到62毫秒
python·自动化
Cooper257 小时前
DDC 命令成功但屏幕不动:用 gamma 表重做亮度映射
python·mac
师夷长技以自愈8 小时前
手搓 AI Agent 第 7 篇:菜做砸了别硬炒——错误分类 + 双账本熔断
人工智能·python